Mobile Banking

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 25

CHAPTER 1: INTRODUCTION

1.1. Background Study

Bachelors of Science in Computer Science and Information Technology (B.Sc.CSIT) is a


four year course affiliated to Tribhuvan University designed to provide the student with
all sorts of knowledge in the field of Information Technology and Computing. In order to
completion of course students required to complete a six credit (minimum ten weeks/180
hour long) internship as a part of the course requirement. An internship is a period of
work experience offered by an employer to give students and graduates exposure to the
working environment, often in a specific industry, which is related to their field of study.
Internship is mandatory requirement for completion of the course and has exposed us to
the real world professional life and provided insight on career opportunities in the fields
of information technology. The internship experience is expected to enable the students
to assist in the resolution of complex problem associated with Information Technology.

mbank is a cloud based mobile banking setup designed to enable mobility for co-
operatives,micro finance,financial institution and banks. The service integrates with the
core banking software of each of these banks using a patented reverse tunneling process.

1.2. Problem Statement

In Hamro Technology Pvt.Ltd., the frontend and backend teams develop independent
components that interact with each other through APIs.This system is highly scalable and
profitable for the business model as it saves both time and resources.

Since mbank is a cloud based mobile banking setup that contains the both hardware and
software components,developing each of the components from scratch would take up a
lot of time and resources. Thus,by making independent components,it is possible to reuse
and modify them according to the requirements of each feature.

1
1.3. Objectives

1.3.1 Internship Objective


The internship report is prepared for explaining the achievement of the author during the
internship period. The report also explains the general functioning and working of the
company HAMRO Technology Pvt. Ltd.

The broad objectives of internship are as follows:

1) To provide students the opportunity to relate theory to practice.

2) To give students in-service orientation to a career area they may wish


to pursue.

3) To enhance student's understanding of organizational and professional


processes.

4) To be prepared to enter into full-time employment in their area of


specialization upon graduation.

5) To gain knowledge about general work functions in real-world setting.

6) To build vital skills such as communication skills and leadership


capability.

7) To develop an ongoing relationship between the academic and


practitioner community.

1.3.2 Task Based Objective


The specific objectives related to the placement of the author in HAMRO
Technology are as follows:

1. To learn the detail study on Java EE technology.

2. To learn the Spring data crude repository.

3. To learn Jquery and spring boot framework of java.

2
4. To study the different types of problem faced in software development life
cycle.

5. To learn the whole structured of mobile banking system.

6. To be able to debug the application when error occurs.

7. To learn the testing methodologies implemented in the system's.

1.4 Scope

The scope of the internship are as follows:

 The fronted components developed by the fronted team provides an interactive


and user-friendly User Interface for the targeted users of the application.

 The API calls can be used by the backend team to connect the database with the
application.

 Component based architecture save resources as well as time.

 These components can be used by any future new developers which are
responsible for maintenance of the application.

1.5 Limitation

The limitation of the internship report are as follows:

 The report does not provide the information about the overall integration plan of
different features of the application.

 This report does not include the design process that was carried out.

 This report does not include the backend process that was carried out.

3
 This report does not include information about the script and routine task that are
performed to keep the system free from unwanted resource usages.

1.6 Brief Introduction of Organization

HAMRO Technology was established on 26th July 2016 and its company registered
number is 152626/073/074. Our Company is dedicated to delivering a full spectrum of
software & Mobile consulting and development services with Hardware & Networking
services to clients. With a view to provide quality Enterprise application software
products, and other services to all sorts of enterprises such as hotels, hospital, school,
college, cooperatives, Banks etc. We have set up our head office in Kathmandu and are in
the process of expansion of our branch network in near future. HAMRO Technology is a
management consulting, technology services and outsourcing company. Combining
unparalleled experience, comprehensive capabilities across all industries and business
functions, and extensive research on the world’s most successful companies, we
collaborate with clients to help them become high-performance.

1.6.1 Organization Hierarchy


Organizational structure determines how the roles, power and responsibilities are
assigned, controlled, and coordinated, and how information flows between the different
levels of management. Company has divided its work and responsibilities as follows:

