Object Oriented Programming Spring-2017
Total Page:16
File Type:pdf, Size:1020Kb
Object Oriented Programming [Spring-2017]
Final Term Project
[Instructor Email: [email protected] : Phone: 0335-4058958]
Project Description:
Students are required to work on ATM System. Where the users will be able to withdraw cash, view current account balance, change PIN, view transaction history for Last two weeks.
Users will be having account in rupees but cash can be drawn in any of the four currencies (details given below).
NOTE: Do remember that you have to design your program in such a way that in future more currencies may be added in which customer shall be able to withdraw cash.
Major Functional Requirements:
FR:1 System shall have two interfaces one for customer and the other for administrator.
FR:2 ATM customer shall access his/her account after authentication.
1.a) User Shall enter PIN on the authentication page. After three unsuccessful attempts system will inform the user that now card shall be held inside the system and no more attempts are allowed. 1.b) Based on PIN the system will take the user to appropriate interface i.e either it is administrator password or bank customer password.
FR:3 After authentication Bank customer shall be presented the following menu I. Withdraw Cash II. View Account balance III. Get Mini Statement (Transactions for the past two weeks shall be listed in the statement) IV. Change PIN
User shall be asked to enter his choice out of the menu.
3.a) In case of (option : 1) system shall prompt the user to enter amount to withdraw
3.a.1) System shall confirm that user available account balance is equal or more than the requested amount. In case of wrong amount entered system shall prompt the user to enter correct amount.
3.a.2) System shall ask the user in what of the following currencies user want cash NOTE: In future more currencies can be added in the menu A) Dollar B) Sterling Pound C) Euro D) Rupees
3.a.3) Based on the selection in (3.a.2) system shall perform the conversion and will inform the user to collect amount (hypothetically cash will be dispensed and user will collect it)
3.a.4) After disposal of the cash System shall show the customer the remaining balance in the account.
3.b) In case of Option:2 system shall show the account balance to the customer
3.c) In case of Option:3 system shall show the transactions customer made during last two weeks.
3.d) In case of Option:4 system shall prompt the user to enter new PIN.
3.d.1)system shall ensure that entered PIN is not already set by any customer
FR:4 If the entered PIN is of Administrator then administrator will be taken to his console/screen with the following menu
A) Create New customer B) Modify Account Balance (account can only be incremented)
4.a) in order to create a customer administrator shall enter the following information of customer i. Customer first name ii. Last name iii. CNIC Number iv. Account Balance
4.b) In case of Option:B system shall ask the Administrator to enter the CNIC of the customer whose account balance has to be udated.
4.b.1) If customer found then system shall present the customer profile and administrator shall enter the new amount otherwise system shall inform the administrator that no such customer found.
FR:5 File handling shall be performed in the program in order to persist the information about customer and to keep the record of transactions. NON-Functional Requirements:
NFR:1 System shall have DOS Based interface i.e system shall have only text based interface no Graphical User Interface is required to produce. NFR:2 Password must be masked so that whenever user shall enter the password the entered characters will not be shown on the screen rather in place of entered character (*) should be place on screen NFR:3 Program must be extendible i.e in more currencies for cash withdrawal can be asked to include
Important Instructions:
Students will be allowed to work in groups of two (02) members only.
Copying from any source will result in zero marks
Students must perform error checking in their programs
Projects after given deadline will not be evaluated.
In case of any query please do reach the instructor through email or see in person during office hours.
Programs must exhibit polymorphic behavior
Best of Luck