Sunteți pe pagina 1din 42

Index

1. Problem Statement and Team Architecture


1.1 Problem Statement
1.2 Project Description and Details
1.3 Team Architecture
1.4 Definitions, Acronyms and Abbreviations
2. Specific Requirements
2.1 Functional Requirement
3. Requirement Analysis
3.1 Data Flow Diagram(DFD)
3.1.1 Context Level DFD
3.1.2 Level 1 DFD
3.1.3 Level 2 DFD
3.1.4 Level 3 DFD
3.2 Data Dictionary
3.3 Mini specification
4. High Level Design
4.1 Screen Design (User Interface)
5. Low Level Design
5.1 Functions and prototype
5.2 Data types
5.3 Flow Chart
5.3.1 Account Management Flowchart
5.3.2 Transaction Management Flowchart
5.3.3 Loan Sanctioning Flowchart
5.3.4 Fixed Deposit Flowchart
5.4 Test Plan
6. Testing
6.1 Test Case
6.2 Test Report
7. Bibliography
1.1 Problem Statement
A retail bank wants to automate the system of account management, transaction,
loan sanctioning and fixed deposit. The automation involves maintenance of
costumers, maintenance of account and personal details of costumer, monitoring
and keeping track of transactions taking place in any account, checking the
eligibility of the applicant customer for loan approval, keeping track of loan
disbursement and loan repayment, providing fixed deposit facility, monitoring
employee working hours and calculating payroll. A customer can have a current
account, a saving account or a recurring deposit account. The saving and recurring
deposit accounts are liable for interest payment after certain duration of time. All
the information and documents provided by the customer are maintained in a
separate database. A customer can perform transactions like deposit, withdrawal
or direct transfer from an account. The bank can provide home loan, education
loan and personal loan with different rate of interests. A customer can have a
fixed deposit made for different rate of interest with plenty of time period options.
For each employee details like employee id, employee name, etc. are maintained
and working hours are monitored to calculate the payroll every month.
1.2 Project Description and Details
A retail bank wants to reduce the human efforts and thus wants to computerize the
whole bank. For this, the bank wants to automate all the processes related to
Account management, Transaction management, Loan sanctioning and fixed
deposit.
In account, the customer will have three choice, current account, savings account,
and recurring deposit. In current account the customer will not get any interest on
his/her deposited money, but in case of savings account and recurring deposit, the
interest will added to customer’s account. Withdrawal from current account and
savings account can be perform anytime but in case of recurring deposit, customer
has to wait for a fixed duration of time.
In case of transaction, the customer can deposit, withdraw and transfer money to
any other person.
The bank can loans such as home loan, education loan and personal loan with
different verification processes and rate of interests. Home loan will be provided
in parts depending upon the needs. Its duration is more and the rate of interest is
less. Education loan will be given to the educational institute only.
A customer can have fixed deposit made for different rate of interests with plenty
of time period options varying from 7days to 10years, the customer will decide
how long the period of fixed deposit will be, in between the whole duration the
rate of interest will remain the same. The customer can break the fixed deposit
anytime he/she wants and the calculated interest will be deposit to the account.
The payroll of each employee will be calculated through the working hours and
overtime hours.

1.3 Team Architecture:


Akshay Jain (Project leader and System Analyst)
Aastha Mishra (Requirement gatherer and System Analyst)
Naman Jain (designer and Coder)
Praveen Vishwakarma (Tester)
1.4 Definition, Acronyms and Abbreviations

User Requirement Specification [URS]: The user requirement(s) document (URD)


or user requirement(s) specification (URS) is a document usually used in software
engineering that specifies what the user expects the software to be able to do.

Data Flow Diagram [DFD]: A data flow diagram (DFD) is a graphical representation of
the "flow" of data through an information system, modelling its process aspects. A
DFD is often use as a preliminary step to create an overview of the system without
going into detail, which can later be elaborated.

Software Requirement Specification [SRS]: A System Requirements


Specification (SRS) (also known as a Software Requirements Specification) is
a document or set of documentation that describes the features and behavior of
a system or software application.

Low Level Design [LLD]: Low-level design (LLD) is a process that follows a
systematic refinement process. This process can be used for designing data
structures, required software architecture, source code and ultimately, performance
algorithms.

Structured Oriented language: Structured Programming is a design, which focuses


on process/ logical structure and then data required for that
process. Structured Programming is also known as Modular Programming.
2.1 Functional Requirement

Account management: In this module the functional requirements are:


 Opening account: An account should be open irrespective of type constraint. [Essential]
 Editing details: Details of account in the database should change. [Desired]
 Closing account: Details of account in the database should delete. [Desired]

