0% found this document useful (0 votes)
1K views36 pages

Bangladesh University of Business and Technology (BUBT)

This document provides an overview of a project report for a Bank Management System developed by three students at Bangladesh University of Business and Technology. It includes an acknowledgment of those who provided guidance and support. It also includes an abstract describing the purpose of developing a desktop software application to automate bank operations. An index is provided that outlines the contents of the report over several chapters that cover topics like system analysis and design, the user manual, and tools used.

Uploaded by

Md Iqbal Hossain
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views36 pages

Bangladesh University of Business and Technology (BUBT)

This document provides an overview of a project report for a Bank Management System developed by three students at Bangladesh University of Business and Technology. It includes an acknowledgment of those who provided guidance and support. It also includes an abstract describing the purpose of developing a desktop software application to automate bank operations. An index is provided that outlines the contents of the report over several chapters that cover topics like system analysis and design, the user manual, and tools used.

Uploaded by

Md Iqbal Hossain
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 36

Bangladesh University of Business and Technology (BUBT)

Department of Computer Science and Engineering

Project Report on
Bank Management System
Software Development Project 02 (CSE 200)

Submitted To
Suman Saha
Assistant Professor
Department of CSE
BUBT

Submitted By

NAME ID
Md Sahrial Alam 17182103334
Md Ikbal Hosen 17182103317
Md Alhaj Hossen 17182103335
i

ACKNOWLEDGEMENTS

We take this occasion to thank God, almighty for blessing us with His grace and taking our
endeavour to a successful culmination. We extend our sincere and heartfelt thanks to our esteemed
project adviser Mr. Suman Saha, Assistant Professor, Department of CSE, BUBT for his invaluable
guidance during the course of this project work. We extend my sincere thanks to him for his
continuously helped throughout the project and without his guidance, this project would have been
an uphill task.
Last but not the least, we would like to thank friends for the support and encouragement they have
given us during the course of our work.

Md Sahrial Alam
Md Ikbal Hosen
Md Alhaj Hossen
ii

ABSTRACT

The purpose of this study was to develop a Bank Management System (BMS) to assist in the
management of financial with the process of doing this job earlier than pen and paper-based
management. So, the development of desktop-based software application BMS introduces the
automation in the working of a banking system and cover the basic functionality of BMS. This
project is carried out as a partial fulfillment of the course Software Development Project - 2.
The Bank Management System undertaken as a project is based on relevant technologies. The main
aim of this project is to develop software for Bank Management System. This project has been
developed to carry out the processes easily and quickly, which is not possible with the manuals
systems. The technology platform in implementing this system uses Visual Studio programming
environment with C# and MySQL database.
iii

DEDICATION

We would like to dedicate this software to


our parents & teachers.
iv

INDEX

Contents Page
Acknowledgement i
Abstract ii
Dedication iii
Table of Contents iv
List of Figures vii
List of Tables viii
List of Abbreviations ix

Chapter 1: Introduction 1-3

1.1 Introduction 1
1.2 Motivation 2
1.3 Project Objectives 2
1.4 Key Benefits 2
1.5 Organization of This Project 3
1.6 Conclusion 3
Chapter 2: Background Knowledge 4 5

2.1 Introduction 4
2.2 Literature Review 4
2.3 Problem Statement 5

Chapter 3: Proposed System Analysis and Design 6-21


3.1 Introduction 6
3.2 System Analysis 6
3.3 System Requirements 7
3.3.1 Functional Requirements 7
3.3.2 Non-Functional Requirements 7
v

3.4 Database Design Model 8


3.4.1 Relational DBMS(RDBMS) 8
3.4.2 Advantage of RDBMS 8
v

3.5 Data Model 10


3.5.1 Client Tier 10
3.5.2 Business Tier 10
3.5.3 Data Tier 10
3.5.4 Database Theory 10
3.6 Relational Database 11
3.6.1 Primary Key 11
3.6.2 Foreign Key 11
3.7 Structured Query Language (SQL) 11
3.8 Relational Model of the Used Database 12
3.8.1 User Login Table 12
3.8.2 Customer Table 13
3.8.3 Account Details Table 13
3.8.4 Transaction Table 14
3.8.5 Money Transfer Table 14
3.8.6 Loan System Table 15
3.9 Entity Relationship Diagram (E-R Diagram) 16
3.9.1 General Overview 17
3.9.2 Mapping Cardinality 18
3.10 Entity Relationship Diagram for Used Database 21

Chapter 4: User Manual 22-40


4.1 Welcome Page 22
4.2 Login Page 23
4.3 Main Page 24
4.4 Customer & Account Details Page 25
4.5 All Details View Page 26
4.6 Withdraw Page 27
4.7 Deposit Page 28
4.8 Transaction Page 29
vii
4.9 Account to Account Page 30
4.10 Loan System Page 31
4.11 Loan Management Details Page 32
4.12 Change Password Page 33

Chapter 5: Tools and Technology Used 41-44


