You are on page 1of 60

Bank Management System

A MAJOR PROJECT REPORT SUBMITTED


TO
OSMANIA UNIVERSITY, HYDERABAD

IN PARTIAL FULFILLMENT OF THE AWARD FOR THE

DEGREE OF

MASTER OF COMPUTER APPLICATIONS

Submitted by

Kotha Nithin Reddy

1325-18-862-001

TEM P LE
O F
L E A R N IN G

DEPRTMENT OF MASTER OF COMPUTER APPLICATIONS

Aurora’s PG College Ramanthapur(MCA)


(Affiliated to Osmania University)
Ramanthapur, Hyderabad – 500013
CERTIFICATE
This is to certify that the project work entitled
Bank Management System
is a bonafide work done by

Kotha Nithin Reddy


1325-18-862-001

as part of his/her curriculum in the

DEPARTMENT OF COMPUTER SCIENCE


Aurora’s PG College(MCA)
Ramanthapur, Hyderabad – 500013
In partial fulfillment of requirement for award of

Master of Computer Applications

Osmania University, Hyderabad

This work has been carried out under our guidance.

Mr. R.Vijay Kumar


Internal Guide Head of Department Principal

Internal Examiner External Examiner


DATE:
CERTIFICATE

This is to certify that Kotha Nithin Reddy, MCA, student of Aurora’s PG


College, Ramanthapur, Hyderabad – 500013 with 1325-18-862-001 has
successfully completed his project work titled “Bank Management System” in
partial fulfillment of MCA course curriculum.

This project was done during the period from 24/03/2021 to 23/05/2021 .
We wish him/her all the best in future endeavors.

For: National Small Industries Corporation Ltd. (NSIC)


DECLARATION

I Kotha Nithin Reddy hereby declare that the project entitled “Bank
Management System” has been carried out by me at their Head Office
National Small Industries Corporation, Hyderabad.

This project is submitted to Osmania University, Hyderabad in partial


fulfillment of the requirements for the award of the degree of “MASTER OF
COMPUTER APPLICATIONS”. The results embodied in this dissertation have
not been submitted to any other university or institution for the award of any
degree or diploma.

SIGNATURE

Kotha Nithin Reddy


1325-18-862-001
ACKNOWLEDGEMENTS

I would like to express deep gratitude and respect to all those people behind the
scene who guided, inspired and helped in the completion of this project work.
I wish to convey my sincere thanks to Principal and Head of Department of
Computer Science, our project in charge Mr R.Vijay Kumar for giving me the
required guidance during this project work.
Last but not the least I am very thankful to the faculty members of my college
and friends for their suggestions and help in successfully completing this
project.
INDEX

1. Organization Profile Page No. 1


2. Abstract Page No. 3
3. System Analysis Page No. 5
3.1 Description of Modules
3.2 Feasibility Study.
3.3 Software Requirement Specification
4. System Design Page No. 16
4.1 UML Diagrams
5. Implementation Page No. 24
5.1 Sample Source Code
5.2 Screen Shots
6. Testing Page No. 50
7. Scope Page No. 52
8. Conclusion Page No. 53
9.Bibliography and Webliography Page No. 54
1. Organization Profile
National Small Industries Corporation Ltd. (NSIC)
National Small Industries Corporation Ltd. (NSIC), is an ISO 9001-2008 certified
Government of India Enterprise under Ministry of Micro, Small and Medium Enterprises
(MSME).
NSIC has been working to fulfill its mission of promoting, aiding and fostering the growth of
small industries and industry related micro, small and medium enterprises in the country.
Over a period of five decades of transition, growth and development, NSIC has proved its
strength within the country and abroad by promoting modernization, upgradation of
technology, quality consciousness, strengthening linkages with large medium enterprises and
enhancing exports - projects and products from small enterprises.
NSIC operates through countrywide network of offices and Technical Centres in the Country.
To manage operations in African countries, NSIC operates from its office in Johannesburg,
South Africa. In addition, NSIC has set up Training cum Incubation Centre & with a large
professional man power, NSIC provides a package of services as per the needs of MSME
sector.
NSIC carries forward its mission to assist small enterprises with a set of specially tailored
schemes designed to put them in a competitive and advantageous position. The schemes
comprise of facilitating marketing support, credit support, technology support and other
support services.

Mission: “To promote and support Micro, Small & Medium Enterprises (MSMEs) Sector” by
providing integrated support services encompassing Marketing, Technology, Finance and
other services.

Vision: “To be a premier Organization fostering the growth of Micro, Small and Medium
Enterprises (MSMEs) Sector”.

Schemes of NSIC
NSIC facilitates Micro, Small and Medium Enterprises with a set of specially tailored scheme
to enhance their competitiveness. NSIC provides integrated support services under Marketing,
Technology, Finance and other Support service.

Marketing Support
Marketing has been identified as one of the most important tool for business development. It
is critical for the growth and survival of MSMEs in today's intensely competitive market.
NSIC acts as a facilitator and has devised a number of schemes to support enterprises in their
marketing efforts, both domestic and foreign markets

1
Technology Support
Technology is the key to enhancing a company's competitive advantage in today's dynamic
information age. Small enterprises need to develop and implement a technology strategy in
addition to financial, marketing and operational strategies and adopt the one that helps
integrate their operations with their environment, customers and suppliers.
NSIC offers small enterprises the following support services through its Technical Services
Centres and Extension Centers:
Advise on application of new techniques
Material testing facilities through accredited laboratories
Product design including CAD
Common facility support in machining, EDM, CNC, etc.
Energy and environment services at selected centers
Classroom and practical training for skill up gradation.
Address:
Near Radhika Movieplex,
Electronic Complex,
Kamalanagar,
Kushaiguda,
Hyderabad,
Telangana
500062

2
2. Abstract
The main objective of the project is to develop online banking system for banks. The Bank Account
Management System is an application for maintaining a person's account in a bank. In this project I
tried to show the working of a banking account system and cover the basic functionality of a Bank
Account Management System. This Bank Management System also allow user to allow adding new
customer account, deleting account, depositing amount etc. Our system also provides security check
to reduce fraud. This system will check user existence in the database and will provide set of services
with respect to the role of the user.

Purpose:
The general purpose of the Bank Management System is to provide bank services like account
creation and to maintain the records of the customers and information regarding interest rates, loan
rates etc online. This system helps customers to manage their bank accounts remotely.

Existing System:
The existing bank system is slow as every task is being performed by the human being and comparing
the computer task speed with a computer is not fair. The complexity of this system is increased when
their increase in a number of customers and with that there will be number transactions will be
performed now everything needs to log in a file for the reference in the future which is simply not the
kind of scenario we need at this time. Some other drawbacks of the existing system:
Less security of customer and bank information.
Require more physical work and man power.
All the manual entry and editing will take more time.
No level of clearance for the different level of employees.
Safety of paper documents from the disaster.
No backup of the information.