4
figure 1.1 Organization Structure

HAMRO Technology pvt.ltd. follows centralized organizational structure where, the top
layer of management team has most of the decision making power and has tight control
over departments and divisions. The company has its own structure that represents the
flow of work within the organization and the designation of each employee. All the major
decision making and organizational plans and policies are decided through CEO and
Managing Director only.

1.6.2 Services offered by Organization

5
HAMRO Technology has been associated to clients in and out of the country. This
company has proven to provide good quality products to its client. Use of latest
technology to design and build software for better user experience. Company is
dedicated to delivering a full spectrum of software & Mobile consulting and development
services with Hardware & Networking services to clients. With a view to provide quality
Enterprise application software products, and other services to all sorts of enterprises
such as hotels, hospital, school, college, cooperatives, Banks etc.

Some of the major service provided by HAMRO Technology are listd below:
1. Mobile Banking
2. SMS banking
3. Merchant On-boarding/Merchant Digitalization
4. ATM Banking
5. Internet Banking

1.6.3 Organization Selection

Before selecting, the fore most things we need to take care is the interested area and
future opportunities of a student who can set a milestone for the further progress. In the
internship program, it is not an option whether to choose which organization but the
question is which organization can give you more valuable knowledge. I was interested in
JAVA programming language . So, I did research on the organizations which were related to
the particular field and which of these companies had vacancy for interns. After sending CV
to various companies, I was called for interview from HAMRO Technology Pvt. Ltd. Within
a few days of providing reference letter from the college, I was called for internship.

1.6.4 Placement

6
For my internship period in the organization, I was placed as a trainee in the Java
Development Department where I was treated as an part of the organization with access
to office space, personal computer and other organizational resources, equipment and
information. A trainer was provided who supported me and improved my programming
skills and knowledge. The author had placement in the development team. The major
tasks conducted by the author at the beginning of the tenure were self-learning,
analyzing, evaluating, observing, testing.

1.4.5 Roles and Responsibilities

The duration of my internship was 12 weeks (i.e. Three Months). During this period, a
project was handled under the guidance of Er.Aadil Alam. I was placed as a employee in
the Java Development Department where I was treated as a employee of the organization
with access to office space, personal computer and other resources. The activity that was
assigned to me during the internship tenure

1.4.6 Duration

Start Date : 2019-09-05


End Date : 2019-12-04
Total Duration : Three Month
Position : Intern trainee as Java Developer
Supervisor : Er.Aadil Alam
Office Hour : 10:00 am – 5:00 pm

Table 1.1 Internship Duration

1.4.7 Contact Details

7
Organization : HAMRO Technology Pvt.Ltd.
Location : Kalanki, Kathmandu, Nepal
Opening Hours : 10:00 A.M.to 5:00 P.M.
Tel : +977-9801130007,+977-980113000
Email : info@hamrotech.com.np ,hamrotechnologies@gmail.com
Website : https://hamrotech.com.np/

8
CHAPTER 2: SYSTEM ANALYSIS

Systems analysis is the study of a system under consideration (which may be real or
imagined). System analysis is all about examining how the present system works and
identifying problems within it. System analysis involves the detailed study of the current
system model, leading to specification of a new system and a model provides the
blueprints of a system.

2.1 Functional Requirements

Functional requirement defines the functions, inputs, behavior, tasks, and output of the
system. Functional requirements may be calculations, technical details, data
manipulation, processing and other specific functionality that define what a system is
supposed to accomplish.
Use Case Diagram:
A use case model was used to capture the expected basic functions of the mobile banking
application. The use case diagram in Fig. 2 shows the various functions that can be
performed by a user that is interacting with the mobile banking application. The user-
centric functions include the opening of an account; withdrawal from an account; user’s
changing of the PIN; checking an account balance; transferring funds from one account
to another, payment of utility bills. It is also possible for the admin personnel to credit an
account with deposit from a customer.

9
Figure 2.1: Use case diagram of Mobile Banking System