5.1 Development Tools 41
5.1.1 Microsoft Visual Studio 41
5.1.2 MySQL Database 41
5.1.3 .NET Framework 43
5.1.4 ITextSharp 43
5.1.5 MySQL Connector 44
5.1.6 Pixie 44

Chapter 6: Conclusion 45
6.1 Introduction 45
6.2 Limitations 45
6.3 Future Goals 45

References 46

List of Figures

Figure No. Title of Figure Page No.


Figure 3.1: E-R Diagram components 18
Figure 3.2: One to One Mapping Cardinality 19
Figure 3.3: One to Many Mapping Cardinality 19
Figure 3.4: Many to One Mapping Cardinality 20
Figure 3.5: Many to Many Mapping Cardinality 20
Figure 3.6: E-R Diagram for Used Database 21
viii

Figure 4.1: Welcome Page 22


Figure 4.2: Login Page 23
Figure 4.3: Main Page 24
Figure 4.4: Customer & Account Details Page 25
Figure 4.5: All Details View Page 26
Figure 4.6: Withdraw Page 27
Figure 4.7: Deposit Page 28
Figure 4.8: Transaction Page 29
Figure 4.9: Account to Account Page 30
Figure 4.10: Loan System Page 31
Figure 4.11: Loan Details Page 32
Figure 4.12: Change Password Page 33
Figure 4.13: Exit Page 34

List of Tables

Serial No. Title of Table Page No.


Table 1: User Login Table 12
Table 2: Customer Table 13
Table 3: Account Details Table 13
Table 4: Transaction Table 14
Table 5: Money Transfer Table 14
Table 6: Loan System Table 15

List of Abbreviations

BMS Bank Management System


Bangladesh University of Business and
BUBT
Technology
ix
PDF Portable Document Format

SQL Structured Query Language

E-R Entity Relationship

ERD Entity Relationship Diagram

RDBMS Relational Database Management System

IDE Integrated Development Environment

GUI Graphical User Interface

HTML Hypertext Mark-up Language

XSLT Extensible Stylesheet Language Transformations

CSS Cascading Style Sheets

XML Extensible Mark-up Language

FCL Framework Class Library

UWP Windows Platform

API Application Programming Interface

RGB Red Green Blue

CYMK Cyan, Magenta, Yellow, Key (Black)

CLR Common Language Runtime

UML Unified Modelling Language


CSE Computer Science and Engineering
CHAPTER 1 INTRODUCTION

1.1 Introduction
The “Bank Management System” project is a model Internet Banking Site. This site enables the
customers to perform the basic banking transactions by sitting at their office or at homes through
PC or laptop. The system provides the access to the customer to create an account,
deposit/withdraw the cash from his account, also to view reports of all accounts present. The
customers can access the banks website for viewing their Account details and perform the
transactions on account as per their requirements. With Internet Banking, the brick and mortar
structure of the traditional banking gets converted into a click and portal model, thereby giving a
concept of virtual banking a real shape. Thus today's banking is no longer confined to branches.
x

The primary aim of this “Bank Management System” is to provide an improved design
methodology, which envisages the future expansion, and modification, which is necessary for a
core sector like banking. This necessitates the design to be expandable and modifiable and so a
modular approach is used in developing the application software. Anybody who is an Account
holder in this bank can become a member of Bank Management System. He has to fill a form with
his personal details and Account Number.

Bank is the place where customers feel the sense of safety for their property. In the bank,
customers deposit and withdraw their money. Transaction of money also is a part where customer
takes shelter of the bank. Now to keep the belief and trust of customers, there is the positive need
for management of the bank, which can handle all this with comfort and ease. Smooth and
efficient management affects the satisfaction of the customers and staff members, indirectly. And
of course, it encourages management committee in taking some needed decision for future
enhancement of the bank.

Now a day’s, managing a bank is tedious job up to certain limit. So software that reduces the work
is essential. Also today’s world is a genuine computer world and is getting faster and faster day-
by-day. Thus, considering above necessities, the software for bank management has became
necessary which would be useful in managing the bank more efficiently.
All transactions are carried out online by transferring from accounts in the same Bank or
international bank. The software is meant to overcome the drawbacks of the manual system.
1
The software has been developed using the most powerful and secure backend MYSQL database and
the most widely accepted web oriented as well as application oriented.
The system will do the following activities:

i. New customer registration


ii. Update, View customer’s details
iii. Remove member from the system
iv. Deposit money
v. Withdraw money
vi. Transaction details
vii. Money Transfer
viii. Loan System

ix. Printing systems


2
1.2 Motivation
The project aims to develop a system is for any type of document but nothing particular. This system
is revolutionary to document processing. The uniqueness is being desktop based offline application
and for general-purpose. This system available in a single computer. But it’s database can be access
through local area network if database in a server computer. This system is developing by .Net
Framework which followed the code first approach. To develop a database system which can easily
store, retrieve and update data [5].

1.3 Project Objectives


The objectives of the project are follows:

i. To make a system that reduce the time to maintain a mess.


ii. To keep track of customers account records.
iii. To calculate transactions correctly. iv. To keep customers biodata in electronic media.
v. To protect the customers.

