You are on page 1of 50

School of Science

(Department of mathematics and computer science)

COMPUTER SCIENCE PROJECT II COM 423

TABLE BANKING SYSTEM (TBS).

Submitted by

WAITA MUTHAMA
COM/010/15

Submitted to the Department of Mathematics and computer science, in partial


fulfillment of the requirements of the Degree in Bachelor of Science in computer
science.
DECLARATION

I, WAITA MUTHAMA, COM/010/15, do hereby declare that this project, in its form and
content submitted for the degree in computer science at the University of Eldoret is my original
work produced by me, and to the best of my knowledge, has not been submitted for any degree
award in any other University or Institution of Higher Learning.

Waita Muthama ------------------------------- Date--------------------------------COM/010/15.

Dr. Musembi --------------------------------- Date----------------------------------

(Supervisor)

2
DEDICATION

I dedicate this system to all table-banking groups in Kenya to enable the administration to
automatize financial records and report generation.

3
4
ACKNOWLEDGEMENT

I also would wish to express my gratitude to the Almighty God for the gift and strength to
complete this project successfully. It is because of his blessings among them perseverance, good
health, mental capability, patience that enabled me overcome countless obstacles during the
development process.

The completion of this project would have been impossible without the help and views I received
from very many resourceful lectures among them Dr. Musembi, my course mates, roommates
and friends.

I would like again like to thank my colleagues and friends for their time, friendly study
environment and collaboration.

God bless you all.

5
ABSTRACT
This project is absolutely on the computer-based table banking system. Computer based table
banking system provide efficient means of determining the frequency of loan grants. Now, with
the advent of the computerized table-banking system, problems associated with the manual
processing of loans will be alleviated to its minimum level. Hence, computerization of table-
banking system aimed at incorporating a computer-based system in processing loans of clients at
promoting speed of operations and accuracy of result. In the overview, this project looks at the
existing system of loan management and attempt to covert the process from manual to a
computerized one in order to reduce the time spent on manual operations to eradicate errors and
time consumptions. The programming language used for this project work is NodeJS, it was used
because it is easy to manage, handle asynchronous events and its availability of debugging
tools.HTML5, CSS, JQUERY was used for front end and MONGODB was used as the storage
engine. NodeJS was used as the bridge between the front-end and back-end.

Table of Contents

6
DEDICATION............................................................................................................................................3
ACKNOWLEDGEMENT...........................................................................................................................5
ABSTRACT................................................................................................................................................6
1.0 INTRODUCTION.................................................................................................................................8
1.1 BACKGROUND OF THE STUDY..........................................................................................9
1.3 OBJECTIVES................................................................................................................................10
1.4 JUSTIFICATION..........................................................................................................................10
1.5 SCOPE............................................................................................................................................11
1.5.1 Context model.........................................................................................................................11
1.6 Constraints.....................................................................................................................................12
1.7 Solution strategy............................................................................................................................12
2.0 LITERATURE REVIEW....................................................................................................................13
4.2.4 ANALYSIS..............................................................................................................................31
4.2.5 SPECIFICATION...................................................................................................................31
4.2.6 VALIDATION........................................................................................................................32
4.3 IMPLEMENTATION...................................................................................................................32
5.0 PROJECT PLANNING.......................................................................................................................34
5.1 INTRODUCTION.........................................................................................................................34
5.2 TEAM STRUCTURE....................................................................................................................34
5.3 TIME OF DEVELOPMENT SCHEDULE.................................................................................34
5.4 HARDWARE AND SOFTWARE RESOURCE REQUIREMENTS........................................34
5.5 BUDGETARY ESTIMATION.....................................................................................................35
5.6 PROGRAM EVALUATION AND REVIEW TESTS (PERT) CHART...................................35
5.7 WORK BREAKDOWN SCHEDULE..........................................................................................36
5.8 SOFTWARE TESTING, VERIFICATION AND VALIDATION............................................37
6.0 RESULTS AND DISCUSSIONS........................................................................................................39
6.1 INSTALLATION...........................................................................................................................39
6.2 MAIN INTERFACES OF THE SYSTEM...................................................................................39
Registration.......................................................................................................................................39
Login form.........................................................................................................................................39
Database schema...............................................................................................................................47
7.1 CONCLUSION..............................................................................................................................47
7.2 RECOMMENDATION.................................................................................................................48

7
7.3 References...........................................................................................................................................48

Table of figures
Figure 1: Context diagram.........................................................................................................................12
Figure 2: Admin use case diagram............................................................................................................23
Figure 3: customer use case diagram.........................................................................................................24
Figure 4: level 0 DFD................................................................................................................................24
Figure 5: level 1 DFD................................................................................................................................25
Figure 6: Entity relationship diagram........................................................................................................25
Figure 7: Architectural design...................................................................................................................28
Figure 8:Login page..................................................................................................................................28
Figure 9:Design for users’ main page........................................................................................................29
Figure 10: Admin’s main page..................................................................................................................29
Figure 11: Incremental SDLC process.......................................................................................................34
Figure 12:Login form................................................................................................................................40
Figure 13: user main page.........................................................................................................................41
Figure 14:Account creation page...............................................................................................................42
Figure 15: Loan request page....................................................................................................................42
Figure 16: Loan payment page..................................................................................................................43
Figure 17: deposit page..............................................................................................................................44
Figure 18: interest claim page....................................................................................................................44
Figure 19: Comments page........................................................................................................................45
Figure 20: admin page...............................................................................................................................46
Figure 21: Opening interest claim module.................................................................................................47
Figure 22: closing interest claim module...................................................................................................47