Transaction management: The functional requirements are:


 Withdrawal: On request, money must be withdrawn. [Essential]
 Deposit: On request money must be deposit in account. [Essential]
 Transfer: On request, amount transfer should take place. [Desired]

Loan sanctioning: In this module the functional requirements are:


 Loan sanction: On document verification, loan amount should transfer to beneficiary
account. [Desired]
 Pay Back: Installment of the loan must be deposit in bank. [Essential]

Fixed deposit: Fixed deposit of the full or partial amount in account to make. [Desired]
3.1 Data Flow Diagram
3.1.1 Level 0 DFD
3.1.2 Level 1 DFD
3.1.3 Level 2 DFD
3.1.4 Level 3 DFD
3.1 Data Dictionary
Field Data Type Size Description
Name Char 50 Name of account owner
Address Char 200 Full residential address
Mobile_no Char 40 Owner’s Mobile number
Aadhar_no Char 50 Required for account opening
Gender Char 10 Owner’s Gender

Religion Char 10 Owner’s Religion

Category Char 10 Essential

E_mail Char 50 Optional

Account_ type Char 25 Essential

Account_no Char 50 Essential

Balance Float 40 Provided by Bank

Marital_status Char 10 Owner’ Marital Status

Date_of_Birth Struct 12 Essential

Account_DOB Struct 12 Provided by Bank


3.3 Mini Specification
Account management
Open account- following format will be followed
 System will ask for valid documents,
 after submitting documents, If documents approved
 System will ask for the type of account
 If account is recurring deposit
 System will ask for duration
 Then entry of account will be made in database
 Else if account is savings or current
 Entry of account will be made in the database
Edit account- following format will be followed
 System will ask for identification such as customer id or account number for login
 After login system will ask for changes to be perform
Close account- following format will be followed
 System will ask for identification such as customer id or account number for login
 After login, data from the database will be removed

Transaction management
Deposit - following format will be followed
 System will ask for customer id or beneficiary account number
 After identification
 Database entry will change and new value will be saved

Withdrawal- following format will be followed


 System will ask for documents for identification such as passbook, ATM card
 After identification
 Database value will change and new value will be saved

Transfer- following format will be followed


 System will ask for beneficiary account number
 After verification of correct account number
 Value of sender’s database entry will decrease, and
 Value of beneficiary’s database will increase
 New values of both the databases will be saved
Loan sanction

Home loan- following format will be followed


 System will ask for documents related to home loan
 After verification of the documents
 Duration and installments are decided
 Part of loan is deposited into customers account
 Database has been updated
 Remaining parts will be deposit when needed

Education loan- following format will be followed


 System will ask for documents related to education loan
 After verification of the documents
 Loan amount will be given to the university
 Duration is up to graduation completion

Personal loan- following format will be followed


 System will ask for documents related to personal loan
 After verification of the documents
 Duration and installments will be decided
 Full amount of loan is deposited to customer’s account
 Database has been updated

Payroll -following format will be followed


 System will calculate the working hours and overtime hours
 Then it will calculate the salary of each employee
 Then deposit the salary to employees account
 And database will update

Procurement -following format will followed


 System will ask for documents for each service
 After verification of the document
 System will store them in a database
 And rest documents will be rejected

Fixed Deposit -following format will be followed


 System will ask for customer's account number
 If amount in the account is less than that of decided for fixed deposit
 Then amount will be deposit in the account
 Then a fixed deposit certificate will be generate
 And amount will be deducted and database will be updated
 Else if amount is sufficient
 Then fixed deposit certificate is generated
 And amount will be deducted and database will be updated
4.1 Screen Design

The Front view of the project

View of account management


Opening an account
Before update

After update
Editing an account
Passbook before editing
Passbook after editing

Closing an account
5.1 Functions and Prototype

menu() – This function displays the menu or welcome screen to perform different banking
activities mentioned below.

acc_management( ) -The customer can manage existing or new bank account from these
function. This Function allow the user to update, search and manage the existing account as well
as open a new bank account.

new_account( ) - This function creates a new customer account. It asks for some personal and
banking details of the customer such as name, date of birth, address and phone number. You can
enter the amount to deposit and choose one type of deposit account – saving, current, or
reoccurring. The customer is requested to fill out the entries in order to successfully generate a
new bank account so that the customer can store money and follow further transactions.

view_account( ) - These function will show all the account details of the customer. This
function also shows all the transactions report including the total amount left at the end of each
successful transaction. Correct account information like account number should be required in
order to view details of customer’s account. If not entered correct account information, then it
can’t be accessed.