1.4 Key Benefits


This system has many features. Some of them are below:

i. User Friendly Interface


The user interface is just awesome. Anybody can operate the software with some basic
knowledge of computer.

ii. Security
Login system is implemented. So, only manager can control the operations and customer can
only view. All activities are recorded in database and available to all customers.
iii. Time Savings
In manual system, it is very time consuming for recording, calculating deposit & withdraw etc.
But in this system, it is very easy to do them by clicking on few buttons.

iv. Report Generates


By using this system, we can filter any data of a table by date range and export the report in
PDF format.

1.5 Organization of This Project


In chapter one, we introduce the system and write about motivation, project objectives and key
benefits of the system.
3
In chapter two, we give literature review on whole project.
In chapter three, we give information about our proposed system, database structure, E-R diagram. In
chapter four, we show user manual. So, that anyone can use the system with only basic computer
knowledge.
In chapter five, we give information about the working tools.
Finally, we discuss about our future goal, limitations and conclude about the system.

1.6 Conclusion
The main objective of the project is to establish an integrated meal management system which
enables us to automate the dynamic Administrative process in the bank. Establishing a strong and
effective Bank Management System. Achieving integration between developed bank management
system and other available systems. Preparing electronic data that enable the process entering and
converting data.

CHAPTER 2 BACKGROUND KNOWLEDGE

2.1 Introduction
Nowadays, many management systems are having developed rapidly. Those management systems
are developed on the purpose to overcome the problems that faced by manual method and it is also
can ease up the user to do their daily work. Development of computer-based system provides more
benefits and influences that can shape and create the work culture more systematic and can change
the administrative structure of an organization to be more quickly and effectively.
Hence, we would like to propose the idea of Bank Management System. Bank Management System
is a system that develops to change manual system used in bank. It can be applying by customers
who related with bank. Through this system, user will be able to record all information about and
complaint that was made into single database. Besides, they also can use this system to keep tracking
about their deposit, withdraw, loan, money transfer etc. Every data can be search, add, update and
also delete. For members, they could only do update their profile, analyze their accounts, view
activities, records and export them as PDF. Additionally, Bank Management System is easier to use
[5]
.

2.2 Literature Review


A system is a whole that cannot be decomposed into independent parts. It follows a research
approach. Research Approach begins by analysing so as to identify its parts and interconnections.
This approach follows the technical aspects of the socio-technical systems. This approach involves a
concept of planning as a structured process and has five phases: formulating the mess, ends planning,
means planning, resource planning and design of implementation and control. Research is heavily
4
used in inventing, elaborating and implementing new ideas. This project is carried out to assess
student’s skills and knowledge in systems engineering. This project has 5 modules. They are
customer information maintenance, transaction maintenance, money transfer maintenance, loan
system maintenance and report generation. The project is developed using C# methodology. During
system development, Microsoft visual studio is used for developing the GUI & implementing the
functionality while MySQL is used for creating and manipulating the database. This project has
undergone several phases. There are planning analysis, design, development and testing. First, in the
planning of this project, plan is written. Next, during analysis stage, system requirements
specification and activity diagram modelling the current system are produced. In design stage,
various UML diagrams such as use case diagram, sequence diagram, class diagram and etc are
drawn. A computer-based management system is designed to handle all the

primary information required to calculate balance statements. Separate database is maintained to


handle all the details required for the correct statement calculation and generation. This project
intends to introduce more user friendliness in the various activities such as record updating,
maintenance, and searching. Similarly, record maintenance and updating can also be accomplished
by using the identification of the customer with all the details being automatically generated. These
details are also being promptly automatically updated in the master file thus keeping the record
absolutely up-to-date.
The entire information has maintained in the database or Files and whoever wants to retrieve can’t
retrieve, only authorization user can retrieve the necessary information which can be easily be
accessible from the database. For designing the system, we have used simple data flow diagrams.
Overall the project teaches us the essential skills like: Using system analysis and design techniques
like data flow diagram in designing the system, Understanding the database handling and query
processing, etc [6].

2.3 Problem Statement


The growing number of students in higher institutions all over the world has posed a lot of
accommodation problem on the part of students and institution management. Students at the
beginning of each session waste half of the semester looking for accommodation. The few hostels
that exist in the universities are not properly managed. Statistics of the number of rooms required to
match the growing number of students are farfetched. Most often, students pay for hostel fee, meal
fee. Hostel administrators take the full payment in advance of upcoming month even they stay, eat or
not. These and many more form the statement of the problem that necessitated this research work.
That’s why we have developed the system where students don’t need to pay for full time meals. They
will pay only for the meals that they ate. This system is also built for records the expenses and
display to all students. Students has ability to add extra meals on their account for their guests. But in
hostel, the system isn’t available [6].
5

CHAPTER 3 PROPOSED SYSTEM ANALYSIS AND DESIGN