Proposed System:
The main objective of the system is to automate all the banking process with improved performance
and realize the vision of paperless banking. Salient features of the proposed bank management system
are given below.
Using this bank management system any information can be easily searched. User can view all the
details of the customer.
Manage large number of customer details with ease. Particular A/c information can be modified A
particular customer record can be modified for one or more field’s customer name, address by
providing A/c number.

3
Advantages:
The system is very simple in design and to implement. The system requires very low system resources
and the system will work in almost all configurations. It has got following features
 Security of data.
• Ensure data accuracy’s.
• Reduce the damages of the machines.
• Minimize manual data entry.
• Minimum time needed for the various processing.
• Greater efficiency
• Better service.
• User friendliness and interactive.
• Minimum time required.

Software requirements:
 Technology : PYTHON 3.7.0
 Framework : Django 2.2
 Web Technologies : Html, JavaScript, CSS.
 IDE : Pycharm Community Edition 2021.1.1
 Web Server : Django Server
 Database : SQLite3

Minimum Hardware requirements:

 Hardware : Intel i3
 Speed : 3.6 GHz
 RAM : 4 GB
 Hard Disk : 5 GB

4
3. System Analysis
3.1 Description of Modules
(1) Administrator.

(2) Customer

(3) Registration

(4) Login

1. Administrator:
The entire application will be maintained by the Administrator. Only he can add
the new super user (admin) Bank Web Application. He can view the all details of
the bank and customers and he can also send the suggestions to both of the
users. He can update, delete the profile details of the website. The Administrator
will give the permissions for user to login into our website.

2. Customer:
Customer will create an account with the bank using banks web application.
He/She is allowed to perform certain operations based on the permissions given
and the type of account he/she holds in the Bank. He/She is the user of the bank
application.

3. Registration:
Using this registration customer can register for a bank and the bank will allot
the account number to the customer. Registration is only for new users of the
bank. This is the first step that a new user can perform.

4. Login:

If the user is not a new customer to the bank he/she can directly login into his
bank account. Login is the first step that an existing customer has to perform
before he/she can proceed with further transactions of the account.

3.2 FEASIBILITY STUDY


Feasibility study:
Feasibility study is the initial design stage of any project, which brings together
the elements of knowledge that indicate if a project is possible or not. All

5
projects are feasible if they have unlimited resources and infinite time. But the
development of the software is plagued by the scarcity of resources and difficult
delivery rate. It is necessary and prudent to evaluate the feasibility of the
project at the earlier times.

Economic Feasibility:
The procedure is to determine the benefits and savings that are expected from
the candidate system and compare with the cost. It benefits outweigh cost then
the decision is to make design and implement the system. Otherwise further
justification or alternatives in the proposed system that must make if it is having
a change of the system lifecycle. For my project iam not expecting any feasibility
costs spent on this project because here I am using open source environments.

Technical Feasibility:
Technical feasibility centers on the existing system and to what extent it
supports the proposed addition if the budget is serious constraint, then the
project is judged not feasible. The technical feasible is important role in my
project because I am using sentiment analysis.
Technical feasibility study is the complete study of the project in terms of input,
processes, output, fields, programs and procedures. It is a very effective tool for
long term planning and trouble shooting. The technical feasibility study should
most essentially support the financial information of an organization.

Operational Feasibility:
Operational feasibility refers to the measure of solving problems with the help of
a new proposed system. It helps in taking advantage of the opportunities and
fulfils the requirements as identified during the development of the project. It
takes care that the management and the users support the project.

3.3 SOFTWARE REQUIREMENTS SPECIFICATIONS:


Introduction:
The success of a software system can be accessed on the basis of its fullfillment
of two interdependent types of requirements. First and foremost, the client
focused requirements that focus on the functionalities given to the users of the
system. Second, the context focused requirements which can be system,
procedure and human necessities. The later type of requirements is suggested
as non-functional requirements (Nfrs). Nfrs are systems goals that may impact
6
the operational environment and design decisions an employer may look for the
progression of the software. Besides other things Nfrs incorporate operational
environment: hardware and software interfaces, accuracy, performance etc.
Functional requirements portray the noticeable external input and output
interactions with the system under scrutiny, despite the fact that non-functional
requirements are those that drive unique conditions and qualities on the system
to develop. Thus, system acceptance testing is centered on both functional and
non-functional system’s requirements.

Introduction to Python:
Python is a popular programming language. First developed in the late 80’s by
Guido van Rossum, Python is currently in its third version, released in 2008,
although the second version originally released in 2000 is still in common usage.

It is used for:

● web development (server-side),


● software development,
● mathematics,
● system scripting.

What can Python do?

● Python can be used on a server side to create web applications.


● Python can be used alongside software to create workflows.
● Python can connect to database systems. It can also read and modify
files.
● Python can be used to handle big data and perform complex mathematics.
● Python can be used for rapid prototyping, or for production-ready
software development.
● The Python language itself is managed by Python Software Foundation,
who offer a reference implementation of python, called CPython under an
open source license.

Why Python?

● Python works on different platforms (Windows, Mac, Linux, Raspberry Pi,


etc).

7
● Python has a simple syntax similar to the English language.
● Python has syntax that allows developers to write programs with fewer
lines than some other programming languages.
● Python runs on an interpreter system, meaning that code can be executed
as soon as it is written. This means that prototyping can be very quick.
● Python can be treated in a procedural way, an object-orientated way or a
functional way.

Compilation of code:

Python first compiles your source code (.py file) into a format known as byte
code. Compilation is simply a translation step, and byte code is a lower-level,
and platform-independent, representation of your source code. Compiled code is
usually stored in.pyc files, and is regenerated when the source is updated, or
when otherwise necessary. To distribute a program to people who already
have Python installed, you can ship either the .py files or the .pyc files.

The byte code (.pyc file) is loaded into the Python runtime and interpreted by a
Python Virtual Machine, which is a piece of code that reads each instruction in
8
the byte code and executes whatever operation is indicated. Byte code
compilation is automatic, and the PVM is just part of the Python system that you
have installed on your machine. The PVM is always present as part of the Python
system and is the component that truly runs your scripts. Technically, it's just
the last step of what is called the Python interpreter. And this is how the process
is done (very general). Of course, there are optimizations and caches to improve
the performance.