8
1.0 INTRODUCTION
Table Banking System (TBS) is software developed for daily loan granting and loan analysis.
Users claim their interest accumulated after the end of each financial year. In TBS money only
circulates within the group.

Previously, financial groups relied heavily on paper records whereby the management is
supposed to analyze loan and give loan to its clients manually. The practice of granting loans
manually has its own drawbacks i.e. if numerous client’s requests loan at the same time, it takes
long time to access their credit worthiness.

This project focuses on presenting information in an easy way and intelligible manner which
reduces paper work and time. The project makes use of database in order to keep records for
borrowers and is used while generating a report for each borrower. The system is fully controlled
by administrator who takes care of loan grants, report generation, loan analysis, controlling
registration and interest modules and blacklisting loan defaulters.

The administrator can add new member, view member details, edit and delete member details.
This system will also be in position of evaluating loan eligibility criteria of a borrower. The
administrator and clients (members) will be in position of providing feedback according to the
service offered via comments board. Hence, here communication is made easier between
members and administration. Admin will also be in position of sending emails to each client for
loan reports. The main purpose of developing this software is to computerize the tradition way of
Table Banking Systems. Moreover, graphical user interface is provided in the proposed system,
which provides user to deal with system very easily. The scope of this project is the system on
which the software is installed i.e. the project is developed as a web application.

9
1.1 BACKGROUND OF THE STUDY
The world itself has become a global village of technology today, especially with the computer
technology. With the advent of new technology, the world is now witnessing an easy way to
keep information / data. Hence the introduction of computer is one of the greatest challenges
facing man today.

Nowadays, numerous financial groups and loan granting institutions have risen. A strong
financial security base needs to be implemented, to reduce risks of fraudsters and cater for needs
of clients in an effective and efficient way. Advanced technology available today can play a
crucial role in streamlining finance-related processes to promote transparency and secure way of
handling large information.

Loans is central to development. It is one of the most powerful instruments for reducing poverty
and inequality and lays a foundation for sustained economic growth. With this aim, currently our
government has given special emphasis in establishment of small financial groups such as table
banking groups which will help in lending money to its members at a low interest hence
improving them economically.

The Table banking system consist of activities such as registering new members, checking daily
loan requests list, generating individual reports, group chat among the members and group
reports,

Automation is the utilization of technology to replace human with a machine that can perform
more quickly and more continuously without fatigue. By automated TBS, documents such as
manual registers that took up many large storage rooms can be stored on few disks. Loan reports
can be generated automatically by the system. It reduces the time wasted in retrieving the
documents and files manually. However, many of table banking groups in Kenya not automated
fully and administrators use their experienced knowledge of miss and hit approaches to come up
with loan analysis reports and determining the credit worthiness of members.

In short, this project is used financial records in table banking groups. In table-banking, loan
grants are mandatory and very essential. Nowadays, due to the large number financial
transactions, it is efficient to use Table Banking System to manage financial records.

10
1.2 PROBLEM STATEMENT
Table-banking groups in Kenya are using manual methods and paper-based documentation
system for performing various tasks such as issuing of loans, registration of members, payments
of loans, which wastes manpower and much time unnecessarily that does not utilize the current
technology. Management registers clients physically on register books and calculates totals and
averages of loans and credit worthiness of members manually. Reports of clients and loans
analysis are prepared manually by the management. The generation of the reports is done by
management only.

Due to the inefficiency of the current tedious and overworking system, the need arises to
automate TBS in order to efficiently handle financial records, to produce loans information, and
to produce the various reports satisfying users and the administration.

To help promote transparency and efficiency, table-banking groups must have access to
complete, accurate, and timely information about their clients. One of the benefits of automated
TBS is that the table-banking system will simplify retrieval of required information, users will be
able to access loan at any time, credit worthiness of member is automatically calculated and is a
great instrument for table-banking improvement by taking measures from the information
acquired.

1.3 OBJECTIVES
My objectives for coming up with this Table Banking System (TBS) include:

 To investigate the constraints in the already existing table banking systems.


 To analyze the problems and come up with strategies to solve them.
 To design and develop a system to solve the problems.

1.4 JUSTIFICATION.
People join table-banking groups to be able to acquire loans in order to develop themselves
economically or to cater for their essential daily needs. The acquiring of this loans cannot be
handled anyhow as it will be all in vain. Quality loan cannot be said to be achieved if the loan
granting system cannot take into account the credit worthiness of its clients. This credit
worthiness is used to analyze the potential clients and loan defaulters. With an TBS

11
administration saves time in recording status, calculating various averages, defaulters will be
easily noticed and necessary action taken against them, periodical reports generated when
required, save on physical space on saving data and many more benefits.

Having accurate loans record also have some benefits to the administration for example it
provides necessary data that may be requested from time to time either by researchers, planners
or ministry officials, information from it could assist considerably in determining the amount of
grant to be given to a particular table-banking group, it could be used to identify suitable interest
rates and to take administrative decisions.

1.5 SCOPE

This TBS system is primarily designed to be used in table-banking groups and can only be
accessed online. This software is divided into modules where each performs a designated
function. The modules include;

 Members details: In this module each member registers accordingly by providing the
required information.
 Loans management: This module handles and manages loans per client. Loan defaulters will be
blacklisted by the admin and get denied loan access until they clear their loan.

1.5.1 Context model

Context Model is a diagram that describes the enclosing environment in which the software will
be operating. It entails both the external consumers of information from the system and the
external sources of information into the system.

12
Figure 1: Context diagram

1.6 Constraints
 Technology is changing over time. Every day new technology being invented and this
might make the system to be outdated in terms of technology with time. With the rapid
development of android applications there is the need to revive this software to operate
on android.
 Developing the system individually is extremely difficult since most systems/ software’s