3.1 Introduction
Requirements analysis in systems engineering and software engineering. encompasses those tasks
that go into determining the needs or conditions to meet for a new or altered product, taking account
of the possibly conflicting requirements of the various stakeholders, such as beneficiaries or users.
Another requirement you need to have to be a software manager you need to know how to pleasure
your boss. But in financing you also need to pleasure your boss [6].
Requirements analysis is critical to the success of a development project. Requirements must be
documented, actionable, measurable, testable, related to identified business needs or opportunities,
and defined to a level of detail sufficient for system design. Requirements can be architectural,
structural, behavioral, functional, and non-functional [6].

3.2 System Analysis


System analysis is the process of gathering and interpreting facts, diagnosing problems and using the
information to recommend improvements on the system. System analysis is a problem-solving
activity that requires intensive communication between the system users and system developers.
System analysis or study is an important phase of any system development process. The system is
viewed as a whole, the inputs are identified and the system is subjected to close study to identify the
problem areas. The solutions are given as a proposal. The proposal is reviewed on user request and
suitable changes are made. This loop ends as soon as the user is satisfied with the proposal.

The existing system is not totally automated. Though the system is computerized to a particular
extent, it has not to do a lot of manual work. The different processes involved are:
i. User friendly.
ii. Less human error. iii. High security.
iv. Easy data updating.
v. Easy record keeping.
vi. Backup data can be easily generated.

3.3 System Requirements


A Software requirements specification report basically describes and environment for
software/application under development. It completely describes the yield, cost, nature of the
software/application.
6
3.3.1 Functional Requirements
i. System will have only 1 types of user called Manager as admin. ii. System will
have secure Login and Registration functionality. iii. Everyone will have a unique
username. They will use it to login their own profile. iv. Manager can add, view,
update, remove member from the system.
v. Member can view and update their own profile.
vi. Manager can setup account information, customer details, assign transaction details,
calculate balance rate.

vii. Everyone can view and can get their own information whenever they want.

viii. Nobody has permission to see other’s bank status but only one will be get activities that
manager set, update, cancel schedule meals.
ix. Customer can deposit & withdraw money to customer’s account which will be update data
by date with help of manager, get money receipt of those with specific date range, add loan
in record. They can also transfer money from one account to another account in these bank
via account no.
x. Everyone can view records and export them.

3.3.2 Non-Functional Requirements

i. Security Requirements
Security systems need database storage just like many other applications. However, the
special requirements of the security market mean that vendors must choose their database partner
carefully.

ii. Software Quality Attributes


a. Correctness: The system should generate an appropriate report about different activities of
the mess and should keep track of all records.

b. Maintainability: The system should maintain correct information of customer’s accounts and
calculate balances correctly.

c. Usability: The system should satisfy a maximum number of user’s manual.

3.4 Database Design Model


We have used relational database design model in BMS. Now we are going to tell about the model
briefly.
7

3.4.1 Relational DBMS(RDBMS)


A Relational Database Management System (RDBMS) is a software system that provides access to a
relational database. The software system is a collection of software applications that can be used to
create, maintain, manage and use the database. A "relational database" is a database structured on the
"relational" model. Data are stored and presented in a tabular format, organized in rows and columns
with one record per row.

3.4.2 Advantage of RDBMS


There are many advantages of RDBMS. Some of them are below:

i. Data Structure
The table format is simple and easy for database users to understand and use. RDBMSs
provide data access using a natural structure and organization of the data. Database queries
can search any column for matching entries.

ii. Multi-User Access


RDBMSs allow multiple database users to access a database simultaneously. Built-in locking
and transactions management functionality allow users to access data as it is being changed,
prevents collisions between two users updating the data, and keeps users from accessing
partially updated records.

iii. Privileges
Authorization and privilege control features in an RDBMS allow the database administrator
to restrict access to authorized users, and grant privileges to individual users based on the
types of database tasks they need to perform. Authorization can be defined based on the
remote client IP address in combination with user authorization, restricting access to specific
external computer systems.

iv. Network Access


RDBMSs provide access to the database through a server daemon, a specialized software
program that listens for requests on a network, and allows database clients to connect to and
use the database. Users do not need to be able to log in to the physical computer system to
use the database, providing convenience for the users and a layer of security for the database.
Network access allows developers to build desktop tools and Web applications to interact
with databases.
8

v. Speed
The relational database model is not the fastest data structure. RDBMS advantages, such as
simplicity, make the slower speed a fair trade-off. Optimizations built into an RDBMS, and
the design of the databases, enhance performance, allowing RDBMSs to perform more than
fast enough for most applications and data sets. Improvements in technology, increasing
processor speeds and decreasing memory and storage costs allow systems administrators to
build incredibly fast systems that can overcome any database performance shortcomings.

vi. Maintenance
RDBMSs feature maintenance utilities that provide database administrators with tools to
easily maintain, test, repair and back up the databases housed in the system. Many of the
functions can be automated using built-in automation in the RDBMS, or automation tools
available on the operating system.

vii. Language
RDBMSs support a generic language called "Structured Query Language" (SQL). The SQL
syntax is simple, and the language uses standard English language keywords and phrasing,
making it fairly intuitive and easy to learn. Many RDBMSs add non-SQL, database-specific
keywords, functions and features to the SQL language.