Each time an interpreted program is run; the interpreter must convert source
code into machine code and pull in the runtime libraries. This conversion process
makes the program run slower than a comparable program written in a compiled
language. Python do something clever to improve its performance. It compiles to
byte code (.pyc files) the first time it executes a file. This improves substantially
the execution of the code next time the module is imported or executed.

● Easy-to-learn − Python has few keywords, simple structure, and a clearly


defined syntax. This allows the student to pick up the language quickly.

● Easy-to-read − Python code is more clearly defined and visible to the


eyes.

● Easy-to-maintain − Python's source code is fairly easy-to-maintaining.

Introduction to Django:

Django is a web development framework that assists in building and


maintaining quality web applications. Django helps eliminate repetitive tasks
making the development process an easy and time saving experience. This
tutorial gives a complete understanding of Django.

Django is a high-level Python web framework that encourages rapid


development and clean, pragmatic design. Django makes it easier to build
better web apps quickly and with less code.

Django is a registered trademark of the Django Software Foundation and is


licensed under BSD License.

History of Django:

● 2003 − Started by Adrian Holovaty and Simon Willison as an internal


project at the Lawrence Journal-World newspaper.

9
● 2005 − Released July 2005 and named it Django, after the jazz guitarist
Django Reinhardt.

● 2005 − Mature enough to handle several high-traffic sites.

● Current − Django is now an open source project with contributors across


the world.

Features of Django:

● Loosely Coupled − Django aims to make each element of its stack


independent of the others.

● Less Coding − Less code so in turn a quick development.

● Don't Repeat Yourself (DRY) − Everything should be developed only in


exactly one place instead of repeating it again and again.

● Fast Development − Django's philosophy is to do all it can to facilitate


hyper-fast development.

● Clean Design − Django strictly maintains a clean design throughout its


own code and makes it easy to follow best web-development practices.

Advantages of Django:
Here are few advantages of using Django which can be listed out here

● Object-Relational Mapping (ORM) Support − Django provides a bridge


between the data model and the database engine, and supports a large
set of database systems including MySQL, Oracle, Postgres, etc. Django
also supports NoSQL database through Django-nonrel fork. For now, the
only NoSQL databases supported are MongoDB and google app engine.

● Multilingual Support − Django supports multilingual websites through its


built-in internationalization system. So, you can develop your website,
which would support multiple languages.

● Framework Support − Django has built-in support for Ajax, RSS, Caching
and various other frameworks.

● Administration GUI − Django provides a nice ready-to-use user interface


for administrative activities.

● Development Environment − Django comes with a lightweight web server


to facilitate end-to-end application development and testing.

10
DJANGO MVC - MVT Pattern:
The Model-View-Template (MVT) is slightly different from MVC. In fact, the
main difference between the two patterns is that Django itself takes care of the
Controller part (Software Code that controls the interactions between the Model
and View), leaving us with the template. The template is a HTML file mixed with
Django Template Language (DTL).

The developer provides the Model, the view and the template then just map it
to a URL and Django does the magic to serve it to the user.

Modules:
Text blob: It is used for processing textual data. It consists of two properties:
Polarity and subjectivity.
Polarity is a float value within the range [-1.0 to 1.0] where 0 indicates neutral,
+1 indicates a very positive sentiment and -1 represents a very negative
sentiment.
Subjectivity is a float value within the range [0.0 to 1.0] where 0.0 is very
objective and 1.0 is very subjective. Subjective sentence expresses some
personal feelings, views, beliefs, opinions, allegations, desires, beliefs,
suspicions, and speculations whereas Objective sentences are factual.

11
PIP: It is an acronym of “Pip Install Packages” (or) “Pip Install Python”. Pip is a
package management system used to install and manage the software packages
in python. All the modules are installed by using pip.

We are developing every server-side python-Django web application projects


using above architecture only in this our Cibil Score Verification web application
project by using above python Django framework using MVT Design Pattern
Architecture
Functional Requirements:
Functional requirements exhibit the behavior of the system that fulfills client's
objectives or tasks, General principles of requirements engineering is a
distinction between requirements definitions and requirements specifications. A
software requirements definition is an abstract description of the services which
the system should provide and the constraints under which the system must
operate. And requirements definition is probably the most important technique in
structured analysis. It is the only technique that permeates every step of the
method. It also is one of the least pictorial, making it difficult to describe
precisely. In essence, the technique involves capturing what the users really
want and making sure that every subsequent project activity leads to the best
possible transformation of those user needs into system needs which, when
satisfied, will deliver what the users wanted in the first place.

12
Non-Functional Requirements:
In competing situations time-to-market, robustness, and quality are some of the
components which are critical for measuring the success of system. As the
business requirements are changing rapidly there is a need to change and
develop. In the system development process requirement specification is the
important and significant step to be considered. Subsequently, there is a strong
need to formulate the methodologies and standards by which one can capture
the requirements. In addition to providing functional requirements or services
the software system should posses the nonfunctional requirements as they are
important for considering the quality of the software and amazingly impact the
design and execution decisions a developer may make. These also have an
impact on the acceptability of the software by the intended clients or users.
There are different clarifications why non- functionality is complicated to handle.
To appreciate why, it has to research what a NFR is and the distinctions that
exist contrasted with functional requirements. A NFR may be seen as how the
system act as per specific attributes, for instance performance, modifiability and
security. A functional requirement also is seen as what the system must be
capable of performing. Functional requirement are particular entities that are not
difficult to understand and administer. In fact they are easy to verify because of
their temperament, which infers that it is not difficult to give a boolean answer
whether the requirement is satisfied i.e. "Is it conceivable to upload a
document?" Concerning NFR it is not that irrelevant to ask essential inquiries and
expect a boolean answer that shows if the requirement is fulfilled or not, this is a
due to nature of these requirements. NFR could be seen as subjective, since
different people decipher and evaluate the Nfrs contrastingly. This is exasperates
even increasingly because of how small and uncertain NFR for the most part are
depicted in software requirement specification.

Specific Requirements:
You may have waited weeks or months for this appointment, so it’s
understandable that you want to get everything in. But in the reality of today’s
medical world, you’re only going to get a modest amount of time with the
doctor. If you try to discuss 27 concerns in a 10-minute window, there’s no
way that any of your concerns can be explored in depth. Quality is much more
important than quantity when it comes to addressing medical concerns.  Pick
out the two or three most important issues and focus on those. Keep in

13
mind that your doctor may have a few issues on his or her mind to discuss with
you, so allot time for that. If you are seeing your general doctor, dig out your
vaccine card and results of your last mammogram or colonoscopy (if you did
them at another health system). Be aware that it can sometimes take a week
or two to obtain those records, and you might be charged a “reasonable fee”
for the results. 