are developed by a team of software developers but this was personal task.
 Lack of proper grounds to test the functionality and efficiency
 Lack of enough resources e.g. Internet. Much internet services are needed while
developing the system for reference purposes.
1.7 Solution strategy.
I choose to use web application strategy because as compared to the other strategies, it is more
feasible. It will contain an interface that is easy to use and not many configurations are required
to use the system. The implementation of the system is to be made through:

 Consultation from my fellow course mates and our dear lecturers about the system
development.
 Exhaustively read web application programming books and watch tutorials from
YouTube and Google developers to equip myself with how to use desktop application
interfaces.
 Asking for my fellow friend to test the program by using it and making their comments.
 Looking for Wi-Fi connections around school and purchasing internet bundles.
13
14
2.0 LITERATURE REVIEW

According to Potentash, Table Banking “is a group-based funding system where members of a
group make weekly or monthly monetary contributions to form a kitty from which members can
borrow”. The group holds regular meetings where issues are addressed, fines paid, loans
administered and defaulters confronted. In cases where the group gets funding from outside e.g.
the Women Enterprise Fund and microfinance institutions. Group guarantee comes into play
where members act as guarantors to each other’s loan and when one defaults, the rest can’t
access finance, which in turn motivates members to keep each other accountable. Table banking
is common amongst women but there are exceptions with mixed gender and men’s groups also
in existence.

Table-banking methodology is almost the reverse of the conventional banking methodology.


Conventional banking is based on the principle that the more you have, the more you can get. In
other words, if you have little or nothing, you get nothing. As a result, more than half the
population of the world is denied the financial services of the conventional banks. Conventional
banking is based on collateral, while table-banking is based on group guarantee and house-hold
collateral.

Table-banking is founded on the principle that credit should be accepted as a human right, and
builds a system where one who does not possess anything gets the highest priority in getting a
loan. Table-banking methodology is not based on assessing the material possession of a person;
it is based on the potential of a person. Table-banking believes that all human beings, including
the poorest, are endowed with endless potential.

According to Ryanada, Table Banking Software is “a simple form of saving and credit
procedures conducted at community level by people within a group. Where they pool funds and
borrow from the same pool same day – that is usually placed on the table at their meeting “–
hence ‘table-banking’ model.

15
In finance, a loan is the lending of money by one or more individuals, organizations, or other
entities to other individuals, organizations etc. The recipient (i.e. the borrower) incurs a debt, and
is usually liable to pay interest on that debt until it is repaid, and also to repay the principal
amount borrowed.

According to Mrs. Ruto (2015) the government through Poverty Eradication Commission (PEC)
has launched the table banking system with the aim of helping women in low-income chamas
access funds for income generating activities.

With the ever-rising cost of living, people are looking for alternative ways to help them meet
their needs and invest in income-generating activities. Table banking has become one of the
main ways that women are using to empower themselves and take on issues facing the home.

According to Turban Mclean, Wetherbe (1998) from their book Information Technology for
Management, it was stated that the term information system is a “collection of components that
collects, processes, stores, analyses and disseminate information for a specific purpose, like any
other system”. An information system includes inputs (data, instructions and output reports,
calculation).

According to A.N Aniekwu and Jone Akpodvado (1999) from their book fundamental of
practical computer a computer is “a machine that performs calculation and processes
automatically at high speed according to prescribed sequence of operations to an electronic
machine also to one of a mechanic, analogue or other variety”.

Geoffrey K, Nick W, Paul C and John E (1987) added that computer system consist of individual
element working together with the common aim of processing data and information. C.S French
(1996) in his book Computer Science asserts that a record is information relating to one person,
production etc. In database, a record contains information about one or several person/people.

Larry long and Nancy long (1993) stated that computer is able of interpreting and executing
programmed command for input, output, computation and logic operations. Aghawra E.D (2002)
Operate Your Computer asserts that computer are electronic devices that can be programmed to
accept (input), program the input, store it and output useful information as technological society
becomes more complex.

16
Akin Fapohide (2005) says that, computer is a machine that follows instructions in order to
process data, solve specific problem or accomplished task is referred to as program.

2.1 Previously developed system.

[1] “Nortridge Software for loan management”, S.R. Bharamagoudar et al., Nortridge Loan
System is an all-encompassing loan servicing software platform that helps lenders and servicers
better track, manage and service their loan portfolios. It includes, at its core, Origination,
Customer Relationship Management (CRM), Servicing and Collections. In addition to these
standard components, expanded functionality is delivered through the following modules:
Multibook Accounting, Escrow, and Participations.

.[2] “Baker Hill Software” G. Gangagowri et al., Baker Hill software empowers progressive
financial institutions to increase revenue, reduce cost, and drive more profitable relationships.
Streamline business, consumer direct and indirect lending with their common origination
platform. Understand profitability and risk at every level with their sophisticated business
intelligence and analytics. And monitor and maintain a healthy financial portfolio with their
statement analysis exception tracking, and risk management solutions.

.[3] “Mortgage Office software”, P. N. Garad et al, The Mortgage Office is a powerful suite of
lending solutions. With their comprehensive core products and robust add on products, you can
custom build the most powerful and personalized software solution for your business. Loan
Servicing Software for private lenders, mortgage companies, non-profits and municipalities.
Their software is incredibly powerful, flexible, and easy to use.

[4] “Web Based Coaching Institute Management System”, Mayuri Kamble et al, “Coaching
Institute Management System” software developed for an institute has been designed to achieve
maximum efficiency and reduce the time taken to handle the storing activity. It is designed to
replace an existing manual record system thereby reducing time taken for calculations and for
storing data. The system is strong enough to withstand regressive daily operations under
conditions where the database is maintained and cleared over a certain time of span. The
implementation of the system in the organization will considerably reduce data entry, time and
also provide readily calculated reports.

