0% found this document useful (0 votes)
2 views60 pages

Final Project

The document outlines a project for a web application designed to provide on-demand home services in Kenya, aimed at connecting service providers with customers. It addresses the challenges of unemployment among youth and the need for convenient home services, proposing a platform where users can request and pay for services like plumbing and electrical repairs. The project emphasizes the integration of ICT to enhance service delivery and create job opportunities, while also discussing its significance, objectives, and limitations.

Uploaded by

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

Final Project

The document outlines a project for a web application designed to provide on-demand home services in Kenya, aimed at connecting service providers with customers. It addresses the challenges of unemployment among youth and the need for convenient home services, proposing a platform where users can request and pay for services like plumbing and electrical repairs. The project emphasizes the integration of ICT to enhance service delivery and create job opportunities, while also discussing its significance, objectives, and limitations.

Uploaded by

haronazor
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

WEB APPLICATION BASED ON DEMAND HOME SERVICES SYSTEM

Kipngeno Haron Korir -BUS-242-026/2016

A Project documentation Submitted To the Department of Business and Economics


in Partial Fulfillment of the Requirement for the Bachelor of Business Information
Technology

November 2020
DECLARATION

This is our original work and it has never been submitted in any university or college
for any academic purposes.
Student:
Name: Kipngeno Haron Korir University Number: BUS-242-026/2016
DATE……………………
Signature…………………

Name: Jesse Kiplimo University Number: BUS-242-033/2016


DATE……………………
Signature…………………

Approval by,
Supervisor:
Name: Dismas Ombuya
DATE………….……….
Signature………………...
DEDICATION
We dedicate this project to our friends, family and to all Kenyans who at one time
will find themselves in a situation requiring this web application.

ACKNOWLEDGEMENT
We would like to thank the Almighty God for the gift of life and for enabling us to
reach this far in life. Our gratefulness to our supervisor Mr. Dismas Ombuya for his
guidance and input that helped us work on this project to what it is today. Our
sincere gratitude to all lecturers for the valuable knowledge they have shared with us.
The development of this project took the effort, support and guidance of a number of
people whom we wish to thank. We cannot end this list without paying tribute to the
entire Multimedia University FoBE lecturers for their constructive training and the
knowledge they have imparted in us throughout the three years training. May God
bless you all.
ABSTRACT

In present scenario, people are buried up in a heavy work culture, as everyone is


engaged with busy schedules, and hectic tasks which make them deviate from family
life. If any issues encounter unexpectedly, it distracts them and makes them choose
over the work they have to accomplish primarily. It is important to manage both
professional and family life. In such circumstances, every one of us would have
fantasized about a kind of house which doesn’t have any leaks in pipes, if it doesn’t
have any mess in fixing a furniture and a kind of house which never face any
maintenance issues and every one of us have thought that a life would be much
better if no point of issue arises in getting a service at your door step and if there is
no mess in bargaining a labor for home [Link] service industry is a promising
source of employment opportunities. A qualitative research will be used to come up
with possible solutions that will integrate ICT with the service industry so as to
create job opportunities. Our proposed solution is a web-based application that will
provide a marketplace for services that customers can request and pay upon
completion. Integrating ICT and the service industry is the basis of our project. It
will be delivered in the form of a web application that will enable job seekers to
register, validate their information and post services that they offer. The employers
(users of the web) can then look them up and award them jobs based on merits. The
home service system is incredibly useful for everybody who wants to urge home
services like plumbing, electronic repair, gas range repairing, RO servicing and
electrical maintenance. There are only two users in our system, first is Home Service
providers and therefore the other may be a user. Home service providers have a
crucial role within the project he/she can register with this website by mentioning
their role and adds. Users who are in need of services can register with this website
and look for service providers by mentioning the situation. The service provider's
therein particular locations are listed to user with contact number and therefore the
user can contact them. By this user can easily avail the needed home services with
none difficulty and delay. Service and product support are increasingly critical
elements in the achievement of customer satisfaction and winning new markets. The
success of a service support strategy depends on how effectively these services are
delivered. Clients request for the home services and based on the location by
fetching the latitude and longitude of the client, the nearest service provider is
allotted to serve the client’s needs. By enhancing the existing system application
which does not implement GPS into its application, this application has a wide scope
for integrating maps to allow drag and drop to another location, and make this web
application suitable for service provision
LIST OF ABBREVIATIONS
API – (Android) API level. Ready-made source code library/ Android version
BAAS – Backend as a Service
GDP- Gross Domestic Product
HSPA-High speed Packet Access
ICT-Information and Communication Technology
ISTQB – International Software Testing Qualification Board
JDK – Java Development Kit
JRE – Java Runtime Environment
KNBS-Kenya National Bureau of Statistics
LTE-Long Term Evolution
SDK - Software Development Kit
TIFA-Trends and Insights for Africa
WCDMA- Wideband Code Division Multiple Access Technology
WIFI- Wireless fidelity
DEFINITION OF TERMS
HSPA-An amalgation of High-Speed Downlink Packet Access (HSPDA) and High-
Speed Uplink Packet Access (HSUPA) that extends and improves the performance
of existing 3G mobile telecommunication networks using the WCDMA protocols
LTE- a 4G mobile communications standard for high-speed wireless communication
for mobile devices and data terminals
WCDMA- a third-generation (3G) standard that uses the direct-sequence code
division Multiple Access (DS-CDMA) channel access method and the frequent-
division duplexing (FDD) method to provide high-speed and high-capacity service.
LIST OF TABLES
Table 3 : Budget...........................................................................................................9
Table 1: Functional requirements...............................................................................30
Table 2: Non-functional requirements.......................................................................31
LIST OF FIGURES
Figure 1: Technology adoption for select Innovations Data from World Bank...........3
Figure 2 :Conceptual Framework...............................................................................10
Figure 3 : key Principles of agile Methodology.........................................................17
Figure 4: Agile Software Development Life Cycle....................................................19
CHAPTER ONE
1.1 Introduction
This chapter seeks to give an overall view of the entire project which is required to
provide detailed information about on demand home services web application
system. It contains the background of the study, the research problem, research
questions, objective of the study, significance of the study, assumptions and
limitations of the entire study.
1.2 Background of the study
The Kenyan youth are tech-savvy as seen in their participation in social media where
they are quick to catch on to global and local trends. Kenya has good internet
coverage and a lot of internet use; hence we believe ICT can be used to curb
unemployment especially incorporating ICT and the service industry which is
growing exponentially.
The assumption of mobile phones and computers has occurred at probably the fastest
rate of consumer technology in history. Kenya service industry relies on word of
mouth and referrals. When someone need aid with small but major household tasks,
the trouble arises when service skilled persons are unavailable or the trusted
providers are impossible to find, who delivers consistently flawless service on
instance. Our online system for household services provides the most expedient and
annoys free way to get your domestic work done. We aim to help in providing
optimal solutions to all your household troubles with more efficiency, ease and
majorly, a delicate touch. A single click system describes booking highly skilled in-
house professionals and gets your service done on time. Customers’ overall
willingness to pay is significantly and positively correlated with the expectation that
fee-based services would be better, and with the belief that “pay for what you get” is
the right thing to do.A web based on demand home services market application if
developed will be an application that will enable a potential buyer of service to
interact with the seller of the service with an aim to come to a suitable agreement
that conforms to their respective needs.
This can be a bridge between hardworking Kenyans who are pressed for time but
need tasks to be done for them and the honest Kenyan youth who is unemployed or
looking for an extra source of income while doing chores in their spare time.
1.3 Problem Statement
In this busy and hectic lifestyle, the on-demand solutions have come up as a blessing
for everybody. Also, the Millennial and Gen-Z, generations who are technology-
driven, expect everything happening at the push of a button from anywhere at any
time. Whether laundry services, home renovation, plumbing, electrical/electronic
repair, carpentry, pest control, beauty services or fitness trainers at home, people
expect everything instantly at their door-steps. The on-demand apps are just perfect
for them. The direct connection of customers to the sellers that these on-demand web
application ensure is another important reason for their popularity. Also, the
customers get a plethora of low-cost service providers on the services to choose from
as per their budgets and the service is delivered at their door step.
1.4 Research questions
I. How will the system help in marketing and easy identification of services?
II. To what extend does the system meet customer needs?
III. Will the system be a game changer to the service market industry?
1.5 Objectives of the study