Detailed Requirements:
Functional Requirements:
Every software developed is different and requires a suitable SDLC approach to
be followed based on the internal and external factors. Some situations where
the use of Waterfall model is most appropriate are: Requirements are very well
documented, clear and fixed. Product definition is stable. Technology is
understood and is not dynamic. The project is short. Simple and easy to
understand and use. Easy to manage due to the rigidity of the model. each
phase has specific deliverables and a review process. Phases are processed and
completed one at a time. Easy to arrange tasks.

NON- Functional Requirements:


Every software developed is different and requires a suitable SDLC approach to
be followed based on the internal and external factors. Some situations where
the use of Waterfall model is most appropriate are:

 Requirements are very well documented, clear and fixed.


 Product definition is stable.
 Technology is understood and is not dynamic.
 The project is short.
 Simple and easy to understand and use.
 Easy to manage due to the rigidity of the model. each phase has
specific deliverables and a review process.
 Phases are processed and completed one at a time.
 Easy to arrange tasks.

External Functional Requirements:


The system is basically running on the official website of the government blood
bank. Mainly there are 2 actors in the system. The system provides some
advance features to the system admin than the donor. If the system admin logs
in, the system interface provides some main command buttons to the admin.
14
 Edit login password.
 Edit user profile details.
 Update the database.
 Search details from the data base. If the user log in, the system will
provide another different interface with different commands.

2Performance Requirements:
The system is interactive and the delays involved are less.
When connecting to the server the delays is based editing on the distance of the
two system configuration between them so there is high probability that there
will be or not a successful connection in less than 20 seconds for the sake of
good communications.

Security Requirements:
The system uses SSL (secured socket layers) in all transactions that include any
Confidential customers Information.

External Interface requirements:


The external interface requirements of this system are as follows-

User interface:
Front-end software: HTML, JavaScript, CSS

Hardware Interfaces:
Windows.
A browser which supports CGI, HTML & Javascript.

Software Interfaces:
Following are the software used for the bus management online application
Operating system: we have chosen the windows operating system for its best
support and user friendliness.
Database: To save the records of patients and doctor we use SQLite3
Technology: Python 3.7.0
Web server: Django Development Server
IDE: PyCharm
Framework: Django 2.2
15
4. SYSTEM DESIGN
SYSTEM ARCHITECTURE
Architecture flow:

Below architecture diagram represents mainly flow of requests from users to


database through servers. In this scenario overall system is designed in three
tires separately using three layers called presentation layer, business logic layer
and data link layer. This project was developed using 3-tier architecture.

4.1 UML Diagrams:

UML, short for Unified Modeling Language, is a standardized


modeling language consisting of an integrated set of diagrams, developed to
help system and software developers for specifying, visualizing, constructing,
and documenting the artifacts of software systems, as well as for business
modeling and other non-software systems. The UML represents a collection of
best engineering practices that have proven successful in the modeling of large
and complex systems. The UML is a very important part of developing object-
oriented software and the software development process. The UML uses mostly

16
graphical notations to express the design of software projects. Using the UML
helps project teams communicate, explore potential designs, and validate the
architectural design of the software. 
Goals of UML:
The primary goals in the UML design were:
 Provide users with a ready-to-use, expressive visual modeling
language so they can develop and exchange meaningful models.
 Provide extensibility and specialization mechanisms to extend the
core concepts.
 Be independent of particular programming languages and
development processes.
 Provide a formal basis for understanding the modeling language.
 Encourage the growth of the OO tools market.
 Support higher-level development concepts such as collaborations,
frameworks, patterns and components.
 Integrate best practices.

Why we use UML?


As the strategic value of software increases for many companies, the
industry looks for techniques to automate the production of software and to
improve quality and reduce cost and time-to-market. These techniques include
component technology, visual programming, patterns and frameworks.
Businesses also seek techniques to manage the complexity of systems as they
increase in scope and scale. In particular, they recognize the need to solve
recurring architectural problems, such as physical distribution, concurrency,
replication, security, load balancing and fault tolerance. Additionally, the
development for the World Wide Web, while making some things simpler, has
exacerbated these architectural problems. The Unified Modeling Language (UML)
was designed to respond to these needs.

UML Diagrams:
UML diagrams are designed to let developers and customers view a
software system from a different perspective and in varying degrees of
abstraction. UML diagrams are commonly created using visual modeling tools.

17
Class Diagram:
The class diagram is the main building block of object-oriented modeling.
It is used for general conceptual modeling of the structure of the application,
and for detailed modeling translating the models into programming code. Class
diagrams can also be used for data modeling. The classes in a class diagram
represent both the main elements, interactions in the application, and the
classes to be programmed.

Login ()
Logout ()
Delete ()

Activity Diagram:

Activity diagram is another important diagram in UML to describe the dynamic


aspects of the system.

Activity diagram is basically a flowchart to represent the flow from one activity
to another activity. The activity can be described as an operation of the system.

The control flow is drawn from one operation to another. This flow can be
sequential, branched, or concurrent. Activity diagrams deal with all type of flow
control by using different elements such as fork, join, etc.

18
USE CASE DESCRIPTION
Use case: Account

Usecase Diagram:
In the Unified Modeling Language (UML), a use case diagram can summarize the
details of your system's users (also known as actors) and their interactions with
the system. To build one, you'll use a set of specialized symbols and connectors.

19
Use case name Account
Purpose In order to access details and set the permissions for
other user, login for admin is provided to control the
system
Actors involved Admin, EDP and User
Basic flow Admin is responsible for providing login id and
password to the user. In order to access his basic
details, user has to login to the system with his
username and password, provided the username and
password are correct his home page can be displayed
Alternate flow The entry may be incorrectly entered for either the
username or password, In that case an alert appears
that indicates invalid username and password
Pre conditions The admin must create the login credentials to the user.
Post conditions System transfer control to user main screen to proceed
further actions

Sequence Diagrams:

20
An interaction diagram shows an interaction, consisting of a set of objects and
them
relationships, including the messages that may be dispatched among them.
A sequence diagram is an interaction diagram that emphasizes the time ordering
of messages.
Graphically, a sequence diagram is a table that shows objects arranged along x-
axis and
messages, ordered in increasing time, along the y-axis.
Sequence diagram

Deployment Diagram
A deployment diagram is a diagram that shows the configuration of run time
processing nodes and the components that live on them.
Graphically, a deployment diagram is collection of vertices and arcs.
Contents
 Deployment diagram commonly contain the following things:
 Nodes
 Dependency and association relationships
 Like all other diagrams, deployment diagrams may contain notes and
constraints.
 Deployment diagrams may also contain components, each of which must live
on some node.
 Deployment diagrams may also contain packages or subsystems, both of
