Beruflich Dokumente
Kultur Dokumente
INTRODUCTION........................................................................................................... 2
USER REQUIREMENTS:................................................................................................ 3
DATABASE DESIGN:..................................................................................................... 4
CREATING THE DATABASE........................................................................................... 7
DATABSE ACCESS....................................................................................................... 8
GUI............................................................................................................................. 9
CONCLUSIONS.......................................................................................................... 16
FUTURE SCOPE......................................................................................................... 17
REFERENCES:........................................................................................................... 17
INTRODUCTION
Banking databases involve a large amount of information that needs to be
updated or modified very frequently with every transaction made or every
new customer added. Designing such a database system with proper
relations
between
each
entities
is
very
important
for
the
proper
implementation of the system. Apart from handling of the data, data analysis
is also becoming increasingly significant in the current scenario.
With the introduction of credit score system bank managers are now
interested in analyzing the spending pattern of the account holders to decide
their credit scores. These credit scores are used to decide the interest rates
given to the customers on their credit cards or loan rates. The customers are
also interested in their spending patterns so that they can understand how to
balance their spendings to improve their credit score.
The banking systems these days are required to calculate the credit scores
using a complex set of calculations. Such a decision support system takes in
to account many factors to calculate the credit score. This application is
based upon a similar system by making use of the number of transactions a
customer makes and their current balance the account. The score calculated
is termed as credit points. The banker can use this credit points of the
customer to make decision on the loan value he/she is eligible for the
customer.
USER REQUIREMENTS:
The application is designed as an entry level banking database management
system with controls for both the customer and the banker. A user is required
to input the correct combination of ID and password to access the system.
The customer and banker has different levels of access. The banker has
control over almost the entire system whereas the customers control is
limited to his/her account.
The customer on clicking on the start image in the welcome page is asked for
his account number and password. The customer is given the option of
checking his balance and his transaction pattern.
For the banker the application allows him to have control over all
functionalities. The banker can make additions to the customer database, or
modify the data of any customer. Apart from that the banker should be able
to make transaction for a particular customer and the transaction should be
stored in the database along with the ID of the banker. The application
should enable the banker to look the transaction pattern for any customer
account with graphs.
This application should also incorporate a decision support system where it
helps the banker in deciding the eligible loan amount for an account holder.
This can be done using the number transactions made by the customer and
his account balance level.
DATABASE DESIGN:
CONCEPTUAL DESIGN
The design of the database system consisting all the entities and attributes
is shown in figure 1. The diagram is an enhanced entity relationship diagram
as it contains super classes and sub classes. While developing the physical
database, this diagram was refers to as the base of the database model.
Cardinalities:
1)
2)
3)
4)
5)
entity.
Banker can make transactions for multiple accounts.
An account can have one or more transactions made by multiple
6)
bankers.
Employee is a superclass which has two complete disjoint sub class
banker and non-banker.
The super class employees has two complete-disjoint sub classes; banker
and non-banker. The relation transaction is made an associate entity. This
makes it possible to keep track of each transaction made by any banker for a
given account number.
Assumptions:
For the efficient working of the system a few assumptions were made. They
are
1)
2)
3)
banker.
A customer can view only one account owned by him/her at a given
time. The login ID for the customer is, therefore, account number.
LOGICAL DESIGN:
The relational database model involves the use of tables as relations with
fields in the tables defining the attributes of each relation. Figure 2 shows the
logical layout of the banking database along with the connection between
relations using foreign keys.
Customer
FIRS
T
NAM
E
LAS
T
NAM
E
C_I
D
PAS
SWOR
D
ID
TY
PE
ID_N
O
ADDR
ESS
PH.N
O.
E-MAIL
ID
Accounts
AC. NO.
AC.
TYPE
C_ID
BALANCE
REWARD POINTS
Transactions
TRANSACTIO
N_ID
EMP_I
D
AC.
NO.
DAT
E
TYPE OF
TRANSACTION
AMOUNT
Banker
EMP_ID
PASSWORD
Non-Bankers
EMP_ID
POSITION
Employees
EMP_ID
FIRST NAME
LAST NAME
SSN
PH. NO.
ADDR
ESS
All the primary keys in each table is underlined. Other than the primary keys
there are foreign keys that the tables account, transaction, banker, nonbanker have which are referred from other tables in the database. Since such
systems are required to generate the instance identifiers automatically some
of the primary keys were generated by the database itself. The primary keys
like transaction_ID, C_ID, AC.NO were defined as auto increment. This meant
that whenever a new record was added to the tables containing these
attributes
as
on auto-increment
would
Figure 3. Description of
Customer Table
Figure 4. Description of
Account table
Figure 5. Description of
Employee table
Figure 6. Description of
Transaction table
DATABSE ACCESS
Figure 3 shows how the data is retrieved from the SQL database to display in
the VBA GUI or in excel sheets. For viewing of customer information the data
is retrieved and stored in a hidden excel sheet during form initialization.
Once the search criteria has been entered in the form and the enter
command button is clicked the required filter is applied to the excel sheet
and the sheet is made visible. However, for other searches like transaction
query, balance check, transaction queries are dynamically retrieved from the
database according the data entered in the forms.
DATA IN CSV
FILE
SQL DB TABLES
DISPLAY
REQUIRED DATA
IN VBA FORMS
OR EXCEL
SHEETS
STORE
REQUIRED DATA
IN EXCEL
SHEEETS
GUI
The user interface was created using a mixture of both user forms in VBA
and excel worksheets. The user forms are used for entering data in to the
database or for entering search queries. The excel sheets are used for
displaying the search results and to display the graphs for showing the
transaction pattern of an account to the account holder or banker.
Since the goal of the application is to provide database access to both
customers and bankers there are forms of different controls depending upon
the user. The homepage for the application is welcome worksheet in excel.
A snapshot of the welcome page is shown in figure 9.
10
11
12
Figure 10 and 11 shows the user forms for the user selection and
authorization. The account number and password combination is checked by
selecting data from the SQL customer table that matches the value input by
the user. If no record is returned from SQL, the ADODB recordset is empty
and for that condition a message saying Wrong ID/password is displayed.
On entering the right account number password combination the user taken
to the customer Account history
page.
The account history user form is
shown in figure 12. The account
number that the user enters in the
authorization window is passed to
this form which is displayed as a
13
label. There are three options here for the customer. The check balance
button displays the current balance in the account on a message box.
The other two option buttons are for looking at the deposit and withdrawal
histories for the account. This is done by making the transaction spreadsheet
for that account visible with type of transaction filtered by withdraw or
Deposit.
On clicking the option for deposit or withdraw history transaction history is
Figure 12. User form for customer
account info
objects is selected as the date and amount column values. So the source
data for the graph is refreshed on every click on the get chart button.
The chart rendered for the transaction is shown in figure 14. The chart is
created in a new sheet and is 3D bar chart.
to new user page where he can input new data or modify existing data. The
transaction query option in the banker control page works similar to the way
of customer transaction. However, the banker select the account number he
wishes to see.
16
Figure 16 and 17 shows the user forms for creating a new account and
customer in the database. Both forms creates a new record in the respective
database tables.
The user forms for displaying customer information and updating customer
information is shown in figure 18 and 19. Both the operations can be done on
the basis of various parameters as visible from the figure.
For
transaction
query
of
any
to
input
the
account
to
view
deposit
or
withdrawal history for that account. The functioning of the transaction table
display and graphs is same as the customer part of the application. The user
form is shown in figure 20.
The calculate score button asks for the account number for which the credit
points are to be calculated. Once the account number is entered the
application calculates the score for the account number at that moment
depending upon the number of transactions made by the customer and the
balance available in the account. The user forms is shown in figure 21.
18
CONCLUSIONS
The application created as an entry level banking database system can be
used to perform low level operations in a banking environment. Operations
like adding a new customer or new account can be done easily. The main
part of the application is its ability to display the transactions made on
account in excel as wells as in the form of bar charts. This can help the
banker and the customer in analyzing the performance that account which
can be helpful in making decisions regarding loan eligibility. Apart from
analyzing the application also has the ability to calculate the credit points
the account has depending on the number of transactions made and the
balance in the account. Making this a decision support system.
FUTURE SCOPE
1) Automatic generation of credit score and credit history.
2) Interfacing VBA with third party statistical software (e.g.. JMP) we can
forecast the spending pattern of customers and how their credit history
will change.
REFERENCES:
1) https://www.youtube.com/user/MySQLChannel
2) www.w3schools.com.
19