17
[5] “Shaw Systems”, Pranjul Khare et al, Shaw Systems offers software that’s stood the test of
time - they have specialized in loan servicing software since 1967. They offer an integrated
servicing solution for loan and lease, as well as collections and recovery management. They are
distinguished by the personal service they offer and their dedication to clients. Their software
provides automation, flexibility, a user-friendly interface, and a scalable solution to support top
financial institutions. Their client base includes auto finance leaders, banks, captive finance
companies, credit unions, peer-to-peer lenders, wholesale lenders, commercial finance, and
specialty lenders.

Overarching objective of the conventional banks is to maximize profit. Table-banking’s


objective is to bring financial services to the poor, particularly women— to help them fight
poverty, stay profitable and financially sound. It is a composite objective, coming out of social
and economic visions.

In conventional banks charging interest does not stop unless specific exception is made to a
particular defaulted loan. Interest charged on a loan can be multiple of the principal, depending
on the length of the loan period. In Table-banking interest on loans can be halted especially for
cases where a member is admitted in hospital and will only be charged after she is well and back
to business.

Conventional banks do not pay attention to what happens to the borrowers’ families as results of
taking loans from the banks; housing, sanitation, access to clean drinking water, and their coping
capacity for meeting disasters and emergency situations. Table-banking helps the borrowers to
build their own investments, health insurance and pension plans and the welfare kitty stands by
its members during times of difficulty. Therefore, a need arises to develop table-banking system
that will manage group funds and help the less financed members to be in position of accessing
loans in an efficient way.

18
3.0 REQUIREMENT ANALYSIS AND DESIGN

3.1 PROJECT ANALYSIS

System analysis is the process of gathering and interpreting facts, diagnosing problems and using
the information to recommend improvements on the system. System analysis is a problem-
solving activity that requires intensive communication between the system users and system
developers.

TBS is kind of proposal made to table-banking groups after realizing how well the system can be
implemented and used to solve most of the problems encountered in various financial groups.
The need of accurate, regular, secure loan issuance follow up and analyzed records which require
less time to enter and prepare called for the development of this system.

3.1.1 PURPOSE OF THE PROJECT

Financial inclusion is listed as a target paramount in achieving eight of the seventeen


global Sustainable Development Goals (SDGs). However, women have often been left out and
are unable to access loans from commercial banks. Table banking is an increasingly popular
concept that is helping level the playing field for women unable to meet conditions such as the
need for collateral demanded by traditional banks.

The goal of coming up with TBS was to help table-banking groups to save time and money by
eliminating a great deal of manual processes involved in registering members, loan issuance,
loan tracking, loan analysis and blacklisting loan defaulters.

In addition to that most of the loan process for example loan granting and reports generation are
automated nowadays but the table-banking activities still remains to be a manual activity.
Therefore, the need to also automate it.

There is need also to reduce the management work load of preparing and calculating various
values required on the final report also projected the need to have an assisting software for the
same.

Finally, with data stored in disks and an appropriate back up done, we are assured of easy and
faster retrieval of the records for future use.

19
3.1.2 CURRENTLY EXISTING SYSTEM

In the present system all work is done on paper. Member details are stored in register and at the
end of the financial year the reports are generated for each member. All loan computations and
processes are done manually. This makes the process to be tedious and complicated.
Management is not interested in generating report in the middle of financial year, semi-financial
year or as per the requirement because it takes more time in calculation. Some of the drawbacks
of the existing system include;

 Not User Friendly: The existing system is not user friendly because the retrieval of data is
very slow and data is not maintained efficiently.
 Difficulty in report generating: We require more calculations to generate the report so it
is generated at the end of financial year or semi-financial year. This makes members not
to get a clear trend off of the accumulated interest.
 Manual control: All calculations to generate report, is done manually so there is greater
chance of errors.
 Lots of paperwork: Existing system requires lot of paper work. Loss of even a single
register/record led to difficult situation because all the papers are needed to generate the
reports.
 Time consuming: Every work is done manually so we cannot generate report in the
middle of the session or as per the requirement because it is very time consuming.
 Less security: Security of data is less in manual systems. This is because majority of the
records are stored as statements or in registers. Moreover, these data can be accessed by
anyone and even they can modify any important data.

3.1.3 PROPOSED SYSYTEM

This Application is built for automating the process of table-banking. It also enhances the speed
of performing loan analysis task and loan granting easily. It also generates periodic reports to
keep a check on the members performance trend off in interest accumulation.

The Admin has to login to the system and then in the members details has to check each member
status. This displays the list of all registered members. If members status is false, he or she is not
eligible for accessing loan. Now the admin is supposed to navigate to loan request details. All the

20
members who have made requests are displayed. Admin is now in position of approving the loan
for members. Only members who have clean records (have no previous loan balance) are in
position of accessing a new loan.

Some of the characteristics of the system include;

 User Friendly: -The proposed system is user friendly because the retrieval and storing of
data is fast and data is maintained.
 Efficiency: - Moreover the graphical user interface is provided in the proposed system,
which provides user to deal with the system very easily.
 Reports are easily generated: - Reports can be easily generated in the proposed system so
user can generate the report as per the requirement (monthly) or in the middle of financial
year. Admin can give the notice to the members on how they pay their loan.
 Very less paper work: - The proposed system requires very less paper work. All the data
is fed into the computer immediately and reports can be generated through computers.
Moreover, work becomes very easy because there is no need to keep data on papers.
 Computer operator control: - Computer operator control will be there so no chance of