which are used to group elements of your model into larger chunks.

21
Modules Used inside of this Project as a UI(USER INTERFACE SIDE AND
DATABASE SIDE):

USER INTERFACE Forms.py HTTP R


(PRESENTATION LAYER) Is django file
Which can Http Request Post
HTML,CSS
BOOTSTRAP Represents ui
code
URL DISPATCHER
(FRONT CONTROLLER)
RECEIVES THE CLIENT
HTTP REQUEST AND
RESPONSE VALIDATE URLS.PY
DISPLY IN
BROWSER

Db tables to
storesD project Models is a django
File which can implements
Project represented db code which
can stores into Project Represented
Mysql Database
Of entire server side code
22
Component Diagram:
Component diagrams are used to visualize the organization and relationships
among components in a system. These diagrams are also used to make
executable systems.
Component diagram is a special kind of diagram in UML. The purpose is also
different from all other diagrams discussed so far. It does not describe the
functionality of the system but it describes the components used to make those
functionalities.

23
5. Implementation

5.1 SAMPLE CODE USING THERE MODULES EXPLANATIONS

settings.py:
from django.contrib import admin
from django.urls import path
from django.conf.urls import url, include
from . import views
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.conf.urls.static import static
from django.conf import settings

urlpatterns = [
path('admin/', admin.site.urls),
url(r'^$', views.index, name = "home"),
url(r'^accounts/', include("accounts.urls")),
url(r'^profile/', include("profiles.urls")),
url(r'^admins/', include("admins.urls"))
]

urlpatterns += staticfiles_urlpatterns()
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

#Change Site Title, Index Title and Site Title


admin.site.site_header = "Central Bank Administration"
admin.site.site_title = "Central Bank Administration"
admin.site.index_title = "Welcome to Central Bank Administration Admin Panel"

urls.py:
from django.contrib import admin
from django.urls import path
from django.conf.urls import url, include
from . import views
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.conf.urls.static import static
24
from django.conf import settings

urlpatterns = [
path('admin/', admin.site.urls),
url(r'^$', views.index, name = "home"),
url(r'^accounts/', include("accounts.urls")),
url(r'^profile/', include("profiles.urls")),
url(r'^admins/', include("admins.urls"))
]
urlpatterns += staticfiles_urlpatterns()
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

#Change Site Title, Index Title and Site Title


admin.site.site_header = "Central Bank Administration"
admin.site.site_title = "Central Bank Administration"
admin.site.index_title = "Welcome to Central Bank Administration Admin Panel"

Homepage.html
{% load static %}
 
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        
        <title>Bank Management System</title>
        
        <!-- CSS FRAMEWORKS REQUIRED -->
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-
beta/css/bootstrap.min.css"
integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6
M" crossorigin="anonymous">
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css">
        
        {% block stylecontent %}

25
 
        {% endblock %}
        
        <link rel="stylesheet" href="/static/common-styles.css">
 
    </head>
 
    <body>
        <nav class="navbar navbar-expand-lg navbar-dark bg-success fixed-top">
            <img src="/static/images/homepage.png" width="50px">
            <a class="navbar-brand" href="{% url 'home' %}">&nbsp;Myrel Bank Website</a>
            <button class="navbar-toggler" type="button" data-toggle="collapse" data-
target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-
label="Toggle navigation">
                <span class="navbar-toggler-icon"></span>
            </button>
            <div class="collapse navbar-collapse" id="navbarNavAltMarkup">
                <div class="navbar-nav">
                    <a class="nav-item nav-link active" href="{% url 'home' %}" id="nav-home">Home</a>
                    <a class="nav-item nav-link" href="{% url 'accounts:signup' %}" id="nav-create">Create
new account</a>
                    <a class="nav-item nav-link" href="{% url 'accounts:signin' %}" id="nav-login">Sign
In</a>
                </div>
            </div>
        </nav>
        
        <br> <br> <br>
 
        {% block bodycontent %}
 
        {% endblock %}
        
        <!-- FOOTER -->
        <section class="foot bg-success text-white">
            <div class="text-center">
                &copy; Website created with <i class="fa fa-heart" style="color: red;"></i> by <a
href="https://itsourcecode.com/rafi007akhtar" target="_blank">Itsourcecode</a>    
                <br>
26
                <i></i><a>&copy; Bank Management System 2021</a>
            </div>
        </section>    
        
        <!-- JS LIBRARIES REQUIRED -->
        <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-
KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN"
crossorigin="anonymous"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js"
integrity="sha384-
b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4"
crossorigin="anonymous"></script>
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js"
integrity="sha384-
h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1"
crossorigin="anonymous"></script>
 
        {% block scriptcontent %}
        {% endblock %}
        
    </body>
</html>

Moneytransfer.html
{% extends 'profiles/profile_base_layout.html' %}

{% block headcontent %}
<style>
@import url('https://fonts.googleapis.com/css?family=Cinzel|PT+Serif');

body {
background-color: floralwhite;
}
h2 {
font-family: "PT Serif";
}

#side_panel
27
{
font-size: 16px;
font-family: "Titillium Web";
background-color: rgb(170, 95, 57);
margin-top: -7px;
margin-left: -10px;
height: 540px;
overflow-x: auto;
overflow-y: auto;
}

.side {
color: aliceblue;
}
.side:hover {
color: mediumaquamarine;
}
.warning {
color: yellow;
}
.danger {
color: #FF8723;
font-weight: 900;
}
.current {
border: 1px solid;
padding: 3px;
}
.curr_bal {
font-family: "Cinzel";
font-weight: 600;
}

#side_panel::-webkit-scrollbar {
width: 7px;
}
#side_panel::-webkit-scrollbar:hover {
width: 12px;

28
}
#side_panel::-webkit-scrollbar-track {
-webkit-box-shadow: inset 0 0 3px rgba(0,0,0,0.3);
border-radius: 10px;
}
::-webkit-scrollbar-thumb {
border-radius: 10px;
-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5);
}
</style>
{% endblock %}

{% block bodycontent %}
<section id="welcome_post" class="col-9">
<h2>Welcome, <span id="prof_name">{{ user }}.</span> </h2>
<h4 style="font-weight: 300;">It's good to have you here.</h4>

<form action="{ url 'profiles:money_transfer' }" method="post">


{% csrf_token %}

<h3 style="font-weight: 300;">


{{ form }}
</h3>

<small>By transferring money from your account, you agree to the <a href="#">Terms and
Conditions</a> of amount transfer</small>. <br>
<button type="submit" class="btn btn-danger">Transfer amount</button>
</form>
</section>
{% endblock %}

{% block scriptcontent %}
<script>
$(".current").removeClass("current");
$("#transfer").addClass("current");