3.5 Data Model


This desktop-based application is based on 3-tier architecture of .Net framework. The 3-tier includes
the three hierarchy of the flow of programming logic from user interface to database and again
database to user interface with the desired intimation requested by the clients in between them
involves the logical layer for effectively and correctly manipulating the request. the 3-tier includes
the following.
i. Client Tier
ii. Business Tier
iii. Data Tier

3.5.1 Client Tier


The visual part is implemented using all kinds of swing components. which does not make database
call. The main function of their tier is to display information to the user upon user's request generated
by user's inputs such as tiring button events. For example, deposit and withdraw button will deposit
money to customer’s transaction details.
9
3.5.2 Business Tier
The middle tier, business logic, is called by the client to make database queries. It provides core
function of the system as well as connectivity to the data tier. which simplify tasks that were done by
the client's tier.

3.5.3 Data Tier


Data layer is also the class which gets the data from the business tier and sends it to the database or
gets data from the database and sends it to business tier. This is the actual DBMS access layer or
object layer also called the business object. The database backend stories information which can be
retrieved by using the MySQL database connectivity. MySQL database connectivity is used to
manage the communication between the middle tier and the backend database by issuing complex
database queries.

3.5.4 Database Theory


A database (DB), in the most general sense, is an organized collection of data. More specifically, a
database is an electronic system that allows data to be easily accessed, manipulated and updated. In
other words, a database is used by an organization as a method of storing, managing and retrieving
information. Modern databases are managed using a database management system (DBMS).
3.6 Relational Database
A relational database is a set of formally described tables from which data can be accessed or
reassembled in many different ways without having to reorganize the database tables. The standard
user and application programming interface (API) of a relational database is the Structured Query
Language (SQL). SQL statements are used both for interactive queries for information from a
relational database and for gathering data for reports. MMS used the relational database.

3.6.1 Primary Key


A table typically has a column or combination of columns that contain values that uniquely identify
each row in the table. This column, or columns, is called the primary key (PK) of the table and
enforces the entity integrity of the table. Because primary key constraints guarantee unique data, they
are frequently defined on an identity column. When you specify a primary key constraint for a table,
the Database Engine enforces data uniqueness by automatically creating a unique index for the
primary key columns. This index also permits fast access to data when the primary key is used in
queries. If a primary key constraint is defined on more than one column, values may be duplicated
within one column, but each combination of values from all the columns in the primary key
constraint definition must be unique.
10
3.6.2 Foreign Key
A foreign key (FK) is a column or combination of columns that is used to establish and enforce a link
between the data in two tables to control the data that can be stored in the foreign key table. In a
foreign key reference, a link is created between two tables when the column or columns that hold the
primary key value for one table are referenced by the column or columns in another table. This column
becomes a foreign key in the second table.

3.7 Structured Query Language (SQL)


The Structured Query Language (SQL) is the set of instructions used to interact with a relational
database. Infect, SQL is the only language that most of the database actually understands. Whenever
we interact with such a database, the software translates our commands into SQL, statement that the
database knows how to intercept. SQL has major three components.

i. Data Manipulation Language (DML)


ii. Data Definition Language (DDL) iii. Data Control Language
(DCL)

3.8 Relational Model of the Used Database


The relational model used the basic concept of a relation or table. The columns or fields in the table
identify the attributes such as name, age, and so.

3.8.1 User login Table

Serial No. Name Type Allow Null Description


1 username varchar NULL -
2 password varchar NULL -

Table 1: User Login Table

3.8.2 Customer Table

Serial No. Name Type Allow Null Description


1 Customerid Varchar null Primary Key,AI
2 FirstName Varchar null -
3 LastName Varchar null -
4 Roadno Varchar null -
5 Houseno Varchar null -
11
6 Thana Varchar null -
7 Disrrict Varchar null -
8 Phone Varchar null -
9 Date Varchar null -
10 Email Varchar null

Table 2: Customer Table

3.8.3 Account

Serial No. Name Type Allow Null Description


1 Accountno int Null Primary Key, AI
2 Customerid varchar Null -
3 Accounttype varchar Null -
4 Description varchar Null -
5 Balance varchar Null -

Table 3: Account_details Table

3.8.4 Transaction Table

Serial No. Name Type Allow Null Description


1 txid Int Null Primary Key, AI
2 Accountno Int Null -
3 Date varchar Null -
4 Balance Int Null -
5 Deposit Int Null -
6 Withdraw Int Null -

Table 4: Transaction_details Table

3.8.5 Transfer Table

Serial No. Name Type Allow Null Description


12
1 tfid Int Null Primary Key, AI
2 Fromaccount Int Null -
3 Toaccount Int Null -
4 Date Varchar Null -
5 Amount Int Null -

Table 5: Transfer_details Table

3.9 Entity Relationship Diagram (E-R Diagram)

Entity Relationship Diagram, also known as ERD, ER Diagram or ER model, is a type of structural
diagram for use in database design. An ERD contains different symbols and connectors that visualize
two important information:
i. The major entities within the system scope
ii. The inter-relationships among these entities.