Feasibility Study
A feasibility study is an analysis that takes all of a project's relevant factors into
account—including economic, technical, legal, and scheduling considerations—to
ascertain the likelihood of completing the project successfully. Project managers use
feasibility studies to discern the pros and cons of undertaking a project before they invest
a lot of time and money into it. Feasibility studies also can provide a company's

10
management with crucial information that could prevent the company from entering
blindly into risky businesses.

a. Technical Feasibility

This assessment focuses on the technical resources available to the organization. It


helps organizations determine whether the technical resources meet capacity and
whether the technical team is capable of converting the ideas into working systems.
Technical feasibility also involves the evaluation of the hardware, software, and other
technical requirements of the proposed system. As an exaggerated example, an
organization wouldn’t want to try to put Star Trek’s transporters in their building—
currently, this project is not technically feasible.

b. Economic Feasibility

This assessment typically involves a cost/ benefits analysis of the project, helping
organizations determine the viability, cost, and benefits associated with a project
before financial resources are allocated. It also serves as an independent project
assessment and enhances project credibility—helping decision-makers determine the
positive economic benefits to the organization that the proposed project will provide.

c. Legal Feasibility

This assessment investigates whether any aspect of the proposed project conflicts with
legal requirements like zoning laws, data protection acts or social media laws. Let’s
say an organization wants to construct a new office building in a specific location. A
feasibility study might reveal the organization’s ideal location isn’t zoned for that type
of business. That organization has just saved considerable time and effort by learning
that their project was not feasible right from the beginning.

11
d. Operational Feasibility

This assessment involves undertaking a study to analyze and determine whether—and


how well—the organization’s needs can be met by completing the project. Operational
feasibility studies also examine how a project plan satisfies the requirements identified
in the requirements analysis phase of system development.

e. Scheduling Feasibility

This assessment is the most important for project success; after all, a project will fail if
not completed on time. In scheduling feasibility, an organization estimates how much
time the project will take to complete.

12
CHAPTER 3: SYSTEM DESIGN

In system design functions and operation are described in details, including screen layout,
business rules, process diagrams and other documentation. The output of this stage will
describe the new system as a collection of modules or subsystems. Systems design could
be seen as the application of systems theory to product development. The output of this
stage will describe the full functionality of the system. The design stage takes as its initial
input the requirements identified in the approved requirements document. For each
requirement, a set of one or more design elements will be produced as a result of
interviews, workshops, and/or prototype efforts. The system’s design elements describe
the desired software features in detail, and generally include functional hierarchy
diagrams, screen layout diagrams, reprogramming of source code, and a complete system
portent.

3.1 System Architecture


Based on interaction with relevant stakeholders in the banking sector (customers,
bankers, information technology personnel in banks) and a study of existing mobile
banking platforms, we identified the following requirements as core for mobile cloud
banking:
 An account creation module
 Deposit account module-by admin
 A funds withdrawal module
 A balance checking module
 A modify PIN module
 A funds transfer; as well as a utility payment module

Moreover, the second author involved in the study is an IT-biased practicing banking
professional. The layered architecture of the proposed mobile banking application is
as shown in Fig. The first layer is the presentation layer where different devices such

13
as smart phones, tablet computers, laptops and PDAs access the mobile banking
application over the Internet. The second layer is the mobile banking services layer
where the mobile banking application runs. It leverages on the Cloud Computing
Services layer and the Support Services layer of Google Apps Engine platform. The
third layer is the language run time layer that allows developers to use familiar
development tools and environments to build their applications. This includes the
Java language. For this study, Java programming language and Spring Boot
framework was used to develop the mobile banking application.

The fourth layer is the storage service layer that consists of the Google Apps Engine
Datastore , which is a schema-less object data store providing robust, scalable storage
for Web/mobile applications. It provides a rich data modelling API and SQL-like
query language called GQL.

Figure 3.1: System Architecture of Mobile Banking System