$("input").addClass("form-control");
$("label").prepend("<br>")

29
</script>
{% endblock %}

Loanform.html
{% extends 'profiles/profile_base_layout.html' %}
 
{% block headcontent %}
    <style>
        @import url('https://fonts.googleapis.com/css?family=Cinzel|PT+Serif');
        
        body {
            background-color: floralwhite;
        }
        h2 {
            font-family: "PT Serif";
        }
 
        #side_panel
        {
            font-size: 16px;
            font-family: "Titillium Web";
            background-color: rgb(170, 95, 57);
            margin-top: -7px;
            margin-left: -10px;
            height: 540px;
            overflow-x: auto;
            overflow-y: auto;
        }
        
        .side {
            color: aliceblue;
        }
        .side:hover {
            color: mediumaquamarine;

30
        }
        .warning {
            color: yellow;
        }
        .danger {
            color: #FF8723;
            font-weight: 900;
        }
        .current {
            border: 1px solid;
            padding: 3px;
        }
        .curr_bal {
            font-family: "Cinzel";
            font-weight: 600;
        }
        
        #side_panel::-webkit-scrollbar {
            width: 7px;
        }
        #side_panel::-webkit-scrollbar:hover {
            width: 12px;
        }
        #side_panel::-webkit-scrollbar-track {
            -webkit-box-shadow: inset 0 0 3px rgba(0,0,0,0.3);
            border-radius: 10px;
        }
        ::-webkit-scrollbar-thumb {
            border-radius: 10px;
            -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5);
        }
    </style>
{% endblock %}
 
{% block bodycontent %}
    <section id="welcome_post" class="col-9">
        <h2>Welcome, <span id="prof_name">{{ user }}.</span> </h2>
        <h4 style="font-weight: 300;">It's good to have you here.</h4>  

31
        <br>  
        
        <form>
            <h3 style="font-weight: 300;">
                What do you need the loan for?
                <input type="text" class="form-control" id="loan_type" required>
            </h3>
            <br>
            <h3 style="font-weight: 300;">
                Enter the amount of loan needed (₱)
                <input type="number" class="form-control" id="loan_amt" required>
            </h3>
            <small>Please read the <a href="#">Terms and Conditions</a> before requesting for
loan</small>. <br>
            <button class="btn btn-primary" type="button" id="loan_submit">Request loan</button>
        </form>
        
    </section>
{% endblock %}        
 
{% block scriptcontent %}
    <script>
        $(".current").removeClass("current");
        $("#loan").addClass("current");
 
        $("#loan_submit").click(function() {
            var msg = "Your loan has been requested. You'll be notified if it gets approved in 24 hours.
Press OK."
            
            if(
                $("#loan_type").val() =="" ||
                $("#loan_amt").val() == ""
            )
                    msg = "Error: One or more of the required fields is missing";
                
            
            alert(msg);
        });

32
    </script>
{% endblock %}

Editdetials.hmtl
{% extends 'profiles/profile_base_layout.html' %}
 
{% block headcontent %}
        <style>
            @import url('https://fonts.googleapis.com/css?family=Cinzel|PT+Serif');
            
            body {
                background-color: floralwhite;
            }
            h2 {
                font-family: "PT Serif";
            }
 
            #side_panel
            {
                font-size: 16px;
                font-family: "Titillium Web";
                background-color: rgb(170, 95, 57);
                margin-top: -7px;
                margin-left: -10px;
                height: 540px;
                overflow-x: auto;
                overflow-y: auto;
            }
            
            .side {
                color: aliceblue;
            }
            .side:hover {
                color: mediumaquamarine;
            }
            .warning {
                color: yellow;
            }
            .danger {
33
                color: #FF8723;
                font-weight: 900;
            }
            .current {
                border: 1px solid;
                padding: 3px;
            }
            .curr_bal {
                font-family: "Cinzel";
                font-weight: 600;
            }
            
            #side_panel::-webkit-scrollbar {
                width: 7px;
            }
            #side_panel::-webkit-scrollbar:hover {
                width: 12px;
            }
            #side_panel::-webkit-scrollbar-track {
                -webkit-box-shadow: inset 0 0 3px rgba(0,0,0,0.3);
                border-radius: 10px;
            }
            ::-webkit-scrollbar-thumb {
                border-radius: 10px;
                -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5);
            }
        </style>
        
        <script src='https://www.google.com/recaptcha/api.js'></script>
{% endblock %}
 
{% block bodycontent %}
    <section id="welcome_post" class="col-9">                
        <h4 style="font-weight: 300;" >
            Only the following details can be edited. For the rest, kindly visit the bank in person.
        </h4>
        <br>
        
        <!-- EDIT BASIC DETAILS -->
34
        <a href="#basic" class="btn btn-primary btn-block" data-toggle="modal" data-
target="#basic">Edit basic</a>
        <div class="modal fade" id="basic" tabindex="-1" role="dialog" aria-labelledby="basic" aria-
hidden="true">
            <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                <h5 class="modal-title" id="exampleModalLabel">Edit basic details</h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
                </div>
                <form action="{ url 'profiles:edit_details' }" method="post" enctype="multipart/form-data"
id="basic-form">
                    <div class="modal-body">
                      
 
                        {% csrf_token %}
                        {{ form1 }}
                    </div>
                    <div class="modal-footer">
                    <button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
                    <button type="submit" class="btn btn-primary">Edit details</button>
                    </div>
                </form>
                
            </div>
            </div>
        </div>
        
        
        (Email, Mobile number, Occupation)
        <br> <br>
        
        <!-- EDIT PRESENT LOCATION -->
        <button type="button" class="btn btn-primary btn-block" data-toggle="modal" data-
target="#location">Edit present location</button>
        

35
        <div class="modal fade" id="location" tabindex="-1" role="dialog" aria-labelledby="location"
aria-hidden="true">
            <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                <h5 class="modal-title" id="exampleModalLabel">Edit present location</h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
                </div>
                <form action="{ url 'profiles:edit_details' }" method="post" enctype="multipart/form-data"
id="location">
                    <div class="modal-body">
                        {% csrf_token %}
                        {{ form2 }}
                    </div>
                    <div class="modal-footer">
                    <button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
                    <button type="submit" class="btn btn-primary">Edit details</button>
                    </div>
                </form>
                
            </div>
            </div>
        </div>
        (Country, State, City, Street, Pincode)
        <br> <br>
        
        <!-- EDIT ACCOUNT DETAILS -->
        <button type="button" class="btn btn-primary btn-block" data-toggle="modal" data-
target="#account">Edit account details</button>
        <div class="modal fade" id="account" tabindex="-1" role="dialog" aria-labelledby="account"