1.5.1 General objective


. The primary objective of the on demand home service system for household
services is about delivering the home services at the door step just by one click. This
paper discusses about main theme of the online home services, numerous services
provided and how the ordering and delivery of services takes place. Online system
for household services can be used by any authorized user intending to seek for
household services through an ingenious web-based system or a mobile application.
1.5.2 Specific Objectives
i. To provide an authenticated and authorized login module for the users such
as service seekers, service providers and the admin, by providing appropriate
credentials at the time of registration.
ii. To allow service providers to upload their service description with their
quotations and set up their account.
iii. To create the backend with database and storage capabilities to store user
data.
1.6 Significance of the study
Data from the World Bank indicates that youth unemployment in Kenya has
averaged 20 per cent in the last ten years, rising from 17.1 per cent in 2011 to 17.4
per cent in 2014. This is despite the government’s policies aimed at lowering the
country’s unemployment crisis.
It is evident that urban counties such as Kisumu, Nairobi and Mombasa tend to have
high unemployment levels. This is because of the cities’ economic gravitas pulling
young people from rural areas to settle in these cities in search of employment or
higher education. The country’s unemployment crisis is putting pressure on urban
centres as these unemployed youths result to crime and violence to earn their daily
bread, e.g. recent cases of gang activity in Nairobi.
The proposed solution in our study is a market service app that will link small scale
service provider with potential customers and facilitate monetary remuneration for
the services provided.
The proposed app aims at alleviating the unemployment crisis in urban centres.
Furthermore, it will reduce the pressure on the customers who are most times pressed
for time to perform the duties or tasks for friends, family, employers etc.
The data to be gathered in this study may provide interested parties (entrepreneurs,
government officials, private sector) with information relating to how they may
address the unemployment situation in Kenya with regards to Information and
Communication Technology.
1.7Scope of the study
The proposed system will be developed as a web application.
The on-demand home services will enable small scale service providers to post their
services in the with the customers after they login to the system and request a
service. web application, give a brief description including a quotation and link the
service providers
The web application will have the following modules:
 Employers/Users
 Service Providers
1.7.1 Project Deliverables
1. Create job opportunities in the service industry by marketing small-scale
service login option for the users of the web application.
2. Create web application with interactive UI design.
1.7.2 Project Acceptance Criteria
1. Successful creation of jobs in the service industry.
2. Successful implementation of authentication for security.
3. Successful integration of payment method in the web application.
1.8 Limitation and delimitations
Reduced face to face human interaction - Technology has become an integral part
of the way that people can order a service at their suitable locations they need not to
move to access a service.

Cost of implementation - Creating awareness among people will require high


advertising costs, marketing and promotion costs. The web will require wireless
internet connectivity to run on the web which are additional costs.

The geographical location -it will be limited to urban centres in Kenya i.e. because
of the strong internet connectivity and tech-savvy unemployed youths present. The
web application will only be available to Kenyan Service providers in urban centres.

1.9 Assumptions
The study assumed that the users have sufficient knowledge on how to operate web
application and can access the internet also users can speak and write English as the
web application will be in English.
CHAPTER TWO

LITERATURE REVIEW
2.1 Introduction
A literature review surveys books, scholarly articles and any other sources relevant
to a particular issue, area of research or theory, and by so doing, provides a
description, summary and critical evaluation of these works in relation to the
research problem under investigation.
2.2 Theoretical review
This section covers what other authors have said about the related systems, the
critiques of those systems and how to fill the existing gap. My research has been
guided by the following theories.
2.2.1 Related systems
a) Freelancer
Freelancer is a global crowdsourcing marketplace website, that allows potential
employers to post jobs that freelancers can bid to complete. It was founded in 2009,
and the headquarters are in Sydney, Australia.
Freelancer takes a 10 per cent fee, which can be reduced with the paid monthly
membership, with a minimum of $5.
The top three job categories are IT and software, design, media and architecture, and
writing and content. Most of the freelancer’s users come from India, Philippines,
Pakistan, the United States and the United Kingdom
How it works
Freelancer has created an app that is available on the Play store. Upon login, the
users have to register either using an email address or Facebook. After enrolment,
the new user is asked if they want to hire or work. After choosing an option, the
users can then navigate to the services section where they pick a category, they are
interested in
If they were looking for work, then the user selects the category of choice, scrolls to
the desired project then submits a bid. The employer will then revise all the bids
submitted and choose his preferred candidate.+
If someone were looking to hire, they would choose the category their project falls
on, post some additional information that includes the timeframe and budget and
then post the project for freelancers to start bidding. The employer will then upon a
desirable period choose their preferred candidate based on the bids, i.e. The
freelancer skills, time-period and the monetary remuneration they request for.
Merits
 Two payment methods are listed, i.e. credit card and PayPal; hence users
have a variety to choose.
 Payment methods are encrypted, i.e. It uses a secure 128-bit SSL encryption.
 The app design is eye-catching and interactive because it shows progress bars
as you undertake a process, e.g. posting a new project
Demerits
 The app requires membership and payment. It offers the following
associations: Basic, Plus, Professional and Premier. The more you pay, you
unlock customizable features. However, this is unfavourable to new users
since they cannot adequately advertise what they can offer and therefore miss
out on the bidding process. e.g. The Premier account that unlocks all features
is USD 89.95 per month which is quite steep
 The freelancers on the website are mostly from foreign countries, and the
employers are very picky about trusting new Freelancers from other
countries, i.e. They prefer freelancers from India compared to someone from
Africa or even Kenya.
2.2.2 Fiverr
Fiverr is an online marketplace for freelance services. Shai Wininger and Micha
Kaufman founded it on February 1, 2010, and its headquarters are in Tel Aviv Israel.
It offers a platform for freelancers to provide services to customers worldwide.
2.3 Limitations and their magnitude
The two case studies have their merits and demerits. Unlike Freelancer the proposed
app will not charge membership fees but will be free for all.
However, both applications only offer online services. Our proposed app will be
slightly different from both apps mentioned herein that It will be limited for local
consumption, i.e. Kenya and another critical difference is that the services that the
Kenyan freelancers will offer will go beyond online services. What this means is that
the app will allow freelancers to post services like doing grocery shopping for a
customer for 10% commission or maybe handling laundry and cleaning of items for
a fee. Merits
 No membership fees and extra charges are required to start selling a service
 The pricing depends on the project(gig) features an employer chooses, e.g.
For a software project, the employer has an option on determining the exact
features he requires like whether or not he needs the source code and
comments. Each option selected will contribute to the final pricing of the
service.

Demerits
• Many of the sub-categories have no freelancers, e.g. SEO, Domain research and
translation etc. This might imply that the app is still under development because the
website version is complete in all sub-categories.
2.4 Project Risks and Mitigation
The project risks are based on confidentiality, Integrity and availability.
2.4.1 Information Risk
The system will contain customer data and information. Malicious individuals may
target this information for their personal gain.
2.4.2 Technology risk
Due to the system relying on internet services, some risks are raised. They are
 Theft of credit card and financial information.
 Hackers tampering with the system causing system failure.
2.4.3 Business Risk
The system may be compromised by individuals who may want to sell customer data
to firms that specialize in advertising and other similar businesses.
The risk mainly stems from the administrative personnel using the system.
2.4.4 Mitigation
Mitigation against the project risks are:
I. Use of Backups and also project upload to GitHub to protect against
information loss during coding phase. External backups of the system will be
kept in removable drives
II. The service providers will first have to be sign up using their Kenyan
Identification number and will have to upload a police clearance certificate.
III. The administrators of the system will be required to login with their own
unique ids and password to ensure accountability and integrity.
IV. Use web – encryption where possible e.g. Use Json web encryption and Base
64 encoding for sharing media.
2.5 The approach
Unlike Freelancer whose primary focus is on the employer side, Fiverr focus is on the
freelancers.
Upon opening the app, you are given the option of logging, or you can skip login and
continue. The next part is to choose the category you are interested in. Upon selecting the
category, the app displays a list of customized services offered by freelancers. The service
description includes:
 A short summary in text
 A video or image description
 Frequently asked questions and answers on the service
 Price of the service.