3.9.1 General Overview


The ER model defines the conceptual view of a database. It works around real-world entities and the
associations among them. At view level, the ER model is considered a good option for designing
databases.

i. Entity
An entity can be a real-world object, either animate or inanimate, that can be easily
identifiable. An entity set is a collection of similar types of entities. An entity set may contain
entities with attribute sharing similar values. For example, a Students set may contain all the
students of a school; likewise, a Teachers set may contain all the teachers of a school from all
faculties. Entity sets need not be disjoint. (Figure 3.1)

ii. Attributes
Entities are represented by means of their properties, called attributes. All attributes have
values. For example, a student entity may have name, class, and age as attributes. There
exists a domain or range of values that can be assigned to attributes. For example, a student's
name cannot be a numeric value. It has to be alphabetic. A student's age cannot be negative,
etc. (Figure 3.1)
13
iii. Types of Attributes
a. Simple Attribute: These attributes are atomic values, which cannot be divided further. For
example, a student's phone number is an atomic value of 10 digits.
b. Composite Attribute: These attributes are made of more than one simple attribute. For
example, a student's complete name may have first_name and last_name.
c. Single Valued Attribute: These attributes contain single value. For example, SSN
d. Multi Valued Attribute: These attributes may contain more than one values. For example, a
person can have more than one phone number, email etc.
e. Derived Attribute: These attributes are the attributes that do not exist in the physical database,
but their values are derived from other attributes present in the database. For example, age
can be derived from data_of_birth.

Figure 3.1: E-R Diagram components

3.9.2 Mapping Cardinality


Mapping Cardinality express the number of entities to which another entity can be associated via a
relationship set. It is most useful in describing binary relationship sets. For a binary relationship set
the mapping cardinality must be one of the following types:
i. One to One
ii. One to Many iii. Many to One
iv. Many to Many

i. One to One
An entity in A is associated with, at most, one entity in B, and an entity in B is associated
with, at most, one entity in A.
14

Figure 3.2: One to One Mapping Cardinality

ii. One to Many


An entity in A is associated with any number of entities in B. An entity in B, however, can be
associated with, at most, one entity in A.

Figure 3.3: One to Many Mapping Cardinality


iii. Many to One
An entity in A is associated with, at most, one entity in B. An entity in B can be associated
with any number of entities in A.
15

Figure 3.4: Many to One Mapping Cardinality

iv. Many to Many


An entity in A can be associated with any number of entities in B. An entity in B can be
associated with any number of entities in A.

Figure 3.5: Many to Many Mapping Cardinality


3.10 Entity Relationship Diagram for Used Database
firstname
16
lastname
customerid

username id Road no
phone

customer district
user admin
n

houseno
password usertype thana

customerid Accountno
accountno
tixid

account
want
transection
Accounttype

description date

balance
balance
want

accountno withdraw

withdraw
date

Balance
17
Figure: ER diagram of BMS
CHAPTER 4 USER MANUAL

Figure 4.1: Welcome Page


4.1 Login Page
This is the login page. Manager can login their account using their username and password. System
records the username and identifies the role then display the contents according logged user’s role.
Manager will get access of all pages after successful login but member has limitation over contents.
Default manager account access is:
Username: iqbal
Password: 1234

Figure 4.2: Login Page

Figure 4.3: Change Password Page


18
4.4 Main Page
This is the main page. Everyone can see this page. Different button works on different catagories of
bank. There are five catagories : 1. Account information 2. Transaction details 3. Money Transfer 4.
Loan System 5.Others

Figure 4.4: Main Page


4.5 All Customers Page
Here is the customer’s registration process where customer_id is auto incrementing and other
information must be filled before saving.
19

Figure 4.5: All Customers Page

CHAPTER 5 TOOLS AND TECHNOLOGY USED

5.1 Development Tools


Many tools are used to develop the software. Some of them are used for development purpose and
some of them are part of this software. Without them MMS cannot work properly.

5.1.1 Microsoft Visual Studio


