Chapter 1
Introduction
The Personal Banking System is an application which is useful for the customers to make use of all banking transactions . This application provides all banking transaction such as account information which will provide customers a summary of their accounts, account creation ,fund transfer and cheque book request
1.1 Preamble
This project is very helpful for the customers who are busy in their daily schedule and cannot go to bank to do the transaction can make use of our application.
1.2 Motivation
The project helpful for the customer so that they can make chequebook request, request for deposit, request for withdraw . Once they request their request id will be generated and using that request id customer can visit any time to the bank and make a transaction. Our project easily retrieves the customer account information details easily without much human effort. It reduces the time as well as the paper work.
1.3 Goal and Objectives of the Project Report
• This project intends to introduce more user friendliness in the various activities such as record updating, maintenance, and searching.
• Creating customer account and updating their account details
• Providing facility to request for chequebook ,withdraw and deposit.
• Authentication of administrative users is done using proper user name and password. So that other user cannot retrieve administrative data.
1.4 Problem Statement
• In an existing System, all process are Handled manually. The admin should refer all the records kept for years ago to simply know the details. This is time consuming.
• This process is very difficult when the number of users increases. There are many limitations for the existing systems. In manual Placement system all the work is done by human intervention due to which there are maximum chances of errors.
• The files were not stored in hierarchical format. Hence searching was big problem. Due to this the updating was difficult. This leads to duplication of records.
1.5 Scope of the Dissertation Report
As the growing demands and heterogeneity of applications are continuously challenging the architectural aspects of the Internet, it becomes necessary to devise an architecture which is flexible in terms of any modification or update of applications or protocols.
• No data duplication
• No Paper Work Required
• Time Efficient
• Cost Efficient
• Automatic data validation
• User friendly environment
• Data security and reliability
• Fast data insertion & retrieval
• Easy performance check
• Format report generation
Outline of Dissertation Report
The Project Report is encompassed with six chapters in total and it is organized as follows:
Chapter – 1: Introduction:
Explicates motivation of the research work, the scope of the study, goal & objectives of the Project Report and also tried to present a brief overview of Project Report including from where to start reading? In addition to different textual formats used for expressing the author's feelings.
Chapter – 2: Literature Survey:
Determine the relevant background information such as the Internet design goals & principles, initiative towards the OSI reference model, architectural principles, a critical review of Internet dealing with its limitations and issues, future research approaches, and finally the need of net- work architecture.
Chapter-3: Requirement Analysis:
The main goal of the requirements phase is to produce the software requirements specification(SRS), which accurately captures the client’s requirement and forms the basis of the software development and validation. The main basic activity in the requirements phase is requirement analysis.
Chapter -4: System Design:
Deciding which module are needed for the system, the specification of these module should be interconnected is called “SYSTEM DESIGN”. System design is also called Top Level design. The design of a system is a plan for solution for the system here we consider a system to be set of components with clearly defined behavior that interact with each in a fixed manner to produce some behavior.
Chapter-5: Implementation:
Implementation forms an important phase in the system development life cycle. It is a stage of the project work that transforms the design into a work module.
Chapter-6: Testing:
Testing can be stated as the process of validating and verifying that a software program/application is behaving just as expected during the designing phase. Track the errors to understand their causes and any patterns that may exist.
Chapter 2
Literature survey
Literature survey is a text of a scholarly paper, which includes the current knowledge including substantive findings, as well as theoretical and methodological contributions to a particular topic.
Literature survey use secondary sources and do not report new or original experimental work.
Visited websites
• www.gimt-guwahati.ac.in
• www.ksrce.ac.in
• www.fresherworld.com
• www.btechguru.com
These are the educational service company with the core objective of serving students in higher educational institutions by providing affordable, high quality knowledge based services to catalyze effective and efficient learning.
Advantages of those sites
• Used languages and platforms
• Techniques used for user interactions
• Provided information
Disadvantages of visited sites
• Lengthy Modules
• User accessibility
• User security
.
.
Chapter 3
Hardware and software Requirements
3.1 Requirement Analysis
Software Requirement Specification is a technical specification of requirements for the software products. SRS represents an overview of products, features and summarizes the processing environment for development operation and maintenance of the product.
Software Requirement Specification completely describes what the proposed software is supposed to do, without explaining what it actually does. It contains all the basic requirements that are needed for the development of the software.
The main purpose for preparing this document is to give a general insight into the analysis and requirements of the existing system or situation and for determining the operating characteristics of the system. An SRS provides a reference for validation of the final product. The project titled as “Personal Banking System” is an application which helpful for the users to make use of all banking transactions like account creation, account information, depositing, withdrawing, fund transfers from one account to another, check book requisition, report generation. It provides facility for the customers of the bank to have all information regarding their transactions.
3.1.1 Software Requirement Specification
• Windows 7 Ultimate, Windows 8
• Browser Software like Microsoft Internet Explorer 4.0 or later.
• Front end – Visual Studio 2013
• Language used – ASP.Net
• Back end – SQL Server 2014
3.1.2 Hardware Requirement Specification
• 256 MB of RAM or more.
• 2GB of hard disk space.
• VGA or higher monitor resolution.
• Mouse or other pointing devices.
• Network interface card or Modem.
• LAN Network.
• Processor Intel core i3 and above.
• Communication Devices wifi
Chapter 4:
4. System Design Architecture
4.1 E-R Diagram
4.2 Data Flow Diagram
LEVEL 0 CFD(Context Flow Diagram)
LEVEL 1 DFD
LEVEL 2 DFD
4.3 Class Diagram
4.4 Sequence Diagram
Admin side sequence diagram
Custome side sequence diagram
4.5 Use Case Diagrams
Chapter 5
Implementation
5.1 Home Page
5.2 Message Page
5.3 Login Page
5.4 Chequebook request page
5.5 Deposit page
5.6 Account Detail page
5.7 Account creation page
5.8 Cheque book status page
5.9 Customer report
5.10 Withdraw status page
Chapter 6
Testing
Software testing is the process of executing a program or system with the intent of finding errors. Software testing is any activity aimed at evaluating an attribute or capability of a program or system and determining that it meets its required results. Although crucial to software quality and widely deployed by programmers and testers, software testing is still an art, due to limited understanding of the principles of software. Testing is more than just debugging. The purpose of testing can be quality assurance, verification and validation or reliability estimation. Testing can be used as a generic metric as well. Correctness testing and reliability testing are two major areas of testing.
6.1 Testing approach
Testing is the penultimate step of software development. While testing is done, errors are noted and correction is made. Both hardware and software securities are made to run the developed system successfully.
System testing is aimed at ensuring the system works accurately before the live operation commences. Testing is vital to the system. System testing makes a logical assumption that if all parts of the system are correct, the goal will be successfully achieved. A series of testing are performed for the proposed system before the system is ready for user acceptance testing.
Normally, testing of any large systems will be in two parts: The functional verification and validation against the indicated requirements. Testing activity is involved right from the beginning of the project.
Characteristics of a Good test:
• Tests are likely to catch bugs
• No redundancy
• Not too simple or too complex
6.2 System Testing
When a system is developed, it is hoped that it performs properly. The main purpose of testing and information system is to find the errors and correct them.
The main objectives of system testing are:
• To ensure during operation the system will perform as per specification.
• To make sure that the system meets user’s requirements during operation.
• To verify that the controls incorporated in the system function as intended.
• To see that when correct inputs are fed to the system the outputs are correct.
• To make sure that during operation incorrect input and output will be deleted.
System testing is the process of checking if the developed system is working according to the original objectives and requirements.
6.3 Test Case Design:
There are two types of testing techniques followed in designing and development of the information system. They are:
• White box testing
• Black box testing
White Box Testing:-
White box testing is a test case design method that uses the control structure of the procedural design to derive test case. Using this method, the software engineer can derive case that guarantee that all independent paths within a module have been exercised at least once.
All logical decisions on their true and false sides, execute all loops at their boundaries and within their optional bounds and exercise internal data structures to ensure their validity.
Black Box Testing:-
This method will focus on the functional requirements of the software. That is black box testing enables the software engineers to derive sets of input conditions that will fully exercise all functional requirements for a program.
Black box testing attempts to find errors in the following categories:
• Incorrect or missing function.
• Interface errors.
• Errors in data structures or external database access.
• Performance errors.
• Initialization and termination errors.
6.4 Testing Methods:
System testing is the stage of implementation. This is to check whether the system works accurately and efficiently before live operation commences. Testing is vital to the success of the system. The candidate system to a variety of tests: on line response, volume, stress, recovery, security and usability tests. A series of tests are performed for the proposed system is ready for user acceptance testing.
The testing steps are:
Unit Testing:-
Unit testing focuses efforts on the smallest unit of software design. This is known as module testing. The modules are tested separately. The test is carried out during programming stage itself. In this step, each module is found to be working satisfactory as regards to the excepted output from the module.
Integration Testing:-
Data can be lost across an interface. One module can have an adverse effect on another, sub functions, when combined, may not be linked in desired manner in major functions. Integration testing is a systematic approach for constructing the program structure, while at the same time conducting test to uncover errors associated within the interface. The objective is to take unit tested modules and builds program structure. All the modules are combined and tested as a whole.
a) Top down Integration:-
This method is an incremental approach to the construction of program structure. Modules are integrated by moving downward through the control hierarchy, beginning with the main program module. The module subordinates to the main program module are incorporated into the structure in either a depth first or breadth first manner.
b) Bottom-up Integration:-
This method begins the construction and testing with the modules at the lowest leveling the program structure. Since the modules are integrated from the bottom-up, processing required for modules subordinated to a given level is always available and the need for stubs is eliminated.
Validation:-
At the culmination of the integration testing, software is completely assembled as a package. Interfacing errors have been uncovered and corrected and a final series of software test begin in validation testing. Validation testing can be defined in many ways, but a simple definition is that the validation succeeds when the software functions in a manner that is expected by the customer. After validation test has been conducted, one of the three possible conditions exists.
a) The function or performance characteristics confirm to specification and are accepted.
b) A deviation from specification is uncovered and a deficiency lists is created.
c) Proposed system under consideration has been tested by using validation test and found to be working satisfactory.
Output Testing:-
After performing the validation testing, the next step is output testing of the proposed system, since no system could be useful if it does not produce the required output in a specific format. The output format on the screen is found to be correct; the format was designed in the system design time according to the user needs. For the hard copy also; the output comes as per the specified requirements by the user. Hence output testing did not result in any correction for the system.
User Acceptance Testing:-
User acceptance of a system is the key factor for the success of any system. The system under consideration is tested for the user acceptance by constantly keeping in touch with the prospective system users at the time of developing and making changes whenever required.
This is done in regard to following point:
a) Input screen design
b) Output screen design
c) Online message to guide the user
d) Format of reports and other outputs.
6.5 Preparation of Test Data:
The above testing is done by taking various kinds of test data. Preparation of test data plays as vital role in the system testing. After preparing the test data the system under study is tested using that test data. While testing the system by using test data errors are again uncovered and corrected by using above testing steps and corrections are also noted for future use.
Using Live Test Data:-
Live test data are those are actually extracted from organization files. After as system is partially constructed, programmers or analysts often ask users to key in a set of data from their normal activities. Then, the systems person uses this data as a way to partially test the system. In other instances, programmers or analysts extract a set of live data from the files and have they entered themselves.
It is difficult to obtain live data in sufficient amounts to conduct extensive testing. And, although it is realistic data that will show how the system will perform for the typical processing requirements, assuming that the live data entered is fact typical, such data generally will not test all combinations or formats that can enter the system. This bias towards typical values then does not provide a true system test and in fact ignores the cases most likely to cause system failure.
Using Artificial Test Data:-
Artificial test data are created solely for test purposes, since they can be generated to test all combinations of formats and values. In other words, the artificial data, which can quickly be prepared by a data generating utility program in the information systems department, make possible the testing of all login and control paths through the program.
The most effective test programs use artificial test data generated by persons other than who wrote the programs. Often an independent team of testers formulates a testing plan using specification.
6.6 Test Cases
Testing for valid user name:
Test case Input Test description Output
1 User name starts with number User name cannot start with number Appropriate error message
2 User name is left blank User name cannot be left blank Enter username
3 User name has number in between User name cannot have number in between Appropriate error message
4 User name entered Valid username User name accepted
Table 6.6.1
Testing for valid password:
Test case Input Test description Output
1 Password is left blank Password cannot be blank Enter password
2 First letter is space and space anywhere in the password No spaces allowed in the password Incorrect password
3 Invalid password entered Valid password must be entered Password mismatch
4 Valid Password Entered Password Matches Password accepted
Table 6.6.2
Testing for valid Email address:
Test case Input Test description Output
1 Email address with an @ symbol Email address cannot have @ symbol Appropriate error message
2 Email address with space Email address cannot have space Appropriate error message
3 Email address without above faults Valid email address Email address Accepted
Table 6.6.3
Testing for data insertion:
Test case Input Test description Output
1 Mandatory fields left empty Mandatory fields cannot be left empty Appropriate error message
2 Duplicate entry Duplicate entry not allowed Appropriate error message
3 Input without above faults Valid input Input accepted
Table 6.6.4
Testing for deletion:
Test case Input Test description Output
1 Deletion attempted when no entries present Entries, if not present ,cannot be deleted Appropriate error message
2 Valid deletion Valid deletion Entries deleted
Table 6.6.5
Testing for phone number:
Test case Input Test description Output
1 Phone number entered with alphabets Phone number cannot have alphabets Appropriate error message
2 Phone number entered with spaces Phone number cannot have spaces Appropriate error message
3 Valid phone number Valid phone number Number accepted
Table 6.6.6
Testing for change password:
Test case Input Test description Output
1 Any field left blank All fields are compulsory Appropriate error message
2 Invalid password Valid password must be entered Appropriate error message
3 Retyped password does not match Retyped password must match Appropriate error message
4 Valid input Valid input Password changed
Table 6.6.7
Other cases:
Test case Input Test description Output
1 Click on Menu view Browse through pages Different pages can be opened
2 Click on Logout Moving to main menu Goes back to the main page
3 Click on clear Entering details Record is not submitted to the database and Text boxes cleared
4 Click on save Entering details Record is submitted to the database
5 Click on save Not entering the details Appropriate error message is displayed
6 456789 Typing numbers in the field of letter Appropriate message will be displayed
Table 6.6.8
Chapter 7
Conclusion and Future Enhancement
7.1 Conclusion :
The software for Personal banking system is now designed and is ready to computerize the operations of banking transactions like depositing , withdrawing , requesting for chequebook through online and maintaining the same. The system is user friendly and can be operated by any user with minimal amount of training.
Using the proposed system:
• Efficiency is improved
• Storage and maintenance of database is easy
• Paper work is reduced.
7.2 Future Enhancement :
• New modules can be added without affecting the existing model
• The existing modules can be reused in future projects
• Can be moved our vision through National Level
• This Project can be extended with regional language support.
• New modules can be easily added as it requires only an addition of a new package on button click.
• We can include credit card transaction .