Niyonzima Louis PDF
Niyonzima Louis PDF
Niyonzima Louis PDF
BY
NIYONZIMA LOUIS
E/BBIT/MS/16/09/00373
OCTOBER 2019
i
DECLARATION
This research study is my original work and has not been presented to any other Institution. No
part of this research should be reproduced without the authors‟ consent or that of University of
Kigali.
ii
DEDICATION
This thesis is a gift that I would like offer my great family with whom I have been growing up in
harmony and love.
iii
ACKNOWLEDGEMENT
First and for most, I would like to thank the Almighty God for His help in all walk of his life.
I would like to acknowledge the inspirational support from all the respondents who in one
way participated in this study especially those who responded to the questionnaires. A great arm
of appreciation goes to the rest of Bank staff that supported me formally and
informally from time to time during the research.
Special thanks also go to my helpful supervisor, Eng. TUJYINAMA Innocent who gave me a
deep appreciation and detail of this subject. His encouragement and support from the preliminary
to the concluding level enabled me to develop an understanding of the subject.
Lastly, the researcher is highly indebted to all people who helped him to successfully
finalize this study. God richly bless you all in Jesus name.
iv
ABSTRACT
The purpose of this project is the utilization of the Internet for performing transactions and
payments on a BPR's secure website. The Design and development of this Advanced Bank
Transaction system provides a more secured approach in managing BPR customer‟s
Transactions and information which strengthens the relationships between BPR and its
customers by providing the right solutions that uses a multi-level security to improve BPR
customers satisfaction. Advanced bank Transactions system is a system that developed in order
to help BPR customers with the daily to daily transactions. Advanced bank Transactions system
means that BPR customers can do banking activities at the leisure of their homes. The system
allows BPR customers to conduct financial transactions on a secure website operated by the
retail or virtual bank. So basically, the system is the technology that allows BPR customers to do
the things they would normally do in their bank from the comfort of home with a connection to
the Internet. The system services provide BPR customers access to account, the ability to
move their money between different accounts, and making payments or applying
for loan. Customers of BPR may be either an individual or business. Electronic
delivery of services means BPR customers conducting transactions using online electronic channels such
as the Internet. Advanced Bank transactions system of BPR increase the scope of banking services
through technology and allowing BPR customers to conduct banking activities remotely. The
system potentially decrease the risks which may appear in BPR activities, including information
security risks and cyber security risks, invasion of privacy risks, fraud risks, compliance risks,
money laundering risks, legal risks and reputation risks.
v
TABLES OF CONTENTS
LIST OF FIGURES
vi
Figure 10: Customer Transaction History..................................................................................... 36
Figure 11: Customer Transaction form ......................................................................................... 36
Figure 12: Add Customer page ..................................................................................................... 37
Figure 13: Customer Management Page ....................................................................................... 37
LIST OF TABLES
Table 1: Manager Table ................................................................................................................ 32
Table 2: Customer Table ............................................................................................................... 32
Table 3: Transaction table ............................................................................................................. 33
Table 4: Loan table ....................................................................................................................... 33
Table 5: Tax table ......................................................................................................................... 34
Table 6: Electricity table ............................................................................................................... 34
Table 7: Water table ...................................................................................................................... 34
vii
LIST OF ABBREVIATIONS
viii
XAMPP : Extended Apache MySQL, PHP, Perl.
MySQL : My Structured Query Language
SDLC : Software Development Life Cycle
DFD : Data Flow Diagram
ERD : Entity Relationship Diagram
PDM : Physical Data Model
RAM : Random Access Memory
ix
CHAPTER ONE: INTRODUCTION TO THE STUDY
1.0 BACKGROUND OF THE STUDY
In recent years, customers of banking corporations increasingly use technology and direct
channels to consume banking services. This phenomenon is also evident worldwide. Expanding
E-Banking services and the types of services including banking via the Internet, makes it
possible to reduce the prices of services to customers, and makes it easier for them to manage
their activity independently and conveniently anywhere, at any time, through various channels,
and regardless of the working hours of the branches of their banking corporation. Furthermore,
the development and expansion of Bank transactions services are expected to enable banking
corporations to become more efficient over time.
Today, banks are looking beyond the transactions to the full opportunity on how to manage their
customers. Accordingly, they are moving beyond managing customers as simple contacts to a
whole new level of customers relationship management, crafting a superior commercial customer
experience that gives the bank a competitive advantage and a more loyal, profitable and
committed customers. Advanced Banking Transactions System refers to systems that enable
bank customers to access accounts and general information on bank services through a personal
computer or other intelligent device. No traditional bank would dare face investment analysts or
new customers without an internet strategy. The main intention behind the commencement of
electronic banking services is to provide the customers with an alternative that is more
responsive and with less expensive options. With options more secured, customers have more
control than ever. Their expectations are how safe and secured their personal information would
be. They also want personal attention and highly customized services. This BPR Advanced Bank
Transaction System aims to provide critical information for managing the BPR customers more
effectively.
The BPR journey started in 1975 in a village called Nkamba in Eastern province, a group of
ordinary Rwandans had an extraordinary dream. They wanted access to finance to help them
achieve better livelihoods. This is how the first Bank Populaire was born. Subsequently, other
community based savings and credit schemes were born in other areas of Rwanda becoming
autonomous with "Banques Populaires".
1
The growth of these savings and credit schemes and their significance in financial inclusion led
to the formation of an umbrella institution in 1986 under the name "Union des Banques
Populaires du Rwanda (UBPR).
In 2008, UBPR transformed to become a fully-fledged commercial bank while retaining its
cooperative roots. Known as the neighborhood bank, BPR has become the bank with the largest
network in Rwanda offering financial services to the furthest corners of the country.
Manual BPR banking system was performing below standard services to the customers and it
may be affected on the customer‟s support. Transactions of the money from BPR manual bank to
the other can take five to ten days. Sometime, when the purpose of transferring the money has
almost dead. Sometimes businessmen have to cancel their business deals due to the
unavailability of the cash transferring facility in time in traditional BPR banking system where
services are as slow as non-secure, non-satisfactory. In order to satisfy BPR customer‟s needs, I
choose to build the BPR system through website and internet that provide the services and
information to BPR customers and the better service can help to get higher profitability. With the
studies of IT in substantial, that would put a positive effect on BPR productivity, cashier‟s work,
banking transaction, bank support, and delivery of BPR services. These have positive effects on
the growth of BPR banking. Now Rwandan Telecommunication Company Limited is providing
broadband, which has enabled the customers to adopt the e-services instead of manual banking
because these are much efficient and accurate
2
1.2 Objectives of project
1.2.1 General objectives
The objective of this project is design and implantation of an advanced bank transaction system
to the best satisfaction of the customers and for profit maximization to the Bpr Bank.
How Advanced Bank Transaction System can manage customer‟s transactions safely and
efficiency?
3
history. Customers also can request loan online. Manager of BPR has features of viewing bank
customers, edit or update customer information and approve the customer loan request.
Problems of security: Various sites are not properly locked at to ensure whether the customer‟s
money is safe in cyber world or not. The BPR customers also have this problem.
4
Wrong assumption: Many people are afraid using BPR Internet Banking because of the
assumption that it is more expensive than the traditional method of dealing with bank
transactions. They still prefer going to BPR branch to perform transactions.
Lack of awareness: Another great hindrance is lack of awareness because effective and wide
media efforts in publishing Internet Banking need to be emphasized.
Chapter four provides the system analysis, the system requirement analysis which is comprises
the hardware requirement and software requirement in which this system will be developed.
The functional and non-functional requirement; the system architecture which is use case
diagram, activity diagram, data flow or sequence diagram, entity relationship diagram and unit
testing.
Chapter five is conclusion; suggestion of the future work, and summary
5
CHAPTER TWO: LITERATURE REVIEW
2.0 Introduction
This chapter gave overall view of earlier works and theories in areas of Advanced Bank
Transactions of banking Institutions in Rwanda. This section attempts to present a critical review
of the available literature on the subject of research. We will provide a brief description about
terms that are used during development of this project.
Online is the condition of being connected to a network of computers or other devices. The term
is frequently used to describe someone who is currently connected to the internet. (Rouse, 2008)
II. Bank
A bank is a financial institution and a financial intermediary that accepts deposits and channels
those deposits into lending activities, either directly by loaning or indirectly through capital
markets (Kumbhar, 2011).
III. Transaction
A transaction is an activity affecting a bank account and performed by the account holder or at
his or her request. Transaction is payment method that authorizes a transfer of funds over
an electronic funds transfer.
IV. System
A system as a network of interrelated procedures that are joined together to perform an activity
or accomplish a specific objective. It noted that, a system could be classified as being open or
closed. (Rosen, 2012)
6
V. A web application
A web application is a computer program that utilizes web browsers and web technology to
perform tasks over the Internet.
A web application is accessed over a network such as the Internet or an intranet. The ability
to update and maintain web applications without distributing and installing software on
potentially thousands of client computers is a key reason for their popularity, as is the
inherent support for cross-platform compatibility.
Web applications commonly use a combination of server-side script; ASP, PHP, and extra
whereas client-side script; HTML, JavaScript, extra to develop the application.
A simple but sufficient definition of the term is given by Rotchanakitumnuai nd Speece (2003):
“Internet banking allows customers to have direct access to their financial information and to
undertake financial transactions with no need to go to the bank”. Hence, web sites that
demonstrate or advertise the bank‟s products and do not give the opportunity to the user of
conducting transactions are not qualified as Internet Banking services (Pikkarainen et al., 2004).
Additionally, a bank‟s website that provides only information inquiry transactions, such as
checking the balance of a deposit account or the payment amount of a credit card, and does not
allow monetary transactions, is as well not qualified as Internet Banking (Sayar and Wolfe,
2007).
The SMS (short message service) banking service is an information service of the Bank, which
enables the holders of payment issued by the Bank to receive SMS information on the statement
and movements on the account, by cell phone. The Bank sends messages for movements on the
payment accounts, by transaction, to the cell phone of the service user, stated in the application
for use of the SMS banking.
In order to send an SMS there is a need for an application allowing you to compose a message.
(In this case this is an Advanced bank transaction system, since we are going to write and send
7
SMS on a website.) This application should be connected to an SMS gateway (Ozeki NG SMS
Gateway), because this gateway is capable to transmit the SMS towards the mobile service
provider (e.g. MTN Rwanda, Airtel, etc.). The SMS gateway usually transmits the SMS through
a GSM modem. After the SMS has arrived to the SMSC (SMS Center) of the mobile service
provider, the provider will send the SMS to the recipient‟s telephone number.
SMS gateway (Ozeki NG SMS Gateway): As it was mentioned above, an SMS gateway is
essentially needed to be able to send SMS messages from your website. It should be downloaded
GSM modem : Within your SMS gateway some configurations are required to be able to send
out the SMS messages in deed. You need to setup a GSM modem connectivity by using a GSM
device, or you need to configure an IP SMS connection after you have contracted with a mobile
service provider.
8
I present here how to send an SMS message from my system with the figure above. The idea I
use is to take mobile number from database of the customers (both who send the money and who
is going to receive money), When the form (form to transfer money) is submitted . the form
variables will be processed by a PHP script. This PHP script will post the SMS message to the
SMS Gateway. The SMS Gateway and the system server (XAMPP) must be on the same
computers. The SMS gateway transmits the SMSs through a GSM modem. After the SMSs have
arrived to the SMSC (SMS Center) of the mobile service provider, the provider will send the
VIII. Email
Email is short for 'electronic mail' is information stored on a computer that is exchanged between
two users over telecommunications. More plainly, e-mail is a message that may
contain text, files, images, or other attachments sent through a network to a specified individual
or group of individuals. Similar to a letter, it is sent via the internet to a recipient. An email
address is required to receive email, and that address is unique to the user. Some people use
internet-based applications and some use programs on their computer to access and store emails.
IX. Data
Data is a collection of numbers represented as bytes that are in turn composed of bits (binary
digits) that can have the value one or zero. Data is processed by the CPU, which uses logical
operations to produce information (output) from source data (input). (Elmasri& Navathe ,2016)
X. Database
Database is an organized collection of data, stored and accessed electronically. Database
designers typically organize the data to model aspects of reality in a way that
supports processes requiring information. (Stallings, 2012)
9
XI. Database Management System
A database management system (DBMS) is system software for creating and
managing databases. The DBMS provides users and programmers with a systematic way to
create, retrieve, update and manage data.( Monelliah and Arepalli G ,2017)
IVX. Entity
An entity is an object that exists. In database administration, an entity can be a single thing,
person, place, or object. (Lerman, 2012)
VX. Table
A table is a set of data elements (values) using a model of vertical columns (identifiable by
name) and horizontal rows, the cell being the unit where a row and column intersect. A table has
a specified number of columns, but can have any number of rows. (Davidson R, 2014).
10
VIX. Record
Records are composed of fields, each of which contains one item of information. A set of records
constitutes a file. For example, a personnel file might contain records that have three fields: a
name field, an address field, and a phone number field. In relational database management
systems, records are called tuples. (Michael S - 2012)
VIIX. Fields
A space allocated for a particular item of information. A tax form, for example, contains a
Number of fields: one for your name, one for your social security number, one for your income
etc.
In database systems, fields are the smallest units of information you can access. (Tim Johnson
,2011)
VIIIX. An Attribute
An attribute is a characteristic or property of an entity. The term is used in this text exactly as it
is used in everyday English. For entity person, for example, the list of attributes might include
such things as eye color and height. For Premiere Products, the attributes of interest for the
Entity customer is such things as customer name, street, city, and so on. An attribute is also
called a Field or column in many database systems.
Carles &, Akiba ,2014)
Foreign Key
A foreign key is a field (or collection of fields) in one table that uniquely identifies a row of
another table or the same table. In simpler words, the foreign key is defined in a second table, but
it refers to the primary key or a unique key in the first table. (Lerman& Rowan M, 2012)
11
Super key
A super key is a group of single or multiple keys which identifies rows in a table. A Super key
may have additional attributes that are not needed for unique identification.
Alternate key
All the keys which are not primary key are called an alternate key. It is a candidate key which is
currently not the primary key. However, A table may have single or multiple choices for the
primary key.
Candidate Key
A super key with no repeated attribute is called candidate key.
The Primary key should be selected from the candidate keys. Every table must have at least a
single candidate key.
Composite key
A key which has multiple attributes to uniquely identify rows in a table is called a composite
key. The difference between compound and the composite key is that any part of the compound
key can be a foreign key, but the composite key may or maybe not a part of the foreign key.
XIX. A flowchart
12
2.2. Review of the past studies
Bank Customers Management System provides a more secured approach in managing bank
customer‟s information which strengthens the relationships between banks and their customers
by providing the right solutions that uses a multi-level security to improve customer satisfaction.
The system enable bank customers to access their accounts and general information on bank
products and services through a personal computer or other intelligent device; it have features
like funds transfer, request loans and pay bills and others features.
Online Banking is project designed to refers to a number of ways in which customers can access
their banks without having to be physically present at a bank branch. Online Banking relates to
every banking business transacted from a customer‟s PC. This can be done through online
banking, in which bank transactions are conducted within a closed network, or via Internet
banking, which permits the customer to perform transactions from any terminal with access to
the Internet. The project is the implementation of banking and trading transactions
using an Internet-enabled wireless device” mobile phones, handheld computers, etc.).
Online banking is thus a remote delivery channel for banking services. These services can be as
simple as opening account or transferring funds, but can also include more complex transactions
like electronic bill payments, and the sale of financial products, like insurance and brokerage.
The extent of services offered by an Internet bank depends largely on its size. The Controller of
the Currency showed that while most Internet banks allowed services like balance inquiries, fund
transfers between accounts and bill payments, larger banks are much more likely to have online
brokerage, fiduciary and insurance services business lines. All Internet banks, small and large,
were roughly equally likely to offer cash management services.
13
money and energy to do that. The log in interface only provides a pictorial view after the user
inputs his/her user name followed by password. Anyone who has access to your username and
password can easily access your account when provided with such login information and as such
the account information can easily be compromised.
How about the password reset ,When a user wants to reset his/her password, the above project
does not effectively and immediately allows the users to reset their password at ease, rather the
user has to fill in everything including National ID number before they send a reset code via
SMS. What if the user loses his or her ID? Then you will be required to make a police report and
other necessary documentations before you can reset your password alone. This idea is basically
not suitable for password reset and recovery. Before the user can gather all the required details
his or her account might have been dealt with. And as such Bank Customers Management
System does not effectively manage its customer. That is one of the reasons most people till
today does not like using those applications due to this weakness.
2.4 SUMMARY
The customers can conveniently change/reset their secured password without going to the
bank to do that.
This system will also allow customers and other users like the Bank managers to update their
personal information when necessary such as; home address, email, mobile number etc.
This system will also send automatic SMS/email notification to the customer every time
he/she makes a fund transfer.
This system will also send email alert to the receiving customer on the inflow of cash from
another
This Advanced bank transaction system will also provide a much more secured multi-level
security to better manage customer‟s information and to prevent them from attacks or any
unauthorized users.
14
2.5 CONCEPTUAL FRAMEWORK OF THE CURRENT PROJECT
Manager Customer
Add Customer
Tranfer/receive Money with
Confirmation SMS and Email
Update or Delete Customer
View Balance and Transactions
History
View Customer Transactions
Pay Tax, Water, Electricuty, etc
Approve Loan
Request for Loan
Generate Reports Update his/her profile info
15
CHAPTER THREE: RESEARCH METHODOLOGY
3.0 Introduction
This is a description of methods will be used to achieve the objectives of the proposed system. It
will go on to describe the techniques of data collection that will be employed in the research
study of the proposed systems. The methods that will be applied to achieve the specific
objectives are namely: Literature review, interviews, system analysis, system design, Data
modeling.
3.1.1. Documentation
The researcher examined written, visual, and audio documents that exist. There are lots of
different kinds of documents, including official documents produced by institutions, web sites,
and personal documents.
3.1.3. Interview
Semi-structured interviews will be conducted to augment the data collected during observations
and more so to provide an in-depth understanding of views and experiences of the personnel.
Since the researcher needs to know specific information to compare and contrast with
information gained from other interviews, semi-structured interviews are chosen. Therefore, the
same questions shall be asked in most of the interview. However, this interview type enabled the
researcher‟s interviews to remain flexible so that other important information can still arise.
All interviews will be audio-recorded, and supplementary handwritten notes were taken.
16
3.1.4. Observation
An observation method is chosen because it can be a rich source of information as it enables the
researcher to capture what people do rather than what they say they do and promote
understanding of complex situations.
17
Diagram view of waterfall model
18
3.2.2 Phases of waterfall model
The Waterfall phases I used to develop BPR Advanced Bank transaction can be described as
follows:
i. Requirements analysis
All possible requirements for this BPR banking system to be developed are captured in this
phase. The requirements are gathered from the end-user of BPR by consultation, these
requirements are analyzed for their validity and the possibility of incorporating the requirements
in the system to be developed in study. Finally, a requirement specification document is created
which serves the purpose of guideline for the next phase of the model.
ii. Design
Before starting for actual coding, it is highly important to understand what is going to be created
and how the BPR system should look like. The requirement specifications from the first phase
are studied in this phase and system design is prepared. The BPR banking System design helps in
specifying hardware and system requirements and helps in defining overall BPR system
architecture.
iii. Coding
This phase is come for development of BPR system requirements according to the design made
during the design phase; in a given target technology. It is the coding phase in which the
realization of the abstract ideas and concepts takes place.
iv. Testing
In this phase, the researcher has starting doing the testing process. Once all units are developed
in coding phase and are integrated into a system after testing done on each unit, the entire system
should be tested. Testing here will make sure that the developed product meets the BPR users
requirements.
19
v. Implementation
After coding, the implementation of the design pattern of BPR system that has been made on the
previous stage has been happened. And the BPR Advanced Bank Transaction System has been
launched.
v. Maintenance
There are some issues, which come up in the BPR users environment. To fix those issues,
patches are released. In addition, to enhance the product some better versions are released. The
researcher has used the maintenance phase to deliver or to update these changes in the BPR users
environment.
20
Linux, Mac and Windows. Since most actual web server deployments use the same components
as XAMPP, it makes transitioning from a local test server to a live server extremely easy as well.
It is the most popular PHP development environment.
II. Adobe DreamWeaver Text Editor
Adobe DreamWeaver is an open-source editor written in HTML, CSS, and JavaScript with a
primary focus on web development. It was created by Adobe Systems, licensed under the MIT
License, and is currently maintained on GitHub. Adobe DreamWeaver is available for cross-
platform download on Mac, Windows, and Linux. (Bharti, 2017)
III. Web Browser
A web browser (commonly referred to as a browser) is a software application for retrieving,
presenting, and traversing information resources on the World Wide Web. An information
resource is identified by a Uniform Resource Identifier (URI/URL) and may be a web page,
image, video or other piece of content. Hyperlinks present in resources enable users easily to
navigate their browsers to related resources. (Fitzpatrick, Jason, 2009)
3.3.2 Languages
I. PHP
PHP is an acronym meaning Hypertext Pre-processor. It is a scripting language whose syntax is
Perl and C language and consists of script embedded in an HTML script. Because PHP generates
HTML pages, it works with any browser. PHP is platform independent and versions are available
for most operating system (windows, Linux, etc.) and web server (Apache, etc.). This project has
been chosen to be developed under PHP version 5.3.0 due to the following features this version
of PHP. (Lerdorf, R, Tatroe, K., &MacIntyre, P.et al (2006).
flexibility, small learning curve, small development time and relatively few hardware
resources demand.
PHP is supported in almost all platforms and popular web servers such as Apache.
PHP‟s popularity and increase usability within businesses ensure us that the maintenance
and further development of this application will easy and cheap, support and further
development.
21
II. CSS
Cascading Style Sheets is a style sheets language used to describe the presentation semantics
(that is, the look and formatting) of a document written in a markup language. It‟s most common
use is to style web pages written in HTML and XHTML. (Hanselman, 2010)
III. HTML
Hypertext Markup Language (HTML) is the authoring language used to create documents on the
World Wide Web.HTML is similar to SGML, although is not a strict subnet.HTML defines the
structure and layout of a Web document by using a variety of tags and attributes. All the
information you would like to include in your Web pages fits in between the tags. They are
hundreds of tags used to format and layout the information in a web page. Tags are also used to
specify hypertext links. These allow Web developers to direct users to other web pages with only
a click of the mouse on either an image or word. (Lerdorf, R., Tatroe, K., &MacIntyre, P.et al
(2006).
IV. MySQL.
MySQL is a relational database management system. It sores data in separate tables rather than
putting all the data in one big storeroom. This adds speed flexibility. The MySQL database
server is very fast, reliable cheaper and easy to use and learn. MySQL today offers a rich and
useful set of functions. Its connectivity, speed and Security make it highly suited for accessing
databases on the internet, it also supports clustering technology. (Rouse M, 2012.)
V. JAVA SCRIPT
JavaScript is most commonly used as a client-side scripting language. This means that JavaScript
code is written into an HTML page. When a user requests an HTML page with JavaScript in it,
the script is sent to the browser and it's up to the browser to do something with it.
(Javascriptissexy.com, 2018).
22
CHAPTER FOUR: ANALYSIS, DESIGN AND IMPLEMENTATION OF
NEW SYSTEM
4.0 Introduction
A system requirements analysis, design and implementation is a complete description of the
behavior and look of the system to be developed. It includes a set of use cases that describe all of
the interactions that the users will have with the system. In addition to use cases, the system
requirement analysis contains functional requirements, which define the internal workings of the
system: that is, the calculations, technical details, data manipulation and processing, and other
specific functionality that shows how the use cases are to be satisfied. It also contains
nonfunctional requirements, which impose constraints on the design or implementation (such as
performance requirements, quality standards or design constraints). System Design will describe
more about the result from design phase whereas it is used as an input for the implementation
and testing process before implement the new system, must complete the detail planning to
ensure the developed system can be functioning well and complete.
23
4.3 System Analysis
A functional requirement defines the internal workings of the system: that is, the calculations,
technical details, data manipulation and processing, and other specific functionality that shows
how the use cases are to be satisfied. The functionalities of the system or modules are mean what
the system supposes to do.
24
7. This system allows the customer to change password
8. This system allows the customer to request Loan.
Non-functional requirements needed in this internet banking system are identified as:
i. Performance Requirements: the system run on high performance with quick response.
ii. Portability: the system will run without modification. The system run on windows 7,8,10.
iii. Security: a strong password will be required before entering the system and use it.
iv. Usability: the system is user friendly, novice users can learn to operate major use cases
without outside assistance.
v. Adaptability: the finished software support new employee types without needing to be
written or recompiled.
vi. Reliability: the system is available to use if the user has internet which is low, the internet
the lower the response time.
25
4.3.4 System Requirement
System Specification
This includes the development environment and the operating system in which this Advanced
Bank Transactions system is build. The capacity of the client and servers and the type of
processors required in the hardware to develop this application ranging from front end to back
end.
Hardware Specification
i. Internet connection, wired or wireless
ii. Desktop or Laptop computers
iii. At least 1.8Ghz Intel Duo Processor speed and at least 1 GB RAM for each computer
plus 100+ GB Disk space on the different computers
iv. To access the system, any modern-day Smartphone, tablet, laptop or desktop computer
with internet connection can be used.
v. Secure Hosting Server that will host the information database.
Software specification
i. Operating systems: - Windows 7,8,10 on Windows PC and mac OS on MacBook Laptops
ii. Antivirus
iii. Browser. (Internet Explorer, Opera Mini, Google Chrome, Firefox and others)
iv. Front End Softwares: HTML, CSS and some Javascript
v. Back end Softwares: PHP, MySQL
26
4.4 Architectural Design
System architecture diagram of BPR Advanced Bank Transaction System will show the parts of
the system in blocks. The principal parts or functions are represented by blocks connected by
lines that show the relationships of the blocks.
27
Context diagram also known as Level 0, is a top-level data flow diagram. It only contains one
process node “Process 0”) that generalizes the function of the entire system in relationship to
external entities.
all of the functionality of the system as a whole. It also identifies internal data stores that must be
present so that the system performs it‟s job, and shows the flow of data between the various parts
of the system.
28
Example of Data Flow Diagram of My Project
29
Example Entity Relationship Diagram of my project
loanAmt
loanTy
pe Interest idno
names
Rate startD tinno
loanId ate id
Loan Payments
Reque Pay
grant st
first_n
last_n ame
id
ame
uname
Add,
email
Manager View , Customer
id
Update,
delete phone_n
o
pwd
una accno
me
View,S pass
View earch wor
, d
trans_id bala
nce Rec
eive
Transactions
motif
trans_date remarks
id
credit send
SMS
debit receiver
senttime receivedtime
msg status
Figure 7: Entity Relationship Diagram
Source: my own design using MS Word
30
4.10 Physical Data Model (PDM)
The PDM is used to design the internal schema of a database, depicting the data tables (derived
from the logical data entries), the data columns of those tables (derived from the entity
attributes), and the relationships between the tables (derived from the entity relationships).
31
3.11 Data Dictionary
Logical Database design
Manager Table
32
Transaction table
33
Names int (10) Foreign Key Customer Names
34
1.12.System implementation
1.12.1. Presentation of the System
Hotel Homepage
35
Customer Transaction History
36
Add Customer page
37
4.12. Software testing
Software testing is a critical element of software quality assurance and represents the ultimate
review of specification, design and coding. In fact, testing is the one step in the software
engineering process that could be viewed as destructive rather than constructive.
A strategy for software testing integrates software test case design methods into a well-planned
series of steps that result in the successful construction of software. Testing is the set of activities
that can be planned in advance and conducted systematically. The underlying motivation of
program testing is to affirm software quality with methods that can economically and effectively
apply to both strategic to both large and small-scale systems.
Unit Testing
Unit testing focuses verification effort on the smallest unit of software design, the module. The
unit testing we have is white box oriented and some modules steps are conducted in parallel.
To follow the concept of white box testing we have tested each form .we have created
independently to verify that Data flow is correct, All conditions are exercised to check their
validity, All loops are executed on their boundaries.
38
Integration Testing
Integration Testing is the process of testing the connectivity or data transfer between a couple of
unit tested modules. It is AKA I&T Testing or String Testing. It is subdivided into Top-Down
Approach, Bottom-Up Approach and Sandwich Approach (Combination of Top Down and
Bottom Up).
This is a black box testing. Testing the fully integrated application this is also called as end to
end scenario testing. To ensure that the software works in all intended target systems. Verify
thorough testing of every input in the application to check for desired outputs. Testing of the
users experiences with the application.
4.13 Validations
When a system is being created, various validations on data in form of checks and controls to
avoid the system from failing. It is always important to ensure that only valid data is entered and
only valid operations are performed on the system. These are the types I used for checks and
controls:
Various client side validations are used to ensure on the client side that only valid data is entered.
Client side validation saves server time and load to handle invalid data. Some checks imposed
are:
Javascript is used to ensure those required fields are filled with suitable data only. Maximum
lengths of the fields of the forms are appropriately defined.
Forms cannot be submitted without filling up the mandatory data so that manual mistakes of
submitting empty fields that are mandatory can be sorted out at the client side to save the
server time and load.
39
Tab-indexes are set according to the need and taking into account the ease of user while
working with the system.
Examples of validation in the system
40
SERVER SIDE VALIDATION
Some checks cannot be applied at client side. Server side checks are necessary to save the system
from failing and intimating the user that some invalid operation has been performed or the
performed operation is restricted. Some of the server side checks imposed is:
Server side constraint has been imposed to check for the validity of primary key and foreign
key. A primary key value cannot be duplicated. Any attempt to duplicate the primary value
results into a message intimating the user about those values through the forms using foreign
key can be updated only of the existing foreign key values.
User is intimating through appropriate messages about the successful operations or
exceptions occurring at server side.
Various Access Control Mechanisms have been built so that one user may not agitate upon
another. Access permissions to various types of users are controlled according to the
organizational structure. Only permitted users can log on to the system and can have access
according to their category. User- name, passwords and permissions are controlled on the
server side.
Using server side validation, constraints on several restricted operations are imposed.
41
CHAPTER 5: DISCUSSION, CONCLUSION AND RECOMMENDATION
5.1. Discussion
Advanced Bank Transaction system is usually contains legacy systems along with very large
database systems. In this system a large number of interfaces are included to facilitate the
customers to access banking services and interfaces for management for better managing bank
activities. Handling of financial transactions requires taking care of various issues including
authentication, customers privacy, money laundering, liability for unauthorized transactions,
security controls for safeguarding information and processing of third-party payments. This
Advanced Bank Transaction System provides all necessary information to the management as
well as the customer with the use of this system. The user can simply sit in front of the system
and monitor all the activities without any physical movement of the file. The system can service
the customers request best in time.
5.2. Conclusion
I have designed and implemented an advanced bank transaction web application, which is
database-driven web- based client server system. I have designed The system to exploit advanced
system with modern technology, including the use of standard browsers, PHP, Javascript, CSS,
web technology and secure database, which enabled the robustness and security. The whole
system functioned well and performed all the designed tasks of advanced bank transaction
activities which may make the system offer the full range of home banking activities through
Internet, including transfer money and viewing transactions, loan service.
5.3 Recommendations
The system can be designed for further enhancement .This could also be developed according to
the growing needs of the customer.
The researcher recommends the future researcher to add some features in the system like request
checkbook, buy airtime, and pay receipts.
42
References
Furst, Karen, William W. Lang, and Daniel E. Nolle, 2000, “Who offers Internet banking,”
Quarterly Journal, Office of the Comptroller of the Currency, Vol. 19, No. 1, June, pp. 1–21.
Forbes Inc., 2000, “Online banking‟s goodies,” Forbes, June 12, p. 366.
Beckett, A., Hewer, P., & Howcroft, B. (2000). An exposition of consumer behaviour in the
financial services industry. The International Journal of Bank Marketing, 18(1).
Daniel, E. (1999). Provision of electronic banking in the UK and the Republic of Ireland.
International Journal of Bank Marketing, 17(2), 72-82.
Hadden, R., & Whalley, A. (2002). The Branch is dead, long live the Internet! (or so you'd have
thought if we hadn't listened to the customer). International Journal of Market Research, 44(3),
283-297.
Hiltunen, M., Heng, L., & Helgesen, L. (2004). Personalized Electronic Banking Services. In C.-
M. Karat, J. Blom & J. Karat (Eds.), Designing Personalized User Experiences in eCommerce
(Vol. 5, pp. 119-140). Netherlands: Kluwer Academic Publishers.
Gonzalez, M.E., M.R. Dentiste and M.W. Rhonda (2008). An Alternative Approach in Service
Quality: An E-Banking Case Study. Quality Manage, 15: 41-48.
43
APPENDICES
<?php
include "header.php";
if (isset($_GET['loginFailed'])) {
?>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div class="flex-container-1">
<div class="flex-item">
<h2>Manager Login</h2>
</div>
<label><b>Username</b></label>
<div class="flex-item">
</div>
<label><b>Password</b></label>
44
<div class="flex-item">
</div>
</div>
<div class="flex-container-2">
<div class="flex-item">
<button type="submit">Login</button>
</div<div class="flex-item">
</div>
</div>
</form>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<title>Online Banking</title>
<meta charset="utf-8"
<body id="page1">
<div class="bg">
45
<div class="main">
<header>
<body>
<div class="mainbox">
<h4>Contact Us:</h4>
<ul class="list-services">
</ul>
</div>
</div>
<div style="text-align:center">
<span class="dot"></span>
<span class="dot"></span>
<span class="dot"></span>
</div>
<section id="content">
<div class="padding">
<div class="wrapper">
46
<div class="col-1">
<div class="pad">
<div class="extra-wrap">
<h3 class="color-1"><strong>Pay</strong>Tax,Water</h3>
</div>
</div>
<div class="extra-wrap"> You will be able to pay all taxes and other things
everywhere you are </div>
<div class="extra-wrap"> School loan, Car Loan and Personal Loan. </div>
<div class="col-2">
<div class="pad">
<div class="extra-wrap">
<h3 class="color-3"><strong>OUR</strong>SERVICES</h3>
</div>
</div>
</div>
47
</div>
</div>
</div>
</div>
</div>
<div class="wrapper">
<div class="col-3">
<div class="indent">
<h2>BPR Mission</h2>
<p class="color-4 p1">Bpr Online Banking offer flexible client-server technology based
on a scalable system. Its centralized, customer centric design to offers a complete set of integral
retail banking modules sharing a user-friendly interface. Banking System - is developed for
automate the process of day to day transaction of the bank; it has all the features need to operate
the banking procedure.</p>
<div class="wrapper">
<div class="extra-wrap">
</div>
</div>
</div>
<div class="col-2">
<div class="block-news">
48
<div class="wrapper p2">
<div class="extra-wrap">
A branch is a retail location where a bank, credit union, or other financial institution
offers a wide array of face-to-face and automated services to its customers. <a
href="#">more</a> </div>
</div>
<div class="wrapper">
<div class="extra-wrap">
A car is not always a luxury; it is a necessity in most cases. With a Online car loan,
you can purchase a vehicle of your choice. .. <a href="#">more</a> </div
<footer>
<div class="row-top">
<div class="row-padding">
<div class="wrapper">
<div class="col-1">
<h4>Address:</h4>
<dl class="address">
<dt><span>Country:</span>RWANDA</dt>
<dd><span>Address:</span>MUSANZE NM 34</dd>
<dd><span>Email:</span><a href="#">abts@gmail.com</a></dd>
49
<dd><span>Telephone:</span>+25078888888</dd>
</dl>
</div>
<div class="col-2">
<h4>Follow Us:</h4>
<ul class="list-services">
</ul>
</div>
<div class="col-3">
<h4>Why Us:</h4>
<ul class="list-1">
</ul>
</div>
<div class="col-4">
</div>
</div>
</div>
50
</div>
<div class="row-bot">
<div class="aligncenter">
var slideIndex = 0;
showSlides();
function showSlides() {
var i;
slides[i].style.display = "none";
slideIndex++;
slides[slideIndex-1].style.display = "block";
setTimeout(showSlides, 3000);
}*/
</script>
<script type="text/javascript">Cufon.now();</script>
51
<script type="text/javascript">
$(function () {
$('.slider')._TMS({
prevBu: '.prev',
nextBu: '.next',
playBu: '.play',
duration: 1000,
easing: 'easeOutQuad',
preset: 'simpleFade',
pagination: false,
slideshow: 8000,
numStatus: false,
pauseOnHover: true,
banners: true,
waitBannerAnimation: false,
banner.hide().fadeIn(500)
},
banner.show().fadeOut(500)
});
})
</script>
</body></html>
52