Bank Management System
Bank Management System
Bank Management System
CHAPTER 1
INTRODUCTION
TKM
INTRODUCTION
PROJECT OVERVIEW
The main Objective of "BANK MANAGEMENT SYSTEM is to prepare a software or application, which could maintain data & provide a user friendly interface for retrieving customer related details just in few seconds, with 100% accuracy. Software is completely computerized, so it is not time consuming process. No paper work required & can be implemented further. It contains two levels of users: - Admin, and User
MODULE DESCRIPTION
1. ADMIN MODULE
This module deals with all transaction of bank management. By using this module administrator can Create/Edit/View all details of customers, he can go for any transactions like withdraw and deposits money and also they view all the transactions. Various functions of Administrator are given below.
By using this functionality user can update an existing account. The new values are automatically updated in the database.
TKM
TKM
TKM
TKM
PROJECT REPORT BMS Visual Basic .NET, the latest version of visual basic, includes many new features. The Visual Basic supports interfaces but not implementation inheritance. Visual basic.net supports implementation inheritance, interfaces and overloading. In addition, Visual Basic .NET supports multithreading concept.
IMPLEMENTATION INHERITANCE:
Visual Basic.NET supports implementation inheritance. This means that, while creating applications in Visual Basic.NET, we can drive from another class, which is know as the base class that derived class inherits all the methods and properties of the base class. In the derived class, we can either use the existing code of the base class or override the existing code. Therefore, with help of the implementation inheritance, code can be reused.
TKM
PROJECT REPORT BMS Constructors are used to initialize objects, whereas destructors are used to destroy them. In other words, destructors are used to release the resources allocated to the object. In Visual Basic.NET the sub finalize procedure is available. The sub finalize procedure is used to complete the tasks that must be performed when an object is destroyed. The sub finalize procedure is called automatically when an object is destroyed. In addition, the sub finalize procedure can be called only from the class it belongs to or from derived classes.
GARBAGE COLLECTION:
Garbage Collection is another new feature in Visual Basic.NET. The .NET Framework monitors allocated resources, such as objects and variables. In addition, the .NET Framework automatically releases memory for reuse by destroying objects that are no longer in use. In Visual Basic.NET, the garbage collector checks for the objects that are not currently in use by applications. When the garbage collector comes across an object that is marked for garbage collection, it releases the memory occupied by the object.
OVERLOADING:
Overloading is another feature in Visual Basic.NET. Overloading enables us to define multiple procedures with the same name, where each procedure has a different set of arguments. Besides using overloading for procedures, we can use it for constructors and properties in a class.
MULTITHREADING:
Visual Basic.NET also supports multithreading. An application that supports multithreading can handle multiple tasks simultaneously, we can use multithreading to decrease the time taken by an application to respond to user interaction. To decrease the time taken by an application to respond to user interaction, we must ensure that a separate thread in the application handles user interaction.
PROJECT REPORT BMS Visual Basic.NET supports structured handling, which enables us to detect and remove errors at runtime. In Visual Basic.NET, we need to use TryCatchFinally statements to create exception handlers. Using TryCatchFinally statements, we can create robust and effective exception handlers to improve the performance of our application.
ADO.NET
ADO.NET is the latest in a long line of data access technologies released by Microsoft. ADO.NET differs somewhat from the previous technologies, however, in that it comes as part of a whole new platform called the .NET Framework. This platform is set to revolutionize every area of development, and ADO.NET is just one aspect of that. The ADO.NET classes are divided into two components: the Data Providers (sometimes called Managed Providers), which handle communication with a physical data store, and the Dataset, which represents the actual data. Either component can communicate with data consumers such as Web Forms and Win Forms.
DATA PROVIDERS
The Data Provider components are specific to a data source. The .NET Framework includes two Data Providers: a generic provider that can communicate with any OLE DB data-source, and a SQL Server provider that has been optimized for Microsoft SQL Server versions 7.0 and later. Data Providers for other databases such as Oracle and DB2 are expected to become available, or we can write our own. The two Data Providers included in the .NET Framework contain the same objects, although their names and some of their properties and methods are different. The Connection object represents the physical connection to a data source. Its properties determine the data provider (in the case of the OLE DB Data Provider), the data source and database to which it will connect, and the string to be used during connecting. Its methods are fairly simple. You can open and close the connection, change the database, and manage transactions. The Command object represents a SQL statement or stored procedure to be executed at the data source. Command objects can be created and executed independently against a Connection object, and they are used by Data Adapter objects to handle communications
DEPT. OF INFORMATION TECHNOLOGY INSTITUTE OF TECHNOLOGY 9 TKM
PROJECT REPORT BMS from a Dataset back to a data source. Command objects can support SQL statements and stored procedures that return single values, one or more sets of rows, or no values at all. A Data Reader is a fast, low-overhead object for obtaining a forward-only, read-only stream of data from a data source. They cannot be created directly in code; they are created only by calling the Execute Reader method of a Command. The Data Adapter is functionally the most complex object in a Data Provider. It provides the bridge between a Connection and a Dataset. The Data Adapter contains four Command objects: the Select Command, Update Command, Insert Command, and Delete Command. The Data Adapter uses the Select Command to fill a Data Set and uses the remaining three commands to transmit changes back to the data source, as required.
DATA SETS
The Dataset is a memory-resident representation of data. The Dataset can be considered a somewhat simplified relational database, consisting of tables and their relations. Its important to understand, however, that the Dataset is always disconnected from the data sourceit doesnt know where the data it contains came from, and in fact, it can contain data from multiple sources.
10
TKM
DATABASE
Microsoft Access for consideration for our project database development platform:
Microsoft Access is available with the Microsoft Office Professional suite of business products therefore no additional database software is required if your company purchases computers with this suite of products already installed.
Microsoft Access 2007 database is likely to be available and supported for years to come because Microsoft is the premier software company in the world MS Access is the most widely used desktop database system in the world. If database support is important to you then Access may be your best choice since Access has more support and development consultants than any other desktop database system.
Microsoft Access is significantly cheaper to implement and maintain compared to larger database systems such as Oracle or SQL Server. Microsoft Access consulting rates are typically lower for Access consultants compared to Oracle or SQL Server consultants. Fairly complex databases can be setup and running in 1/2 the time and cost of other large database systems (the simpler the database the greater the cost advantage).
Microsoft Access integrates well with the other members of the Microsoft Office suite of products (Excel, Word, Outlook, etc.). Other software manufacturers are more likely to provide interfaces to MS Access than any other desktop database system. When designed correctly, Access database can be ported (usually with some difficulty) to SQL server or Oracle. This is important if you want to start or develop a small database system and then migrate to the larger database management system and then migrate to the larger database management systems.
A Microsoft Access system can be placed on a website for access for remote users. Simple screens can be developed within Access, Data Access Pages or full
11
TKM
PROJECT REPORT BMS control and functionality can be implemented using ACTIVE SERVER PAGE (ASP) programming.
Why you should choose Microsoft Access Database! Microsoft Access provides users with one of the simplest and most flexible RDBMS solutions on the market today. Regular users of Microsoft products will enjoy the familiar Windows 'look and feel' as well as the tight integration with other Microsoft Office family products. If Microsoft Office is your preferred office software suite then it makes sense to seriously consider Microsoft Access as your database of choice. What are the Benefits? Cost Ease of use Support Access Database comes packaged with Microsoft Office Professional and so it may already be part of your SOE. As with all Microsoft product, Access Database has that familiar Windows 'look and feel' Microsoft Access is one of the best-selling desktop databases of all time. As such you can be sure of future support, and with Microsoft's backing it should be around for some time to come. Future proof Because Microsoft is constantly improving their database you can be sure that your investment is future-proof. Microsoft Access is not a dead end product. Multi-User Since the beginning, Access was designed to operate on a network. Microsoft says that the latest version will support 255 concurrent users; however in practice we would recommend a more comfortable limit of 15 to 20 simultaneous users. Cost of development The popularity of Access with database developers provides you with greater choice of developers and lower development rates consistent with a competitive market place.
DEPT. OF INFORMATION TECHNOLOGY INSTITUTE OF TECHNOLOGY 12 TKM
PROJECT REPORT BMS Rapid Application Development Scalable You can use Microsoft Access for Rapid Application Development thus keeping your costs down. Its object oriented model means you can build attractive, functional and easy to use applications in double-quick time. Access has an upgrade path. So, if performance starts to suffer from an ever increasing number of users or records, you can upsize to SQL Server. Integration Legacy data Access has been designed to works well with other products in the Microsoft Office suite. It has been designed with integration in mind. Access can import many data formats so your existing data is not lost. When properly exploited, and electronic data is available, this feature alone can save 100s of data input hours Web integration Access (2000 and later version) has close web links so online data access is made easier. With a shift towards e-commerce, Access's web integration could prove very useful, if not now, then sometime in the near future.
Multi-User Support While Microsoft specifications allow for up to 255 simultaneous users, multiple sources have found that no more than 12 users can successfully use a networked Access application before the delay in connections through the file system pose a problem. Also note that users must be attached to the local LAN and have access to the shared networked drive hosting the Access application. This is not a problem for small teams in one location, but once teams are spread across multiple locations the application access slows down significantly for all users. The maximum concurrent user count listed by Microsoft assumes that the data is stored in one Access Database while access to the data comes from a separate Microsoft Access interface, such as an Access Application Project. In this instance the Access application
13
TKM
PROJECT REPORT BMS resides on a users machine while the Access database data resides on a shared network drive to which all users need Read/Write access. While security is often not a consideration when deploying an Access database application, note that complete security can only be attained through folder security permissions. While users and roles can be defined in an Access database, it has been found relatively simply to circumvent these permissions and gain full access to the system. For secure access network administrators will need to grand and deny access to shared folders to the specific users who can access the database. More inherent in Microsoft access is the inability to easily use profile information about users. It is not trivial to store profile specific information about a user. For example, if a user is in one project, for them to see only their data in their queries, instead of data from all projects, data must be pulled when a user logs into the system from a table and stored globally. Then all queries must code in access to this property. Web application tools such as ASP.NET provide profile information built-in, and adding these filters to stored procedures is fairly trivial. Most government organizations create a standard version of Microsoft Office across the organization. All users have the same version and service pack of Office, allowing for simple deployment of the application. An Access database or Access Database Project can connect to a remote Microsoft Access database and retrieve information. Whenever a modification is made to the underlying database or user interface a new version of the Access Database must be loaded on the desktops of all users of the system. Scalability For relatively small data sets Access works very well for providing flexible information retrieval. It provides simple functionality to create pivot tables and generate graphical reports. Connections to the database are made using Jet or ODBC database connections. These connections work in small levels, but have more overhead when sending and receiving information.
DEPT. OF INFORMATION TECHNOLOGY INSTITUTE OF TECHNOLOGY 14 TKM
PROJECT REPORT BMS While up to 255 simultaneous connections are supported, this works in an environment where all users are on the same LAN (local area network). Once users become distributed across multiple locations, connections to the database slow down dramatically. This is primarily due to the fact that all connections to the database must be made through a mapped drive connection. Connecting to a remote mapped drive is much slower than native SQL Server or other database connections. Microsoft Access also has a file size limitation of 2 GB of data. While there is very little possibility of exceeding the file size in many cases, the amount of time needed to retrieve data for a query or report becomes exponentially long as the number of rows in a table increases. When a table exceeds tens of thousands of rows processing time for a query becomes minutes instead of seconds. Very often to retrieve information formatted in a way that is usable multiple nested queries are needed. Generally 3 or 4 nested queries are needed to retrieve the information in a usable format. In some cases one query is run to generate a table, after which another query is run to generate another table. This is done so that the final query can run quickly, but requires multiple steps by a user to generate the data in a usable format that can be retrieved in minutes instead of hours. This also adds a very large amount of work to make changes to a query or add additional data, as all underlying queries must be modified. Confusion can easily occur as unused tables exist in the database, often where only the database creator will know which tables to use at which time. Reporting As long as a strong understanding of SQL queries is understood and deep understanding of the underlying tables, reports can be created to extract and display information, including the ability to export the data to Excel or many other formats easily. These reports use the underlying queries to generate and format their data. They work very well, though not always quickly for large calculations or formatting. Generally a more robust reporting tool such as SQL Server Reporting Services, Crystal Reports or another application will retrieve this information faster and provide the same graphical
DEPT. OF INFORMATION TECHNOLOGY INSTITUTE OF TECHNOLOGY 15 TKM
PROJECT REPORT BMS and export options. The disadvantage to these solutions is that quickly creating a new report is not as easy as it is in Microsoft Access. Data Import Importing data into Microsoft Access is relatively simple for simple amounts of data. Performing large data imports and formatting of final data is more difficult in Microsoft Access than it is in more robust database tools such as SQL Server and Oracle. This is generally due to the modified version of SQL available in Microsoft Access. Fewer functions exist for formatting, extracting and updating data into disparate tables. Often to extract a specific set of data, such as a list of locations, the database administrator must create a query for that one action and run it to populate a location table. More robust tools allow for multiple queries to run at one time, and provide transactional processes, so that if any part of the import fails all changes are rolled back to a state before the import began. Remote Use For a user to use the system from a machine away from their office, they will need to have the same version of Microsoft Access installed. While this is not often a problem in government organizations, as mentioned above, it does require that users have access to the shared folder wherever they are located. Web based applications allow a user to access the system from any location that has Internet access. Web applications also allow for seamless updates to the system. If a new field is added to a form or report, the code is placed only on the Web server, and the new form appears to the user the next time they access or refresh a page. In an Access application, the new code must be sent to all users of the system. Without additional coding in the Access application to ensure the latest version is always used, it is possible that a user could use outdated code to update the application. This can allow for invalid data to be entered or invalid reports to be generated.
16
TKM
PROJECT REPORT BMS User Accessibility While Microsoft Office programs now meet (as of Office 2003) the governments standards for Section 508 accessibility, there is no guaranty that applications created in Microsoft Access meet those standards. If forms are used in the access application, more care must be taken in providing keyboard access and linking labels to fields for screen reader access.
17
TKM
CHAPTER 2
Lack of immediate retrievals Lack of immediate information storage Error prone manual calculation Registers may lost or damage Any unauthorized person can access confidential data.
In the existing system, the manual process, receiving datas from customers are done through manual records. These records are entered in manual process. In this process will take long time, separate workers are need to maintaining records. The information is very difficult to retrieve and to find particular information the user has to go through various registers. This results in inconvenience and wastage of time. The information generated by various transactions takes time and efforts to be stored at right place. Manual calculations are error prone and take a lot of time this may result in incorrect information
Main Aim of our project is to perform various banking tasks. To allow only authorized user to access various functions and Locate any A/C wanted by the user. Reduced clerical work as most of the work done by computer. Provide greater speed & reduced time consumption. To increase the number of A/C and customer.
19 TKM
THE OBJECTIVE is to prepare a software or application, which could maintain data & provide a user friendly interface for retrieving customer related details just in few seconds. This will reduce the manual workload and give information instantly. The software will maintain the list of A/C and customer record and balance status. The software will be user friendly so that even a beginner can operate the package and thus maintain the status of A/C and balance status easily.
20
TKM
CHAPTER 3
SYSTEM DESIGN
21
TKM
3. SYSTEM DESIGN
3.1 INPUT DESIGN
Input design is the process of converting user oriented input into a computer based format. The data flow diagram indicates logical data flows, data stores source and destinations. Input data are collected and organized into a group of numbered data. Once identified appropriate input media are selected for processing. The goal of input design is to make data entry as easy and free from errors as much as possible. Proper data validation checking is exercised to correct the mistakes made during data entry.
ADMIN MODULE
1. Test case
: LOGIN
Input Process
: ID, Password. : Click on the login link. If administrator enters ID and password correct it goes to the admin services otherwise displays the same page with an error message. : Displays the admin services page.
Output
2. Test case
: Name, Acno ,age, phno, address ,genderetc : Accept the details and check for validity : A new account is created.
22
TKM
: Account number and the new details : The new values are inserted into database : Details are updated to the database.
4. Test case
: WITHDRAW AMOUNT
: Account number and amount to be withdrawn : Calculate the balance amount. : Details are updated to the database : DEPOSIT AMOUNT
: Account number and amount to be deposited. : Calculate the balance amount. : Details are updated to the database
6. Test case
: Account no : Retrieve the details from database. : Transaction details are shown
23
TKM
USER MODULE
1. Test case : EDIT USER ACCOUNT
: Account number and the new details : The new values are inserted into database : Details are updated to the database.
2. Test case
: CHECK BALANCE
3. Test case
: Account no : Retrieve the details from database. : Transaction details are shown
24
TKM
25
TKM
Mana ges
Withdra w
Account
Deposit Acno
Accou nts
Age Acno Name Passwor d Address Balance Address Balance Passwor d Gender Acno Age
Admin
Gender
User
Name Email
Cre ates
Age
Deposi t
Vie w
TransI D
Edit
Vie w
A/cDetails
Balanc e Name TransI d
Vie w
Transaction
Account
Perfo rm
New a/c
Acno Name Passwor d
Transaction
Edit
A/c no
Name
Account
Withdra we
Deposit/ Withdraw
Emai l
Addres s
Addres s
Withdra w deposit
Name Addres s
Passwor d Emai l
balance
Ac-no
26
TKM
BalanceAmount Number Password IntroducedBy Acc_type Validity Text Text Text Text
27
TKM
Constraints Not null Not null Not null Not null Indexed
Key
Primary Key
28
TKM
Grant access Request for a/c details Reports Queries access BANKING PROJECT Request for member details Request for
Access
29
TKM
BANK DATABASE VERIFY A/c NUMBER Request a/c no & password & PASSWOR D If Yes
ADMINISTRATOR
DEPOSIT/ WITHDRA W
CHECK BALANCE
30
TKM
BANK DATABASE VERIFY A/c NUMBER Request a/c no & password & PASSWOR D If Yes
USER
ACCEPT CHOICE
EDIT AN ACCOUNT
CHECK BALANCE
31
TKM
NEW ACCOUN T
QUIT
ACCEPT DETIALS
BANK DATABASE
32
TKM
MODIFY A/C
DELETE A/C
QUIT
MODIFY RECORD
DELETE RECORD
BANK DATABASE
33
TKM
ADMINISTRATOR
ACCEPT CHOICE
CHECK VALID
DEPOSIT /
WITHDRA W
Balance amount
BANK DATABASE
34
TKM
ADMINISTRATOR/ USER
BANK DATABASE
CHECK VALID
Returns balance
ADMINISTRATOR/ USER
BANK DATABASE
CHECK VALID
ADMINISTRATOR/ USER
BANK DATABASE
CHECK VALID
36
TKM