aria-hidden="true">
            <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                <h5 class="modal-title" id="exampleModalLabel">Edit account type</h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
36
                </button>
                </div>
                <div class="modal-body">
                    Account type: <br>
                    <input type="radio" checked> Savings
                    <br>
                    <span class="small">(Presently, we only support Savings accounts)</span>
                </div>
                <div class="modal-footer">
                <button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
                </div>
                
            </div>
            </div>
        </div>
        (Account type)
        <br> <br>
        
        <!-- EDIT PASSWORD -->
        <button type="button" class="btn btn-success btn-block" data-toggle="modal" data-
target="#password">Edit password</button>
        <div class="modal fade" id="password" tabindex="-1" role="dialog" aria-
labelledby="password" aria-hidden="true">
            <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                <h5 class="modal-title" id="exampleModalLabel">Edit password</h5>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
                </div>
                <form>
                    <div class="modal-body">
                        
                        {% csrf_token %}
                        {{ form3 }}
                        Prove you are human
                        <div class="g-recaptcha" data-
sitekey="6Ld_qjQUAAAAADjv2scrqpvXK4OrBZALRJFMANpP"></div>
37
                    </div>
                    <div class="modal-footer">
                    <button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
                    <button type="submit" class="btn btn-primary">Update password</button>
                    </div>
                </form>
                
            </div>
            </div>
        </div>    
        
    </section>
{% endblock %}
 
{% block scriptcontent %}
    <script>
        $(".current").removeClass("current");
        $("#details").addClass("current");
 
        $("input").addClass("form-control");
        $("input[type=radio]").removeClass("form-control");
    </script>
{% endblock %}

base_layout.html
{% load static %}

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">

<title>Bank Management System</title>

<!-- CSS FRAMEWORKS REQUIRED -->


<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-
beta/css/bootstrap.min.css"
38
integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6
M" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css">

{% block stylecontent %}

{% endblock %}

<link rel="stylesheet" href="/static/common-styles.css">

</head>

<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-success fixed-top">
<img src="/static/images/homepage.png" width="50px">
<a class="navbar-brand" href="{% url 'home' %}">&nbsp;Myrel Bank Website</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-
target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-
label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNavAltMarkup">
<div class="navbar-nav">
<a class="nav-item nav-link active" href="{% url 'home' %}" id="nav-home">Home</a>
<a class="nav-item nav-link" href="{% url 'accounts:signup' %}" id="nav-create">Create
new account</a>
<a class="nav-item nav-link" href="{% url 'accounts:signin' %}" id="nav-login">Sign
In</a>
</div>
</div>
</nav>

<br> <br> <br>

{% block bodycontent %}

{% endblock %}

39
<!-- FOOTER -->
<section class="foot bg-success text-white">
<div class="text-center">
&copy; Website created with <i class="fa fa-heart" style="color: red;"></i> by <a
href="https://itsourcecode.com/rafi007akhtar" target="_blank">Itsourcecode</a>
<br>
<i></i><a>&copy; Bank Management System 2021</a>
</div>
</section>

<!-- JS LIBRARIES REQUIRED -->


<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-
KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN"
crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js"
integrity="sha384-
b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4"
crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js"
integrity="sha384-
h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1"
crossorigin="anonymous"></script>

{% block scriptcontent %}
{% endblock %}

</body>
</html>
index.html:
{% extends 'base_layout.html' %}

{% block stylecontent %}
<style>
h1 {
border-bottom: 1px solid;
}
h4 {

40
font-weight: 400;
}
a:hover {
text-decoration: none;
}

.foot {
position: absolute;
bottom: 0px;
left: 0px;
right: 0px;
}
</style>
{% endblock %}

{% block bodycontent %}
<div class="container text-center">
<h1>Welcome to Myrel Bank</h1>
<h4><em>We Do Not Delay Your Transaction</em></h4>
</div>

<br>

<div class="container">
<a href="{% url 'accounts:signup' %}"><button class="btn btn-primary btn-block" id="acc"><i
class="fa fa-user"></i> Create new account</button></a>
<br>
<a href="{% url 'accounts:signin' %}"><button class="btn btn-danger btn-block"
id="sign_in"><i class="fa fa-sign-in"></i> Sign in</button></a>
</div>

<br>
{% endblock %}
create_account:
{% extends 'base_layout.html' %}

{% block stylecontent %}

41
<style>
@import url('https://fonts.googleapis.com/css?family=Slabo+27px');

body {
background-color: skyblue;
}
h2 {
font-family: 'Slabo 27px';
border-bottom: 1px solid black;
font-weight: 900;
}
form ul {
list-style: none;
}
</style>

<script src='https://www.google.com/recaptcha/api.js'></script>
{% endblock %}

{% block bodycontent %}
<h2 class="container text-center">Create New Account</h2>
<h6 class="text-center"><em>(All details are mandatory)</em></h6>
<br>

<form class="container" action="/accounts/register/" method="post">


{% csrf_token %}
<section class="form-control">
<h4>Enter basic details</h4>
{{ form }}
</section>
<br>

<!-- <div class="g-recaptcha" data-


sitekey="6Ld_qjQUAAAAADjv2scrqpvXK4OrBZALRJFMANpP"></div> -->

<br>

42
<section>
<input type="checkbox" required>
<small>By clicking "Create account" you agree to our
<a href="#">Terms and Conditions</a>.</small>
</section>

<br>

<input type="submit" class="form-control btn btn-danger" value="Create account"


name="submit"
/>

</form>

<br>
{% endblock %}

{% block scriptcontent %}
<script>
$(".active").removeClass("active");
$("#nav-create").addClass("active");

$(".helptext").html("");

var input_text = $("input[type=text]");


input_text.addClass("form-control");

var input_pass = $("input[type=password]");


input_pass.addClass("form-control");

$("form ul li").addClass("btn btn-danger");

// var labels = $("label");

// labels.addClass("col");
// input_text.addClass("col")
// input_pass.addClass("col");

43
</script>
{% endblock %}
signin.html:
{% extends 'base_layout.html' %}

{% block stylecontent %}
<style>
body {
background-color: aliceblue
}

.foot {
position: absolute;
bottom: 0px;
left: 0px;
right: 0px;
}
</style>
{% endblock %}

{% block bodycontent%}

<div class="container bg-info">


<form class="form-control" action="/accounts/login/" method="post">
{% csrf_token %}
<h2>Enter login details</h2>

{{ form }}

<br>

<button type="submit" class="btn btn-success">


<i class="fa fa-sign-in"></i>
Login
</button>

<br> <br>