14
3.2 Class Diagram
A class diagram in the Unified Modeling Language (UML) is a type of static structure
diagrams that describe the structure of the system by showing the system's classes, their
attributes, operations or methods, and the relationship among objects. Following diagram
shows the class diagram of system. Figure hows the first screen a user will encounter
when logged on to the application .There are several buttons on this main menu that
serve unique functions such as Open Account, which redirects a user to the open new
account form Check Balance-which allows the user to get his/her current account
balance . Fund Transfer, which allows a user to transfer money from his own account to
another .

Figure 3.3: Class Diagram of Election Content Management System

15
3.4 Activity Diagram

Fig : Activity Diagram for the Mobile Banking System

16
CHAPTER 4:

4.1 System Implementation

In system implementation phase, we develop, install and test the system components and
deliver the system into actual use. The purpose of system implementation is to build a
system, install, replace and old systems, preparing system and user documentation. In
system implementation phase, we develop, install and test the system components and
deliver the system into actual use. The purpose of system implementation is to build a
system, install, replace and old systems, preparing system and user documentation.

System implementation has several major activities. There are five major tasks in this
phase; coding, testing, installation, documentation and training. The purpose of this phase
is to convert the physical system specifications into working and reliable software and
hardware, document she work that have been done and provide help for current and
future users.
4.1.1 Module Description
Well-structured designs improve the maintainability of a system. A structured system is
one that is developed from the top down and modular that is broken down into
manageable components. In this project we modularized the system so that they have
minimal effect on each other.
This application is designed into four independent modules which take care of different
tasks efficiently.
1. Admin Login Module
2. Interface Module

17
4.1.1.1 Admin Login Module
To access with system admin login is required. Providing valid username and password
an admin or other others created by admin can access with system and perform different
activities simultaneously.
User requirements Elaboration
Login into system Provide valid new username &
password to access system.

Manage other normal Admin can assign privileges,


users permissions, and can block or
remove the unwanted users from
the system.

Table 4.1 Admin Login Module

4.1.1.2 Interface Module

This module deals with presenting the data to the web page visitors. Various designing
tools like CSS and AJAX are used in this module to make the user interface graphical and
user friendly. The changes made to the content on the admin module is reflected in this
module. This module provides easy interface to the users.

4.2 Programming Tools

18
1) Angular JS

AngularJS is a toolset for building the framework most suited to our application
development.It is fully extensible and works well with other libraries.Every
features can be modified or replace to suit our unique development workflow and
features needs.

2) Spring boot

Spring Boot makes it easy to create stand-alone, production-grade Spring based


Applications that you can "just run". We take an opinionated view of the Spring
platform and third-party libraries so you can get started with minimum fuss.
Most Spring Boot applications need very little Spring configuration. We choose
spring boot for our application because of following features:

Features

 Create stand-alone Spring applications


 Embed Tomcat, Jetty or Undertow directly (no need to deploy WAR files)
 Provide opinionated 'starter' dependencies to simplify your build configuration
 Automatically configure Spring and 3rd party libraries whenever possible
 Provide production-ready features such as metrics, health checks and externalized
 Absolutely no code generation and no requirement for XML configuration

19
4.3 Testing Methodology
During the designing process, this system has so many bugs which were debugged one by
one analyzing the problem occurred on each steps. This system has gone through
following testing procedure.
Each module is tested in order to make sure it functions correctly. Later, programs are
tested in groups, followed by testing with the entire system. The first step in testing is to
compile the program to detect any syntax errors. If there is an error, the programmers
need to correct it until the program executes correctly. Then, the next step is to do a
testing, includes unit testing and system testing.

4.3.1 Unit Testing

Unit testing is the testing of an individual unit or group of related units. It falls under the
class of white box testing. It is often done by the tester to test that the unit they have
implemented is producing expected output against given input. Each module of the
system has been tested for proper functionality. Following are some of the test that were
done.

Test Case Test Data Result


Login Test a. Username=”admin” Directed to
dashboard
password=”superadmin”
b. Username=”admin” Login failed and
login page was
password=”super123”
displayed

Login Sign with username= superadmin The dashboard was


and password=superadmin displayed
Interface Ckeck Clicked on the “recent” link Details about the recent
activities
Logout Test Clicked Logout in the admin side The dashboard was
bar displayed

