Upload
aliramram
View
1.362
Download
2
Embed Size (px)
Citation preview
Chapter One: Banking System Analysis
1.1. Overview Of The Project:
This Project Report documents a part of the whole Banking Management
System (BMS) which includes all the components of System Development Life
Cycle. The project has been analyzed and explained very neatly in the System
Analysis Phase Chapter. The Project automates a part of the whole BMS system
for Arab Bank Company (ABC) Pvt. Ltd.
The inputs and outputs and all the policies of the Banking Management System
is done keeping in mind the policies implied by the Bank called ABC whose
policies have been adapted to develop the project. The purpose of this thesis is
to go over the main points that the author’s research will review in the field of
Banking Management System. With the aim of getting motivated for the scope
of this research and the current literature on this topic, a concise introduction to
Banks & Banking Systems are given:
1.2. Introduction to Banks :
A good way to understand how banks work is to imagine starting your own
bank; the first thing you need to do is put up some of your own money Owners
Equity (OE). You won’t receive a banking license unless you have your own
capital at risk. The bulk of all money transactions today involve the transfer of
bank deposits. Depository institutions, which we normally call banks, are at
very the center of our monetary system. Thus a basic knowledge of the banking
system is essential to an understanding of how money works. Let’s assume you
raise $6 million in cash with help from other investors or your own cash.
That will be the bank’s initial equity, the owner’s stake. Next you obtain a
charter, rent a building, furnish it with all the necessary equipment, hire and
train a staff, and open your doors for business. You’ll need to deposit some of
your initial stake at the Fed to go one step forward those funds will be used to
clear checks written by your own depositors. You’ll also need to keep enough
cash in the vault to meet the demand for withdrawals by your depositors.
1
Let's assume initial expenses of $1.2 million that leaves $4.8 million, of which
you allocate $2 million to vault cash and $2.8 million to your Fed account.
1.3. Bank Capital Requirements:
A bank's capital, also known as Owner’s Equity, is the margin by which creditors
are covered if the bank's assets were liquidated. A measure of a bank's
financial health is its Capital/Asset Ratio, which is required to be above a
prescribed minimum. In 1989 the U.S. adopted the capital requirements
established by the Bank for International Settlements (BIS) in Basel,
Switzerland. The minimum capital is specified as a percentage of the risk-
weighted assets of the bank.
The following table shows the weight assigned to each type of asset.
Asset Risk WeightCash and equivalents 0Government securities 0Interbank loans 0.2Mortgage loans 0.5Ordinary loans 1.0Standby letters of credit 1.0
The Bank for International Settlements rules set requirements on two categories
of capital, Tier 1 capital and Total capital:
Tier 1 capital is the book value of its stock plus retained earnings. Tier 2 capital
is loan-loss reserves plus subordinated debt. ** Total capital is the sum of Tier 1
and Tier 2 capital. Tier 1 capital must be at least 4% of total risk-weighted
assets. Total capital must be at least 8% of total risk-weighted assets.
1.4. Assets and Liabilities:
When a bank creates a deposit to fund a loan, its assets and liabilities increase
equally, with no increase in Owners Equity That causes its capital ratio to drop.
Thus the capital requirement limits the total amount of credit that a bank may
issue. It is important to note that the capital requirement applies to assets while
the reserve requirement applies to liabilities. The reserve requirement imposes
2
a lower limit on the amount of reserves a bank must own relative to the demand
deposits of its customers.
1.5. Bank Deposits and Reserves :
The monetary base is created by the Fed when it buys securities for its own
portfolio. Bank deposits themselves are not base money; rather they are claims
on base money. A bank must hold reserves of base money in order to meet its
depositors' cash withdrawals and to cover the checks written against their
accounts. Reserves comprise a bank's vault cash and what it holds on deposit
at the Fed, known as Fed funds. The Fed requires banks to maintain reserves of
at least 10% of their demand deposits, averaged over successive 14-day
periods.
1.6. The Circulation of Bank Reserves :
When a depositor writes a check against his account, his bank must surrender
that amount in reserves to the payee’s bank for the check to clear. Reserves are
constantly moving from one bank to another as checks are written and cleared.
At the end of the day, some banks will be short of reserves and others long.
Banks redistribute reserves among themselves by trading in the Fed funds
market.
Those long on reserves will normally lend to those short the annualized interest
rate on interbank loans is known as the Fed funds rate, and varies with supply
and demand. The reserve requirement applies only to the bank's demand
deposits, not its term or savings deposits. Thus when a bank depositor converts
funds in a demand deposit into a term or savings deposit, he frees up the
reserves that were held against the demand deposit. The bank can then use
those reserves in several ways. For example, it can hold them to back further
lending, buy interest-earning Treasury securities, or lend them to other banks in
the Fed funds market.
1.7. Accounting Needs:
3
In managing your bank, you will need an accounting system to determine how
your decisions are likely to affect the bank’s profitability. The most important
account is the balance sheet this shows at any given moment, the bank’s assets
(what it owns), its liabilities (what it owes to others), and its net worth (what
belongs to the owners). Net worth, or equity, is equal to assets minus liabilities.
Your equity should remain positive and preferably growing. If it ever gets too
low relative to total assets, your regulator may close the bank.
1.8. Balance sheets and Earning Forecasts:
If your bank does well the balance sheet will expand with new assets and
liabilities the Owner’s Equity should also increase. Assuming you retain some of
the profits in the bank rather than pay them all out as dividends to the owners.
You started with initial equity of $6 million. Let’s take a look at the balance
sheet after you have been in business for some time.
It is shown together with an earnings forecast for the coming year. The earnings
forecast are based on expected earning rates of the bank’s assets and the cost
of borrowed funds. Also shown is the expected cost of operations or fixed costs,
covering rent, insurance, utilities, salaries, etc. The entries in blue are items that
you might try to modify to see how they would affect the key performance
measure, the return on equity. Of course, you must maintain the required
minimum ratios set by the regulators.
4
1.9. Leverage Requirement:
In addition to the Bank for International Settlements capital requirement, the
U.S. imposes a separate leverage requirement on banks this is based on the un-
weighted sum of all balance sheet assets. Off-balance sheet assets such as
standby letters of credit are not counted. The minimum allowable ratio of Tier 1
capital to total assets is 3%. Bank regulators can increase that to as much as
6% depending on the quality of a bank’s assets. No leverage requirement is
specified for total capital.
An Example:
Assume a bank has the following assets:
Asset AmountCash and equivalents $40mGovernment securities $80mInterbank loans $100mMortgage loans $200mOrdinary loans $300mStandby letters of credit $80m
The total risk-weighted assets is 0 x $40m + 0 x $80m + 0.2 x $100m + 0.5 x
$200m + 1.0 x $300m + 1.0 x $80m = $500m. The bank must have Tier 1
capital of at least .04 x $500m = $20m and Total capital of at least .08 x $500m
= $40m.
In the example above, balance sheet assets total $720m. Assuming the bank
must meet a 4% leverage requirement, it must hold Tier 1 assets of at least .04
x $720m = $28.8m. Since that exceeds the $20m BIS Tier 1 capital
requirement, the leverage requirement governs.
1.10. Growth Management:
Note that your equity has grown from $6.0 million to $10.5 million due to
retained earnings. You have acquired a substantial amount in deposits, some of
which are ordinary checking accounts that pay no interest. Others were
5
borrowed at market rates. All deposits whether or not they bear interest have
associated costs. With the additional funds available from deposits, you have
redistributed your assets to what you hope will enhance future earnings: $5.0
million in reserves, $7.7 million in T-bills, $1.1 million in loans to other banks,
and $110 million in ordinary loans. You project net earnings for the coming year
after taxes of $1.51 million. That would be a return on equity of 14.38% and a
return on assets of 1.21%, which is quite reasonable performance.
1.11. Meeting The New Standards:
If a bank is having difficulty meeting the Bank International System capital ratio
requirements, there are a number of ways for it to increase the ratio. If it is
publicly traded, it can issue new stock or sell more subordinated debt. However
that may be costly if the bank is in a weak position. Small banks generally do
not have the option of selling new stock since most are not publicly traded. If
the bank cannot increase its equity, it can reduce its assets to improve the
capital ratio however shrinking the balance sheet is not attractive because it
hurts profitability another option is to seek a merger with a stronger bank.
1.12. Updating The Requirement:
Since the Bank International System capital adequacy requirements were defined and
adopted in 1989, banking has become far more complex. The Bank International
System has been working to better assess the risks in the various assets that banks
hold while the basic methodology of limiting a bank's risk-weighted assets relative to its
capital will be retained, more categories and revised weightings are now proposed.
How soon these revisions will be universally accepted however is difficult to
predict. This is enough information about the bank and banking system so that
we go inside to our company that we are developing this project for its need and
is called ARAB BANK COMPANY.
For farther information in banks and how banking system works please refer the
following site : - (http://www. Wfhummel .cnchost.com)
1.13. Organization Profile:
ARAB BANK COMPANY (ABC) is an increasing bank and it provides fully
reliable services matching the most in the banking system at realistic cost,
6
within the fixed time. The company was established in the year 1990 after the
defeat of civil services resulted from the failure of the Somali central
government. Many civil organizations emerged to give the people and provide
them financial or social services. The bank is the very view financial institutions
that have been working in Somalia for many years.
The bank simultaneously with the Transfer system has gone through many parts
of the region according to the security, social and financial situation which
prevailed in a specific point of time. This bank is the largest money transfer
company serving migrants from the Horn of Africa. Since its establishment in
1990, it has developed innovative money transfer services through the Internet
that gives a helping hand to thousands of Somalis. It is now familiar as the most
highly regarded reliable and efficient money transfer system in Africa especially
in Somalia. As well the money transfer system, ABC established an effective
bank system which provides the public with the most important bank services
and is online system. Money Business entity, organizations, government
agencies and individuals trust ABC bank and keep their cash in its Bank. From
here you can get that this company has more advantages to this developing
countries especially those in Horn-Africa and all customers will satisfy.
1.14. Project Profile
Like most of the colleges in the world Universities, Benadir University Faculty of
Computer Science requires Graduation project for Computer Science
department students to be recognized as a graduate of Benadir University. The
students are required to implement a real world project which provides a
solution for existing problems in local institutions. This project (Banking
Management System) was assigned to Abdurrahman Mohamed Abdi & Hussein
Abdullahi Daud to provide a better solution for ABC Company which currently
uses a manual system with more limitations.
So that they need improvement to a new system that is computerized to
become suite for the current technology and to provide solution to their
customers need sufficiently Without loss of time and getting boring. The project
must fulfill the requirement specifications of the company according to their
7
data follow of the bank and must be compatible with the growing data of this
company to solve the limitations to provide real solution. So this project will
solve part of the Banking Management System for the reason that Banking
System needs never end on the other hand it needs more budget and time to
fulfill all sides of Banking System.
This project will be able to fulfill Depositing System so any depositor will be
registered, after that he will be given Serial Number that will be identified to his
own account. On the other hand the project will be able to Withdrawal money
but after checking that if this money in the account or not, the project can print
balance sheet of the customer at the end of the month.
1.15. Project Objectives
The main objective of this project is to provide a solution for ABC Company a
better solution than the one they currently use. In the following sections I will
skim the current system with its limitations and the proposed system with its
benefits over the existing one.
WHY DOES ARAB BANK COMPANY NEED AN IMPROVEMENT FOR A NEW
SYSTEM?
There are several reasons that force this organization to a new system and they
are listed below:
The existing system takes more time for one task so that it is time loosing.
The current system has no security so the company’s data is in risk.
The employees get confused when the customers request there own
balances because it is written in books and needs more time to give
ground total.
It is not compatible with the growing data of the bank’s customers.
Data of the company have no back-up.
The current system has performance problems.
The current system can’t know black listed customers.
The current system does not use transaction processing mechanisms.
8
Time customization is very important because competitors are winning greater
market shares due to the implementation of computerized Banking systems that
allow them to do multiple tasks at a time. So that according to these limitations
and also needs on the other hand ABC Bank needs a computerized system to
provide their customers need suite, sufficient and without loosing time.
1.16. Existing System with Limitations
The current system of ABC Bank is implemented manually by the employee of
the Bank. Here you can understand that Banking System needs to take more
actions like registering a new customer for depositing or withdrawal money,
broadcasting income statement at the end of the month so as to inform the
depositors that this bank’s asset is liquid or not, and preparing balance sheets.
So that, in manual system there is more limitations to perform these actions and
to satisfy the customers need.
1.16.1. Problem Definition:
In related to these needs from the community ABC Company has these
limitations and they are as follows:
1. The employees get confused when the customers request there balances.
2. The owners of the company don’t know the income at the end of the
month.
3. The data of the company can’t be analyzed because it’s written in books.
4. The system can’t perform a quick search.
5. The customers increase so that the employees are very tired for doing
bank activities like registrations only.
6. The current system has performance problems.
7. The current system has no security.
8. The current system depends on Bank Building because it is not on-line.
9. The current system can’t know black listed customers.
10. This system is loosing more time to do one task like registering a new
customer or preparing balance sheet statement to a customer.
9
From here you understand that this company has all these limitations and needs
improvement to a new system that is computerized to fulfill all tasks of banking
system without getting tired and confused.
1.17. The New Proposed System
The new system allows multiple transactions at a time and enables time
customization. Also this system will be implemented using Microsoft Visual Basic
& Microsoft SQL Server 2000 so that this system takes the advantages of the
Visual Basic features. This new system will solve all limitations listed in problem
definition section and it also has new features and they are:
1.17.1. Features of the New System:
1. Visual Basic 6.0 is the front end of this system.
2. Microsoft SQL Server Database will become our data store.
3. Reports will be developed using Seagate Crystal Report 8.0.
4. Customers will get satisfied for the quick response of their requests.
5. Quick search is the most important in this system.
6. Different privileges will be given to the workers.
7. Back-up of data will be prepared to avoid the risk if data loosed.
8. The system provides a Graphical User Interface.
9. Owners of the company get income report every time they request.
10. Employees get pleasure for this new system.
11. The system has menus and easy options to navigation buttons.
12. The system is updatable any time.
13. Data can be analyzed easily through reports.
14. The system provides a convenient way to the staff for doing their duties.
15. The system able to preview the reports from the 1st month to the last
month.
1.17.2. Solution strategies:
To solve these problems and limitations of the current system and to satisfy the
customers need we decided to develop and build this proposed new system
which is applicable or feasible to the Banking Management System because this
10
system has many advantages and is reliable to the growing data of the
customers.
System Hard-Ware Specifications:
If
we get these three personal computers and this printer we are sure that this
new system is able and can solve the problems and limitations properly and
work effectively because we are using heavy applications that need more
memory like VB 6.0 & SQL SERVER 2000.
1.18. Feasibility Study in This Project:
Feasibility study is the process used for identifying if the problem can be solved
or not solved, determining objectives, and assessing the range of cost and
benefits associated with several alternatives for solving a problem. Feasibility
studies are important firstly to assess the feasibility of an application. All
projects are feasible given unlimited resources and infinite time. But the
development of software is plagued by the scarcity of resources and difficult
delivery rates. It is both necessary and prudent to evaluate the feasibility of a
project at the earliest possible time. Three key considerations are involved in
the feasibility analysis:
1.18.1. Technical Feasibility:-
Technical feasibility refers to the ability of the process to do all tasks that this
Banking Management System needs in order to fulfill the criteria. Technical
feasibility centers on the existing computer system (hardware, software, etc.)
and to what extent it can support the proposed addition. If the budget of the
proposed system is a serious constraint, then the project is judged not feasible.
The organization for which we are developing the system has the necessary
technology (i.e. in terms of hardware and software) to run the system and the
Computer & Printer
Type Processor RAM Hard Disk
Capacity
QTY
Pentium 4 Intel 3.0 GHZ 512 MB 40 GB 3
HP DeskJet 3744 --------------- -------- ------- 1
11
proposed equipment has the technical capacity to hold the data required to use
the new system.
The organization has different clients at different locations, which performs
different activities. This system is useful in establishing connection with
different clients and data transferring between clients and main server in the
future. The system will provide reliable and consistent data transfer. It also
provides security for data, which is transferring if necessary. The system will
avoid the interaction and corruption of data by the hackers by implementing the
best alternative of data security.
1.18.2. Economical Feasibility:-
This procedure is to determine the benefits and savings that are expected from
a candidate system and compare them with costs. If benefits outweigh costs,
then the decision is made to design and implement the system. Otherwise,
further justification or alterations in proposed system will have to be made if it is
to have a chance of being approved. This is an ongoing effort that improves in
accuracy at each phase of the system development life cycle.
The system developed and installed would be financially feasible when it is good
investment for the organization. The developed system cost would be
reasonable for the organization. The hardware and software required for running
the system are reasonable for the organization. Overall the system being
developed would be Feasible. Here we want to develop a computerized system
so it needs:
1. Developers
2. Trainers
3. Operational Costs
This table below show above data in a customized way.
S/N Professional Minimal Cost
1. Developers $ 1,500
2. Trainers $ 500
3. Operational Costs $ 400
12
Ground Total: $ 2,400
1.18.3. Operational Feasibility:-
This new system doesn’t need additional operating staff to operate the systems’
daily activities, the existing staff will be developed under training and giving
them seminars and finally they will take the responsibility of the new systems
workflow. Communities are inherently resistant to change, and computers have
been known to facilitate change. It is understandable that the introduction of a
candidate system requires special effort to educate, sell, and train the staff on
new ways of conducting business this test of feasibility asks whether the
developed system will work properly after it has been developed.
The developing system reliable and very fast compare to previous system.
Because this development is at system level only the employees who know
about computer software’s can only manage this system. The developer is
responsible for asking clarification, where necessary, and will not make any
alteration without the permission of the management or user. The developer is
responsible for installing the system (software) on the client's hardware,
conducting any user training that might be needed for using the system and
maintaining the system. The system being developed would be very fast in
execution. This system will provide reliable, secured data transfer.
By this proposed system we can avoid interaction of hackers and intruders by
implementing the Encryption and Decryption of the data. The main feature of
this system is time customization and to enable good concept in depositing and
withdrawal systems and also preparing balance sheet of the customer’s
accounts.
1.18.4. Feasibility Report :-
After we find the needs to build this new proposed system according to the
technological, economical, and operational modal, we illustrated that if we get
all these needs we will develop this new system in five months accurately. After
production of the software we will install it to your computers and it is able to
fulfill all requirements specifications listed below.
13
1.19. System Requirement Specifications:
The proposed new system will be able to fulfill these actions:-
1. Different privileges of users will be given.
2. Verification of username and passwords.
3. Validation of all inputs and outputs.
4. Checks different user privileges accurately.
5. Registration of a new customer.
6. Updates or Deletes customer related information.
7. Quick searching is enabled.
8. Gives reports between any intervals.
9. Processes deposit and withdrawal transactions.
10. Gives balances to the customers easily.
11. Users can be created by the administrator.
12. Make sure that the amount required is in the Account.
13. Changes passwords easily.
14. You can cancel easily any transaction you need with out losing data.
15. Owners can check the income and expenses easily.
After the specifications we suggested to build this new system using these two
applications listed below:
1.20. Project Development Tools:-
1. Microsoft Visual Basic 6.0
2. Microsoft SQL Server 2000
14
Chapter Two: Project Design and Methodology: -
Introduction:
The design phase involves converting the System Requirement Specification
(SRS) identified during the initiation and planning phases in to a logical Design
and then into Physical Design that the technical programmer can follow to
develop the project during the development phase. Design will play a bigger
role in every project, therefore; developing a good design is needed and related
to have enough information.
2.1 Design Methodology:-
2.1.1 Input Design:
Input design is the process of converting user-originated input to a computer-
based format. The goal of designing input data is to make data entry as easy as
possible, logical and free from errors as Possible. The design is developed
according to the requirements of the client or the user all the online information
is converted to computer based format and stored.
2.1.2 Output Design:
Output Design is the process of converting the already existing Data in the
system and presenting it to the user or client according To the required format.
Designing includes automatic billing System, automatic generation of receipts,
preparation of reports and other necessary screens. All the information stored at
input Stage is recalled from the backend server and the screens are developed
2.1.3 Database Design:
15
The database tables are created taking in view the structure of the system. The
goal of this part of system designing is to reduce Redundancy i.e. duplication of
fields in tables which are stored in The backend database Implementation of
security for the Database can be done by the usage of constraints, referential
keys Locking on the tables to protect from outside user. To maintain further
security of the database the passwords can also implemented. The database
designing invokes various concepts like normalization. The table can be linked
and the data retrieved by the help of references to the joined table.
In the design phase of this system we have three major parts:
Front End Design Microsoft Visual Basic 6.0
Back End Design Microsoft SQL Server 2000
Screen Designs or User Interface Designs.
2.2 Front End Design
The front end application can be designed by using different applicable tools to
develop the front end and request the following tools:
Context Diagram
Data Flow Diagram (DFD):
Physical DFD
Logical DFD
Pseudo Code
Therefore it is needed to explain accurately each of these tools in detailed way
respectively.
2.2.1 Context Diagram:
The top-level diagram is often called a “context diagram”. It contains a single
process, but it plays a very important role in studying the current system. The
context diagram defines the system that will be studied in the sense that it
determines the boundaries. Anything that is not inside the process identified in
the context diagram will not be part of the system study. It represents the
entire software element as a single bubble with input and output data indicated
by incoming and outgoing arrows respectively.
16
2.2.2 Data Flow Diagram (DFD): -
A graphical tool used to describe and analyze the moment of data through a
system manual or automated including the process, stores of data, and delays
in the system. Data Flow Diagrams are the central tool and the basis from which
other components are developed. The transformation of data from input to
output, through processes, may be described logically and independently of the
physical components associated with the system. The DFD is also know as a
data flow graph or a bubble chart.
Data Flow Diagram (DFD) it means representing a system at any level of detail
with a graphic network of symbols showing data flows, data stores, process, and
data source/ destination. Or is a graphical technique that depicts information
flow and transforms that are applied as data move to represent a system or
software at any level of abstraction.
DFD may be partitioned into levels that represent increasing information flow
and functional detail.
There are two types of data flow diagrams are: -
a) Physical DFD:
Structured analysis states that the current system should be first understand
correctly. The physical DFD is the model of the current system and is used to
ensure that the current system has been clearly understood. Physical DFD’s
shows actual devices, departments, people etc. involved in the current system.
b) Logical DFD:
Logical DFD’s are the model of the proposed system. They clearly should show
the requirements on which the new system should be built. Later during design
activity this is taken as the basis for drawing the system’s structure charts.
Purpose/ objectives:
The purpose of data flow diagrams is to provide a semantic bridge between
users and systems developers. It also provides process that is the incoming data
follow(s) into outgoing data follow(s); The diagrams are: Graphical, eliminating
thousands of words; logical representations, modeling WHAT a system does,
17
rather than physical models showing HOW it does it, hierarchal, showing
systems at any level of detail; The goal of the DFD is to have a commonly
understood model of a system; the diagrams are the basis of structured
systems analysis.
DFD are supported by other techniques of structured systems analysis such as
data structure diagrams, data dictionaries, and procedure-representing the
techniques such as decision tables, decision trees. DFD have the objectives of
avoiding the cost of:
Users/ Developers misunderstanding of a system, resulting in a need
recruit systems or in not using the system.
DFD are composed of the four basic symbols and we will illustrate here the
shapes of this system:
The External Entity symbol represents source of data to the system or
destinations of the data from the system.
The DFD arrow symbol represents movement/ motion of data.
The Data Store symbol represents data that is in the disk or not moving
(Delayed data at rest).
The process symbol represents an activity that transforms or manipulates
the data Combines, re-orders, converts, etc).
The Basic Notation used to create a DFD’s and any system can be represented
at any level of details using these four symbols.
Data flow: Data move in a specific direction from an origin to a Destination.
Process: People, procedures, or devices that use or produce (Transform) Data.
The physical component is not identified.
Source: External sources or destination of data, which may be People,
programs, organizations or other entities.
Data Store: Here data are stored or referenced by a process in the System
18
You can see neatly how this project is logically designed and understand
graphically all these diagrams
An external Entity of a system is an element (hardware/human) that gives the
system information for transformation through the software or received
information produced by the software. A storehouse of the data that allow the
use of one or more processes is called a data store the arrowhead indicates the
direction of data flow. Data flow diagrams can be expressed using special
symbols that are widely useful. These symbols can be used to indicate
processing nodes, data nodes, and data sources and data stores.
Here we are displaying a context diagram that is how data is logically connected
through the Software; the bank employees department makes transactions i.e.
depositing, withdraw ling and customer registration; where as the accounting
department needs accounting Information to do balance sheets and to generate
Income Statement at the end of the year. Thus the Management Section will
take the decision by getting the information of all activities. Therefore all of the
different bank departments use this application to do these different activities
and you can see diagrammatically below.
19
Data flow
Processing Node
Application
Auditing Department
Accounting Information
Audit Information
Data Store
Process
ManagementSection
Bank Department Accounting Department
This is the context diagram that is presentation how system works and all
activities are related into the software scheme.
20
Context diagram
Data Flow Diagram (Level 0): How Data Comes In and Goes Out Through the Project Cycle
Bank Department
Auditing Department
Accounting Department
Management Section
Accounting Information
Analyze Activities
Audit Information
Register Customers
Deposited Amount
Withdrawal Amount
Generate Activity Reports
Bank Data
Customers Data
Security Data
Authentication Process
This data follow is logically how data comes into and goes out with in the
depositing transaction so now we design how Deposit Activity done through the
bank application.
21
Data Flow Diagram: Level (1): - The Deposit process
Bank Operators
Bank Operators
Security dataAuthenticate Users
Update Customer Account
Generate Deposit Report
Check Customer
Bank Data
Old CustomerNew Customer
Registration
The bank operators before updating the customer data they check if the money
is in the account or not, if the amount that the customer needs is more than the
money that is in the account the software denies this action and gives feed back
to the customer.
And now you can see the second level of the project data follow diagrams that is
the withdrawal process and how is done inside the software.
22
Bank Operators
Bank Operators
Security dataAuthenticate Users
Update Customer Account
Generate Withdrawal
Report
Check Customer
Bank Data
Old CustomerNew Customer
Registration Ensure Amount in Account
2.3 Back End Design:
First of all this project will use Microsoft SQL Server 2000 as database so all data
will be stored in SQL tables. Here we will discuss different applicable tools that
back end design needs.
2.3.1 Entity-Relationship Diagram (ERD):
Introduction:
ERD is a graphical representation of organization data storage requirements so
it simplifies the problem to be solved easily wile retaining its essential features.
The entity-relationship model is a data model or diagram for high-level
descriptions of conceptual data models, and it provides a graphical notation for
representing such data models in the form of entity-relationship diagrams.
Entity Relationship Diagrams are a major data modeling tool and will help
organize the data in your project into entities and define the relationships
between the entities. This process has proved to enable the analyst to produce
a good database structure so that the data can be stored and retrieved in a
most efficient manner. Entity Relationship Diagrams has three different
components listed below:
1. Entities:An Entity is a thing (Object, Concept) being capable of an independent
existence and which can be uniquely. It is represented by a rectangle in the E-R
model.
2. Attributes:An attribute is property of an entity.
3. Relation-Ship:A Relationship and association between two (or more) Entities, it is represented
by diamond shaped box in the E-R model.
Entities in this system:
23
Data Flow Diagram: Level (2): - The Withdrawal process
The Entities in this system are: Users, Customers, and Transactions.
Relationships in this system: -We can find the relation-ship in this system by constructing and combining the
following data and thinking very neatly: -
1. Customer: - every customer may act one or more bank activities;
2. User: - every user can make many bank transactions;
3. Transaction: - every transaction is linked to one bank account and
4. Account No: - every customer need one bank account number.
This is showing neatly how data is linked to and how these entities are related
to one another. So in this system the Columns that are unique and taking
primary keys are:
1. Cust_ID (Customer ID);
2. User Code;
3. Acc_No (Account Number) and
4. Tran_ID (Transaction ID).
2.3.2 Data Dictionary:
Definition:
A data dictionary is a set metadata that contains definitions and representations
of data elements. Within the context of a DBMS, a data dictionary is a read –
only set of tables and views and shows all tables in the database. A data
dictionary is a database in its own dictionary among other things and it holds
the following information.
1. Login Table:
ConstraintsLengthData TypesDescriptionColumn Names
Not Null50nvarcharUser Identification codeUser Code
Not Null50nvarcharType of UserUser_Type
Not Null50nvarcharUser NameUser Name
Not Null50nvarcharUser Password Password
24
2. Account Types Table:
ConstraintsLengthData TypesDescriptionColumn Names
Not Null50varcharAccount ID NumberAccount No
Not Null 50nvarcharCustomer Account NameAccount Name
Not Null50nvarcharDescription of Account TypeDescription
3. Customer Registration Table:
ConstraintsLengthData TypesDescriptionColumn Names
Not Null25nvarcharCustomer ID NumberCust_ID
Not Null80varcharCustomer Full NameCust_Name
Not Null 30varcharCustomer Town or CityLocation
Not Null50varcharCustomer AddressAddress
Not Null35nvarchar Customer Phone NumberPhone No
Not Null35nvarcharCustomer Mobile NumberMobile No
Allow Nulls30varcharCustomer Postal CodePostal Code
Not Null 50varcharCustomer E-mail AddressEmail
Not Null30varchar Customer Contact TitleContact Title
Not Null4smalldatetimeCustomer Registration DateDate Joined
Not Null 50varcharCustomer Account NumberAccount No
Not Null 50varcharType Of Customer AccountAccount Type
Not Null50varcharCustomer Opening AmountOpening Balance
Allow Nulls9numericNational ID NumberIDNO
4. Deposit Table:
ConstraintsLengthData TypesDescriptionColumn Names
Not Null50nvarcharTransaction IDTran_ID
Not Null25nvarcharCustomer ID NumberCust_ID
Not Null80varcharCustomer Full NameCust_Name
25
Not Null50varcharAccount ID NumberAccount No
Allow Nulls50VarcharSome ExplanationDescription
Allow Nulls50nvarcharCancellation ReasonCancel Reason
Not Null50nvarcharStatusStatus
Not Null 50nvarcharAmount DepositedAmount_Dep
Not Null4smalldatetimeDate DepositedDated
5. Withdrawal Table:
ConstraintsLengthData TypesDescriptionColumn Names
Not Null50nvarcharTransaction IDTran_ID
Not Null25nvarcharCustomer ID NumberCust_ID
Not Null80varcharCustomer Full NameCust_Name
Not Null50varcharAccount ID NumberAccount No
Not Null50nvarcharDescriptionDescription
Allow Nulls50nvarcharCancellation ReasonCancel Reason
Not Null50nvarcharStatusStatus
Not Null 50nvarcharAmount WithdrawnAmount With
Not Null4smalldatetimeDate WithdrawnDated
2.3.3 Pseudo Code: -
Introduction:
Pseudo Code: is a short hand way of describing a computer applications rather
than use of the exact syntax of programming languages, or it is a code that is
written in words that are more general than the specific narrow code of the
programming languages; and the aim of this type of code is its is easier and
more understandable for a person who is a non-programmer to recognize the
general work of the project.
1. Pseudo Code Main Form:
Check User Type
26
If User Type is Administrator PRINT All Main Form MenusElse If User Type is Depositor Display the Depositor MenusAnd Hide Other MenusElse If User Type is WithdrawalShow the Depositor MenusAnd Hide Other Menus
DO CASE CASE Transactions is true Subprogram Transactions CASE Registration is true Subprogram Registration CASE Deposit is true Subprogram Deposit CASE Withdrawal is true Subprogram Withdrawal
2. Pseudo Code for Deposit Form:
DO INPUT "Select the Account ID # to update." Read customer Account from file IF Customer Account is valid THEN Add amount to Customer Account ELSE PRINT “Invalid Customer Account!”.Exit subprogramEnd ifEND DO
IF choice is Return THEN Return to the Transactions Main Menu END IF END of Subprogram
3. Pseudo Code for Withdrawal Form:
DO INPUT "Select the Account ID to update." Read customer Account from file IF Customer Account is valid THEN If Account Has enough Balance Subtract Amount from Customer Account ElsePRINT “NO enough funds available!”
27
Exit sub program
2.4 User Interface Design: -
User interface is perhaps the most important part of the Application. As a user IT
is probably more concerned about the Interface rather than the underlying
code. Since designing a user Interface is the best approached, as an interactive
process in the form of a dialogue between the user and the developer, a perfect
Design in the pass is a rarity. Most of the functions in the application can be
executed using only one form. All the section names are presented in the form
of Menus as of links.
Each of these links presents a section as per the System design. The startup
form presents as a link to the modules. For Entry into the department the user
has to supply valid user ID and password to log on to the application. The menu
bar has all menus pertaining to the different Sections of the particular module
and is initially blank.
All Forms that we will use to design this banking management system project
are listed below:
1. Loading Form
2. Welcome Form
3. Login Form
4. Main Form
5. Customer Registration Form
6. Deposit Form
7. Withdrawal Form
8. Calendar Form
9. Calculator Form
10. About Us Form
11. About Application Form
12. User Registration Form
13. Account Types Form
14. Deposit Cancellation Form
15. Withdrew Cancellation Form
28
16. Change Password Form
1. Loading Form
2. Welcome Form
3. Login Form
4. Account Types Form
29
5. Main Form
6. Customer Registration Form:
30
7.7.7.
Deposit Form:
8. Deposit Cancellation Form
31
9. Withdrawal Form:
10. Withd
rawal Cancellation Form
32
11. User Registration Form:
12. Change Password Form:
13. Calendar Form:
33
14. Calculator Form
15. About Application Form:
34
16. About Us Form:
35
Chapter Three: System Coding And Testing
3.1 System Testing
A testing tool is a place of software, which implements one or more of these
functions. The borderline between a true tool and special purpose testing is
necessarily vague, but the following appear to be characteristics of testing tools
a. Generalized Interface:
A true tool should allow the user flexibility in specifying the testing
requirements and the program under test.
b. Reusability:
A tool should be able to successfully service the just use that is the lifecycle of a
tool should open the lifecycle of several applications. The development of test
data itself may involve processes, which are combinationally explosive when
expressed as functions of the number of program components so that hand
calculation is out of the question. For many applications checking calculated
results against expected results is not feasible manually. Output files may be
too large for hand inspection, expected output may be derived by independent
execution for an executable specification, correctness of output may be
determined by performance constraints or the number of executions required
may be excessively large. In such cases special programs are required to
examine the results of execution and determined automatically the correctness
of execution on test case. The maintenance of test files, logs and
documentation may also be automated for similar reasons.
3.2 Analysis Tool Classification
Testing tool analyze characteristics obtainable from program structure with out
regards to the excitability of the program under test. The tools that perform this
function are usually classified by functions.
1. Code Auditing:
36
Code auditing refers to the examination of source code to determine whether or
not specified programming practice rules have been followed.
2. Consistency checking:
A consistency check determines whether or not units of program text are
internally consistent in the sense that they implement a uniform notification of
terminology.
3. Cross referencing:
Cross-referencing are dictionaries relating entities by logical name
4. Interface analysis:
Interface analysis checks the interfaces between program elements for
consistency
5. Dataflow analysis:
Dataflow analysis originated in compiler optimization studies.
6. Error checking:
Error checkers determine discrepancies their importance and causes.
4.1 System Testing:
The philosophy behind testing is to find errors. Test cases are devised with this
in mind. A strategy employed for system testing is code testing.
4.2 Code Testing:
This strategy examines the logic of the program. To follow this method our
project Supervisor developed some test data that resulted in executing every
instruction in the program and module i.e. every path is tested. Systems are not
designed as entire nor are they tested as single systems. To ensure that the
coding is perfect two types of testing is performed or for that matter is
performed or that matter is performed or for that matter is performed on all
systems.
Types of Testing:
4.2.1 Unit Testing:
37
In this application developer tests the programs up as system. Software units in
a system are the modules and routines that are assembled and integrated to
form a specific Function; Unit testing first done on modules, independent of one
another to locate errors. This enables to detect errors. Through these errors
resulting from interaction between modules initially avoided.
Example:
Let us assume a customer need his own balance and also to take some amount,
the application searches the customer using his name as shown in figure 1.
After getting the customer information the bank operator asks how much
amount he need. Thus, see the application you will clearly understand all above
words in detail. First of all Withdrawal Form will be displayed and then the bank
operator will click Withdraw Button to start new transaction and the cursor will
be in the customer number text boxes; next that is to get the customer
information press F2 to search the customer by name as shown in figure 1.
When you get the customer no, name, account number and his balance in the
form then the operator will enter the withdrawn amount and some description
then customer can take his amount at the time. And the amount that the
customer has taken will be reduced from his balance.
Figure 1: Customer Searching
Figure 2: Withdrawing
38
Project Code of Module Form:
'Public Declaration Section
Public rs As New ADODB.Recordset
Public rsSearch As New ADODB.Recordset
Public cnBank As New ADODB.Connection
Public rsCustomers As New ADODB.Recordset
Public rsDeposit As New ADODB.Recordset
Public rsWithdrawal As New ADODB.Recordset
Public rsAccTypes As New ADODB.Recordset
Public rsTemp As New ADODB.Recordset
Public rsUsers As New ADODB.Recordset
Public x As Integer
Public NewRecord As Boolean
'Opens Database And All Tables
Public Sub connectDatabase()
Set cnBank = New ADODB.Connection
cnBank.ConnectionString = "Provider=SQLOLEDB.1;Integrated
Security=SSPI;Persist Security Info=False;Initial Catalog=DBBANK;Data
Source=." cnBank.Open
Set rsCustomers = New ADODB.Recordset
rsCustomers.Open "Select * From tblCustomers", cnBank, adOpenKeyset
Set rsDeposit = New ADODB.Recordset
rsDeposit.Open "Select * From tblDeposits", cnBank, adOpenKeyset,
adLockOptimistic
39
Set rsWithdrawal = New ADODB.Recordset
rsWithdrawal.Open "Select * From tblWithdrawals", cnBank, adOpenKeyset
Set rsAccTypes = New ADODB.Recordset
rsAccTypes.Open "tblAccTypes", cnBank, adOpenKeyset, adLockOptimistic
End Sub
'Clears Form Controls
Public Sub clear_Form_Controls(frm As Form)
Dim ctrl As Control
For Each ctrl In frm.Controls
If TypeOf ctrl Is TextBox Then
ctrl.Text = ""
ElseIf TypeOf ctrl Is ComboBox Then
ctrl.Text = ""
Else
End If
Next ctrl
End Sub
'Locks Form Controls
Public Sub Lock_Form_Controls(frm As Form)
Dim ctrl As Control
For Each ctrl In frm.Controls
If TypeOf ctrl Is TextBox Then
ctrl.Locked = True
ElseIf TypeOf ctrl Is ComboBox Then
ctrl.Locked = True
ElseIf TypeOf ctrl Is MaskEdBox Then
ctrl.Enabled = True
End If
Next ctrl
End Sub
'Unlocks Form Controls
40
Public Sub UnLock_Form_Controls(frm As Form)
Dim ctrl As Control
For Each ctrl In frm.Controls
If TypeOf ctrl Is TextBox Then
ctrl.Locked = False
ElseIf TypeOf ctrl Is ComboBox Then
ctrl.Locked = False
ElseIf TypeOf ctrl Is MaskEdBox Then
ctrl.Enabled = True
End If
Next ctrl
End Sub
'Closes Database
Public Sub disconnectDatabase()
cnBank.Close
End Sub
'Selects Text Control
Public Sub selectTextControl(txtCtrl As TextBox)
txtCtrl.SelStart = 0
txtCtrl.SelLength = Len(txtCtrl.Text)
End Sub
'Selects Mask Control
Public Sub selectMaskControl(maskCtrl As MaskEdBox)
maskCtrl.SelStart = 0
maskCtrl.SelLength = Len(maskCtrl.Text)
End Sub
'Checks Database Status
Public Sub CheckDatabaseStatus(rsStat As ADODB.Recordset)
With rsStat
If .BOF = True And .EOF = True Then
41
MsgBox "There are currently No records Available for this module",
vbInformation
Exit Sub
End If
End With
End Sub
'Moves To First
Public Sub MoveToFirst(rsFirst As ADODB.Recordset)
With rsFirst
Call CheckDatabaseStatus(rsFirst)
.MoveFirst
If .BOF Then
.MoveFirst
MsgBox "This is the first Record..", vbInformation
Exit Sub
End If
End With
End Sub
'Moves To Previous
Public Sub MoveToPrev(rsPrev As ADODB.Recordset)
With rsPrev
Call CheckDatabaseStatus(rsPrev)
.MovePrevious
If .BOF Then
.MoveFirst
MsgBox "This is the first Record..", vbInformation
Exit Sub
End If
End With
End Sub
'Moves To Next
42
Public Sub MoveToNext(rsNext As ADODB.Recordset)
With rsNext
Call CheckDatabaseStatus(rsNext)
.MoveNext
If .EOF Then
.MoveLast
MsgBox "This is the last Record..", vbInformation
Exit Sub
End If
End With
End Sub
'Moves To Last
Public Sub MoveToLast(rsLast As ADODB.Recordset)
With rsLast
Call CheckDatabaseStatus(rsLast)
.MoveLast
If .EOF Then
.MoveLast
MsgBox "This is the last Record..", vbInformation
Exit Sub
End If
End With
End Sub
'Allows Integer Values
Public Function GetIntValues(ByVal Key As Integer) As Long
If Key = 0 Then Exit Function
If Key = 46 Then Exit Function
If (Key >= 48 And Key <= 57) Or (Key = 8 Or Key = 13) Then
GetIntValues = Key
Else
a = MsgBox("Integer Values Are Allowed", vbInformation, "Integer Limited")
End If
43
End Function
'Allows Characters
Public Sub ValidNonNumeric(KeyAscii As Integer)
KeyAscii = Asc(UCase$(Chr$(KeyAscii)))
Select Case KeyAscii
Case Asc(" ")
Case 65 To 90
Case 97 To 122
Case 32
Case 13
Case 8
Case 127
Case Else
MsgBox "Invalid Input. Please Don't Enter Numerics...", vbOKOnly +
vbExclamation
KeyAscii = 0
End Select
End Sub
Project Code of Deposits Form:
Dim currBalance As Currency
Private Sub cboCustomerNo_GotFocus()
cboCustomerNo.ToolTipText = "Press F2 To Select Customer Information"
End Sub
Private Sub cboCustomerNo_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyF2 Then
frm_searchdep.Show
End If
End Sub
Private Sub cboCustomerNo_LostFocus()
cboCustomerNo.ToolTipText = ""
44
End Sub
Private Sub cmdCancel_Click()
frm_canceldep.Show
Unload Me
End Sub
Private Sub cmdDeposit_Click()
NewRecord = True
Call clear_Form_Controls(Me)
Call UnLock_Form_Controls(Me)
cboCustomerNo.Locked = True
txtcustname.Locked = True
txtAccountNo.Locked = True
Call GenerateNewTransactCode
cboCustomerNo.SetFocus
End Sub
Private Sub cmdQuit_Click()
Unload Me
End Sub
Private Sub cmdSave_Click()
If txtTransactionID.Text = "" Then
MsgBox "Please Enter the Transaction ID.", vbInformation
txtTransactionID.SetFocus
Exit Sub
End If
If cboCustomerNo.Text = "" Then
MsgBox "Please Enter the Customer ID", vbInformation
cboCustomerNo.SetFocus
Exit Sub
End If
If txtAccountNo.Text = "" Then
45
MsgBox "Please Enter the Account No.", vbInformation
txtAccountNo.SetFocus
Exit Sub
End If
If txtDescription.Text = "" Then
MsgBox "Please Enter the Description.", vbInformation
txtDescription.SetFocus
Exit Sub
End If
If txtAmountDeposited.Text = "" Then
MsgBox "Please Enter the Amount to Deposit.", vbInformation
txtAmountDeposited.SetFocus
Exit Sub
End If
With rsDeposit
If NewRecord = True Then .AddNew
!Tran_ID = txtTransactionID.Text
!Cust_ID = cboCustomerNo.Text
!Cust_Name = txtcustname.Text
!AccountNo = txtAccountNo.Text
!Description = txtDescription.Text
!Amount_Dep = txtAmountDeposited.Text
!Dated = txtDated.Value
!Status = "OK"
.Update
MsgBox "Deposited Successfully ...", vbInformation, "Banking Management
System 1.0"
End With
'Updating Customer Balance
Set rsTemp = New ADODB.Recordset
rsTemp.Open "Select * From tblCustomers where Cust_ID='" &
cboCustomerNo.Text & "' " & " and AccountNo='" & txtAccountNo.Text & "'",
cnBank, adOpenKeyset, adLockOptimistic
46
currBalance = (CCur(lblBalance.Caption) + CCur(txtAmountDeposited.Text))
With rsTemp
!OpeningBalance = currBalance
.Update
.Requery
.Close
End With
Call clear_Form_Controls(Me)
End Sub
Private Sub Form_Load()
Call connectDatabase
txtDated.Value = Date
Call Lock_Form_Controls(Me)
End Sub
Public Sub GenerateNewTransactCode()
Dim lastnumber As Long, newnumber As Long
'Check if there are records in the file
With rsDeposit
If .BOF = True And .EOF = True Then
lastnumber = 1000
Else
.MoveLast
lastnumber = !Tran_ID
End If
'Generate New Number
newnumber = lastnumber + 1
txtTransactionID.Text = newnumber
End With
End Sub
Private Sub txtAmountDeposited_Change()
If Len((txtAmountDeposited.Text)) > 15 Then
47
MsgBox "Limited to 15 Numerics", vbInformation
txtAmountDeposited.Text = ""
txtAmountDeposited.SetFocus
Exit Sub
End If
End Sub
Private Sub txtAmountDeposited_KeyPress(KeyAscii As Integer)
KeyAscii = GetIntValues(KeyAscii)
End Sub
Private Sub txtMode_LostFocus()
If txtMode.Text = "" Then
MsgBox "Select the Mode of Transaction", vbInformation
End If
End Sub
Project Code of Withdrawals Form:
Dim currBalance As Currency
Private Sub cboCustomerNo_GotFocus()
cboCustomerNo.ToolTipText = "Press F2 To Select The Customer Information"
End Sub
Private Sub cboCustomerNo_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyF2 Then
frm_searchingWith.Show
End If
End Sub
Private Sub cboCustomerNo_LostFocus()
cboCustomerNo.ToolTipText = ""
End Sub
Private Sub cmdCancel_Click()
48
frm_cancelwith.Show
Unload Me
End Sub
Private Sub cmdQuit_Click()
Unload Me
End Sub
Private Sub cmdSave_Click()
If txtTransactionID.Text = "" Then
MsgBox "Please Enter the Transaction ID.", vbInformation
txtTransactionID.SetFocus
Exit Sub
End If
If cboCustomerNo.Text = "" Then
MsgBox "Please Enter the Customer ID", vbInformation
cboCustomerNo.SetFocus
Exit Sub
End If
If txtAccountNo.Text = "" Then
MsgBox "Please Enter the Account No.", vbInformation
txtAccountNo.SetFocus
Exit Sub
End If
If txtDescription.Text = "" Then
MsgBox "Please Enter the Description.", vbInformation
txtDescription.SetFocus
Exit Sub
End If
If txtAmountWithdrawn.Text = "" Then
MsgBox "Please Enter the Amount to Deposit.", vbInformation
txtAmountWithdrawn.SetFocus
Exit Sub
End If
49
Dim rsTempq As New ADODB.Recordset
rsTempq.Open "Select * From tblCustomers where Cust_ID='" &
cboCustomerNo.Text & "' " & " and AccountNo='" & txtAccountNo.Text & "'",
cnBank, adOpenKeyset, adLockOptimistic
If CCur(txtAmountWithdrawn.Text) > rsTempq!OpeningBalance Then
MsgBox "You Can't Withdrew This Money, Because Your Balance Is: " +
lblBalance.Caption, vbCritical, "BMSP"
Exit Sub
txtAmountWithdrawn.Text = ""
End If
With rsWithdrawal
If NewRecord = True Then .AddNew
!TransactionID = txtTransactionID.Text
!CustomerID = cboCustomerNo.Text
!Cust_Name = txtcustname.Text
!AccountNo = txtAccountNo.Text
!Description = txtDescription.Text
!Amount_With = txtAmountWithdrawn.Text
!Dated = txtDated.Value
!Status = "OK"
.Update
MsgBox "Withdrewed Successfully ...", vbInformation, "Banking Management
System 1.0"
End With
'Updating Customer Balance
Set rsTemp = New ADODB.Recordset
rsTemp.Open "Select * From tblCustomers where Cust_ID='" &
cboCustomerNo.Text & "' " & " and AccountNo='" & txtAccountNo.Text & "'",
cnBank, adOpenKeyset, adLockOptimistic
currBalance = (CCur(lblBalance.Caption) - CCur(txtAmountWithdrawn.Text))
With rsTemp
!OpeningBalance = currBalance
.Update
50
.Requery
.Close
End With
'Customer Balance Is Updated]
Call clear_Form_Controls(Me)
End Sub
Private Sub cmdWithdraw_Click()
NewRecord = True
Call clear_Form_Controls(Me)
Call UnLock_Form_Controls(Me)
cboCustomerNo.Locked = True
txtAccountNo.Locked = True
txtcustname.Locked = True
Call GenerateNewTransactCode
cboCustomerNo.SetFocus
End Sub
Private Sub Form_Load()
Call connectDatabase
Call Lock_Form_Controls(Me)
txtDated.Value = Date
End Sub
Private Sub txtAmountWithdrawn_Change()
If Len((txtAmountWithdrawn.Text)) > 15 Then
MsgBox "Limited to 15 Numerics", vbInformation
txtAmountWithdrawn.Text = ""
txtAmountWithdrawn.SetFocus
Exit Sub
End If
End Sub
Private Sub txtAmountWithdrawn_KeyPress(KeyAscii As Integer)
Call ValidNumeric(KeyAscii)
51
End Sub
4.2.2 Link Testing:
Link testing does not test software but rather the integration of each module in
system. The primary concern is the compatibility of each module. The
Programmer tests where modules are designed with different parameters,
length, type etc.
Chapter Four: System Implementation
System Implementation includes all those activities that take place to convert
from the old system to the new system. No system is ever perfect. Errors must
be eliminated before the system is really installed for actual implementation.
The system is tested for Banking Management from failures and unsuitability
then the system testing comes which verifies that the whole set of programs
52
hangs together. Following system testing is acceptance testing or running the
system with offline data by the actual user.
4.1 Plans of Implementation:
Implementation includes all those activities that take place to convert from old
system to new system the project test is totally new, replacing the old system.
This method includes the implementation of the system on a single module or
on several modules on the whole.
4.2 Maintenance:
Maintenance covers a wide range of activities including correctly coding and
design protecting from errors, updating documentation and test date and
upgrading user support. Many activities classified as maintenance means
restoring some thing to its original condition. Unlike hardware and software
does not wear out it is corrected. In contrast, an enhancement means adding,
modifying or redeveloping the code to support changes in the specifications. It
is necessary to keep up with user needs and the operational environments.
The primary activities of maintenance procedure are to reduce maintenance
costs. Maintenance demands more orientation and training than any other
programming activities, especially for entry level programmers. The
environments must recognize the needs of the maintenance programmer for
tools, methods and training. The project must be maintained and revised
periodically. It must adopt to change easily without any resistance. The change
must be implemented to get the required output.
Chapter Five: Conclusion And Recommendation
5.1 Introduction:
In this final chapter the results of this study will be presented. In the first section
it will be assessed to what extent the objective of this research assignment has
been fulfilled. Furthermore concluding remarks will be formulated using problem
53
formulation and research questions as set up in the introductory chapter. At the
end of the first section a suggestion is put forward what these results in fact
constitute in terms of Arab International Bank policy. In the second section of
this chapter the content of the thesis as well as the process in which is has been
shaped will be reflected upon. In addition suggestions for further research are
put forward.
The development of a system to be used in an organization needs a careful and
complete study of the policies and practice in an organization and a through
understanding of the technology used including the present system. The
Analysis state must consider the major operational areas and the justifiability of
a computerized information system developed. The requirements determination
phase must attend sincerely to the understanding of the related areas under
consideration such as how operations are performed. Who performs them the
frequency of occurrence the underlying problems and possible solutions etc.
Therefore thus phase analyzer the application thoroughly and identifies goals
and constraints for the system design. Implementation, testing and evaluation
are an important and crucial moment in the development of any system. The
user should be totally satisfied with the developed system. All the above-
mentioned steps have been thoroughly taken care and implemented in
“BANKING MANAGEMENT” system undertaken for the almost satisfaction
through “ARAB BANK COMPANY LTD.”, Mogadishu.
After more tire and great endeavor we successfully ended the other phases
although we recognize that there can’t be any complete thing done by human
being but also we did our best and our project is completed successfully.
According to our effort we really think that we did our best and this project is
completed ninety five per cent (95%) with good user interface design.
Such knowledge may help public authorities and other interested parties plan
for the accelerated diffusion of similar technologies in the future, in Somalia and
elsewhere. Finally we would like to identify the strengths and weak points of our
54
project, because every thing has weakness as well as strengths except the
creator of all so we will talk about them as follows.
5.2 Strengths:
This project has capability to provide successful and adequate activities
for the users who need to do registration as well as depositing and
withdrawing transactions etc.
The system can make cancellation actions when wrong transaction occurs
with editing if it needed.
This bank system provides the users storeroom and right to use his
account of customer’s records with reliability of data safety.
The administrator has ability to change the passwords of his account and
others.
The system considers data protection its goal and is very integrated.
Validations of all inputs are carefully managed and verifications of
different user privileges are done accurately.
5.3 Weaknesses:
This project was developed using VB 6.0 as front-end and SQL SERVER
2000 as back-end thus the system may get some run time errors as soon
as different version of operating system is used and these errors are very
simple limitation.
The system does not have complete departments to develop each
department her phase so all phases are done by us.
The research has presented a simple model of banking functions for
making different terms of bank transactions so this system does not use
credit cards and checks to add or deduct balances.
55
The system is not on-line banking so all transactions are done through one
computer that this project is installed.
5.4 Future Enhancements:
Many activities known as maintenance are actually enhancements.
An enhancement of a system means adding, modifying or redeveloping
the code of that system to support changes.
This research focused on the transactions of bank systems that are off-
line; future research may study the use of the on-line banking system.
In the requirement specification of the system it is necessary to keep up
with the different changes and user’s need and their daily work.
The user can easily add to the existing project taking the scope of the
project into consideration
We will make an effort to take a credit cards and customer check numbers
to deduct or add balances.
We will add a good quality reports and also On-line banking system will be
improved to this project to fulfill all needs of the company and the
customers.
5.5 Scope of the Project:
The scope of the project “BANKING MANAGEMENT SYSTEM” has been described
and can be extended to give the flexibility of performing registrations to the
customers, and also bank transactions such as depositing and withdrawing. This
project mainly concentrates on bank transactions and also gives reports.
5.6 Software Performance:
Registrations of Customers can be done quickly;
Quick searching is enabled;
Customers can get there account information reports;
Different privileges of users are given.
All transactions can be cancelled easily without losing data.
56
All Customers information is stored;
Updating of account types is possible.
Different transactions can be done at a time.
Validations and verifications are important.
5.7 Recommendations:
This thesis has provided some interesting material for further study. First rather
practical and obvious suggestions are the development of the local banks
market. This study already gave some approaching in the enormous
changeableness of this region markets. Given the different of bank resources
and the growing number of consuming customers this changeableness seems
somewhat guaranteed for the next decades, so studies within this field are
bound to be interesting.
In addition one can think of more regionally oriented research such as on the
development of the European Banks market or the development of Asian Banks.
More theoretically oriented issues arose from this thesis as well. It was indicated
that different theoretical insights delivered different perceptions of the current
developments on the bank markets. This thesis put some light on Banking
Management System (BMS) and firm performance link with the help of available
literature.
Besides quite a number of research activities are underway in large companies
We can say that current momentum of research activity, if continued in a same
way, might bring valuable findings for the development and understanding of
concrete theory on BMS and performance link. As research identifies the need
for solid framework to demonstrate BMS and firm performance such finding of
continued research can be valuable for future. Here one point takes our
attention is the difference between large and small firms with respect to
administration of business operation especially the management of employees.
In this line, when we study relevant literature either it is on scant or context
specific with a focus on explorations only. Emerging research in this area is
considered as focused on the exploration and comparison with large firms.
57
Several studies recommend for more future research on questions like how, and
why beside what. In such a situation, few recent studies on BMS and
performance link have been conducted in Somalia. These mainly focus on BMS
formalization and few of them have investigated the link between BMS and firm
performance.
58