errors. Moreover, storing and retrieving of information is easy. So, work can be done
speedily and in time.

3.2 REQUIREMENT ANALYSIS

3.2.1 FUNCTIONAL AND NON-FUNTIONAL REQUIRMENTS

FUNCTIONAL REQUIREMENT

The functional requirement of the project is defined under two modules.

The first module

The system Administrator (admin) to log into his account and has the privileges to do multiple
things some of the include;

 Adding new members.


 Approving members loans.

21
 Blacklisting loan defaulters.
 Issuing accumulated interest to members.
 Deleting members.
 Editing each member details.
 Generate general loan reports.
 Sending loan report to each member.

The second module


Member logs into his/her account and has the following privileges which include;
 Registering to be in position of accessing services.
 Edit his/her details in the profile section.
 Generating is her/report in how he accessed loan.
 Requesting loan.
 Paying loan.
 Claiming interest.
 Creating an initial account in order to activate loan request module.

NON-FUNCTIONAL REQUIREMENT
Flexible service-based architecture will be highly desirable for future extension.

A good graphic user interface design that users find comfortable and intuitive.

24x7 service availability.

The system response time should be small.

The system should be easy to use.

3.2.2 USER REQUIREMENTS

Users are critical people to the success of any system hence their needs should be taken with the
seriousness it deserves some of the user need include: -

 Professional look and feel of user interface


 Well-designed authentication forms.
 Quick and less load time in accessing the system because is standalone.

22
 Easy and quick way to learn and use the system.
 Ability to keep records and easy retrieval.

3.2.3 SYSTEM REQUIREMENTS

Technology used

UML-The Unified Modeling Language (UML) is an open method used to specify, visualize,
construct and document the artifacts of an object-oriented software-intensive system under
development. [1] UML offers a standard way to write a system's blueprints, including conceptual
components such as:

 Actors
 Loan processes
 System’s components and activities

Tools Used:

 Atom Editor.
 MongoDB-database plugin.
 Nodejs web programming language, JavaScript, Express Framework, HTML & CSS.
 NodeJS – is a JavaScript runtime built on Chrome's V8 JavaScript engine.
 MongoDB- MongoDB is a document database with the scalability and flexibility that you
want with the querying and indexing that you need.

FRONT END- HTML is the standard markup language for creating Web pages Materialize
CSS -A modern responsive front-end framework based on Material Design developed by google.

BACK END- The back end is implemented using MongoDB which is an open-source document
database and leading NoSQL database. Data is stored in form collections.

Nodejs and express Framework- is a JavaScript runtime built on Chrome's V8 JavaScript


engine

23
3.3 REQUIREMENT ENGENEERING

This refers to the process of defining, documenting and maintaining requirements in the
engineering design process.

3.3.1 CONCEPTUAL MODEL

Conceptual model is a model made of composition of concepts, which are used to help people
know, understand, and simulate a subject the model represents. Denotes environment of the
system. In TBS it is represented by; Administrator who has all the privileges to the system
including adding, deleting users, generating various reports and approving loan requests.
Members who only provides their information to the system to be able to access the services.

3.3.2 USE CASES.

Figure 2: Admin use case diagram

24
Figure 3: customer use case diagram

3.3.3 DATA FLOW DIAGRAMS

Figure 4: level 0 DFD

25
LEVEL 1 DFD

Figure 5: level 1 DFD


3.3.4 ENTITY RELATIONSHIP DIAGRAM.

Figure 6: Entity relationship diagram

26
3.3.4 DATA DESIGN.
The process of data design includes identifying the data, defining specific data types and storage
mechanisms, and ensuring data integrity by using business rules and other run-time enforcement
mechanisms, this ensures that your application's data access is fast, easily maintained, and can
gracefully accept future data enhancements.

3.3.4.1 DATA DICTIONARY.


Dictionary for table members.
Column Type Semantics
firstName String Member first name
lastName String Member last name
Phone Number Phone number
Loanamount Number Loan balance of member
Interest Number Interest accumulated
Amount Number Amount paid to create acc
Status Boolean Active or inactive
Email String Member email address
Date date Date of registration

Dictionary for table account


Column Type Semantics
Id String User database id
firstName String User first name
Amount Number Amount to create account
Email String User email
Date date Account creation date
Phone Number User phone

Dictionary for table loan requests.


Column Type Semantics
Date date Loan request date
firstName String User first name
Email String User email address
loanAmount Number Loan request amount
Phone Number User phone

27
Dictionary for table loan pay.
Column Type Semantics
Id String Unique database id
firstName String User first name
Phone Number User phone
Email String User email address
payAmount Number Loan pay amount
Date date Loan pay date

Dictionary for table interest claims.


Id String Unique collection id
fisrtName String Users first name
lastName String Users Last name
InterestAmount Number Interest accumulated
Date date Date interest claimed

28
3.4 DESIGN ENGENEERING.
3.4.1 ARCHITECTURAL DESIGN.
Architecture deals with planning, designing and constructing form, space and ambience to reflect
functional, technical, social, environmental and aesthetic considerations. Typically, drawings,
plans and technical specifications, defines the structure and/or behavior of any kind of system
that is to be or has been developed.

Figure 7: Architectural design

3.4.2 INTERFACE DESIGN.


Login page- this is where the user is supposed to enter his/her credentials so as to access the
system.

Figure 8:Login page

29
Figure 9:Design for users’ main page

Figure 10: Admin’s main page

30
4.0 METHODOLOGY

4.1 INTRODUCTION.

Design is the abstraction of a solution it is a general description of the solution to a problem