The employer then proceeds to order and can choose between two payment options, i.e.
PayPal and credit cards. However, to request an order or post a project, Users have to be
logged in. Upon order completion, the freelancer contacts the employer, seeking any
additional information then gives the time limit that they will take to finish the project and
begin work on the project. The freelancer usually receives payment in their account 14 days
after the service is completed.
2.5.1 Conceptual framework
A conceptual framework is a structure which the researcher believes can best explain the
natural progression of the phenomenon to be studied. The conceptual framework in this study
provides a conceptual view of the relationship between independent and dependent variables
2.6 Variables
2.6.1 Independent variables
i) ICT Infrastructure:
This is what platform, software that will be utilized to implement the system
ii)Access: Entry to the system requires ICT skills and checks on age to verify users.
iii)Interaction: Exchange of information should be done with the help of ICT skills.
iv)Decisions: Decisions on the information being relayed by the service providers to the users
requires information to be legitimate
2.6.2 Dependent variables
This application is secured and fast in service provision and posting a service, its takes less
time looking for service providers because it is readily available. Service providers provide a
door step delivery of service once they receive the booking
2.6.3Moderating variables
These are variables that alter the effect that an independent variable has on a dependent
variable. This variable is manipulated to see the effect it has on the relationship between the
independent variable and the dependent variable. Price-services are charged differently, Type
of service- the type of service offered and past experience with a service provider.
(Moderating variables)

Financing
(Independent Variables)

ICT Infrastructure

Age Dependent Variable


Access

On demand home
services
ICT Skills

Interaction

Service
availability Decision

(Mediating Variable)

Chapter summary
This chapter presented literature concerned with an on demand home services system. The
literature review provided a way of identifying and interpreting information. A conceptual
framework has also been drawn to give some important information on how the different
variables relate.
CHAPTER THREE

RESEARCH METHODOLOGY
3.1 Introduction
In this chapter we will introduce all the method used by the researchers in gathering data, the
SDLC method used and the functional and non-functional requirements of the system.
3.2. Methods of Data Collection
These are the techniques used by the researchers in collecting and gathering information.
3.2.1 Questionnaire
Questionnaires are a set of questions that are prepared in advance and administered to the
target population. This method of data collection was preferred because it enabled the
researchers to ask a wide range of questions.
The key design principles used in designing the questions include:
Keep the questionnaire as short as possible.
Ask short, simple, and clearly worded questions.
Start with demographic questions to help respondents get started comfortably.
Use open-ended questions cautiously.
Avoid using leading-questions
3.2.2 Interview
An interview is essentially a structured conversation where one participant asks questions,
and the other provides answers. The researchers interviewed several students in Multimedia
University to get their take on the current manual system of searching for a rental home. Most
students preferred if there existed an online platform where they could search for their
preferred home.
3.2.3 Direct observation
The researcher observed the resident so of Rongai town as they carried out their day to day
activities. The researchers observed the process the resident underwent in looking for homes
and how landlords went about searching for tenants.
3.3. Tools used in collecting data
There are several tools that were used in the collection and gathering of data
3.3.1. Microsoft Word 2013
The researchers used Microsoft word 2013 to carry out word processing activities.
3.3.2 Printer
The researchers used an HP desk jet 3360 printer to print all relevant documents.
3.3.3 Notebook
The researchers used a notebook to take down short notes as they conducted interviews and
made observations.
3.4. System Development Lifecycle
In systems engineering, information systems and software engineering, the systems
development life cycle is a process for planning, creating, testing, and deploying an
information system. There are usually six stages in this cycle: planning, analysis, design,
development, testing, deployment and maintenance.

A typical Software Development Life Cycle consists of the following stages −

Stage 1: Planning
In the planning phase, project goals are determined and a high-level plan for the intended
project is established. Planning is the most fundamental and critical organizational phase.

Stage 2: Analysis
In the analysis phase, end user business requirements are analyzed and project goals
converted into the defined system functions that the organization intends to develop.

Stage 3: Design
In the design phase, we describe the desired features and operations of the system. This phase
includes business rules, pseudo-code, screen layouts, and other necessary documentation

Stage 4: Building or Developing the Product


In this stage of SDLC the actual development starts and the product is built. The
programming code is generated. If the design is performed in a detailed and organized
manner, code generation can be accomplished without much hassle.

Stage 5: Testing the Product


This stage refers to the testing only stage of the product where product defects are reported,
tracked, fixed and retested, until the product reaches the quality standards defined in the SRS.

Stage 6: Deployment in the Market


Once the product is tested and ready to be deployed it is released formally in the appropriate
market.

Stage 7: Maintenance
In the maintenance phase, any necessary enhancements, corrections, and changes will be
made to make sure the system continues to work, and stay updated to meet the business goals.
It is necessary to maintain and upgrade the system from time to time so it can adapt to future
needs.

Methodology Used
The methodology used is agile methodology. Agile methodology refers to a group of
software development methodologies focussed on iterative development, incremental
development and collaboration between teams.
Agile methodology encompasses a team working on a project to achieve new versions of
software after a certain period called sprints. Each sprint maybe 2-3 weeks.
3.2.2 Brief History
Agile methodology was written on February 11-13, 2001, at Snowboard Ski resort in Utah by
17 software professionals. The developers developed agile methodology to replace the
traditional software development methodology approaches such as the waterfall. They
perceived these methodologies as cumbersome and too focussed on documentation practices.
3.2.3 Core values and Principles
The core values and principles of agile methodology are derived from the agile manifesto
(agile manifesto 2001).
The core values of agile methodology are:
 Individuals and interactions over processes and tools
 Working software over comprehensive documentation
 Customer collaboration over contract negotiation
 Responding to change over following a plan

3.2.4 Reasons for Choosing Agile Methodology


The reasons I decided to use agile methodology are:
I. It is favourable for new projects where there might be a certain level of uncertainty –
human nature is prone to us having doubts about our capabilities and our
understanding of the work to be done. Agile methodology encourages us to work
accepting this uncertainty and unpredictability.
II. Agile methodology accepts changes even after the initial system analysis and
requirement gathering – this is beneficial because requirements are prone to changes
especially in software production.
III. It minimises the chances of the project failure – this is because after every sprint the
software is tested for bugs and it gives me a chance to evaluate the project priorities.
IV. Agile encourages continues delivery (of software at end of every sprint) and
communication between the developers and end users therefore helps to deliver
customer expectations
V. Agile methodology can tell early on the probability of a project failure or success –
this is achieved from the aspect of iteration. Once the first sprint has been completed,
one can judge to a certain degree how successful or unsuccessful the project is likely
to be. The second, third and fourth sprint can further elaborate this phenomenon.
Some examples of agile methodology approach are: Scrum, Scrum ban, Extreme
programming, Discipline agile delivery, Agile unified process (AUP), Feature-driven
development (FDD), Kanban, Lean software development and Dynamic Systems
Development method (DSDM).
3.2.5 Implementation
Below is the Agile software development life cycle. (High Level)
was done:

Define the opportunity – this involved focussing on the market concerns.


Concept Phase: Pre-Project Planning
This is the first stage of agile software development methodology. It is the pre-project phases
of portfolio management.
During this phase, the following t meant exploring how the new system will improve the
situation in the job market, improve productivity and the impact on people’s interactions and
relationships.
Identifying a viable for the project – this tries to come up with the strategy for the project.
e.g. do you develop a new system or improve an existing one? For this case, I chose to create
a new system
Assessing the feasibility – this involved conducting a feasibility study. The purpose of a
feasibility study is to examine factors that will make a project a success. Feasibility studies
can, therefore, be used to decide whether or not to continue with a chosen project. My
feasibility studies were based on technological, economic and political factors. Sample
questions at random are: Do I have enough funds to complete the project? Do I have the
necessary technology and tools to finish the project?
Inception Phase: Project Initiation
It is also called the warm-up or Cycle 0.
The primary objective was to initiate the project by doing the following:
 Gathering support and funding for the project – this involved interaction with my
supervisors. I convinced them I had all the tools required to finish the project on time.
 Use the data collected from data gathering to determine the initial high-level
requirements of the system
 Setting up the environment – next was to set up my development environment. This is
the hardware and software I would need for the project
 Estimate the project- estimation was done based on the initial requirements and initial
architecture model of my system

Construction Iterations Phase


During this phase, the primary objective was to develop high-quality functional software at
the end of every sprint.
The iteration phase can further be broken down into
Requirements – getting the needs of the sprint based on the product backlog, sprint backlog
and the feedback from my respondents (data gathering and collection).
Development and coding – Designing and developing the application based on the
requirements.
Testing – In agile development iteration, testing is a crucial element. These are some of the
tests:
Confirmatory testing –This means testing against specifications. It aims to ensure the
software did works according to the guidelines given by the customer and in our case the
needs of our service providers and employers. I did this testing as the developer.
Investigative testing – this was done by external individuals, i.e. not me. The aim was to
look for bugs and defects that I may have missed, e.g. missed requirements and things I had
not thought to test for.
Delivery – integrate and deliver the application into the production phase
Feedback - Accept people’s feedback and work it into the requirements of the next iteration

Production Phase
The main of this phase is to maintain the system after it has been deployed to the target
audience.
The main two activities will be:
• Keep the system running
• Help users on operating the system
Retirement Phase
This is the final phase of the agile development methodology.
The retirement phase aims to decommission a system. The following are some of the reasons
a system may be dismantled:
 The system being completely replaced
 System becoming obsolete
 The system is redundant
 The system release (or version in my case) is no longer supported
During retirement, it is essential to do so with minimal impact on the system business
process.
3.2 Sources of data
The sources are:
 The youths and working professionals in urban centres (We used students and staff
from the Multimedia University of Kenya)
 Question and answer questions on social media targeting potential employers and
service providers
3.3 Data collection methods
3.3.1 Research Design
The research design comprises of a qualitative survey used to gain in-depth information about
people’s underlying reasoning and motivations. Our end goal is to come up with solutions
that integrate ICT and service industry to create job opportunities. The subjects will be
required to fill a questionnaire. This is so as to gather primary data regarding the phenomenon
as seen from a subject’s point of view.
The structure starts with screening questions whose purpose is to segment out the desired
demography for the research problem in question. These are followed by ‘before’ questions
which look at the underlying triggers to the specified task thereby providing the context of
the task. Next is the ‘during’ question which involves the parameters of the task and
determining what is important in the decision-making process of the individual. Finally, there
is the ‘after’ question which covers any follow up tasks and the individual’s general thoughts.
The complete design aims to cover the entire arc of how an individual goes through a
specified task.
3.3.2 Sampling Procedure
The study population of the research is 2.5 million individuals, which is the approximate
number of people in Nairobi (urban centre). With a margin of error (the positive and negative
deviation allowed on the survey results for the sample) of 5% and a confidence level (which
tells how often the percentage of the population that gives desired results actually lie within
the boundaries of the margin of error) of 95%, hence the required sample size is 385
respondents.
3.3.3 Data Collection Instruments.
I. Ethnographic interviews - is a qualitative research approach that includes descriptions
of people, languages, places, products and events. The data is collected by
observation, interviewing, listening, and immersion.
II. Questionnaires - a set of printed or written questions with a choice of answers,
devised for the purposes of a survey or statistical study.
III. Observation - is the active acquisition of information from a primary source through
seeing.
IV. Qualitative Surveys – is a less structured research methodology used to gain in-depth
information about people’s underlying reasoning and motivations. The end goal is to
develop a deep understanding of a topic, issues or problem from an individual
perspective.
3.4 Functional and Non-Functional Requirements
3.4.1Functional Requirements
Functional requirements specify something a system should do.

[Link] Requirement Description

1. Download and The users should be able to download the application and
Install install it into their android phones. It should be free to
download. The application is compatible with android
version 4.2.0 and above.
2. Registration If a new user wants to register, they should fill all the
necessary fields then click on register button. Service
providers will be required to register using their unique
Identification number for security purposes. The system
should also detect if user is already registered and alert
them. There will be a security code edit text where users
will enter a code that can be used to retrieve passwords if
forgotten.
3. Login The system should enable users to login using their
registration credentials. After filling in users can click on
login button to login. The system should detect new users
and request them to register first. The system will also have
a remember me tick option that when checked will
automatically login the users.
4. Forgot If the user has forgotten their password, they can use this
Password option to retrieve it. They will do so using the security code
Option they entered into the system during registration.
5. View Once logged in the user is now able to view and interact
Dashboard with the app dashboard. They can choose from the options
on dashboard e.g. search for service, logout
5. Enter a Service This is for the service providers. They need to upload a copy
Description of police clearance certificate and their Kenyan
identification card before they are allowed to enter their
service. Then they can enter their service description and
quotation into the system.
6. Search for This is mainly for the employers. They can choose a service
services category then search through the service providers to the one
who best meets their needs. Once found, they can proceed to
start a conversation using the chat service and utilising the
service provider’s email address.
7. Chat The application will enable communication between the
employer and the service provider within the app. The users
will activate it by clicking on the chat option from the
dashboard.
8. Change The users will have the option of changing their password
Password from the dashboard. They will be required to enter the old
password before changing to new password.
9. Payment The app will offer secure payment methods for the users.
Processing The payment methods will be PayPal and Mpesa available
from the dashboard/navigation drawer.
10. Give feedback The users of the system will be able to give feedback to the
system administrator via an option on the dashboard. The
message will be sent via email. The administrator’s email
address will be hardcoded into the system hence users do
not have to type it. E.g. Request for reminder of user
security code.
11. Logout Users will be able to logout by selecting the logout button
from the dashboard.
Table 1: Functional requirements
3.4.2Non-functional Requirements
Non-functional requirements define how a system should behave.

S. No Requirement Description

1. Manageability The system will be highly manageable by use of the


firebase management options. They are Crashlytics,
Performance monitoring and Test lab.
2. Reliability Refers to probability of failure-free application. The
application will be vigorously tested before deployment to
ensure reliability
3. Security Security of the users will be upheld by introducing
validation features for service providers.
The security of the application will be upheld by using
secure payment methods e.g. PayPal and Mpesa
4. Performance The response time of the queries will be improved by
utilising index option in firebase Realtime Database under
the database Rules.
Performance can be further improved by enforcing
duplication of entries in the NoSQL database. In NoSQL
database, duplication is smiled upon unlike SQL databases.
Utilise Firebase Cloud functions where it will run the
system functions on firebase servers
5. Scalability The application will be highly scalable due to use of
Firebase that utilises google cloud bucket as well as
allowing easy integration of Remote config and Push
Notifications etc.
As the users increase, it will be just as easy as subscribing
to a higher up payment plan which will offer better services
to cope with the inflow of users.
Table 2: Non-functional requirements
3.4.3 Software requirement
a) Operating system: windows (Windows XP, 7, 8, 8.1, 10) or MAC OSX (Yosemite or
higher), Linux (any recent Linux distribution)
b) Database management system: SQLite – (NoSQL database)
c) Application software -PhpMyAdmin, cPanel 64.0 (build 19)
d) Software tool_Software tool WordPress 4.7.2 (HTML, PHP, JavaScript, CSS, XML,
Perl 5.10.1)
e) Java development kit 8
f) Smart Draw – for the data modelling tools e.g. Flowcharts, DFDs
g) Git
h) Firebase – BAAS.
3.4.4 Hardware requirements
A desktop computer or laptop with the following features:
a) RAM: minimum 4GB or higher
b) HDD: minimum 30 GB
c) PROCESSOR: Intel core i3 or AMD A4 series and above

3.5 Location of study


The proposed study will take place at Multimedia University of Kenya main campus
located in a serene environment 25 Kilometres south of Nairobi along Magadi road, a
kilometre away form Ongata Rongai town. The campus stands on 115 ha of land
adjacent to Nairobi National Park. Currently the Multimedia University of Kenya
offers degree and diploma programmes in Engineering, Computer Science and
Information Technology, Business, Media and Communications Studies.
The Multimedia University of Kenya is a state-owned university. It was established
by the Kenya Government under Legal Notice Number 155 of 2008 as a constituent
college of Jomo Kenyatta University of Agriculture and Technology (JKUAT) and
later granted university charter on 1st March 2013 making it among one of the fully-
fledged Universities in Kenya.
3.6 Research design
This is a set of methods and procedures used in collecting and analysing measures of
the variables specified in the research problem. A research design is a framework that
has been created to find answers to research questions.
There are four main types of quantitative research designs: descriptive, correlational,
quasi-experimental and experimental. The differences between the four types
primarily relates to the degree the researcher designs for control of the variables in the
experiment. Following is a brief description of each type of quantitative research
design, as well as chart comparing and contrasting the approaches.
A Descriptive Design seeks to describe the current status of a variable or
phenomenon. The researcher does not begin with a hypothesis, but typically develops
one after the data is collected. Data collection is mostly observational in nature.
A Correlational Design explores the relationship between variables using statistical
analyses. However, it does not look for cause and effect and therefore, is also mostly
observational in terms of data collection.
A Quasi-Experimental Design (often referred to as Causal-Comparative) seeks to
establish a cause-effect relationship between two or more variables. The researcher
does not assign groups and does not manipulate the independent variable. Control
groups are identified and exposed to the variable. Results are compared with results
from groups not exposed to the variable.
Experimental Designs, often called true experimentation, use the scientific method to
establish cause-effect relationship among a group of variables in a research study.
Researchers make an effort to control for all variables except the one being
manipulated (the independent variable). The effects of the independent variable on the
dependent variable are collected and analysed for a relationship.

3.7 Target population


The target population is the Multimedia University of Kenya. The key respondent and
beneficiaries of this project are the students and the campus administration. There are
6554 students in the school.
3.8 Sample size
Sample size is the portion of the population chosen for survey. It is used to represent
the entire population under study. This is so, because, it is time consuming and
expensive to study a whole population unlike a sample, yet the result may have a
negligible variation.
The size of the sample used to study a proportion within a population is a critical
factor to obtain reliable results about the proportion in the whole population. The
reliability of the data is never absolute, but is located within an interval of confidence.
The smaller the interval must be, or the lower the error rate must be, the larger the
sample size must be in order to get an accurate reflection of the proportion within the
population as a whole.
The following formula is used to calculate the size of the required sample
Sampling is a procedure a researcher uses to gather people, places or things to study.
NC 2
n 2
C  N  1e 2

Where
n = Represents sample size,
N = Represents study population
C = Represents coefficient of variation (21% ≤ C ≤ 30%), and
e = Represents error margin (2% ≤ e ≤ 5%).
Calculating the sample size:
n = 6554(0.21)2
0.212+ (6554-1)0.022
n = 107
3.9 Research instrument
3.9.1 Interview
Interview are set of questions an interviewer asks when interviewing respondents,
(Orodho,2009). Here, the researcher seeks answers to a set of pre-conceived questions
through personal interviews. They usually yield high response rates. Thomas (2009)
points out that a great deal is provided by this personal contact, because the
interviewees respond to the interviewer in bodily presence, unlike the way they would
react to the questionnaire. It enables the interviewer have freedom to follow up points
if necessary. A few of the timetable generation committee members were interrogated
to get response on their take of the manual system used in the institution, other a
sample of students from the business school were also interviewed and the responses
taken to see their take on the manual timetable available. This option was preferred
since they might be having little time to fill the questionnaire.
3.9.2 Questionnaires
Questionnaire’s, which consist of open-ended questions, were used to get the required
information. With questionnaires, there is greater uniformity hence greater
compatibility in the responses. Orodho (2009) opines that a questionnaire allows
measurement for or against a particular viewpoint and that; a questionnaire has the
ability to collect a large amount of information in a reasonably short time. The
questionnaire was chosen because it is easy to administer and the researcher can
simultaneously collect information from the respondents hence saving time.
(Mugenda & Mugenda,2004). Orodho (2009) adds that, they also permit greater
response, giving a respondent an opportunity to give an insight into their feelings,
background hidden and deeper motivations, interests and decisions.
3.10 Data collection
There are many methods used to collect or obtain data for statistical analysis. Three of
the most popular methods we identified are:
i. Direct Observation
ii. Experiments, and
iii. Surveys.
3.10.1. Surveys.
A survey solicits information from people; e.g. Gallup polls; pre-election polls;
marketing surveys.
The Response Rate (i.e. the proportion of all people selected who complete the
survey) is a key survey parameter.
Surveys may be administered in a variety of ways, such as;
i. Personal Interview,
ii. Telephone Interview, and
iii. Self-Administered Questionnaire.

3.10.2. Questionnaire Design


Over the years, a lot of thought has been put into the science of the design of survey
questions. Key design principles:
i. Keep the questionnaire as short as possible.
ii. Ask short, simple, and clearly worded questions.
iii. Start with demographic questions to help respondents get started comfortably.
iv. Use dichotomous (yes | no) and multiple-choice questions.
v. Use open-ended questions cautiously.
vi. Avoid using leading-questions.
vii. Present a questionnaire on a small number of people.
3.10.3. Sampling
Recall that statistical inference permits us to draw conclusions about a population
based on a sample.
Sampling (i.e. selecting a sub-set of a whole population) is often done for reasons of
cost (it’s less expensive to sample 1,000 television viewers than 100 million TV
viewers) and practicality (e.g. performing a crash test on every automobile produced
is impractical).
In any case, the sampled population and the target population should be similar to one
another.
We will focus our attention on simple random sampling.

3.11 Conclusion
To reduce burden in finding in-house solutions for the services, the proposed system
provides several services by providing service specialists at your doorstep in one
click. A systematic mobile environment to system clients offers ease in accessing our
services in a more comfortable way. With well qualified and background
demonstrated professionals we make all your home cleaning, plumbing, furniture
maintenance, electrical works, appliance repair, house painting, vehicle service and
many other services to be done in a click anytime from anywhere as easy as available.
CHAPTER FOUR

SYSTEMS ANALYSIS AND DESIGN

4.1 Introduction
This chapter entails the user specification, functional and non-functional specification and
systems analysis and design which offers a practical, visually appealing approach to
information systems development.

4.2 User specification


The on-demand home services is a project which provide a platform where users get access to
services through service providers, select the service type from the various services that are
provided in the application. The user must specify the location and contact information for
the service to be executed, and door step service is provided as per the users’ information
provided. In this project we use PHP and MySQL database. It has two modules:
Admin Module

User Module

4.2.1 Admin Module


Administrator Module This module provides administrator related functionality.
Administrator manages all information and has access rights to add delete, edit and view the
data related to the bookings made. In this section, admin can view the detail of user.
Administrator can also update his profile, change the password and recover the password.

4.2.2 User Module


This module provides information related to various services that are being offered.
For each service, the application allows the user to select the date and time for the
service.
Home Page: Users can view the home page
About: Users can view about us page.
Home services: Users choose a service of they require.
Contact us: Owner can view contact us page.
My Account: In this there is are the following sections:
Register service provider
In this section owner do the following activities;
User can edit his/her own name.
User provides contact address information 1 and 2.
User can add his/her own photo.
User can add location/city.
Create Password: Users can create own password.
Logout: User can logout from own account.
Find service providers
In this section users can do the following activities;
Users select city or the town location.
Users select the type of service they require.
Users can create an account and provide name, contacts and address.
Users can post the date they require the service.
Users state the form of payment.

Existing System
Existing System There is an existing system, which is similar to the application “Domestic
Android Application for Home Services”. This application provides the following services:
Home Cleaning, Laundry Services, Driver on Demand Services, Carpet Cleaning Services,
Sofa Cleaning Services, Pest Control Services, Electrical Services, Plumbing Services, AC
Services, Carpentry Services, Car Spa, PC & Laptop Repair,
Refrigerator/Microwave/Washing Machine Services, and Home Painting.
Working of Existing System
The user needs to select the service type from the various services that are provided in the
web application. The user must specify the date and location for the service to be executed
and door step service is provided as per the users’ information provided in the application.
Flaws in the existing system
Once the user enters all the details, the administrator has to manually check the user details
and allot the service to the service men based on user requirements. This application does not
utilize the GPS (Global Positioning System) service which is available on all android devices
for identifying the location of user, who could be on mobility frequently and may require
home services at different locations. If a registered user changes his location and needs
service, he has to register and specify his new location.

Proposed solution
The drawbacks in the existing system have been overcome by implementing GPS (Global
Positioning System) service. User and Service Providers need to register on this application.
Once the user specifies his request for service and provides his/her current city, the users’
location is fetched using GPS (Global Positioning System). Based on his current location, the
application will try to find out the nearest service provider and then the nearest service
provider is alerted once the user book a service with the service provider.
Entity relationship diagram
Entity Relationship Diagram, also known as ERD, ER Diagram or ER model, is a type of
structural diagram for use in database design. An ERD contains different symbols and
connectors that visualize two important information: The major entities within the system
scope, and the inter-relationships among these Entities-R (Entity-Relationship) Diagram is
used to represents the relationship between entities in the table.
ER Diagram

Contact
Email id
nymber

Admin
Login
passwor
id
d

U_nam U_id Login Manag


e e

U_contact
number User Complain
has

U_email id
Complain Complain
date number
U_addere
ss
Service

Service name Serial no.

id Purchase

service type
Architectural design of the system

Architectural design is concerned with understanding how a system should be organized and
designing the overall structure of that system. In the model of the software development
process, architectural design is the first stage in the software design process. It is the critical
link between design and requirements engineering, as it identifies the main structural
components in a system and the relationships between them. The output of the architectural
design process is an architectural model that describes how the system is organized as a set of
communicating components.

LEVEL 1

Service Details

Book service Service


Details

Customer
Login Account
Creation Generate
Form reports
Cus

User id, password

Login detailsLogin details


Admin
Customer
The symbols used in E-R diagrams are: information

SYMBOL PURPOSE

Represents Entity sets.

Represent attributes.

Represent Relationship Sets.

Line represents flow

System flowchart
A Data Flow Diagram (DFD) is a structured analysis and design tool that can be used
for flowcharting. A DFD is a network that describes the flow of data and the
processes that change or transform the data throughout a system. This network is
constructed by using a set of symbols that do not imply any physical implementation.
It has the purpose of clarifying system requirements and identifying major
transformations. So it is the starting point of the design phase that functionally
decomposes the requirements specifications down to the lowest level of detail. For
these reasons DFD’s are often referred to as logical data flow diagrams.
External entity
An external entity is a source or destination of a data flow. Only those entities which
originate or receive data are represented on a data flow diagram. The symbol used is a
rectangular box.

Process
A process shows a transformation or manipulation of data flow within the
system. The symbol used is circle.

Dataflow
The data flow shows the flow of information from a source to its destination. Data
flow is represented by a line, with arrowheads showing the direction of flow.
Information always flows to or from a process and may be written, verbal or
electronic.
Data store
A data store is a holding place for information within the system: It is represented by
an open ended narrow rectangle. Data stores may be long-term files such as farmer’s
management module, system information and System users.
Admins Flow chart

START

User name and


Password
No

Log in
successful

Yes

Register new Upload picture Update job


service description

No

Registration End End


successful

Yes

End
Users Flow chart
START

Select city and


service required

Book
Appointment

Register for State the mode State the job


service of payment description

Registration End End


successful

End
Use Case diagram for the proposed model
The Proposed system involves three actors which include a Admin, Service provider, and a
Customer. Admin has the beginner rights to access and modify the website where he/she
needs to login to do so. Then next to admin comes the customer who wants avail our services
should precede with the registration and login process. If required a customer can upload a
file that describes about the services. Once the request has been done then he can forward it
to payment process and to confirm service after the service has been done a customer can rate
the service. And in worst case if the customer is not satisfied with the service they can move
with the return policy process. At last a service provider who is the one who provides a
service, where they should also go with the registration and login process and they should
proceed with files uploaded and once the service is confirmed they are intimated to provide
the service and when done after service if the customer is unsatisfied with it based on the
customers review if required they should provide the re-service.
Database design
In database design all tables that represent entities in the system are shown in details
Fields for all entities in the system are laid down with their various characteristics. The
database for this system will contain various tables. Every table will have a primary key
to enable querying and some will have foreign key for enhancing referential integrity.
The table below shows the relations that are in this system.

Table structure for bookings

Table structure for service providers


CHAPTER FIVE

5.1 Introduction
In this chapter we are going to look at the programming languages and tools which will
enable smooth working of our system. The chapter will also give an overview of the code
used in the system development. It will also incorporate the outcomes of our project.

The system should have a login. A login box should appear when the system is invoked.
The Admin should be able to register for a service.
The Admin should receive a notification from user requesting a service.
The system is very useful for service providers and home owners.
5.2 Development environment and tools
This section will describe the tools and IDEs used while building the proposed system and
the environments necessary for the system run to deliver the required functionalities. These
are briefly described below:
5.3 Software and Hardware Requirements
5.3.1 Hardware Requirements
The hardware includes:

A desktop computer or laptop with the following features:


d) RAM: minimum 2GB or higher
e) HDD: minimum 500GB
f) PROCESSOR: Intel core i3 or AMD A4 series and above
5.3.2 Software Requirements
Apache Web Server
Since the overall system will be web based, a web server will be required to serve the web
documents online. The system will run on apache server version 2.4.38

PHP
A number of dynamic features involved in PHP makes exigent task for both programmers
and tools to reason about programs. while features such as eval are being detached over time,
more inhibited dynamic features such as variable properties are becoming more general.
Preliminarily as a collection of scripts for building personal homepages, PHP is now one of
the most widespread programming languages for building server-side web applications. Like
other scripting languages, PHP includes a number of dynamic language features, such as an
eval expression to run code provided at runtime as strings. special methods (referred to as
magic methods) that handle accesses of object fields and uses of methods that are either not
distinct or not evident and the ability to use expressions instead of literal identifiers, to give
the names of variables, functions, methods, classes in new expressions, and While these
features often make the programmer’s job easier. WordPress and Media explore a use of
variable features, magic methods, and eval have changed over time. The system will be
developed using PHP version 7.3.8
MySQL database server
To manage data storage and retrieval, MySQL database will be used. MySQL is a relational
database management system which organizes and stores data as rows and columns. MySQL
is one of the most widely used RDBMS in the IT industry. SQL stands for Structured Query
Language. MySQL development has made the source code available under the terms of
MySQL owned by Oracle. The paid editions are also available which offer additional
functionality. MySQL is used in many websites such as facebook, google, twitter, and
youtube. The MySQL database is used in web applications. Open source projects use
MySQL. The development code is now available to the users under the use of general public
license
Frontend tools
These are the tools and environments that will be needed to realize the user interface and
server communications.

HTML and CSS


The user interface of the system will be structured using HTML and styled using CSS. To
enrich the user interface, Materialize CSS framework will be used. Materialize is a CSS
framework developed by Google which results in rich interfaces that appeal a user.
JavaScript
Text based programming language used both on the client side and servers side that allows
you to make web pages interactive. Java language is used in diversified application based
projects and in 1995 was released as the main core component of Sun Microsystems platform
of Java. Java Virtual Machine commonly does the task of organizing applications to byte
code that can help with running on a java virtual machine paying little focus to pc structural
engineering. Java is secured, high level robust programming language, and it has its own run
time environment. The hardware and software in which program runs is called as the
platform. There are so many areas where java is currently in use like in mobile devices,
games, embedded systems, system robotics and enterprising applications such as banking.
Implementation
Thus by studying the flaws in the existing system and proposing a new solution, a real time
web application has been built using the technologies mentioned and named it as “On-
demand Home Services application”. Following are the important screen shots of the
developed web application.
Screen-shots of the system

User interface Design

User home page


Service provider Registration Dashboard
Service provider Login panel
Service booking dashboard
CHAPTER SIX
CONCLUSION AND RECOMMENDATIONS
Introduction
This chapter entails conclusion and recommendations. It highlights the critical review, Future
development, achievements and challenges faced during the development of on-demand
home services system.
System Testing
System testing is conducted to check that the system meets its functional and non-functional
requirements. System testing is done after integration testing. It is conducted on a complete,
integrated system to evaluate the system specified features. It is done by a tester.

When all modules are in integrated state and working as a single application at that time
system testing is done. Performance testing, Security testing, Configuration testing and
Installation testing are done during system testing. We have two major types of system
testing which include:

white box testing technique

black box testing technique

6.2.1 White box testing technique


White box testing techniques analyze the internal structures the used data structures, internal
design, code structure and the working of the software rather than just the functionality as in
black box testing. It is also called glass box testing or clear box testing or structural testing.

Working process of white box testing:

Input: Requirements, Functional specifications, design documents, source code.

Processing: Performing risk analysis for guiding through the entire process.

Proper test planning: Designing test cases so as to cover entire code. Execute rinse-repeat
until error-free software is reached. Also, the results are communicated.

Output: Preparing final report of the entire testing process.

Advantages of white box technique

White box testing is very thorough as the entire code and structures are tested.

It results in the optimization of code removing error and helps in removing extra lines of
code.

It can start at an earlier stage as it doesn’t require any interface as in case of black box testing.

Easy to automate.
Disadvantages of white box technique

Main disadvantage is that it is very expensive.

Redesign of code and rewriting code needs test cases to be written again.

Testers are required to have in-depth knowledge of the code and programming language as
opposed to black box testing.

Missing functionalities cannot be detected as the code that exists is tested.

Very complex and at times not realistic.

6.2.2 Black box testing technique


It is also known as Behavioral Testing, it is a software testing method in which the internal
structure or design of the item being tested is not known to the tester. These tests can be
functional or non-functional, though usually functional.

This method is named so because the software program, in the eyes of the tester, is like a
black box; inside which one cannot see. This method attempts to find errors in the following
categories:

Incorrect or missing functions

Interface errors

Errors in data structures or external database access

Behavior or performance errors

Initialization and termination errors

Advantages of black box testing

Tests are done from a user’s point of view and will help in exposing discrepancies in the
specifications.
Tester need not know programming languages or how the software has been implemented.
Tests can be conducted by a body independent from the developers, allowing for an objective
perspective and the avoidance of developer-bias.
Test cases can be designed as soon as the specifications are complete
Disadvantages of black box testing

Only a small number of possible inputs can be tested and many program paths will be left
untested.
Without clear specifications, which is the situation in many projects, test cases will be
difficult to design.
Tests can be redundant if the software designer/developer has already run a test case.
Ever wondered why a soothsayer closes the eyes when foretelling events? So is almost the
case in Black Box Testing.
6.2.3 Selection of testing technique
We preferred white box testing as the better option while testing our system because of the
following reasons;

It analyzes the internal structures the used data structures, internal design, code structure and
the working of the software rather than just the functionality as it is seen in black box testing.
It is easy to automate through the system
It can also start at an earlier stage as it does not require an interface like the case for black
box testing.
6.3 Levels of system testing
A level of software testing is a process where every unit or component of a software or
system is tested. The main goal of system testing is to evaluate the system's compliance with
the specified needs.

There are many different testing levels which help to check behavior and performance for
software testing. These testing levels are designed to recognize missing areas and
reconciliation between the development lifecycle states. In SDLC models there are
characterized phases such as requirement gathering, analysis, design, coding or execution,
testing, and deployment.

they are mainly four testing levels which include the following:

unit testing

integration testing

system testing

acceptance testing

6.3.1 Unit testing


A Unit is a smallest testable portion of system or application which can be compiled, liked,
loaded, and executed. This kind of testing helps to test each module separately. The aim is to
test each part of the software by separating it. It checks that component are fulfilling
functionalities or not. This kind of testing is performed by developers.

6.3.2 Integration testing


Integration means combining. In this testing phase, different software modules are combined
and tested as a group to make sure that integrated system is ready for system testing.
Integrating testing checks the data flow from one module to other modules. This kind of
testing is performed by testers.

6.3.3 System testing


System testing is performed on a complete, integrated system. It allows checking system's
compliance as per the requirements. It tests the overall interaction of components. It involves
load, performance, reliability and security testing. System testing most often the final test to
verify that the system meets the specification. It evaluates both functional and non-functional
need for the testing.

6.3.4 Acceptance testing


Acceptance testing is a test conducted to find if the requirements of a specification or contract
are met as per its delivery. Acceptance testing is basically done by the user or customer.
However, other stockholders can be involved in this process.

6.4 Project implementation.


Implementation is the stage in the project where the theoretical design is turned into a
working system. The implementation phase constructs, installs and operates the new system.
The most crucial stage in achieving a new successful system is that it will work efficiently
and effectively. There are several activities involved while implementing a new project. They
are
End user training
End user Education
Training on the application software
Post implementation Review
End user Training:
The successful implementation of the new system will purely upon the involvement of the
officers working in that department. The officers will be imparted the necessary training
on the new technology

End User Education:


The education of the end user start after the implementation and testing is over. When the
system is found to be more difficult to understand and complex, more effort is put to educate
the end
user to make them aware of the system, giving them lectures about the new system and
providing them necessary documents and materials about how the system can do this.

Training of application software:


After providing the necessary basic training on the computer awareness, the users will have
to be trained upon the new system such as the screen flows and screen design type of help on
the screen, type of errors while entering the data, the corresponding validation check at each
entry and the way to correct the data entered. It should then cover information needed by the
specific user or group to use the system.
Post Implementation review:
The department is planning a method to know the states of the past implementation process.
For that regular meeting will be arranged by the concerned officers about the implementation
problem and success
6.5 Changeover strategies.
Parallel
When the new system is used at the same time as the old system the two systems are said to
be running in parallel.
Advantages:
Users can compare the output of the old system with the output of the new system, to ensure
correctness
There is little risk of data loss because the known-good system is running
Disadvantages:
Users must take more time to enter data into two different systems
Data could be different in two different systems if there is intensive data entry.
Phased
When small parts of the new system gradually replace small parts of the old system, the
implementation method is said to be phased.
Advantages:
Training can be completed in small parts
A failure of the new system has minimal impact because it is only one small part
Issues around scale can be addressed without major impact.
Disadvantages:
This implementation method takes more time to get the new system fully online than other
methods.
There is a possibility of data loss if part of the new system fails.
Pilot
When a small group of users within an organization uses a new system prior to wider use, the
system is said to be piloted.
Advantages:
Training can be supported by pilot group
Failure or problems can be identified and addressed without wide-spread impact to the
organization
Disadvantages:
In a pilot, issues of scale can cause problems. For example, the system might work well for
10 users, but not for 1000.
Direct
When a new system is implemented without any phased or pilot implementation, it is said to
be direct. The old system is retired, and the new system goes live.
Advantages:
If the system is not critical, this can be a good method for implementation
Disadvantages:
If you are not sure the system will work, this method of implementation may not be a good
idea
6.6 Selection of changeover implementation strategy
The conversion method to be adopted in implementing the system is parallel strategy. This
will involve running both the old and the new system for sometimes as the efficiency of the
new system is weighed and then the old system was eventually dropped after the new one
was seen to be effective and free of failure. This method properly suites this project for a
number of reasons:
It allows results to be compared to ensure that the new system is working without any errors.
If errors are found, user can refer to the old system to resolve the problem and make
modifications to the new system thus operation can continue under the old system while the
problems are sorted out.
Parallel method will enable the user realize more requirements that were left out during the
development process and be able to implement them during the process.
Achievements

 The system has managed to carry out service provider registration successfully
 Through validation checks, the system has managed to maintain accuracy and
minimize data inconsistencies. Security is enhanced in the system.
 The system provides a variety of services.
 Allows ordering of door step services by users at their convenient location.

Limitations

 Computer Literacy: The users must be computer literate so that they can
maneuver through the system with ease.
 Internet Connection: The system requires internet connection to enable the users
access the platform.

 Authorization: The system user must be authorized that is: use of password
through the system.

Future development
This web application can be further enhanced by allowing the users of the application to drag
and drop to another location on the maps. This facility can be used by the user in case if the
user wants the service request to be accomplished at another location than his current
location. For this there is a need to integrate the maps into this application. Another useful
enhancement can be made by providing more service types to the user. Lastly, since this
application can also be implemented to other platform like android application.
Conclusion
“On-demand Home Services” is a web Application which uses the state-of-the-art
technologies like Android SDK (Software Development Kit), Eclipse, Java and MySQL used
for Application Development. This provides domestic home services where users can be
served for electrical services, plumbing services and carpentry services. Unlike the existing
“Facility Kart” application, this application uses GPS to fetch the users’ location and assigns
nearest service provider from his existing location dynamically. Thus, this application seems
to be more dynamic, effective and efficient than the existing system.
CHAPTER SEVEN

CONCLUSION AND RECOMMENDATIONS

7.1 Introduction
This chapter focuses on the overall experience during the system development process. It will
discuss the success measure of the system, knowledge gained, conclusions and
recommendations of the system.

7.2 Measure of success of the system


The project was able to meet its objectives and thus it is capable of performing the core
operations it was primarily developed for. It includes all the fundamental functionalities
stated in the objectives. It is my hope that this application will be implemented by Institutions
of higher learning in the region.
7.3 Skills and knowledge gained
The research project has enabled us to learn new things and also to enhance our knowledge
and skills in project development. These include enhancing our programming skills especially
on the development of conversational experiences. The project has also enabled us learn new
things such as using Dialogflow and Firebase. Furthermore, we have also been able to apply
our class knowledge on software development life cycle. Finally, it is hoped that the
knowledge acquired in this undertaking shall be put to good use and also be applied in
solving real life problems in the. It is expected that this system will receive overwhelming
response from the general public due to its user friendliness and hence will simplify the
working of Institutions of higher learning.

7.4 Conclusion
Development of this system was a challenging but rewarding experience. We were equipped
with the knowhow of system development process. We also learnt how to work with tools
such as dialogflow and communicate to create a rich experience.

7.5 Recommendations
i. We would like to recommend that colleges and universities within our region to
embrace this technology in order to create an interactive environment for information
exchange.
ii. We recommend that the admin of the system be on standby during working hours to
monitor queries coming into the system and step in to answer queries which the system is
unable to answer.

iii. The researcher also recommends that B.B.I.T students be encouraged and guided to
develop systems as early as first year and be assessed. This would enable them to be
confident in system development.

iv. The university should facilitate students’ projects development by offering them
part of the project budget to ensure that students project materialize.
REFERENCES
Bo Zhang, Ruihan Yong, Meizi Li, Jianguo Pan, Jifeng Huanglaa, “ A Hybrid Trust

Evaluation Framework for E-commerce in Online Social Network: ”. 2169-3536 (c)

2016 IEEE. Translations and content mining are permitted for academic research

CAl Yrnn-ping, WANG Yu-ying, “Simple Said about Online Payment Risks and Preventive

Measure ”, China located International Conference on Infonnation Systems for Crisis

Response and Management,IEEE,2010

Chenggang Zhen,Peng Cheng. “Construction of campus trading platform based on third-party

online payment ” 2nd International Conference on Industrial and Information

Systems,IEEE,2010

Dejan Kovachev and Ralf Klammadriano, “ Beyond the ClientServer Architectures: A

Survey of Mobile Cloud Techniques ”,workshop on mobile computing in 2011.

Dr. Ashok Talukder, Ms. Roopa Yavagal, Mr. Hasan Ahmed: Mobile Computing,

Technology, Applications and Service Creation, 2nd Edition, Tata McGrawHill, 2010.

Facilitykart: Is India’s’ most trusted hyper local aggregator for handyman and Home need

services like AC, RO, Home Appliances, Electrical, Plumbing, Carpentry etc.

Available: [Link] James Thompson (2018) Starting a service Business,

The Entrepreneur article 80686 , June 2018

Frankline Sunday, Kenya’s Economy groans under the weight of its Jobless Youth, The

Standard Media article 2001230740, February 26 2017. The Daily Nation, Pain and

Anguish as gangsters rob people in broad daylight, The Daily Nation Article 1056-

4271856-9ie1spz, January 21,2018New York Times, February 10, 2008.


Jack and Suri 3 Collis & Hussey, (2003, p.55).Helmsing, A. H. J. (1995). Local Government

Central Finance. An Introduction: New [Link] et al,

1985Beile&Boote 2005

[Link], Yue Jeff Zhang, Dat-DaoNguyen, James Chiu,“Fee-based online services:

Exploring consumers’willingness to pay ”. Journal of International Technologyand

Information Management.

Melly (2013) Microsoft Encarta (2006).

Shahrzad Shahriari, Mohammadreza Shahriari, Saeid gheiji. “ ECommerce And It Impactson

Global Trend And Market”.International Journal of Research – Granthaalayah. Vol.3

(Iss.4): April, 2015.

Sujit Kumar Basak,Irene Govender.“Examining the Impact of Privacy, Security, and Trust on

the TAM and TTF Models for Ecommerce Consumers: A Pilot Study”,IEEE, 2009.

Taylor, 2008Ambler, Scott W. 2001 - 2010. 12 11 2010 Techopedia2019.

Teddy Mantoro, Admir Milišić, Media A


APPENDICES

LETTER OF INTRODUCTION
Dear Respondent,
We are students at The Multimedia University of Kenya, pursuing Bachelor of
Business Information Technology. We are requesting you to fill this questionnaire.
The information received shall be used for academic purposes only.
Thank you.

APPENDIX II
Research Project Budget

EXPENSES AMOUNT (KSH)


Firebase fee 2500
Internet Connectivity Fee (3 months) 7500
Laptop RAM (4gb PCL -12800MHZ) 3500
LAN cables and Router 6000
Documentation and printing 1300
Totals 20,800
Table 3:Budget
APPENDIX III
QUESTIONNAIRE
Part A: Background profile

1. Select your age


18-20 21-23 24-35

2. Select mode of study


day
evening

3. Select year of study


1st
2nd
3rd
4th

Part B: Random Questions


1. Do you own a PC?
Yes

No

2. Do you have an internet network?


Yes
No

3. Do you find it hard to find services?


Yes
No

4. How do you access a service?


Through delivery
Using the roads
Using the internet
5. Are you able to buy goods and access a service via the internet?

Yes
No
Not Sure

6. Are you able to pay successfully for a service?

Yes
No

7. Do you find posting a service useful?

Yes
No
Not Sure

8. How frequently do you use internet to get a service?

Often
Not often
Once in a while

9. Have you ever used the internet to purchase?


Yes
No

Oftenly
10. Do you think using this application saves resources e.g. time and transport?

Yes
No
Not sure

11. Are you aware of services market applications that help someone access good over
the internet?

Yes
No

12. If Yes, have ever used one?

Yes
No

13. Do you think this service application is secure?


Yes
No
14. Give comments on the general challenges that you experience when accessing a
service. .............................................................................................................................
................... ......................................................................................................................
.......................... ...............................................................................................................
.................................

Thank you for your support

You might also like