edit_account( ) - This function has been used for changing the account information of a
particular customer account .This function is only for customers who are authenticated . Correct
account information like account number should be required in order to edit details of customer’s
account. If not entered correct account information, then it can’t be accessed.

close_account( ) - This function is for deleting a customer account. This function is only for
customers who are authenticated. Correct account information like account number should be
required in order to close customer’s account. If not entered correct account information, then it
can’t be accessed.

transaction( ) - This function provides option to deposit and withdraw amount from the given
account number. After each successful transaction, current balance is displayed on the screen
along with the previous transaction history.
deposit-mon() - In this function the customer enters a request for depositing the money into
his/her accounts. This function inputs the deposit form and money for deposit. There is certain
limit on the amount an account can posses.

withdrawal() - This function is used to withdraw money from ones account. This requires the
request for withdrawal and gives the required amount as output. For successful withdrawal the
account must have sufficient balance. The no. of transactions are also recorded. After certain no.
of free transactions there would be charges applied on each transaction.

transfer() - This functions allows a customer to send money to any other account in the same
bank from his/her own account. The customer must have an account in the bank and there should
be sufficient balance in his account for transfer.

loan_sanc( ) - Through this function the customer can request the system for loan sanctioning.
The inputs to this function is loan application. The customer has to make sure that he holds an
account in the bank.

home_loan() - This function process the request for home loan sanctioning. The inputs to this
function are loan application and required documents. The documents are then verified and loan
is processed. The output from this function are loan sanctioning letter and loan disbursement
cheque .

edu_loan() - This function process the request for home loan sanctioning. The inputs to this
function are loan application and required documents. The documents are then verified and loan
is processed. The outputs from this function are loan sanctioning letter and loan disbursement
cheque on the name of institution.

pers_loan() - This function process the request for home loan sanctioning. The inputs to this
function are loan application and required documents. The documents are then verified and loan
is processed. The outputs from this function are loan sanctioning letter and loan disbursement
cheque / D.D.

fixed_deposit( ) - This function is used to provide fixed deposit to the customers. The inputs
to this function are f.d. application. The customer must hold an account in the bank and account
must have sufficient balance. The outputs from this function are F.D. Certificate.
5.2 Data Types

There are Three types of data types in c programming language: -


1.Primary (Built-in) Data Types
2.Derived Data Types
3.User Defined Data Types

Primary Data Types

Various Operations are performed on the values stored in these data types for the calculation
purpose and also for the implementation of the algorithm. Commonly used primary data types
are int, float, and char.

Derived Data Types

Derived Data types like array of characters are used to store the customer’s name, email and
other personal information.

User Defined Data Types

User Defined Data Types like Structures are used in the programming for storing group items of
different data types. The user-defined data types which are used in the code are new_acc and
date.

The new_acc data type is used to group together the entries of the customer at the time of
opening a new account. The new_data type is also used for storing a customer’s information
which is fetched from the file by using file handling.

struct new_acc
{
char name[50];
char address[200];
struct date dob;
struct date accdob;
char mobile[40];
char fname[50];
char aadhar_no[50];
char email[50];
char gender[10];
char martial[10];
char religion[10];
char category[10];
char acc_type[25];
float money_acc;
char acc_no[12];
}

The date data type is used for storing the date of birth and account opening date of the customer.
These date type groups together the day, month and the year.

struct date
{
int dd;
int mm;
int yy;
}

Remarks—There were no need for the implementation of any data structure in the code.
5.3.4 Fixed Deposit Flowchart

Customer

Fixed Deposit
Request

Bank

Account Details

Rejected Insufficient
Checking
Request balance Account
Balance

Suffic
ient
balan
ce
Processing
F.D. Balance
Database

F.D. Certificate
5.3.2 Loan Sanctioning Flowchart

Customer

Loan Sanctioning
Request

Bank

Document
Procurement

Rejected Request and Denial Document


Documents Verification

Approval

Loan Details
Loan Processing Document
Database Database

Loan Disbursement
letter/Cheque/D.D.
5.3.2 Transaction Flowchart

Customer