without the details. Design is view patterns seen in the analysis phase to be a pattern in a design
phase. After design phase we can reduce the time required to create the implementation.

Methodology is the systematic, theoretical analysis of the methods applied to a field of study, or
the theoretical analysis of the body of methods and principles associated with a branch of
knowledge. It, typically, encompasses concepts such as paradigm, theoretical model, phases and
quantitative or qualitative techniques.

4.2 SOFTWARE DEVELOPMENT LIFE CYCLE MODELS

To develop this system, I used:

Incremental Model

4.2.1 INCREMENTAL MODEL.

The Incremental life cycle model builds an iterative approach into the Waterfall model.

Project to be developed is divided into several smaller, more manageable iterations. Each
iteration passes through a mini-Waterfall process. Requirement, design, implementation and
testing phases are completed for each iteration. Development begins with requirements
gathering and high-level design, and then requirements are divided into iterations. The
Incremental model is evolutionary meaning that a working version of the software is created by
the end of the first iteration, and

Subsequent iterations build upon the work of earlier iterations. Low-level design is performed
during iteration, and unit testing evaluates the functionality added during the current iteration.
System testing evaluates the way in which the new functionality affects the functionality of the
entire system.

This model was used because of the following:

31
 The customer can use the prototype to gain experience on the final product.
 feedback paths for error correction as & when detected later in a phase
 The customer can use the prototype as the wait for the final product.
 Easy to incorporate changes to the system.

4.2.2 REQUIREMENTS

This is the systematic use of proven principles, technique, language and tools for cost effective
analysis, documentation and ongoing evolution of user needs and the specification of behaviors
of a software to satisfy those needs.

The process of requirement engineering entails the following categories:-

4.2.3 ELICITATION

Elicitation refers to the inquiry of user needs from customers or users. It was found that it is easier to
use only two elicitation techniques, interviewing and observation. This was done in several Table-
banking groups. While conducting interviewing, the interview schedule was used. The reason for
choosing interviewing is because one gets first-hand information unlike others where information can
be distorted. Some of the questions used while interviewing the customers are:

1. How long does it take to claim the interest earned by each individual member?
2. Which criteria is employed on deciding the next time of meeting?
3. Which are the drawbacks of using manual system?
4. Are all the members in position of using a phone?
5. The group must have at most how many members?
6. After a member fails to pay loan on time, what happens?
7. Is member allowed to pay loan in installments?
8. How do members benefit from joining table-banking group?
9. Which method is used to store records?

The following information was collected.


1. Members claim their interest after six months or 12 months.
2. Members meet at the end of every month to place their contributions and borrow again.
3. Manual records lead to poor tracing of information, and loss of some documents.
4. Members are allowed to pay their loan whether fully or by installments.

32
5. On joining table-banking members are able to cater their daily needs and economically
develop themselves
6. Records are stored manually and cash payment is majorly used.
7. When members fail to pay loan on time, there accumulated loan interest starts to
depreciate.

Research was conducted based on observation so as to understand basic user requirements and
come up with a conceptual model.
However, there were several problems during the interview session. These are;

 Problem of understanding where the respondents were not sure of what is needed.
 Problem of scope where there was ill defined boundary.
 Problem of requirements changing in time and hence the respondents were not sure of
what is currently there.

4.2.4 ANALYSIS
This is where you explore each requirement recorded in elicitation for completeness, consistency
and ambiguity. The requirements are ranked based on priority and user needs and grouped into
normal, expected and exciting requirements.
According to the requirements in elicitation, the following is needed:
1. A suggestion module having both open and secretive suggestion features where one can
present an issue that is too sensitive and require privacy.
2. A system that will include the member as user and make him/her familiarize themselves
with computer systems.
Technique which was found suitable for the system is modelling where data, behavioral and
function models are developed. Reason for opting this technique is because modelling creates
clear models of the system to be developed.

4.2.5 SPECIFICATION
This is a written document, graphical model or formal mathematical model, a collection of usage
scenarios, a prototype or any combination of these representing data and information, function,
behavior and constraints that govern development.
Technique which was used in this stage was modelling due to its clarity.

33
The system is to be developed on the basis of introducing the system or improving the current
systems used in most secondary schools in Kenya. However, these systems change within a very
short time and hence one need to be updated on the current systems used.

4.2.6 VALIDATION
This is assessing requirements specification for quality by ensuring that no ambiguity, no
inconsistency, completeness, no errors and conformance to standards.
The technique used here is Formal Technique review (FTR) and the tool used is a checklist of
questions. Some of the questions found in the checklist are:
1. Are the Table-banking group requirements stated clearly?
2. Are the requirements likely to be misinterpreted?
3. Is the source of the requirements identified?
4. What other requirements relates to this requirement?
5. Is the requirement testable?
6. Do the requirements violate any constraint?
7. Is the requirement traceable to overall product objective?
After check listing, it was found that the requirements were clearly stated by the users and
customers where they had a lot of expectation on the development of the proposed system.

4.3 IMPLEMENTATION
The language of programming used to implement the system is NodeJS and Express for backed
development and HTML5, CSS3, Bootstrap and Material CSS for front end development. The
data is stored in a NoSQL database i.e. MongoDB which stores data inform of collections.

34
Figure 11: Incremental SDLC process.
As new increments are completed, they are integrated with existing increments so that the system
functionality improves with each delivered increment. Incremental delivery has a number of
advantages suitable for this project:
 Customer can use the early increments as prototypes and gain experience that informs
their requirements for later system increments. Unlike prototypes, these are part of the
real system so there is no re-learning when the complete system is available.
 Customers do not have to wait until the entire system is delivered before they can gain