Microsoft Visual Studio is an integrated development environment (IDE) from Microsoft. It is used
to develop computer programs, as well as websites, web apps, web services and mobile apps. Visual
Studio uses Microsoft software development platforms such as Windows API, Windows Forms,
Windows Presentation Foundation, Windows Store and Microsoft Silverlight. It can produce both
native code and managed code [3].
Visual Studio includes a code editor supporting IntelliSense (the code completion component) as
well as code refactoring. The integrated debugger works both as a source-level debugger and a
machine- level debugger. Other built-in tools include a code profiler, forms designer for building
GUI applications, web designer, class designer, and database schema designer. It accepts plug-ins
that enhance the functionality at almost every level—including adding support for source control
systems (like Subversion and Git) and adding new toolsets like editors and visual designers for
20
domain-specific languages or toolsets for other aspects of the software development lifecycle (like
the Team Foundation Server client: Team Explorer) [3].
Visual Studio supports 36 different programming languages and allows the code editor and debugger
to support (to varying degrees) nearly any programming language, provided a language-specific
service exists. Built-in languages include C, C++, C++/CLI, Visual Basic .NET, C#, F#, JavaScript,
TypeScript, XML, XSLT, HTML, and CSS. Support for other languages such as Python, Ruby,
Node.js, and M among others is available via plug-ins. Java (and J#) were supported in the past. The
most basic edition of Visual Studio, the Community edition, is available free of charge. Visual studio
can also help in this by automatically defining them if it can infer their types from usage. We have
used visual studio professional 2015 for Meal Management System [3].

5.1.2 MySQL Database


MySQL is an open-source relational database management system (RDBMS). Its name is a
combination of "My", the name of co-founder Michael Widenius's daughter and "SQL" the
abbreviation for Structured Query Language. The MySQL development project has made its source
code available under the terms of the GNU General Public License, as well as under a variety of
proprietary agreements. MySQL was owned and sponsored by a single for-profit firm, the Swedish
company MySQL AB, now owned by Oracle Corporation. For proprietary use, several paid editions
are available, and offer additional functionality [4].
MySQL is a central component of the LAMP open-source web application software stack (and other
"AMP" stacks). LAMP is an acronym for "Linux, Apache, MySQL, Perl/PHP/Python". Applications
that use the MySQL database include: TYPO3, MODx, Joomla, WordPress, Simple Machines
Forum, phpBB, MyBB, and Drupal. MySQL is also used in many high-profile, large-scale websites,
including Google (though not for searches), Facebook, Twitter, Flickr, and YouTube [4].
MySQL is written in C and C++. Its SQL parser is written in yacc, but it uses a home-brewed lexical
analyser. MySQL works on many system platforms, including AIX, BSDi, FreeBSD, HP-UX,
eComStation, i5/OS, IRIX, Linux, macOS, Microsoft Windows, NetBSD, Novell NetWare,
OpenBSD, Open Solaris, OS/2 Warp, QNX, Oracle Solaris, Symbian, SunOS, SCO Open Server,
SCO UnixWare, Sanos and Tru64. A port of MySQL to OpenVMS also exists [4].
The MySQL server software itself and the client libraries use dual-licensing distribution. They are
offered under GPL version 2, beginning from 28 June 2000 (which in 2009 has been extended with a
FLOSS License Exception) or to use a proprietary license [4].
Support can be obtained from the official manual. Free support additionally is available in different
IRC channels and forums. Oracle offers paid support via its MySQL Enterprise products. They differ
in the scope of services and in price. Additionally, a number of third-party organisations exist to
provide support and services, including MariaDB and Persona [4].
21
MySQL has received positive reviews, and reviewers noticed it "performs extremely well in the
average case" and that the "developer interfaces are there, and the documentation (not to mention
feedback in the real world via Web sites and the like) is very, very good". It has also been tested to
be a "fast, stable and true multi-user, multi-threaded SQL database server" [4].
MySQL is offered under two different editions: the open source MySQL Community Server and the
proprietary Enterprise Server. MySQL Enterprise Server is differentiated by a series of proprietary
extensions which install as server plugins, but otherwise shares the version numbering system and is
built from the same code base [4].
MySQL is not a complete database system. It has some constraints. When using some storage engines
other than the default of InnoDB, MySQL does not comply with the full SQL standard for some of the
implemented functionality, including foreign key references. Check constraints are parsed but ignored
by all storage engines [4].
5.1.3 .NET Framework
.NET Framework is a software framework developed by Microsoft that runs primarily on Microsoft
Windows. It includes a large class library named Framework Class Library (FCL) and provides
language interoperability (each language can use code written in other languages) across several
programming languages. Programs written for .NET Framework execute in a software environment
(in contrast to a hardware environment) named Common Language Runtime (CLR), an application
virtual machine that provides services such as security, memory management, and exception
handling. (As such, computer code written using .NET Framework is called "managed code".) FCL
and CLR together constitute .NET Framework [8].
FCL provides user interface, data access, database connectivity, cryptography, web application
development, numeric algorithms, and network communications. Programmers produce software by
combining their source code with .NET Framework and other libraries. The framework is intended to
be used by most new applications created for the Windows platform. Microsoft also produces an
integrated development environment largely for .NET software called Visual Studio [8].
.NET Framework began as proprietary software, although the firm worked to standardize the
software stack almost immediately, even before its first release. Despite the standardization efforts,
developers, mainly those in the free and open-source software communities, expressed their unease
with the selected terms and the prospects of any free and open-source implementation, especially
regarding software patents. Since then, Microsoft has changed .NET development to more closely
follow a contemporary model of a community-developed software project, including issuing an
update to its patent promising to address the concerns [8].
.NET Framework led to a family of .NET platforms targeting mobile computing, embedded devices,
alternative operating systems, and web browser plug-ins. A reduced version of the framework, .NET
Compact Framework, is available on Windows CE platforms, including Windows Mobile devices
such as smartphones. .NET Micro Framework is targeted at very resource-constrained embedded
22
devices. Silverlight was available as a web browser plugin. Mono is available for many operating
systems and is customized into popular smartphone operating systems (Android and iOS) and game
engines. .NET Core targets the Universal Windows Platform (UWP), and cross-platform and cloud
computing workloads [8].

5.1.4 ITextSharp
iTextSharp is a library for creating and manipulating PDF files in Java and .NET. iTextSharp was
written by Bruno Lowagie. The source code was initially distributed as open source under the
Mozilla Public License or the GNU Library General Public License open source licenses. However,
as of version 5.0.0 (released Dec 7, 2009) it is distributed under the Affori General Public License
version

3. A fork of the LGPL/MPL licensed version of iTextSharp is currently actively maintained as the
OpenPDF library on GitHub. iTextSharp is also available through a proprietary license, distributed
by iTextSharp Software NV [7].
iTextSharp provides support for most advanced PDF features such as PKI-based signatures, 40-bit
and 128-bit encryption, colour correction, Tagged PDF, PDF forms (AcroForms), PDF/X, colour
management via ICC profiles and barcodes, and is used by several products and services, including
Eclipse BIRT, Jasper Reports, JBoss Seam, Windward Reports, and pdfTK [7].

5.1.5 MySQL Connector


MySQL Connector is a driver for connecting to a MySQL database server through the Open
Database Connectivity (ODBC) application program interface (API), which is the standard means of
connecting to any database. Users can connect from within common applications and programming
environments, such as Microsoft Access or Excel or Borland Delphi [4].
MySQL Connector is available for most major operating systems, including Windows, Unix, Linux,
Solaris, AIX, and OS X either under the free software/open source GNU General Public License
(GPL) or under a commercial license [4].

5.1.6 Pixie
Pixie is a utility made especially for webmasters and designers. It is a colour picker with few extra
goodies. It simply points to a colour and it will tell you the hex, RGB, HTML, CMYK and HSV
values of that colour. You can then use these values to reproduce the selected colour in your
favourite programs. Pixie will also show the current coordinates of your mouse pointer. It is the only
tool for you to work with colours [2].

CHAPTER 6 CONCLUSION
23

6.1 Introduction
To conclude the description about the project: The project, developed using C# and MySQL is
based on the requirement specification of the user and the analysis of the existing system, with
flexibility for future enhancement.
The expanded functionality of today’s software requires an appropriate approach towards software
development. This meal management software is designed for people who want to manage various
activities in the mess. For the past few years the number of educational institutions is increasing
rapidly. Thereby the number of mess are also increasing for the accommodation of the students
studying in this institution. And hence there is a lot of strain on the person who are running the mess
and software’s are not usually used in this context. This particular project deals with the problems on
managing a mess and avoids the problems which occur when carried manually.

6.2 Limitations
There are some drawbacks and limitations in this software as it is a beta release and under future
development process.
i. Need to install first on computer before using.
ii. Platform is not independent. So, it may not run on different operating systems like MacOS,
Ubuntu, Linux.
iii. Some minor bugs exist
iv. Limited features, need to explore.

6.3 Future Goals


The project has a very fast scope in future. The project can be implemented on intranet in future.
Project can be updated in near future as and when requirement for the same arises, as it is very
flexible in terms of expansion. With the proposed software Bank Management System is ready and
fully functional for the client is now able to manage and hence run the entire work in a much better,
accurate and error free manner. The following are the future scope for the project.
i. Adding notification system so admin gets notification when customer
have due payment, balance calculated, deposit etc.
ii. Advance records filter options. iii. Records export in different
formats like csv.

REFFERENCES

1. Rouse, M. (2018). Relational Database. [Blog] SearchDataManagement. Available at:


https://searchdatamanagement.techtarget.com/definition/relational-database [Accessed 13 Feb.
2019].
24
2. Nattyware.com. (1999). Pixie / Nattyware.
[online] Available at: http://www.nattyware.com/pixie.php
[Accessed 13 Feb. 2019].
3. En.wikipedia.org. (2018). Microsoft Visual Studio.
[online] Available at:
https://en.wikipedia.org/wiki/Microsoft_Visual_Studio [Accessed 13 Feb. 2019].
4. En.wikipedia.org. (2018). MySQL.
[online] Available at: https://en.wikipedia.org/wiki/MySQL
[Accessed 13 Feb. 2019].

5. Article: Online Banking: Website: https://en.wikipedia.org/wiki/Online_banking


EM_Submitted_by
[Accessed 13 Feb. 2019].

6. Bandakkanavar, R. (2018). Software Requirements Specification Report for a Project.


[Blog] Krazytech. Available at:
https://krazytech.com/projects/software-requirements-specification-report
[Accessed 13 Feb. 2019].

7. En.wikipedia.org. (2018). IText.


[online] Available at:
https://en.wikipedia.org/wiki/IText
[Accessed 13 Feb. 2019].
39

8. En.wikipedia.org. (2018). .NET Framework.


[online] Available at:
https://en.wikipedia.org/wiki/.NET_Framework
[Accessed 13 Feb. 2019].

You might also like