Get Instant Help From 5000+ Experts For
question

Writing: Get your essay and assignment written from scratch by PhD expert

Rewriting: Paraphrase or rewrite your friend's essay with similar meaning at reduced cost

Editing:Proofread your work by experts and improve grade at Lowest cost

And Improve Your Grades
myassignmenthelp.com
loader
Phone no. Missing!

Enter phone no. to receive critical updates and urgent messages !

Attach file

Error goes here

Files Missing!

Please upload all relevant files for quick & complete assistance.

Guaranteed Higher Grade!
Free Quote
wave
Banking System Prototype: Requirements and Implementation
Answered

Task Requirements

The bank system should be able to store and load all customers data from and ? ?into a file. ?Achieving a mark of 71% to maximum 80%?The application must implement all the above and the following:

Transferring funds/money from one account to another. For example, an Admin?

Can transfer funds from one customer account to another customer account?

Admins can request a management report. This should show the following ? information; ?

o Total number of customers in the system ? o The sum of all money the customers currently have in their bank ? account.

o Using individual account balance, the report should calculate the sum? of interest rate payable to all accounts for one year, note, if customers?have different account types, their rates will vary.

o Total amount of overdrafts currently taken by all customers. ?

To achieve a mark of 80% and over The application must implement all the above and the following:??

Development of a suitable Graphical User Interface (GUI) to perform all the ? above banking functions.

Part A – Design documentation (weight 15%) Overview of banking systems A banking system is a group or a network of institutions that provide financial services for citizens.

These institutions are responsible for operating a payment system, providing loans, taking deposits, performing money transfer and helping with investments. In this coursework, students will create a ‘prototype’ Banking system to focus on basic operations such as deposit money, withdraw money, transfer money and agree to make loans to their customers.

The system admin can create new bank accounts to customers, search for customers’ accounts, update/view customer personal details and close customers bank account. ?

Use the above activities to draw two flowcharts using the special shapes to represent different types of actions or steps in a process. Link these activities with Lines and arrows show the sequence of the steps, and the relationships among them.

For this part of the assessment you need to submit two flow chart diagrams (total weight 15%).

To complete this you must refer to Week 2 learning materials.

o (7%) One diagram should depict the log-in process for the banking system?

o (8%) Second diagram should explain a critical/complicated process of the system e.g. making money transfer from one account to another.

Part B – System development (weight 40%).

Part A - Design Documentation

Rationale This programming assignment is to apply the programming principles covered in tutorials and lectures to develop a python software that implements core banking solution that is used in banks by Important: ? This part of the assessment should not be attempted by students until you are ?

provided with the partial implementation code which you must use as a starting ?

point of your system its customers and staff members.

The software can be fully implemented using text based interface, however, to achieve higher marks, a GUI based software can be developed using the Python GUI Programming module namely Tkinter.

GUI design and Tkinter programming will be covered during week 9/10. The aim of the exercises is to enhance a student’s experience of programming by applying programming principles to a larger problem of developing a complete application.

There are mainly two reasons behind the selection of the banking system as the topic of this coursework.

Firstly the students are familiar with the banking systems, hence, students will spend less time and effort to understand the functions specification of the software they will be developing for this coursework.

Hence, most of their time will be devoted to the design, development and testing of the banking system by applying the programming knowledge and skills they learnt throughout this module.

Secondly, GUI based programs make it easier to interact with the developed system and demonstrate a direct relationship between the user interaction and the system functions and data.

Also, students will learn about how a product works entirely from the user's (or customer's) perspective and not from just a developer prospective. Hence, they will need to develop a user- friendly GUI.

How should you start?

The objective of this assessment is to develop a python software that implements a core banking solution that is used in banks by its customers and bank admins.

A partial implementation of a prototype banking system will be provided.

This prototype provides you the skeleton of the basic banking system classes and functionalities. You must build your implementation upon it.

The functionalities you should implemented for each grade are provided in the marking scheme (see below). In the prototype, all customer data are hard coded.

The main class will allow to add a number of customers accounts at the start of the software. However, to achieve higher marks, you should enhance the system functionalities by using text files to store the customers related information.

Part B - System Development

You then can consider replacing the console-based user input/out with a user-friendly GUI to achieve the maximum mark. Assessment specifications with a detailed marking scheme: To achieve a mark to maximum of 40% for Part B The application must implement all the following:?

Create/update the necessary classes and functions which allow admins to perform the following:

1. Admin Login ?

2. Search for a particular customer to perform various banking operations on a customer ?bank account i.e. check balance, deposit or withdraw money etc. ?

3. Deposit money into a customer account ?

4. Withdraw money from a customer account ?

5. Check current balance for a customer ?

6. View customer details e.g. name and address ?

7. Update customer information e.g. name and address ? To achieve a mark of 41% to maximum of 50% for Part B The application must implement all the above and the following:?Create the necessary classes and functions which allow admins to perform the following tasks:

8. Close a customer account i.e. remove customer from the system ?

9. Update admin own information i.e. name and address ?

10. Print all customers details To achieve a mark of 51% to maximum of 70% for Part B The application must implement all the above and the following:

11. Customers can have different types of bank account (e.g. current account, different types of saving account). Accounts will differ in their account name, interest rate and overdraft limit etc.

12. The bank system should be able to store and load all customers’ data from and into a file. To achieve a mark of 71% to maximum 80% for Part B?The application must implement all the above and the following:

13. Transferring funds/money from one account to another. For example, an Admin can transfer funds from one customer account to another customer account.

14. Admins can request a management report. This should show the following information;

a)  Total number of customers in the system ?

b)  The sum of all money the customers currently have in their bank account. ?

c)  Using individual account balance, the report should calculate the sum of interest ?

rate payable to all accounts for one year, note, if customers have different account ?types, their rates will vary. ?

d)  Total amount of overdrafts currently taken by all customers. ?

To achieve a mark of 80% and over for Part B 15. Development of a suitable Graphical User Interface (GUI) to perform all the above banking functions.

Note 1: It is very important to complete/attempt all functionalities within the current grade before moving to the next one. Failure to do so indicates you have not understood the requirements and it will greatly affect the marks you gain by completing the functionalities from higher grades.

Note 2: You need to submit you system alongside the necessary objects to test their software by the tutors when marking.

For example, if your system is able to deal with different types of bank accounts (e.g. business and savings accounts), then you should populate the system with at least two customers that have two or more different account types. Part C – Testing and evaluation (weight 15%) ?

Software testing is the process of evaluation a software item to detect differences between given input and expected output. Students are expected to perform White Box Testing (also known as Clear Box Testing).

White box testing involves looking at the structure of the code.

Since you know the internal structure of a system, tests can be conducted to ensure that the internal methods and operations perform according to the specification.

Students must choose inputs to exercise paths through the code and determines the appropriate outputs.

Good testing means your system is free of logical and run time errors. ?

For this part, you need to develop a test plan that includes test cases based upon the system design and implementation of your Banking System.

o We expect at least 15 unique and valid test cases for your system, for each of the functionalities.

o Testing and evaluation mechanism and methods was explained in Week 5 “Debugging and Test Plan”.

o Testing and evaluation will only be done when your software has been implemented. If you find a bug, a further testing is required after you have fixing it. o The final number of test cases should 15 plus the bugs you have fixed. All work should be submitted as a single zip file?

support
close