value from it. The first increment satisfies their most critical requirements so they can use
the software immediately.
 The process maintains the benefits of incremental development in that it should be
relatively easy to incorporate changes into the system.
 As the highest-priority services are delivered first and increments then integrated, the
most important system services receive the most testing.

Once an increment is completed and delivered, customers can put it into service.
This means that they take early delivery of part of the system functionality. They can
Experiment with the system and this helps them clarify their requirements for later system
Increments.

35
5.0 PROJECT PLANNING
5.1 INTRODUCTION
Project planning is project management that relates to the use of schedules such as Gantt charts
to plan and sequentially report progress within the project environment. Project planning is often
used to organize different areas of projects including project plan, workloads and the
management of teams and individuals.
5.2 TEAM STRUCTURE
No team involved in development since development is being done by one person.
5.3 TIME OF DEVELOPMENT SCHEDULE
The work of developing the Table-banking System started in May 2019 and ends in October
2019.
5.4 HARDWARE AND SOFTWARE RESOURCE REQUIREMENTS
a. Software Requirements
 Windows 10/8/7 operating system-acts like a platform
 Microsoft Office i.e. MS-Word, PowerPoint; for editing and formatting the
documentation.
 Nodejs and Express for backend development.
 Atom and Visual Studio Code Editors for providing development environment.
 Mongo DB database for storing, manipulating and retrieving data.

b. Hardware Requirements
 Hewlett-Packard Personal computer – 1.7 GHz and above, 2GB DDRAM or More and
160 GB HDD and above.
 Mouse and keyboard.
 Printer for printing the documentation.
 Flash drive for backup.

c. Automated Tools
Phase Name Developer Version
Project management MS Project Microsoft 2016 Professional
Analysis MS Visio Microsoft 2016
Design MS Visio Microsoft 2016
36
Data dictionary for automated tools

5.5 BUDGETARY ESTIMATION


Capital expenditure
Item Cost (Kshs)
Laptop (HP 630) CORE i3 35000
Operating system (Windows 8) 4500
Office suite (Microsoft Office 2013) 1500
VS code editor 2500
Modem (Safaricom) 1000

Capital expenditure table

Recurrent expenditure
Item Cost (Kshs)
Communication 1000
Paper work 500
Internet service costs 1500

Recurrent expenditure table

5.6 PROGRAM EVALUATION AND REVIEW TESTS (PERT) CHART


Here a graph is created which shows dependencies among tasks.
Notation Subtask to be Time Dependency Duration Completion
Completed taken to time
Complete
System - 2 2
A 4
Engineering
Planning - 1 1
B 3
(SQA))
Elicitation and A 1 3
C 2
Negotiation
Requirement B, C 1 4
D 3
Analysis
E Requirement 3 B 2 3

37
Specification
F Data Design 2 E 3 6
Architectural C 5 8
G 3
Design
Interface G 2 10
H 2
Design
Component F, D, H 3 13
I 3
Design
Implementation I 2 15
J 25
and testing

Program Evolution and Review (PERT) graph

Project duration =15 weeks

5.7 WORK BREAKDOWN SCHEDULE


This process involves dividing largest tasks into sections and stages that can easily be managed.
The task is broken down into subtasks as shown in the GANTT CHART below and each task is
allocated a starting date and the approximated completion time.

The GANTT CHART assists in the prediction of the completion time for the whole project and
the subtasks. It also assists in tracking progress of the development process which ensures the
project is developed within the time frame.

TASK
WEEK
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
A
B
C
D
E
F
G
H
I

38
J
With adoption of the waterfall model completion will occur in stages. After completion the
incremental approach the system analyst will also be embraced the incremental approach model
since various phases of the main project will have to be re-designed to ensure compliance with
the users’ needs.

5.8 SOFTWARE TESTING, VERIFICATION AND VALIDATION


During and after implementation process, the program being developed must be checked to
ensure that it meets its specification and delivers the functionality expected by the users.

The ultimate call of verification and validation is to establish that the software system is fit for
the purpose. Verification attempts to answer are we building the product, right? The aim involves
checking that the software conforms to its specification .it checks that it meets with functional
and non-functional requirements. On the other hand, Validation Intents to answer are we
building the right product? The aim is to ensure that the software system meets the customer
specification. It goes beyond checking that the system conforms to its specification.

The two complementary approaches to validation and verification are testing and inspection

SOFTWARE TESTING

Testing involves running new or revised programs to determine if they process all data properly.
The test is done using test data that is made available by the users and developers of the system.
This process helps to evaluate the software product developed. Test data is a set of data created
for testing new or revised programs. It should be developed by the user as well as the
programmer and must contain a sample of every category of valid data as well as many invalid
conditions.

Functional or black box Tests

Functional tests on the system were implemented by providing the providing stimulated nominal
inputs to the system and observing the actual output versus the expected output and results
noted down.

Structural or White Box Tests.

39
This one involved checking the internal logic of the program modules. Stimulated data was
availed and this test data was input into the system to check the validity of the algorithms and
functions that performed the tasks at hand. The major things that were tested during this kind of
testing were conditional statements, use of Boolean variables, loops and iterations.

Inspection

It is analyzing and checking system representation such as design, diagram requirement


documentation and source code. Inspection may be supplemented by some automated analysis
of source text of a system or associated document .

40
6.0 RESULTS AND DISCUSSIONS

6.1 INSTALLATION
This system is basically deployed online. Users can only access the system by either use of the
Desktop computer, Laptop or a smart phone by accessing the appropriate URL.

6.2 MAIN INTERFACES OF THE SYSTEM

