School of Computing and Information Technology
Student to complete:
Family name Other names Student number Table number
Exam duration
Weighting
Items permitted by examiner Aids supplied
Directions to students
Final Project Autumn Session 2020
1 week
50 Marks Open exam Nil
• The final project must be submitted on 28th June 2020 at 10 pm to Moodle.
• No extension will be allowed
• This project is an individual project.
• Students must submit their original work. Plagiarism will
lead to a direct fail of this subject for all involved students.
• Turnitin will be used for the originality checking.
Software Requirements. – 1/4 –
1. Objective:
The objective of this project is to test your understandings and skills to use the informal and formal specification approaches and models to represent the requirements for a software system.
2. Problem Description:
Nowadays, people can access their bank accounts easily via the Internet Banking. In this project, you are asked to model the procedure for using the Internet Banking for money transferring purpose. The general process is described below. You can make reasonable assumptions if it is not specified.
1. Login to the online bank account:
A customer can login his/her online bank account via a browser or a mobile App. The customer shall input the account number and password and press “login” button. The login information is sent back to the bank’s Internet Banking server for authorization. If the valid account number and password were input, the customer’s account information will be displayed. Then the customer can access all of his/her online accounts for balance checking and money transferring purposes. Otherwise, the customer will be asked to re-input the account number and password. If the customer inputs wrong account number or passwords for three time, the account will be locked for 30 minutes.
2. Check account balances:
There are two types of account, i.e., the saving account and the credit account. After the customer logins the online banking, the customer can check the balances of his/her accounts. The balance of a saving account must be no less than zero dollar, and the balance of a credit account must be in a range, i.e., – credit limit ~ 0 dollar.
3. Money transfer:
The customer can transfer money between his/her accounts or to another person. There will be no daily limit if the customer wants to transfer money between his/her own saving and credit accounts. However, the balances requirements for the saving and credit accounts must be always satisfied before and after the money transferring.
If the customer wants to transfer money to another person, the system will send a security code to the customer’s mobile phone. The customer must input the security code via the browser or mobile app within 60 seconds, then the money can be transferred. Otherwise, the money transferring will be cancelled automatically by the system. There is a daily limit for a customer to transfer money to another person. If a transferring makes the total daily outbound transferring money over the daily limit, the transferring will be rejected by the system directly. Again, the balances requirements for the saving and credit accounts must be always satisfied before and after the outbound money transferring.
4. Logout the online bank account:
The customer can logout his/her online bank account anytime by clicking the “logout” button. After the customer logs out, the browser or the mobile app will return to the home page.
Software Requirements. – 2/4 –
5. System requirements:
The internet banking system shall be available for 24 hours per day and 7 days per week. The system shall support up to 10,000 people to use concurrently, and the system delay shall no more than 1 second. If a customer disconnects to the system accidently due to the Internet down or the browser or the mobile App crashes, all the uncompleted money transferring shall be cancelled automatically. If the internet banking system is down, the backup system shall be activated and take over the original system automatically. This procedure shall be completed within 10 minutes.
3. Tasks:
This project contains five tasks.
1. Write a Requirement Specification for the Internet banking system. The requirement specification document shall clearly define the functional and non-functional requirements of the system. Please refer to IEEE requirement specification template. (10 marks)
2. Design and draw a Data Flow Diagram to clearly show the procedure and data flows between the customer and the internet banking system and the internal data flows of the system. Your DFD shall contain at least three levels. The first level shows the interaction between the system and the external entity (i.e., the customer). The second level shall expand the system into several sub-systems (such as the system login, balance checking, money transferring, and the system logout) to show the internal data flows of the internet banking system. The third level expands the money transferring sub-system to show the detailed procedures for transferring money between the customer’s own accounts, and to another person.
(15 marks)
3. Design and create a Colored Petri Net to show the dynamic behaviours of the internet banking system. You shall define the Colored Petri Net with the mathematical representation and graphic representation, i.e., clearly specify the content of C = (P, T, I, O), the initial marking , and defines all color sets for all places. The CPN shall clearly show the procedure how the Internet banking system is used by the customer, i.e., the system login, balance checking, money transferring, and system logout. (10 marks)
4. Complete full Z-Schemas for the system login operation and the money transferring operation. The full operations shall cover both successful and abnormal scenarios. Your schemas shall also include the necessary definitions of data types, global variables, the system schema and the initial system schema. (15 marks)
4. Submissions:
You must submit your final work of this project via the Moodle site. Email submission will NOT be accepted.
1. For the requirement specification, please use the IEEE template and create a pdf file named specification.pdf.
Software Requirements. – 3/4 –
2. For the data flow diagram, you can draw it using Microsoft word or other professional tools. Finally, you shall create a pdf file (named dfd.pdf) to include everything about the data flow diagram.
3. For the Colored Petri Net, you must create a pdf file (named cpn.pdf) to include the mathematic representation, the graphic representation and other necessary information about your CPN. CPN Tools is NOT required, please DO NOT submit the cpn file.
4. For all Z schemas, you must draw them using the z-editor (https://z-editor.github.io/), and create a pdf file (named schemas.pdf) to include all your schemas.
5. Please zip all your file (i.e., specification.pdf, dfd.pdf, cpn.pdf, and schemas.pdf) into an individual file (named CSCI910_Final_Project.zip), and submit the zip file to Moodle (Final Project Submission).
6. Please note, hand drawing of any diagram will receive Zero mark for that part. The final project is an individual project. Plagiarism will result a direct failure of this subject. All involved students will receive the same penalty.
The End of the Final Project
Software Requirements. – 4/4 –