44
<small class="row">
<a href="#" class="col text-left">Forgot password?</a>
<a href="{% url 'accounts:signup' %}" class="col text-right">Create New Account</a>
</small>
</form>
</div>

{% endblock %}

{% block scriptcontent %}
<script>
$(".active").removeClass("active");
$("#nav-login").addClass("active");
$("input").addClass("form-control");
</script>
{% endblock %}

5.2 Screenshots
Homepage

45
Login

Create a new Account

46
Welcome Page

Edit Details

47
Loan Form

Money Transfer

48
Delete Account

6. SYSTEM TESTING

49
Introduction to Testing:
Testing is a process, which reveals errors in the program. It is the major
quality measure employed during software development. During software
development. During testing, the program is executed with a set of test cases
and the output of the program for the test cases is evaluated to determine if the
program is performing as it is expected to perform.

TESTING IN STRATEGIES:

In order to make sure that the system does not have errors, the different
levels of testing strategies that are applied at differing phases of software
development are:

Unit Testing:

Unit Testing is done on individual modules as they are completed and become
executable. It is confined only to the designer's requirements.
Each module can be tested using the following two Strategies:

Integrating Testing:

Integration testing ensures that software and subsystems work together a


whole. It tests the interface of all the modules to make sure that the modules
behave properly when integrated together.

System Testing:

Involves in-house testing of the entire system before delivery to the user.
It aim is to satisfy the user the system meets all requirements of the client's
specifications.

Acceptance Testing:

50
It is a pre-delivery testing in which entire system is tested at client's site on real
world data to find errors.

Test Approach:

Testing can be done in two ways:


Bottom up approach
Top down approach

Bottom up Approach:

Testing can be performed starting from smallest and lowest level modules and
proceeding one at a time. For each module in bottom up testing a short program
executes the module and provides the needed data so that the module is asked
to perform the way it will when embedded within the larger system. When
bottom level modules are tested attention turns to those on the next level that
use the lower level ones they are tested individually and then linked with the
previously examined lower level modules.

Top down approach:

This type of testing starts from upper level modules. Since the detailed activities
usually performed in the lower level routines are not provided stubs are written.
A stub is a module shell called by upper level module and that when reached
properly will return a message to the calling module indicating that proper
interaction occurred. No attempt is made to verify the correctness of the lower
level module.

Validation:

The system has been tested and implemented successfully and thus ensured
that all the requirements as listed in the software requirements specification are
completely fulfilled. In case of erroneous input corresponding error messages
are displayed.

7. SCOPE

51
Online banking plays a key role in a day-to-day life . it is expected that
future will be all about online banking . Every transaction related to bank
management system will be done online .
 We can establish and start various branches and Health Centres fpr
account holder queries .
 We can also deal through Internet by creating web pages for bank.
 To attract account holders we make user friendly interfaces
 Therefore , Manual bank transactions will be reduced .

In this paper, non functional requirement for online banking system has been
exhibited. The non-functional requirement corresponds to the quality of the
system but in online banking system Nfrs are considered as requirements of
paramount importance for the system. The security is one of the non functional
requirements which is thought to be of absolute vitality and is considered as one
of the primary prerequisites that determine the success or failure of the system.
Performance and usability are also of importance as far as the proper working
and running of the system is concerned. It has been proposed that while
considering the quality requirements of the system the non functional
requirements ought not to be ignored for proper working of the system. This
work would help the software engineering community and to the researcher in
enhancing the notion of Non functional requirements for online banking system
and furthermore inspire them to come up with pre-specified benchmarks of Nfrs.
The present work will be further extended as per the interest of the research
problem and will be put to statistical investigation for increasing accuracy of the
work and to improve the precision later on.

8.Conclusion

52
Bank management system is a virtualization of transactions in banking system.
The banking system are used manual working but when we used online banking
system it is totally virtualization process which avoid manual process and
converts it in automatic process . If user can make a transaction in bank
management system it is available in any were also user can link aadhar with
account, change branch location easily. Bank management system is saving the
time with accuracy than bank manual system. It reduces the need to maintain
manual file records and it helps in making transactions from one bank any bank
irrespective of the locations.

Therefore , there is a necessity that all banks


should abide to the principle of providing Online Banking .

Bibliography and Webliography

53
Primary
Lutz, M. (2013). Learning Python, 5th Edition (5 edition). Beijing: O’Reilly Media.
[free HTML for PSU]
http://proquestcombo.safaribooksonline.com/9781449355739 McCullough, M.,
Mitchell, W. J., & Purcell, P. (1990). The Electronic Design Studio: Architectural
Education in the Computer Era. MIT Press. Mitchell, W. J. (1990). The Logic of
Architecture: Design, Computation, and Cognition (1st ed.). Cambridge, MA,
USA: MIT Press. Mitchell, W. J., Liggett, R. S., & Kvan, T. (1987). The art of
computer graphics programming: a structured introduction for architects and
designers. Van Nostrand Reinhold. Tibbits, S., van der Harten, A., & Baer, S.
(2011). Rhino Python Primer (3rd ed.).
[free PDF] http://www.rhino3d.com/download/IronPython/5.0/RhinoPython101
Additional Buxton, P. (Ed.). (2015). Metric Handbook: Planning and Design Data
(5 edition). London ; New York, NY: Routledge. Burry, M. (2011). Scripting
Cultures: Architectural Design and Programming (1 edition). Chichester, UK:
Wiley. Coates, P. (2010). Programming.Architecture (1 edition). London ; New
York: Routledge. Downey, A. B. (2015). Think Python: How to Think Like a
Computer Scientist (2 edition). Sebastopol, CA: O’Reilly Media. [free PDF]
http://www.lulu.com/shop/allen-downey/how-to-think-like-a-computer-scientist-
learningwith-python/paperback/product-3487688.html Duarte, J. P. (2001).
Customizing Mass Housing: a discursive grammar for Siza´s Malagueira houses
(PhD). Massachusetts Institute of Technology, Cambridge, MA, USA. Retrieved
from http://dspace.mit.edu/handle/1721.1/8189 Duarte, J. P. (2005). Towards
the mass customization of housing: the grammar of Siza’s houses at Malagueira.
Environment and Planning B: Planning and Design, 32(3), 347 – 380.
https://doi.org/10.1068/b31124 Fletcher, B. (2011). A history of architecture on
the comparative method. United States: Nabu Press. Furnari, M. (1995).
Introduction to Computation and Programming Using Python.
Django using Corey Schafer Youtube videos .

website: https://www.docs.python.org/ Django Official website:


https://docs.djangoproject.com/en/3.0/ A Python tutorial:
https://docs.python.org/2/tutorial/index.html

54

You might also like