The TBS has various interfaces that allow intuitive interaction with the system some of these
modules include; Sign up, Log in, Administrator and user main pages.
Registration
A user can register by himself/herself or can be registered by admin. User can only register only
if the registration module is opened by the admin. After registration the user is allowed to login
in order to access the services.

Login form
Upon successful creation of the account the users get authenticated by this module to access the
restricted functions of the system e.g. creating account, requesting loan, checking loan status etc.

Figure 12:Login form

41
For successful login the user must provide the accurate details supplied during registration.
Various validation checks are done at this stage to ensure correct user privileges grant. Once the
user enters his/her credentials i.e. username and password correctly, the system automatically
directs the user to the main user’s page.

users main page.

Figure 13: user main page


This is the core page for the user. Some of the activities in this page that user can perform are: -

Creating an Account, depositing to common account, requesting loan, loan payment, claiming of
interest, commenting about the services, generating reports etc.

Figure 14: Users main page.

 Account creation page.


This module allows user to pay initial deposit of Ksh.500 in order to activate his/her
services. After account creation user is in position of requesting loan and accessing the
other services provided by table-banking system.

42
Figure 14:Account creation page

 Loan request page.

This module allows the user to make a loan request. If user has not created an account, he
can’t access the services of this module. System determines the amount of loan you
qualify depending on user’s credit worthiness.

Figure 15: Loan request page.

43
 Loan payment page.
This page is in form of modal. It allows user to pay the loan he/she had previously
requested. Valid amounts are only accepted due to validations employed. User can pay
their loan either by cash, PayPal or by Mpesa. After fully paying of loan user can request
another loan there immediately.

Figure 16: Loan payment page.

 Deposit page.
This page allows users to place their contributions to their common account. Admin
notifies the members when to place their contribution. If contribution is made by cash,
members are requested to come with their contribution during their next meeting.

44
Figure 17: deposit page.

 Interest claim page.


This is the interface that allows users to request for their accumulated interest. Admin has
the overall control of this module whereby he can open or close it. On close members
can’t claim their interest. After claim interest the system updates automatically interest of
member by setting it to zero.

Figure 18: interest claim page.

45
 Reports page.
This page allows the users to generate the necessary reports incase of need such as
deposit reports, loan request reports, interest claims reports, loan payment reports etc.

 Comments page.
This page makes users to leave a comment about the service they acquired. It also
facilitates on understanding the user’s needs better as users provide feedback after getting
a service. Online registered and logged in users can leave a comment.

Figure 19: Comments page

46
Administrator page

Figure 20: admin page


This page comprises all of the activities to be performed by the admin. For example, registering
new members, blacklisting members, deleting members completely, editing member details,
opening/closing registration module for new members, opening/closing loan request module,
generating reports and opening/closing interest claims module.

 Blacklisting members.
Members who violate the rules set by the members of and failure to pay their loan are
blacklisted and even sometimes deleted completely by the admin.
 Opening/closing loan module.
This page controls opening and closing of loan requests. Admin controls the times when
to open or close this module. When loan request module is closed members can’t access
loan until the admin opens this module.

 Claim interest module.


In this module admin controls opening and closing of interest claims. This prevents
members form claiming their interest any time. When closed members can’t access their
interest until admin opens it.

47
Figure 21: Opening interest claim module.

Figure 22: closing interest claim module.

48
 Reports page
Allows admin to generate the necessary reports required especially during budgetary
process. Some of the reports are registered members, loan request reports, loan payments
report, Interest claims reports etc.

Database schema.
These are the main tables of the database and their relationships. There are 7 main tables which
are related. They store members and admin details after registration, account details and loan
details, deposit details, comments details, payment details tables. All these tables are under one
database named as “table-banking”.

7.0 CONCLUSION AND RECOMMENDATION

7.1 CONCLUSION.
As discussed in introduction and problem statement, Table banking System (TBS) is software
developed for managing funds in table-banking groups. Currently majority of table-banking
groups depended intensely on paper works for managing funds. This project will help to
transform fund management in table-banking groups for freeing you up to concentration on the
bigger picture, ensuring that every penny counts and allows to produce high-quality reports for
every transaction.

The Table baking system is developed using NodeJS language, Express and JavaScript and fully
meets the objectives of the system which it has been developed. The system has reached a steady
state where all bugs have been eliminated. The system is operated at a high level of efficiency
and all the entities associated with the system can really understands its advantage. The system
solves the problem it was intended to solve as requirement specification.

In this proposed system Table-Banking groups has been taken into the digitalized way. By using
the proposed system, I am overcoming the problems of the tedious manual credit worthy

49
determination, paper-based records and poor funds management. Here I am implementing a
system that automatically updates member details and also designing a system where any
payment transaction is done, an email is sent to the respective member through broadcasting of
an email.

7.2 RECOMMENDATION
A major effort was done in table banking system development to identify the framework and a
number of participatory evaluation and planning exercises, relevant to the specific needs of the
users.

The elements of judgement reviewed in previous sessions suggest that this effort was basically
successful. Thus, the system is recommended to be used in table-banking groups.

However, I suggest a number of improvements in the technicalities of the event could be


considered. This include:

 System integration with Mpesa for faster transactions, effective and efficient use.
 Live chat incorporation for members to have direct interaction with the admin.
 General interface improvement where necessary.

References
Peji, (2019-03-28). Blockchaon Babel: The crpto-craze and the challenge to Business(1st ed.)
kogan Page .
E.D, A. (2002). Operate your Computer.
Fapohide, A. (2005). Computer Systems.
French, C. (1996). Computer Science.
McLean, T. (1998). information technology for management.
publishers, o. (n.d.). oxford english dictionary. oxford.

50

You might also like