Transaction Request
(Deposit/Withdrawal/Transfer0

Bank

Account Details

Reject Denial Checking


Transaction
App
rov
al

Process
Transaction

Balance
Database
Transaction
Details / Amount
5.3 Flowchart
5.3.1 Account Management Flowchart

Customer

Account Management
(Open / Close / Edit)

Bank

Document
Procurement

Rejected Denial Document


Documents Verification
Appr
oval

jsj
hd
iu
Requesthu
ui
Processing
dc
gy
ds
gci
yg
di
ud
Accountckj Account Details
Database
5.4 TEST PLAN
“Error are present within the software under testing” this should not be the aim of
software designers they must have been designed the software with the aim of producing
it with zero error.

Unit testing: A module is tested separately and is often done by the coder himself
simultaneously along with the coding of the module. The purpose is to exercise the
different part of the modules code to detect coding error.

Integration testing: The modules are gradually integrated into subsystem, which are
integrated to eventually from the entire system. Integration testing is perform to detect
design errors by focusing on testing the interconnection of modules.

System testing: After the system is put together, it is performed. The System is tested
against the system requirement to see if entire requirement is met and if the system
performs as specified by the requirements.

Acceptance testing: The final is initial development where the software is put into
production and runs actual business. It is performed to demonstrate to the client, on the
real life data of the client, the operation of the system.
6.1 TEST CASE:
A test case, in software engineering, is a set of conditions under which a tester will
determine whether an application, software system or one of its features is working as it
was originally established for it to do.

TEST CASE 1:

TEST CASE NUMBER 1


TEST CASE User interface

SYSTEM Banking Management


SUB SYSTEM Fixed Deposit

EXECUTION DATE
SORT DESCRIPTION Verification of account Balance,

TEST CASE 2:

TEST CASE NUMBER 2

TEST CASE User interface


SYSTEM Banking Management
SUB SYSTEM Account section

EXECUTION DATE
SORT DESCRIPTION Create new account, View an account, edit an
account, close an account and exit; option shows
on user interface
TEST CASE 3:

TEST CASE NUMBER 3


TEST CASE User interface

SYSTEM Banking Management

SUB SYSTEM Loan Department


EXECUTION DATE

SORT DESCRIPTION Request a loan, Pay EMI, Go to main menu; option shows
on user interface

TEST CASE 4:

TEST CASE NUMBER 3

TEST CASE User interface


SYSTEM Banking Management

SUB SYSTEM Transaction Department


EXECUTION DATE

SORT DESCRIPTION Bank to bank transfer, Deposit into account, Withdraw from
account, Go to main screen; option shows on user interface
6.2 TEST REPORT

STEPS ACTION EXPECTED PASS/F COMMENT


OUTCOME AIL
1 Press 1 to create new An account Pass Account created
account opening form successfully.
appears
2 Press 2 to view an Choice of Pass Account found.
account searching keys
appear
3 Press 3 to edit account Choice of data we Pass The data we wanted to
want to update is edit was edited
given successfully.
4 Press 4 to close an A form asking Pass Account terminated
account your account successfully.
detail appears

STEPS ACTION EXPECTED PASS/F COMMENT


OUTCOME AIL
1 Press 1 to go to Reach the Pass You can access various
account management account options within account
section having section
accounting
options
2 Press 2 to go to Transaction Pass Access to various
transaction manager section is transaction tasks allowed.
opened.
3 Press 3 to go to fixed Fixed deposit Pass Fixed deposit department
deposit section section is accessed.
opened
4 Press 4 to go to loan Loan Pass Loan related options are
department department displayed on screen.
options are
displayed
5 Press 5 to exit System is Pass System is exited.
closed
STEPS ACTION EXPECTED PASS/FAIL COMMENT
OUTCOME
1 Press 1 to A loan request Pass Loan
request t loan from appears successfully
sanctioned.
2 Press 2 to pay EMI Pass EMI payment
EMI submission successful
portal appears
3 Press 3 to go Main screen Pass Navigated to
back to main appears main screen.
screen

STEPS ACTION EXPECTED PASS/FAIL COMMENT


OUTCOME
PASS/FAIL
1 Press 1 for Bank to bank Pass Transaction
bank to bank transferring completed
transfer form appears successfully
2 Press 2 to Deposit form Pass Account
deposit into appears credited
account
3 Press 3 to Withdrawal Pass Account
withdraw from amount is debited.
account asked and
amount can be
withdrawn.
4 Press 4 to go Main screen Pass Navigated to
to main screen appears main screen.
7. Bibliography

 Let Us C by Yashavant Kanetkar


 Data Structures Through C by Yashavant Kanetkar
 www.wikipedia.org/wiki/Information_technology_in_India
 www.slideshade.net
 www.wikipedia.org/wiki/Structured_systems_analysis_and_design_method
 www.scribd.com
 www.muengineers.in/computer-project-list/visual-basic-projects-list/bank-management-
system

S-ar putea să vă placă și