Fig 4.2 : Unit Testing of the system

20
4.3.2 System Testing

The whole system was tested for the proper functionality. Following test was conducted.

Test Case Test Data Result

Bank Log Test a) Clicked on “Add a) Add news page was


Bank” button displayed
b) Clicked on edit link b) Changed news was
of existing news\ displayed.
and changed it. c) News was
c) Clicked on delete successfully deleted
news to delete the
existing dedicated
news.

Content Management Test a) Clicked on “Add a) Add new content


New” button page was displayed
b) Clicked on edit link b) Category was
of existing content changed to “zone”
and changed c) Manage members
category from was deleted
“District” to “Zone”.
c) Clicked on delete
link of existing
content “Manage
members”

Display Management Test Clicked on Change display Successfully changed the


mode to night from day. display mode to night.

Fig 4.2 : System Testing of the system

21
CHAPTER 5: Conclusion and Lesson Learnt

5.1 Conclusion

The three months of internship period has been helpful in developing practical knowledge
in the real world. During this period, a complete system was developed by the interns and
was given opportunities to work on real world projects which solved real world problems.

During the period, the interns got the opportunity to work in group and expose theoretical
knowledge into practical and learned to face with the actual working environment. Not
only to fulfill their educational degree but also to practice the knowledge gained in
colleges, internship period has been very fruitful. In these three months interns can gain
more practical knowledge than that in four years of study in college. In this period we
could focus on the fields of our interest.
Internship was a wonderful experience to work closely and under supervision of highly
professional and talented group of people who have a great experience, knowledge and
sense of determination. This is helpful for one to develop IT managerial skills necessary
to succeed in the challenging and competitive job environment in the real world.

It is my enormous preference to accomplish the report as a part of my internship program.


The report is a image of my work, honesty, reliability as well as harmonization between
me & HAMRO Technology Pvt. Ltd .I tried my best to provide as much as information I
could. As the industry in its early stage, companies tend to keep their information
confidential. I consider myself lucky to be able to work in a company that provides such
scope for learning. The work environment is also one of the best among the companies .

22
5.2 Future Enhancement

The system is developed to control another application through the mechanism of


application programming interfaces. In the future system can be used in various fields
such as:
 Social media content management.
 Sending email through the system.

5.3 Lesson Learnt

Working as an intern in HAMRO Technology Pvt.Ltd. has been a great experience in


learning new things and gaining practical knowledge about the working of a software
company. This internship period will surely be helpful in the future for one to start a
career in programming.
Nobody is perfect at all, so during internship placement we face multiple problems. The
problems were usual as well as unusual. The usual problems used to be short period
where as unusual problem may causes obstacles on system development process.
During my intern period I come to realize that the knowledge that I have gain from the
theory part is incomplete without practical knowledge. But to work in practical
environment the theory knowledge is very essential. The intern period helped me to build
my confidence and strong determination towards professional life.
Some of the lessons learnt by interns during the internship period are listed below:ss
 Work on team
 Specification on work creates efficiency and quality.
 Completion of project in time.
 Under staffing cause overload to staff which result failure of project so selection
and recruitment if skill employee is immediate necessary.

23
 Work under pressure.
 Project completion within budget.
 Regular guidance, motivation, evaluation and supervision is necessary because
internship is part of learning process. Organization should remove their mentality
of regarding burdens.

24
BIBLIOGRAPHY

1. Sommerville lan, Software Engineering, 6th edition, Perason Education Asia.

2. Korth Silberschatz, Database System Concept, Tata McGrew Hill, New Delhi.

3. https://en.wikipedia.org/wiki/Application_programming_interface#cite_note-Clarke4-1
[1]

4. https://bootstrap.com/documentation [2]

5. https://en.wikipedia.org/wiki/Systems_design/ [3]

6. https://creately.com/app [4]

7. http://www.php.net [5]

8. https://www.laravel.com/user_guide/ [6]

9. http://www.jqwidgets.com/jquery-widgets-documentation/ [7]

10. http://dev.mysql.com/[8]

25

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy