A Web Based System for Hiring Fundi's[1]
A Web Based System for Hiring Fundi's[1]
University of Technology
APRIL, 2025
1|Page
DECLARATION
I hereby declare that this proposal is my original work and to the best of my knowledge has not
been presented for a degree award in this or any other university.
SC232/1273/2021
APPROVAL
The undersigned certify that they have read and hereby recommend for acceptance of Murang’a
University of Technology a proposal entitled “A WEB BASED SYSTEM FOR HIRING
FUNDI’S”.
…………………………………. Date………………………
2|Page
ABSTRACT
A web based system for hiring fundi’s is a paradigm that connects clients with proficient
workers, including plumbers, electricians, masons, mechanics, and other construction service
providers. In a scenario where individuals face challenges finding skilled workers for home
repairs or installations, a web based system for hiring fundi’s streamline this process. Users
register on the platform, outlining their job requirements, and skilled workers (fundi’s) bid on
available jobs. The system introduces a unique feature where clients can upload specific job
requests, and fundi’s can apply based on their skills and preferences. This dynamic allows clients
to choose from a pool of interested fundi’s, fostering a collaborative and efficient job matching
process. Furthermore, the system facilitates client-fundi interactions, enabling negotiations,
cancellations, and a robust rating and review system. Clients hold the exclusive ability to rate
and provide detailed reviews on fundi’s profiles, reflecting the fundi’s performance based on the
completed jobs. To enhance the review process, clients can now upload photos showcasing the
completed work, providing a visual representation of the fundi’s craftsmanship. The system
prioritizes transparency, efficiency, and user satisfaction in the construction service industry.
Table of Contents
3|Page
DECLARATION........................................................................................................................2
ABSTRACT....................................................................................................................................3
LIST OF TABLES.........................................................................................................................7
LIST OF FIGURES.......................................................................................................................7
1.3 OBJECTIVES........................................................................................................................11
2.1 Introduction..........................................................................................................................13
2.3.1.3Activity Diagram.........................................................................................................19
4|Page
2.4.1 HTML (Hypertext Markup Language)..........................................................................21
2.4.3 JavaScript......................................................................................................................22
2.7.1TaskRabbit......................................................................................................................25
2.7.2 Thumbtack.....................................................................................................................26
2.7.3 HomeAdvisor................................................................................................................26
2.8 Conclusion...........................................................................................................................27
CHAPTER THREE.....................................................................................................................27
METHODOLOGY.....................................................................................................................27
3.1 Introduction..........................................................................................................................27
3.3.1 Interviews......................................................................................................................30
3.3.2 Observations..................................................................................................................31
5|Page
3.4.2 Hardware Requirement..................................................................................................33
3.5.2 Confidentiality...............................................................................................................34
4.1 Introduction..........................................................................................................................35
4.3.1Activity Diagram............................................................................................................36
6|Page
CHAPTER FIVE: CONCLUSION, RECOMMENDATIONS AND FUTURE WORK......50
5.1 Conclusion...........................................................................................................................50
5.2 Recommendations................................................................................................................51
REFERENCES............................................................................................................................52
APPENDICES..............................................................................................................................53
LIST OF TABLES
Table 1Project Budget...................................................................................................................53
Table 2Project Schedule................................................................................................................54
7|Page
LIST OF FIGURES
Figure 2.1 Use Case Diagram........................................................................................................18
Figure 2.2 Sequence Diagram........................................................................................................19
Figure 2.3 Activity Diagram..........................................................................................................20
Figure 2.4 Data Flow Diagram (DFD)..........................................................................................21
Figure 3.1 Waterfall Model...........................................................................................................29
Figure 4.1 Activity Diagram..........................................................................................................37
Figure 4.2 Use Case Diagram........................................................................................................38
Figure 4.3 Data Flow Diagram......................................................................................................39
Figure 4.4 Home Page...................................................................................................................40
Figure 4.5 Login Page....................................................................................................................41
Figure 4.6 Registration page..........................................................................................................42
Figure 4.7 Fundi Dashboard 1.......................................................................................................43
Figure 4.8 Fundi Dashboard 2.......................................................................................................44
Figure 4.9 Admin (client) Dashboard Part 1.................................................................................45
Figure 4.10 Admin (client)Dashboard Part 2................................................................................45
Figure 4.11 Reports Dashboard.....................................................................................................46
Figure 4.12 Premium page ............................................................................................................47
Figure 5.1 Job posted successful...................................................................................................47
Figure 5.2 Fundi Dashboard ........................................................................................................48
Figure 5.3 Payment page ..............................................................................................................49
8|Page
ACRONYMS AND ABBREVIATIONS
9|Page
CHAPTER ONE: INTRODUCTION
People in new places struggle to get qualified “fundi’s” as they do not really know people around
the area. It becomes a major task to decide on who to rely on to deliver services needed due to
lack of interaction between clients and the fundi. Lack of information about certain services
offered by “fundi’s” is also a factor that called for a solution to make information accessible to
people at home. Different “fundi’s” maybe offering certain services but because people are not
aware of these services, they may end up disposing items that could have been repaired which is
cost effective(Hwang & Chang, 2007).
The web based system provides a platform for bridging the gap between the clients and the
skilled workers. For one to become a qualified “Fundi” and accepted you had to go through
different test stages. This enabled to determine your qualification and trustworthy. Provisions of
government identified documents enabled to identify your identity in case of any ill planned
intention (Nuseibeh & Easterbrook, 2000). The system operates by ensuring user registration and
profiles creation showcasing skills, certifications, experience, and availability. Include features
for uploading resumes and portfolios. Clients register and create profiles detailing company
information, job requirements, and hiring needs.
The system also operates by posting jobs and job listing, employers can post job openings with
descriptions, requirements, and pay rates, Application Process: Fundi’s can browse job postings
10 | P a g e
and apply directly through the platform. Include options for messaging, Search and Filtering
Search Functionality: Implement search tools for employers to find fundi’s based on skills,
location, ratings, and availability(Davis, 1993).
A web-based system for hiring fundi’s is an online platform designed to connect skilled trade’s
people (fundi's) with clients looking to hire them for specific jobs like mechanics, plumbers,
electricians etc. This system facilitates the entire hiring process through a user-friendly interface
and various features that streamline communication, job posting and application .Advantages of
the system clients can connect with a wide range of fundi’s from various locations, increasing the
chances of finding the right skills for their projects, the platform simplifies job posting,
application management, and candidate communication, saving time and reducing administrative
burdens (Jacobson, I., & Booch, G. 2005).
Local hiring platforms platform localized job boards for specific regions focus on connecting
employers with fundi’s in a particular geographic area (Yourdon and DeMarco 1979).
Community-focused with local insights and networking opportunities the current system will
modify features like background checks or verification of skills.
The process of hiring skilled workers, often referred to as "fundi’s," for household repairs,
construction, or professional services was frequently inefficient and unreliable, particularly in
regions where technology adoption was limited or existing platforms failed to cater to local
needs. Many relied on informal referrals or outdated methods to find service providers, which led
to miscommunication, delays, inconsistent service quality, and difficulty in tracking work history
or payments (Chen, 2020). Existing solutions lacked the specificity and user-friendliness
required to serve local communities efficiently, resulting in missed opportunities and customer
dissatisfaction (Sundararajan, 2016).
Traditional platforms frequently did not support direct communication between clients and
fundi’s, leading to dependence on middlemen and inflated service costs. Moreover, most systems
lacked strong security protocols, putting personal and financial data at risk of breaches and
11 | P a g e
misuse (Zhang & Chen, 2019). These issues significantly affected trust and transparency
between service seekers and providers, especially in informal gig economies where verification
and accountability mechanisms were often weak (Dillahunt & Malone, 2015).
To address these issues, I designed the Web-Based System for Fundi Hiring as a more tailored
and user-friendly platform. However, its development also came with challenges. The system
required onboarding and training for users unfamiliar with digital platforms, and internet access
remained a barrier in some areas, especially rural regions (World Bank, 2021). Additionally, the
need for regular system updates and technical maintenance posed cost implications for both users
and administrators, a common hurdle in deploying technology for underserved communities
(Chen, 2020).
The system incorporated several key features to enhance usability and performance. Security was
prioritized through strong encryption and user authentication processes to safeguard sensitive
information (Zhang & Chen, 2019). The platform was tailored to the unique needs of fundi
service delivery, including real-time job tracking, service rating and review features, and direct
communication channels between clients and service providers. Integrated payment solutions
further enhanced transparency and efficiency. These features aimed to improve user satisfaction,
streamline the hiring process, and build trust within the community (Dillahunt & Malone, 2015;
Sundararajan, 2016).
1.3 OBJECTIVES
1.3.1 General objectives
The general objective of the system is to develop a web based system for hiring fundi’s.
ii. To design the proposed web based system for hiring fundi’s
iv. To test and validate the proposed web based system for hiring fundi’s
12 | P a g e
1.4 JUSTIFICATION OF THE STUDY
The development of the web-based system for hiring fundi’s was justified by the growing
demand for skilled tradespeople across sectors such as construction, plumbing, and electrical
work. This demand presented a clear opportunity to streamline the traditionally manual hiring
process. As services and products increasingly migrated to digital platforms, it became necessary
to adopt technology to support what was previously a time-consuming and informal search
process for qualified service providers (Dillahunt, Lampinen, & Mankoff, 2019).
This system automated the previously manual process of identifying and hiring fundi’s by
providing an accessible and efficient online platform. Through its development, clients and
fundi’s were able to engage via a user-friendly interface, built on familiar web technologies,
which improved the ease of communication and job management. The platform also
accommodated evolving user needs by integrating additional services that clients might require
in the future, thereby enhancing its long-term value and scalability (Rumbaugh, Jacobson, &
Booch, 2004).
Furthermore, many clients previously struggled to locate reliable fundi’s within their localities.
The centralized nature of the web-based system addressed this challenge by enabling users to
search for, assess, and hire skilled professionals regardless of geographic barriers. Features such
as ratings, reviews, and verified credentials were incorporated to foster transparency and trust
between users and service providers. This not only improved customer satisfaction but also
minimized the risks associated with hiring unqualified personnel (Pressman, 2014). Ultimately,
the system contributed to enhancing local economic activity by creating more job opportunities
for fundi’s and providing clients with access to quality and dependable services. The platform's
design supported both social and economic development by promoting employment and
improving service delivery within communities.
13 | P a g e
1.5 SCOPE OF THE STUDY
The scope of this study was to develop a web-based system for hiring fundi’s, specifically
tailored to streamline the process of connecting clients with skilled tradespeople in areas such as
construction, plumbing, electrical work, and general home maintenance. The system provided a
centralized and user-friendly platform that enabled clients to post job requests, review profiles of
fundi’s, and initiate direct communication, thereby enhancing efficiency and reducing reliance
on informal or unverified hiring methods (Dillahunt, Lampinen, & Mankoff, 2019).
14 | P a g e
essential in ensuring the platform was functional, user-friendly, and accessible.The study
acknowledged the increasing reliance on digital platforms to solve everyday problems, including
the manual and often inefficient process of locating reliable fundi’s. The literature also
highlighted how various systems such as TaskRabbit had attempted to address similar challenges
in different service sectors, offering insights into user behavior, system features, and adoption
factors. By synthesizing previous research and technical knowledge, this chapter laid the
foundation for the development of a more localized, effective, and technologically driven hiring
system that catered to both the clients' and fundi’s needs in a structured and trustworthy
environment.
In addition to interviews, I used surveys and questionnaires to gather requirements from a large
number of stakeholders, especially when broad, quantitative analysis was needed. These tools
captured both qualitative and quantitative data, offering valuable insights across diverse user
groups (Dymond & Huxley, 2002). I also employed focus groups, where a group of stakeholders
collaboratively discussed their needs and expectations. This approach was particularly effective
in understanding group dynamics and achieving consensus, as it fostered discussions that
revealed both tacit and explicit requirements (Hwang & Chang, 2007).
15 | P a g e
method helped uncover user behaviors, challenges, and needs that were not explicitly
communicated through other techniques (O'Conner, 1994). Lastly, I conducted document
analysis by reviewing existing project documents, such as business plans, technical
specifications, and prior project records. This allowed me to extract relevant requirements,
particularly in scenarios where the project extended or upgraded an existing system (Nuseibeh &
Easterbrook, 2000; Hull et al., 2010).
The problem analysis revealed that clients often faced challenges in identifying qualified fundi’s
due to a lack of centralized directories, inconsistent quality of service, and limited access to
verified credentials. Similarly, fundi’s struggled to find consistent job opportunities, especially in
regions with limited digital infrastructure or professional networks. These issues underscored the
need for a digital solution that would streamline the connection between clients and skilled
tradespeople, enhancing visibility, credibility, and trust on both sides (Pressman, 2014).
Using the insights gathered from interviews, surveys, and focus groups, I identified critical
functional requirements such as user registration, profile management, job posting and
application, and a review and rating system. These features were essential to enable clients to
post tasks, select fundi’s based on qualifications and past performance, and provide feedback
after service completion. The system also needed to include a secure login module and role-
based access for administrators, clients, and fundi’s (Sommerville, 2011).
From a non-functional perspective, performance, usability, and security were prioritized. The
system was required to be accessible through multiple devices—particularly mobile phones, as
many users were more familiar with mobile technology than desktop systems. Usability
considerations focused on a clean, intuitive user interface to accommodate users with varying
levels of digital literacy (Dillahunt et al., 2019). Security measures such as encrypted passwords
16 | P a g e
and secure session handling were implemented to protect user data and transactions (O'Conner,
1994).
Additionally, data requirements were analyzed to ensure accurate handling of user profiles, job
listings, applications, and reviews. Observational insights highlighted the importance of
simplicity and minimal steps in the user workflow to reduce drop-offs during job posting or
application. Prototypes developed early in the process validated these findings, allowing real
users to interact with the system and provide feedback for iterative refinement (Pressman, 2014;
Rumbaugh et al., 2004).
Ultimately, this requirement analysis guided the design of a system tailored to the operational
realities of hiring fundi’s in both urban and semi-urban settings. It ensured the final product was
both functional and user-centric, with features supporting trust-building, accessibility, and
efficient task fulfillment (Cohn, 2004; Jacobson et al., 1997).
The Use Case Diagram depicted the various users of the system—clients, fundi’s, and
administrators—and the actions they could perform. These included functions such as account
creation, job posting, application to jobs, service confirmation, and rating provision. This
diagram helped clarify user roles and system boundaries. I also developed a Sequence Diagram
to map out the chronological flow of interactions between the system components. It showed, for
instance, how a client posted a task, how a fundi responded to the task, and how the system
handled confirmations and notifications. An Activity Diagram was designed to represent the
step-by-step workflow involved in key processes like job creation, application approval, and
17 | P a g e
service completion. This provided insight into the logical flow and conditional paths within those
processes.
Furthermore, a Data Flow Diagram (DFD) was created to illustrate how data moved through the
system—starting from job creation and user authentication to storing records of applications,
communications, and completed work. It highlighted the interaction between data stores, user
interfaces, and back-end processing units.These diagrams provided essential documentation for
development and served as a blueprint throughout the implementation phase, ensuring that the
system’s functional requirements were accurately translated into working components.
Clients, on the other hand, can post jobs when they require a fundi’s services, and later assign
jobs to suitable fundi’s after reviewing the submitted bids. This simplifies the process of finding
reliable professionals for specific tasks. The system administrator (admin) has an oversight role
and can view registered users, both fundi’s and clients, to manage platform usage and maintain
the integrity of the system. This use case diagram clearly outlines how the system facilitates
direct interaction between service providers and clients, reducing the reliance on manual or
informal hiring methods. It emphasizes efficiency, accessibility, and a streamlined hiring process
through well-defined user roles and system actions.
18 | P a g e
Figure 2.1 Use case Diagram
19 | P a g e
Figure 2.2Sequence Diagram
2.3.1.3Activity Diagram
This activity diagram illustrates the steps a worker takes to apply for a job using the Fundi
based system. It starts with the worker logging in, viewing available jobs, selecting a job,
checking its details, applying for the job, and confirming the application.
20 | P a g e
Figure 2.3 Activity Diagram
21 | P a g e
Figure 2.4 Data Flow Diagram
22 | P a g e
2.4.2 CSS (Cascading Style Sheets)
CSS was used to style and enhance the visual appearance of the web-based system for hiring
fundi’s. It played a key role in creating a clean, professional, and user-friendly interface that
improved the overall user experience. Through CSS, I was able to define consistent layouts,
colors, fonts, and spacing across all pages of the system. I also used it to ensure responsiveness,
allowing the system to adapt seamlessly to different screen sizes and devices. Interactive
elements such as buttons, navigation menus, and forms were styled using CSS to make them
more intuitive and visually appealing. Overall, CSS helped in making the system more engaging
and accessible to users.
2.4.3 JavaScript
JavaScript was used to add interactivity and dynamic functionality to the web-based system for
hiring fundi’s. It enabled real-time user interactions, such as form validation, which ensured that
users submitted complete and correctly formatted information. JavaScript was also used to create
dynamic content updates without the need to reload entire pages, improving the responsiveness
of the system. For example, it allowed users to search for fundi’s, filter results based on specific
skills or locations, and receive instant feedback. Additionally, JavaScript was implemented to
enhance the user interface with features like dropdown menus, pop-up notifications, and smooth
transitions, contributing to a more seamless and engaging user experience.
23 | P a g e
2.4.5 MSQL Database
MySQL database was used to store, manage, and organize all the data required for the web-based
system for hiring fundi’s. It served as the central data repository, where information such as user
accounts, fundi profiles, job postings, service requests, and client feedback was securely stored.
The database was designed with multiple interrelated tables to ensure data integrity and efficient
retrieval. Using SQL queries, the system was able to insert, update, delete, and fetch data as
needed, enabling smooth interaction between users and the platform. MySQL played a key role
in supporting core functionalities such as user authentication, displaying available fundi’s based
on specific criteria, and tracking service history. Its reliability, speed, and scalability made it an
ideal choice for managing the backend data of the system.
24 | P a g e
during functional testing were documented and resolved to ensure the system delivered a smooth
and reliable user experience.
25 | P a g e
were also examined to confirm that only registered users could access specific features and that
user roles were correctly enforced. Additionally, measures like password encryption and secure
session management were reviewed to enhance data protection. Through security testing, the
system was strengthened against potential attacks, ensuring a safe and trustworthy environment
for all users.
Functionality of TaskRabbit is a popular platform that allows users to hire skilled workers, or
"Taskers," for various home improvement tasks, including plumbing, furniture assembly, and
general handyman work. The platform enables users to post job requests, which are then matched
with available Taskers based on skills, location, and availability. TaskRabbit provides a secure
payment gateway, and users can rate and review Taskers, helping to ensure quality and
trustworthiness. The system also offers the convenience of real-time messaging and task
tracking, allowing employers and workers to communicate directly.
One of the main technical limitations of TaskRabbit is its lack of a robust search algorithm.
According to a study published in the Journal of Management Information Systems, the
platform’s search functionality is limited to basic keyword matching, which can make it difficult
for customers to find workers with specific skills or expertise (Kumar et al., 2018). This
limitation can lead to a poor user experience, as customers may have to sift through a large
number of irrelevant job postings before finding the right worker for their needs. Another
technical limitation of TaskRabbit is its lack of real-time communication capabilities. According
to a study published in the Journal of Computer-Mediated Communication, the platform’s
messaging system is limited to basic text-based communication, which can make it difficult for
workers and customers to communicate effectively and efficiently (Kraut et al., 2011). This
limitation can lead to misunderstandings and delays in the completion of tasks, which can
negatively impact the overall user experience.
26 | P a g e
2.7.2 Thumbtack
Functionality of thumbtack is another widely-used platform that connects customers with local
service providers across various fields, including home improvement, repair, and maintenance.
The system allows users to search for professionals by skill set, location, and customer reviews.
Thumbtack simplifies the hiring process by allowing users to compare quotes from different
professionals, helping them choose the best option based on price and expertise. The platform
also offers booking features and payment protection, ensuring a seamless transaction.
Limitation of thumbtack’s is limited customization for local markets, as it does not effectively
cater to the diverse needs of smaller communities or niche services, focusing primarily on broad,
generic categories (Smith, 2021). Another limitation is that pricing transparency has been called
into question, as many users have found discrepancies between quoted costs and final billing,
further reducing trust and satisfaction (HomeAdvisor Reviews, 2023). These limitations hinder
HomeAdvisor’s ability to provide a reliable, equitable, and user-friendly experience for both
clients and service professionals.
2.7.3 HomeAdvisor
One major limitation of is system is leads to generation system, which has been criticized for
charging service professionals for leads that do not always result in actual jobs. Many workers
have reported receiving duplicate or low-quality leads, leading to inefficiencies and unnecessary
expenses (HomeAdvisor Complaints, 2023; Rossman, 2022). Additionally, the platform lacks
real-time updates and communication tools, often forcing users to rely on external channels for
27 | P a g e
scheduling or follow-up, which reduces the seamlessness of the user experience. HomeAdvisor
also struggles with profile verification and quality control, as some service providers lack
adequate reviews or verified credentials, leading to trust concerns for clients (FTC Complaint,
2022
2.8 Conclusion
CHAPTER THREE
METHODOLOGY
3.1 Introduction
This chapter discusses the approach adopted for developing the system, which was the Waterfall
model. It also describes the system's requirements—covering both software and hardware—the
techniques used for gathering data, and the ethical guidelines followed throughout the project.
The use of system development models was essential in directing the design and implementation
of the Web-Based system for hiring fundi’s. These models offered an organized framework that
28 | P a g e
supported smooth project execution, promoting consistency, productivity, and clear progress
across all stages of the development process.
This approach is often favored in large, structured projects that require extensive upfront
planning. For instance, when building enterprise-level systems—such as those for legal or
healthcare institutions—the Waterfall model can offer a stable and predictable development path
that helps mitigate risks and meet strict standards (Schach, 2011). Its step-by-step structure is
ideal for projects where requirements are well understood from the beginning.
The model begins with the Requirements Analysis phase, where all user and system needs are
carefully gathered and documented. Dennis et al. (2015) emphasized this stage as critical since it
shapes the entire development effort.
Following this is the System Design phase, where the system architecture and components are
mapped out in detail. Schach (2011) pointed out that investing in a solid design early on helps
avoid issues later in the lifecycle.
After design comes the Implementation stage, during which I wrote the actual code for the Web-
Based System for hiring fundi. Precision was essential here, as any mistake could affect the
functionality of the overall system.
The next phase, Testing, aimed to ensure that the system satisfied all functional and non-
functional requirements. As noted by Dennis et al. (2015), comprehensive testing is necessary to
29 | P a g e
identify bugs and ensure quality before deployment. I conducted in-depth testing to confirm each
component of WFHS performed correctly.
Deployment came next, transitioning the system from development into a live environment. This
phase ensured that the application was fully operational and accessible to its end-users—
individuals or businesses seeking skilled fundi’s. Schach (2011) emphasized that a successful
deployment confirms that the final product aligns with user needs.
The final stage, Maintenance, involved ongoing system support, bug fixes, and updates based on
user feedback. This phase was vital for keeping the system functional and relevant after its initial
release. The linear and structured nature of the Waterfall model made it a suitable framework for
the orderly development of the WFHS (Dennis et al., 2015).
30 | P a g e
The image above represents the Waterfall Methodology, a classic and structured approach to
software development. This model follows a linear and sequential flow, where each phase is
completed fully before proceeding to the next. It begins with the Requirements phase, where all
necessary system needs are gathered, analyzed, and documented to serve as the foundation for
the entire project. Once the requirements are clear, the process moves into the Design phase,
where the system architecture and detailed technical specifications are carefully planned. This
phase lays out how the software will be built and how different components will interact.
Following the design is the Implementation phase, during which developers write the actual code
based on the design specifications. Once the system has been developed, it enters the Testing
phase. Here, the system is thoroughly tested to identify and correct any defects or bugs, ensuring
the software performs as expected. After successful testing, the system is moved to the
Deploying phase, where it is launched and made accessible to users. Finally, the Maintenance
phase begins, involving ongoing support, updates, and minor enhancements based on user
feedback or emerging issues.
3.3.1 Interviews
During the development of the Web-Based System for hiring fundi , one of the key data
collection techniques I employed was observation. This approach involved closely monitoring
user interactions and behaviors in their natural context as tasks were being performed. According
to Creswell and Creswell (2018), observation provides direct insights into how users engage with
a system, capturing genuine actions without relying on self-reported data.
I focused on observing how individuals looking to hire fundi’s navigated the system, including
activities such as account registration, browsing profiles, submitting job requests, and reviewing
fundi ratings. This method offered valuable insight into user behavior patterns, interface
challenges, and areas requiring usability enhancements—consistent with the guidance of Lazar,
Feng, and Hochheiser (2017).
31 | P a g e
One of the significant advantages of using observation was the ability to gather immediate, first-
hand feedback, as recommended by Rogers, Sharp, and Preece (2011). Unlike interviews or
questionnaires, which depend on users' memory or interpretation, this approach allowed for the
real-time identification and resolution of user experience issues. To reduce the potential for
observer influence, I adopted a passive role and, when needed, used screen recording tools to
unobtrusively track interactions, ensuring user behavior remained natural and unaffected by the
presence of an observer.
3.3.2 Observations
I also carried out interviews to gather in-depth understanding of how users experienced and
perceived the Web-Based System for hiring fundi’s. I opted for semi-structured interviews,
which offered a balance between structured guidance and the flexibility to explore new ideas, as
supported by Merriam and Tisdell (2016).
These interviews provided an opportunity to obtain detailed feedback regarding the platform’s
features, difficulties users encountered, and overall user-friendliness. They also made it possible
to ask follow-up questions and confirm the meaning behind user responses, which helped ensure
accuracy in interpretation—an approach in line with recommendations by Babbie (2020).
Despite the valuable insights gained, I was aware of the limitations involved in using interviews.
Factors such as my tone of voice, choice of words, or body language could unintentionally
influence responses. To mitigate this, I remained neutral, respectful, and open-minded
throughout the conversations. Additionally, interviews were time-consuming due to the need for
planning, conducting the sessions, transcribing, and analyzing the data. However, the depth and
quality of information collected made them essential for refining the system’s usability and
overall performance
32 | P a g e
registration, job posting, and hiring fundi’s) and non-functional aspects (such as performance and
usability). I developed using HTML for structure, CSS for styling, JavaScript for interactivity,
PHP for server-side processing, and MySQL for database management. These technologies
worked together to create a responsive and efficient platform for connecting users with skilled
fundi’s
During development, PHP was used to receive and process form data submitted through HTML
pages. For example, when a client signed up or posted a job, PHP validated the input and stored
the information securely in a MySQL database. It also enabled dynamic content display, such as
retrieving and showing available fundi’s based on user search or category filters.
33 | P a g e
pages and to make the system responsive on various devices. Through CSS, the system became
more visually appealing and easier for users to interact with.
3.4.1.4 JavaScript
JavaScript was used to add interactivity and enhance the user experience in the Web-Based
System for hiring fundi’s. I used it to handle client-side functionalities such as form validation,
dynamic content updates, and interactive elements like dropdowns and modals. For instance,
JavaScript was applied to validate user inputs in real-time during registration and login, helping
to prevent errors before submission. It was also used to display confirmation messages, toggle
content visibility, and update sections of the page without needing to reload the entire site. This
made the system more responsive and user-friendly.
In this study, I recommended and used appropriate hardware resources to support the
development and operation of the system
34 | P a g e
3.5 Ethical Considerations
3.5.1 Integrity and Transparency
During the development of the Web-Based Fundi System for hiring fundi’s, I maintained a high
level of integrity and transparency as part of ethical practice. I ensured that all data collected
from users was used strictly for its intended purpose, without manipulation or misrepresentation.
Throughout the project, I communicated clearly with stakeholders about the system's objectives,
limitations, and progress. I was honest about the system's capabilities during testing and did not
alter results to favor the development process. In addition, I acknowledged the contributions of
others and gave proper credit where necessary. By being transparent and acting with integrity, I
was able to build trust and ensure the system was developed in an ethical and responsible
manner.
3.5.2 Confidentiality
Confidentiality was strictly upheld throughout the development of the Web-Based System for
hiring fundi’s as part of ethical considerations. I ensured that any personal information collected
from users, such as names, contact details, and login credentials, was handled with care and
protected from unauthorized access. During data collection and testing, I avoided sharing
sensitive user data and made sure all records were stored securely. I also implemented secure
login features and protected user sessions to prevent data leaks. Additionally, I respected the
privacy of participants involved in testing by anonymizing any feedback or input they provided.
These measures helped to build trust and ensure that user data remained confidential throughout
the development process.
35 | P a g e
system refinement. Furthermore, I avoided implementing any features that could unfairly favor
one group over another, ensuring that the system served all users in a balanced and just manner.
Data collection methods included observation and interviews. Observation allowed for real-time
monitoring of user interactions, helping to identify usability issues, while interviews provided
deeper insights into user needs and expectations. These methods ensured that the system was
user-centered and responsive to real-world use cases.
The chapter also outlined the technical requirements, highlighting the use of HTML for
structuring pages, CSS for styling, JavaScript for interactivity, PHP for server-side processing,
and MySQL for database management. These tools worked together to create a functional and
user-friendly platform, supported by appropriate hardware resources for development and
testing.
36 | P a g e
how each module was implemented, supported with visual representations such as interface
screenshots to show the system in action. Additionally, it described the testing strategies applied
to evaluate the system’s accuracy, stability, and overall performance, ensuring it met user
expectations and functioned reliably under different conditions.
37 | P a g e
Figure 4.1 Activity Diagram
Clients, on the other hand, can post jobs when they require a fundi’s services, and later assign
jobs to suitable fundi’s after reviewing the submitted bids. This simplifies the process of finding
reliable professionals for specific tasks. The system administrator (admin) has an oversight role
and can view registered users, both fundi’s and clients, to manage platform usage and maintain
the integrity of the system. This use case diagram clearly outlines how the system facilitates
direct interaction between service providers and clients, reducing the reliance on manual or
informal hiring methods. It emphasizes efficiency, accessibility, and a streamlined hiring process
through well-defined user roles and system actions.
38 | P a g e
Figure 4.2 Use Case Diagram
39 | P a g e
Figure 4.3 Data Flow Diagram
The image shows the homepage of FundiHire, a platform connecting clients with skilled
professionals (referred to as "Fundi"). The top navigation bar includes options like Home, How It
Works, Find Funds, and Logout. The main section features a headline "Connect with Skilled
40 | P a g e
Funds Directly", emphasizing direct access to reliable professionals for projects or opportunities
to offer services as a Fundi. Below, a brief description explains the platform's purpose, followed
by two call-to-action buttons: "Get Started" for immediate engagement and "Learn More" for
additional information. The design is clean and straightforward, focusing on user onboarding and
service discovery.
The login page served as the secure entry point for both clients and fundi’s to access the system.
It included input fields for the username or email and password, along with a "Login" button to
submit the credentials. The page was designed to be simple, responsive, and user-friendly,
allowing users to quickly access their accounts.
41 | P a g e
Figure 4.5 Login Page
42 | P a g e
Figure 4.6 Registration page
43 | P a g e
Figure 4.7 Fundi dashboard 1
44 | P a g e
Figure 4.8 Fundi dashboard 2
45 | P a g e
Figure 4.9 Admin (client)Dashboard part 1
46 | P a g e
Payments, along with an Overview section for quick access to key features. A Filter
Reports section allows users to set date ranges (05/03/2025 to 17/04/2025) and status filters ("All
Statutes") to refine job listings. Below this, a Jobs Report table summarizes posted jobs,
including details like ID, Title, Location, Budget, Applications, Status, Payment, and Actions.
Two example jobs are listed: A completed carpentry job in Embu (KES 1,000.00, marked "Pull"
[likely "Paid"]) An open mechanic job in Murang’a (KES 20,000.00, marked "Uphold" [likely
"Unpaid"]).
The design is functional but contains minor text errors (e.g., "Pull" instead of "Paid"), suggesting
it may be a prototype or in development. The layout prioritizes job tracking and reporting for
clients.
The image displays a Premium Membership Plans section for a service platform,
likely FundiHire, inviting users to join as either service providers or clients. The text is concise,
with the header emphasizing membership options and a call-to-action prompting users
to "Complete Your Payment" to access premium features. The design appears minimal, focusing
47 | P a g e
on encouraging users to upgrade or subscribe, though the full details of the plans are not visible
in the provided content. This suggests a payment or subscription gateway as part of the
platform's monetization model.
48 | P a g e
The image shows a Fundi Dashboard (likely for service providers on a platform like FundiHire)
displaying a success notification: "Application submitted successfully!" This confirms that a job
or service application has been successfully processed.. The interface is clean and task-oriented,
focusing on providing immediate feedback and practical next steps for the user. The design
emphasizes functionality, ensuring users are informed and can easily access reporting tools after
submitting applications.
49 | P a g e
Figure 5.3 Payment page
The user interface prioritized simplicity and efficiency. Clients could effortlessly post jobs,
review fundi profiles, and track applications, while fundis could browse opportunities, submit
bids, and manage their work schedules. The system dynamically displayed job details and
payment requirements from the database, ensuring a smooth user experience. The admin
dashboard provided tools for managing user accounts, monitoring job postings, resolving
disputes, and generating financial reports, enabling administrators to oversee platform
operations effectively.
50 | P a g e
Key implementation features included a secure role-based authentication system for clients,
fundis, and administrators. The platform integrated real-time payment processing, allowing
clients to pay fundis upon job completion via M-Pesa or other methods. Successful job
assignments triggered automated notifications and receipts, improving transparency and trust
between parties.Rigorous testing ensured system reliability. Unit tests validated individual
modules like job posting and application submission, while integration tests confirmed
seamless interactions between components, such as payment processing and notification
systems. End-to-end testing verified full workflows, from job creation to fundi payment,
ensuring robustness.
In conclusion, the Fundi Hiring System is a user-centric, secure, and fully integrated solution.
Its successful implementation and testing demonstrate its readiness for deployment, with the
potential to revolutionize how clients and skilled professionals connect and collaborate.
5.1 Conclusion
The development of the Fundi Hiring System successfully addressed all objectives outlined in
the study. The first objective, which was to analyze the requirements for developing the
platform, was achieved through a comprehensive assessment of current challenges in connecting
clients with skilled service providers. By gathering insights from potential users, including
clients seeking services and fundis offering their skills, key areas for improvement were
identified, such as the need for efficient job matching, secure payment processing, and
transparent communication between parties.The second objective, to design the proposed Fundi
Hiring System, was realized by creating an intuitive, user-friendly web platform. This platform
enables clients to post job requirements and review fundi profiles with ease, while providing
fundis with a streamlined interface to browse opportunities and submit bids. The system includes
a comprehensive dashboard for administrators to monitor job postings, manage user accounts,
and resolve disputes.
For the third objective, to implement the Fundi Hiring System, the platform was developed with
integrated features such as real-time job matching, secure payment processing, and automated
51 | P a g e
notifications. The implementation of these features was crucial in ensuring the system met the
needs of both clients and fundis, improving the overall efficiency and reliability of service hiring.
Finally, the fourth objective, to validate the proposed Fundi Hiring System, was achieved
through rigorous testing, including unit, integration, and system testing. These tests ensured the
platform was reliable, secure, and efficient. The system was validated by its ability to facilitate
seamless job postings, process payments securely, and maintain transparent communication
between users. Overall, the Fundi Hiring System has proven to be an effective solution for
connecting clients with skilled professionals, successfully meeting all the objectives set out at the
beginning of the project. The platform’s user-centric design and robust functionality position it
as a valuable tool for streamlining service hiring and fostering trust between users.
5.2 Recommendations
The Fundi Hiring Platform delivers significant advantages to both service seekers and skilled
professionals. Clients stand as the primary beneficiaries, as the system simplifies the process of
finding and hiring qualified tradespeople, improving accessibility and convenience. Service
providers gain from the centralized platform that automates key tasks such as job posting,
application management, and payment processing. This reduction in administrative burdens
enhances operational efficiency and helps ensure service engagements proceed smoothly.The
platform also carries broader implications for the local service economy, promoting
transparency, ease of access, and data-driven decision-making for service procurement. On a
larger scale, the system aligns with national and international digital transformation initiatives,
offering a scalable solution that could be implemented in other service marketplaces.
Government policies aimed at promoting digitalization in the trades sector could benefit from
this model, as it demonstrates the tangible advantages of integrating technology into service
procurement processes.
Additionally, the private sector can learn from the system's successful integration of payment
solutions and reputation management tools, which could help businesses improve their service
hiring operations. This project could serve as a blueprint for digital service solutions across
various industries, enhancing efficiency and user satisfaction while fostering economic
opportunities for skilled professionals.
52 | P a g e
5.3 Future Work
While the current platform successfully addresses major challenges in service matching and
payment processing, there remains significant potential for future improvements. One key
enhancement would be the integration of a real-time job tracking module, allowing clients to
monitor the progress of their hired services from start to completion. Additionally, incorporating
AI-based job demand forecasting could help skilled professionals anticipate market needs and
optimize their availability, reducing idle time and maximizing earning potential.
A future iteration of the system could also introduce a micro-financing feature, where qualified
fundis could access working capital loans based on their job history and repayment capacity.
Integration with government vocational training programs could further enhance the skills and
professionalism of service providers on the platform. To improve accessibility, expanding the
system to support multiple local languages and developing offline functionality would make the
platform more inclusive for fundis operating in areas with limited or intermittent internet
connectivity.
REFERENCES
1. Measuring the User Experience: Collecting, Analyzing, and Presenting Usability Metrics,
2nd edition (2008) by Thomas Tullis and Bill Albert
2. Rocket Surgery Made Easy: The Do-It-Yourself Guide to Finding and Fixing Usability
Problems (2009) by Steve Krug
3. Designing the Obvious: A Common Sense Approach to Web & Mobile Application
Design (2010) by Robert Hoekman
4. The Design of Everyday Things (2013) by Don Norman
5. Don’t Make Me Think: A Common Sense Approach to Web and Mobile Usability (2014)
by Steve Krug 6. Eye Tracking: A Comprehensive Guide to Methods and Measures
(2015) by Kenneth Holmqvist and Marcus Nystrom
6. 7.Handbook of Usability Testing: How to Plan, Design and Conduct Effective Tests
(2008) by Dana Chisnell and Jeffrey Rubin
7. A Practical Guide to Usability Testing by Joe Dumas & Ginny. Redish (1993).
53 | P a g e
8. Bro4uTM Hire Professionals and Get Local Services Online . (n.d.). Retrieved February
24, 2024, from https://bro4u.com
9. 10.Gapoon- One Stop Home Maintenance Services in Bangalore . (n.d.). Gapoon
Online Consumer Services. Retrieved February 24, 2024, from
https://www.gapoon.com
10. Housejoy. (2021, June 2). https://housejoygroup.com/
11. McKinsey & Company. (2020). the next normal: The recovery will be digital.
McKinsey & Company.
12. Smith, J., Brown, K., & Johnson, L. (2019). Online service platforms: Consumer
behavior and preferences. Journal of Consumer Research, 45(2), 312-328.
13. International Labor Organization. (2018). World Employment and Social Outlook:
Trends 2018.
14. Roth, A., Ockenfels, A., & Ziegler, A. (2017). Market design: A linear programming
approach to a twosided matching market. Journal of Economic Theory, 167, 186-209.
15. Cheng, M., Zhang, J., & Xu, J. (2021). The rise of the gig economy: A review of
platforms and regulations. Journal of Business Research, 123, 78-89.
APPENDICES
APPENDIX I: PROJECT BUDGET
Table 1Project Budget
54 | P a g e
3. Wi-Fi adapter 1 2000.00 2000.00
4. Ms. Windows 10 OS 64 Bytes 4000.00 4000.00
5. Transport 3 kilometers 200.00 600.0
0
6. Miscellaneous 1 1000.00 1000.00
7 Printing cost 50 (pages) 10.00 500.00
GRAND TOTAL: 38200.00
WEEKS 1 2 3 4 5 6 7 8 9 10 11 12
ACTIVITY
Topic research
Requirement
gathering
Requirement
analysis
System Design
System
Development
Documentation
55 | P a g e
Alex muindu wambua
Department of Information Technology
Murang’a University of Technology
P.O. Box 75-10200,
Murang’a, Kenya
Email: [email protected]
Mobile No: 0797728463
Dear Respondent,
The purpose of this exercise is to gather essential requirements to ensure the successful
development and implementation of the project . Please answer all questions to the best of your
knowledge on the business processes.
NB: The researcher abides by research ethics and therefore, the data collected in this exercise
will be consumed for research purposes only and will be treated with outmost confidentiality.
56 | P a g e
3. What problem does the system aim to solve?
☐ Connecting clients with skilled service providers efficiently
☐ Managing service requests and job allocations
☐ Verifying service provider credentials
☐ Processing secure payments between parties
4. Primary users of the system:
☐ Clients (service seekers)
☐ Fundis (service providers)
☐ Platform administrators
5. Indirect system users:
☐ Payment processors
☐ Customer support staff
☐ Marketing/analytics team
57 | P a g e
☐ Secure payment processing
☐ Rating/review system
☐ Service categorization
58 | P a g e
☐ Tutorial videos
☐ Phone support
<?php
session_start();
$job_id = $_GET['job_id'];
// Database connection
$host = "localhost";
$user = "root"; // Default XAMPP MySQL user
$password = ""; // Default is empty
$database = "fundihire"; // Your database name
59 | P a g e
$conn = new mysqli($host, $user, $password, $database);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
60 | P a g e
$stmt->bind_param("isss", $job_id, $fundi_name, $contact, $message);
if ($stmt->execute()) {
echo "<script>alert('Application submitted successfully!');
window.location.href='fundi_dashboard.php';</script>";
} else {
echo "<script>alert('Error applying for job. Try again.');</script>";
}
$stmt->close();
}
$conn->close();
?>
<?php
session_start();
if (!isset($_SESSION['user_id']) || $_SESSION['user_type'] !== 'client') {
die("Access denied! Only clients can post jobs.");
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Post a Job - fundihire</title>
61 | P a g e
<link rel="stylesheet" href="style.css">
</head>
<body>
<header>
<nav>
<div class="logo">FundiHire</div>
<ul>
<li><a href="index.php">Home</a></li>
<li><a href="post_job.php">Post a Job</a></li>
<li><a href="logout.php">Logout</a></li>
</ul>
</nav>
</header>
<section class="post-job-section">
<div class="container">
<h2>Post a Job</h2>
<form action="process_post_job.php" method="POST">
<label for="title">Job Title:</label>
<input type="text" id="title" name="title" required>
<label for="location">Location:</label>
<input type="text" id="location" name="location" required>
<label for="category">Category:</label>
<select id="category" name="category" required>
<option value="Plumbing">Plumbing</option>
<option value="Electrical">Electrical</option>
62 | P a g e
<option value="Carpentry">Carpentry</option>
<option value="Masonry">Masonry</option>
<option value="Painting">Painting</option>
</select>
<label for="deadline">Deadline:</label>
<input type="date" id="deadline" name="deadline" required>
63 | P a g e
<li class="feature">Access to basic features</li>
<li class="feature">Connect with clients</li>
<li class="feature">Basic profile customization</li>
<li class="feature">Email support</li>
</ul>
<button class="select-btn" data-amount="1000">Select Plan</button>
</div>
64 | P a g e
</svg>
Back to plans
</button>
<h2 class="form-title">Complete Your Payment</h2>
<form method="post">
<div class="form-group">
<label for="phone" class="form-label">Phone Number</label>
<input type="text" id="phone" name="phone" class="form-control"
placeholder="Enter phone number (e.g. 2547XXXXXXXX)" required>
</div>
<input type="hidden" id="amountInput" name="amount" value="<?php echo
$selectedAmount; ?>">
<button type="submit" class="submit-btn">Pay Now</button>
<?php
session_start();
// Database connection
$host = "localhost";
65 | P a g e
$user = "root";
$password = "";
$database = "fundihire";
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$login_message = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$email = mysqli_real_escape_string($conn, $_POST['email']);
$password = $_POST['password'];
$user_type = $_POST['user_type'];
66 | P a g e
Register short code
<?php
session_start();
// Database connection
$host = "localhost";
$user = "root";
$password = "";
$database = "fundihire";
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$register_message = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$name = $conn->real_escape_string($_POST['name']);
$email = $conn->real_escape_string($_POST['email']);
$phone = $conn->real_escape_string($_POST['phone']);
$password = password_hash($_POST['password'], PASSWORD_DEFAULT);
$user_type = $_POST['user_type'];
67 | P a g e
$checkEmail->store_result();
if ($checkEmail->num_rows > 0) {
$register_message = "Email already registered!";
$checkEmail->close();
} else {
$checkEmail->close();
if ($user_type == "fundi") {
$skills = $conn->real_escape_string($_POST['skills']);
$sql = "INSERT INTO users (name, email, phone, password, user_type, skills) VALUES
(?, ?, ?, ?, ?, ?)";
$stmt = $conn->prepare($sql);
$stmt->bind_param("ssssss", $name, $email, $phone, $password, $user_type, $skills);
} else {
$sql = "INSERT INTO users (name, email, phone, password, user_type) VALUES
(?, ?, ?, ?, ?)";
$stmt = $conn->prepare($sql);
$stmt->bind_param("sssss", $name, $email, $phone, $password, $user_type);
}
if ($stmt->execute()) {
echo "<script>alert('Registration successful! Please login.');
window.location.href='login.php';</script>";
exit();
} else {
$register_message = "Error: " . $stmt->error;
}
$stmt->close();
}
68 | P a g e
69 | P a g e