You are on page 1of 41

DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

REPUBLIQUE DU CAMEROUN REPUBLIC OF CAMEROON


************** **************
Paix – Travail - Patrie Peace – Work - Fatherland

************ **********
MINISTERE DE L’ENSEIGNEMENT MINISTRY OF HIGHER
SUPERIEUR EDUCATION

INTERNSHIP REPPORT

THEME: DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULING SYSTEM

Carried out at LAB2VIEW, Douala

From 08 June to 10 August 2023

Supervised by:

Name of professional supervisor: Name of academic supervisor:

Mr. TOKAM William Mr. NOUPIONGA Yann


Project management manager Professor

Written by: CHIME PASCALE KELLYANE Student in 2nd year software engineering
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

DECLARATION
This is to certify that this Thesis entitled Design and Implementation of an Online Appointment
Scheduling System, which was written by CHIME PASCALE KELLYANE in partial fulfilment
of the requirement for the Higher National Diploma(HND) in Software engineering to the
Department of Engineering, Siantou University, Yaounde.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

CERTIFICATION
This piece of work carried out by CHIME PASCALE KELLYANE at Lab2View meets the
requirements and regulation governing the awards of the Higher National Diploma(HND) in
Software engineering.
Approved by:
Professional Supervisor:
Signature: _____________________________________________________________________
Academic Supervisor:
Signature: _____________________________________________________________________
President of Jury:
Signature: _____________________________________________________________________
Member of Jury 1:
Signature: _____________________________________________________________________
Member of Jury 2:
Signature: _____________________________________________________________________
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

DEDICATION
I dedicate this work to my great family, and my parents TSIEJIEP EVELYNE MIREILLE and LONGANG
HUBERT.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

ACKNOWLEDGMENT
This work would never have been possible without the precious help and infallible support of
certain people. My gratitude to them translate into sincere thanks particularly to:

-Mr. TEMEZING ZAMO Ornel, the General Director for allowing us to join their staff
during these 2 months;
-Mr. TCHANKEU Rodolphe, Technical Director for his follow-up and valuable advices;

-Mr. TOKAM William, our internship tutor for his patience and availability, his support
and valuable advices, his follow-up and the interest based on the work we realized;

-Mr. NOMO Joseph, for his follow-up, his availability, the good advices and the various
good practices and the techniques acquired;
-ALL LAB2VIEW staff members of the company for their welcome, their availability,
their general good humor and the experiences shared throughout this internship period;

-My dear parents LONGANG Hubert & TSEJIEP Evelyne, for the sacrifices made, the
trust and support during this period of internship and training;

-And finally, my sincere thanks to all the people who directly or indirectly contributed to
the success of this work.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

ABSTRACTION
The appointment scheduling system is an automated software solution that streamlines the
process of managing and booking appointments between patients and healthcare providers. It
abstracts the complexities of manual appointment scheduling by providing a user-friendly
interface for patients and hospital staff.

At its core, the appointment scheduling system abstracts the underlying complexities of
appointment management, such as maintaining appointment records, availability of healthcare
providers, and allocation of resources. It operates on the principle of simplifying the appointment
booking process for patients while ensuring efficient scheduling and resource allocation for the
hospital.
From the patient's perspective, the system abstracts the need for physical visits or phone calls to
schedule appointments. Patients can access the system through a web-based interface or mobile
application, where they can register, search for available healthcare providers, select suitable time
slots, and book appointments. The system abstracts the intricacies of checking availability,
eliminating the need for patients to manually coordinate with healthcare providers or hospital
staff.

For hospital staff, the system abstracts the complexities of manual record-keeping, resource
allocation, and scheduling conflicts. Staff members can access a dedicated dashboard that
provides an overview of appointments, facilitates resource allocation, and generates reports. The
system abstracts the manual effort required to manage appointments, allowing staff to focus on
other critical tasks.
The appointment scheduling system also abstracts the process of sending reminders to patients.
Through automated notifications, such as email or SMS, patients receive reminders about
upcoming appointments, reducing the likelihood of missed appointments and improving overall
patient adherence to scheduled visits.

By abstracting the complexities of appointment scheduling, the system provides a seamless and
convenient experience for both patients and hospital staff. It minimizes errors, reduces waiting
times, and enhances overall hospital efficiency. The abstraction layer simplifies the interaction
between patients, healthcare providers, and hospital staff, improving the quality of care and
patient satisfaction.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

Resume
Le système de prise de rendez-vous est une solution logicielle automatisée qui rationalise le
processus de gestion et de prise de rendez-vous entre les patients et les prestataires de soins de
santé. Il élimine les complexités de la planification manuelle des rendez-vous en fournissant une
interface conviviale pour les patients et le personnel hospitalier.
À la base, le système de planification de rendez-vous fait abstraction des complexités sous-
jacentes à la gestion des rendez-vous, telles que la tenue des dossiers de rendez-vous, la
disponibilité des prestataires de soins de santé et l'allocation des ressources. Il fonctionne sur le
principe de simplifier le processus de prise de rendez-vous pour les patients tout en garantissant
une planification et une allocation efficaces des ressources pour l'hôpital.
Du point de vue du patient, le système élimine le besoin de visites physiques ou d'appels
téléphoniques pour planifier des rendez-vous. Les patients peuvent accéder au système via une
interface Web ou une application mobile, où ils peuvent s'inscrire, rechercher des prestataires de
soins de santé disponibles, sélectionner des plages horaires appropriées et prendre rendez-vous.
Le système élimine les subtilités de la vérification de la disponibilité, éliminant ainsi le besoin
pour les patients de se coordonner manuellement avec les prestataires de soins de santé ou le
personnel hospitalier.
Pour le personnel hospitalier, le système élimine les complexités de la tenue manuelle des
dossiers, de l'allocation des ressources et des conflits d'horaire. Les membres du personnel
peuvent accéder à un tableau de bord dédié qui fournit un aperçu des rendez-vous, facilite
l'allocation des ressources et génère des rapports. Le système élimine l'effort manuel requis pour
gérer les rendez-vous, permettant au personnel de se concentrer sur d'autres tâches critiques.
Le système de planification de rendez-vous gère également le processus d’envoi de rappels aux
patients. Grâce à des notifications automatisées, telles que des e-mails ou des SMS, les patients
reçoivent des rappels sur les rendez-vous à venir, réduisant ainsi le risque de rendez-vous
manqués et améliorant l'adhésion globale des patients aux visites programmées.
En éliminant les complexités de la planification des rendez-vous, le système offre une expérience
transparente et pratique aux patients et au personnel hospitalier. Il minimise les erreurs, réduit les
temps d’attente et améliore l’efficacité globale de l’hôpital. La couche d'abstraction simplifie
l'interaction entre les patients, les prestataires de soins de santé et le personnel hospitalier,
améliorant ainsi la qualité des soins et la satisfaction des patients.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

Table of content
ACKNOLEDGMENT

SUMMARY

LIST OF ACRONYMS

LIST OF FIGURES

LIST OF TABLES

CHAPTER I- PRESENTATION OF THE COMPANY ................................ Erreur ! Signet non défini.


1. IDENTIFICATION SHEET .............................................................................. Erreur ! Signet non défini.
2. OBJECTIVES & SERVICES .......................................................................... Erreur ! Signet non défini.
3. ORGANISATION......................................................................................... Erreur ! Signet non défini.
CHAPTERII- PRESENTATION OF PROJECT ............................................ Erreur ! Signet non défini.
1- ANALYSIS ........................................................................................... Erreur ! Signet non défini.
a. SystemContext & Problem.................................................................. Erreur ! Signet non défini.
b. Study of existing .............................................................................. Erreur ! Signet non défini.
c. Apports de l’Application.................................................................... Erreur ! Signet non défini.
d. Realization constraints ....................................................................... Erreur ! Signet non défini.
2- ORGANIZATION AND MANAGEMENT OF PROJET ........................ Erreur ! Signet non défini.
a. Methods of managing the project ........................................................ Erreur ! Signet non défini.
b. Plannification ..................................................................................... Erreur ! Signet non défini.
3- ANALYSIS AND CONCEPTION ......................................................... Erreur ! Signet non défini.
a. Study of Needs ................................................................................... Erreur ! Signet non défini.
b. UML Diagrams .................................................................................. Erreur ! Signet non défini.
c. DataBase Conception.......................................................................... Erreur ! Signet non défini.
4- TECHNICAL APPROCH ...................................................................... Erreur ! Signet non défini.
a. Programming Languages .................................................................... Erreur ! Signet non défini.
b. Framework ........................................................................................ Erreur ! Signet non défini.
c. DataBase .......................................................................................... Erreur ! Signet non défini.
d. Software used ..................................................................................... Erreur ! Signet non défini.
CHAPTER III- REALISATION OF PROJET............................................. Erreur ! Signet non défini.
a. Appointment management .................................................................. Erreur ! Signet non défini.
b. Fonctionnalities Developed ............................................................... Erreur ! Signet non défini.
c. Graphic Interfaces .............................................................................. Erreur ! Signet non défini.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

LIST OF TABLES
Table 1 : Identification sheet of LAB2VIEW
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

CHAPTER I
In this chapter, we will be Introducing the research and its project. We will talk about the history of
Lab2View. This chapter also expose the necessity of this study, research objectives, questions and
significance.

Background of the study


Problem statement
The problem that the appointment scheduling system for hospitals aims to address is the
inefficiency and challenges associated with manual appointment scheduling processes. In
traditional manual scheduling systems, hospitals often face scheduling conflicts, long waiting
times for patients, inefficient resource allocation, and difficulties in managing and organizing
patient appointments. These issues can lead to decreased patient satisfaction, increased
administrative burden, and suboptimal utilization of healthcare resources.

Manual scheduling processes rely on paper-based or outdated systems, which can result in errors,
miscommunication, and delays. Schedulers often struggle to coordinate and optimize the
allocation of available resources, such as doctors, nurses, and examination rooms, leading to
inefficiencies and longer waiting times for patients. Additionally, manual processes make it
challenging to track and manage changes in appointments, resulting in confusion and scheduling
conflicts.

Moreover, manual appointment scheduling systems lack real-time visibility into scheduling data,
making it difficult for hospital staff to access up-to-date information and respond promptly to
changes or emergencies. This lack of visibility can hinder effective coordination and decision-
making, impacting patient care and overall operational efficiency. The problem definition
establishes the need for an automated appointment scheduling system that can streamline the
scheduling process, optimize resource allocation, reduce waiting times, enhance communication
and coordination among hospital staff, and improve the overall patient experience. By addressing
these challenges, the appointment scheduling system aims to improve operational efficiency,
increase patient satisfaction, and maximize the utilization of healthcare resources in hospitals.

Research questions:
The following research questions can guide the investigation and development of an online
appointment scheduling system:

1. What are the specific requirements and preferences of patients when it comes to scheduling
appointments in a healthcare?

2. What are the key challenges and limitations of the current manual appointment booking
process in terms of efficiency, resource allocation, and patient satisfaction?
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

3. What are the essential features and functionalities that should be incorporated into the online
appointment scheduling system to address the identified challenges and meet the needs of
healthcare?
4. How can the online appointment scheduling system optimize resource allocation, including
healthcare providers' time to improve operational efficiency?
5. How can the online appointment scheduling system minimize scheduling conflicts, double
bookings, and appointment delays while ensuring real-time availability and visibility?

6. What are the most effective methods and channels for implementing appointment reminders
and notifications to reduce no-show rates and improve patient attendance?

7. What security measures and protocols should be implemented to protect patient data and
ensure compliance with healthcare regulations?

8. What are the potential benefits and challenges associated with the implementation of an online
appointment scheduling system, and how can these be effectively addressed?
These research questions serve as a foundation for investigating the specific aspects and
requirements of an online appointment scheduling system in a health care center. They help
identify areas of focus and guide the research and development process to ensure the system's
effectiveness, usability, and alignment with the goals and needs of health care center.

Objectives
The objectives of the appointment scheduling system for hospitals are as follows:

Main objectives
The main objective of the study was to design an online Scheduling appointment system that
eliminates patient waiting time by organizing activities and allocating task in various section of
the hospital.

SPECIFIC OBJECTIVES
Improve Appointment Scheduling Efficiency: The primary objective is to streamline the
appointment scheduling process, eliminating manual inefficiencies and reducing the time and
effort required to schedule appointments. The system should provide a user-friendly interface that
allows for quick and accurate appointment booking, rescheduling, and cancellation.

Reduce Waiting Times: By optimizing resource allocation and scheduling, the system aims to
minimize patient waiting times. It should intelligently assign appointments to available healthcare
providers, ensuring efficient utilization of resources and reducing patient wait times for
consultations, tests, and procedures.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

Increase Patient Satisfaction: The appointment scheduling system should prioritize patient
satisfaction by offering convenient and flexible scheduling options. It should provide patients
with the ability to easily book, reschedule, or cancel appointments through various channels such
as online portals, mobile applications, or phone calls. Additionally, the system should send
automated reminders and notifications to patients, reducing no-show rates and enhancing patient
engagement.
Streamline Administrative Workflows: The system should automate administrative tasks
associated with appointment scheduling, such as managing patient records, generating
appointment summaries, and facilitating communication between hospital staff and patients. By
streamlining these workflows, the system aims to reduce administrative burden, improve
accuracy, and enhance overall productivity.
Improve Data Accessibility and Reporting: The appointment scheduling system should
provide real-time visibility into scheduling data, allowing hospital staff to access up-to-date
information and make informed decisions. It should generate comprehensive reports and
analytics on appointment volumes, resource utilization, wait times, and other key performance
indicators. These insights can support data-driven decision-making, process improvements, and
resource planning.
By achieving these objectives, the appointment scheduling system aims to enhance the overall
efficiency of the scheduling process, reduce waiting times, optimize resource utilization, increase
patient satisfaction, streamline administrative workflows, improve data accessibility, and
facilitate integration with existing hospital systems.

SIGNIFICANCE OF THE STUDY


Improvements in doctor’s productivity where by the doctors are more effective on their duties
and enable the doctors to work for more hours to the patient. Reduced patient waiting time where
a lot of time is wasted when waiting for the doctor. Accuracy and timeliness of data the system
make sure that all the data are kept well and in a secured way as well as be able to retrieve data
when needed. This study is significant to the doctor, patient, nurses and the management of the
hospitals in that it is in intended to improve the management and services of the hospital thus
help to attain its set plans by eliminating poor storage method that was consuming a lot of space.

The scope and limitations of the study


Scope of the study:
The system scope defines the boundaries and limitations of the appointment scheduling system. It
outlines the specific functionalities and features that the system will encompass. The system
scope may include the following components:

Appointment Booking: The system should provide a user-friendly interface for patients to
schedule appointments. It should allow patients to select preferred dates, times, and healthcare
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

providers based on availability and specialty. The system should also factor in any specific
requirements or preferences specified by the patients, such as language preference or accessibility
needs.
Appointment Rescheduling and Cancellation: The system should support the rescheduling and
cancellation of appointments. It should allow patients to modify their existing appointments
based on availability and personal circumstances. The system should notify relevant parties, such
as healthcare providers and administrative staff, about any changes to the appointment schedule.
Automated Notifications: The system should send automated reminders and notifications to
patients regarding their upcoming appointments. These notifications can be delivered through
various channels such as email, SMS, or mobile app notifications. The system should also send
notifications to healthcare providers and staff regarding changes or cancellations made by
patients.

Patient Records Management: The system may include functionality to manage patient records
related to appointments. It should store essential patient information, including personal details,
medical history, and previous appointments. The system should ensure the security and privacy
of patient data, adhering to relevant regulations and standards.

User Roles and Permissions: The system should support different user roles and permissions to
ensure appropriate access and functionality for different stakeholders. This may include roles
such as patients, healthcare providers, and system administrators. Each user role should have
specific privileges and restrictions based on their responsibilities and requirements.
It's important to note that the system scope may vary depending on the specific requirements and
goals of the hospital. Additional features and functionalities can be incorporated based on the
unique needs of the organization. The system scope serves as a foundation for the development
and implementation of the appointment scheduling system, providing a clear understanding of the
system's boundaries and the functionalities it will offer.

Limitations of the study


While conducting the study on the design and implementation of an online appointment
scheduling system, the following limitations were found:
1. Generalizability: The study's findings and recommendations may be specific to the context of
the health center and may not be directly applicable to other healthcare settings or clinics with
different operational structures, resource availability, or patient demographics. The system's
effectiveness and usability may vary based on the unique characteristics of each healthcare
facility.
2. Implementation Constraints: The study may not address all potential technical, financial, and
logistical constraints associated with the implementation of the online appointment scheduling
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

system. Factors such as budget limitations, infrastructure requirements, and compatibility with
existing systems may pose challenges during the actual implementation process.
3. User Acceptance and Adoption: The study may not extensively evaluate user acceptance and
adoption of the online appointment scheduling system. While the system may be designed to
be user-friendly, factors such as user training, resistance to change, or varying levels of
technology literacy among patients and clinic staff can impact the system's acceptance and
adoption.
4. External Dependencies: The study assumes that the success of the online appointment
scheduling system relies solely on the system's design and implementation. However, the
effectiveness of the system may also depend on external factors such as reliable internet
connectivity, availability of technical support, or third-party integrations, which are beyond the
control of the study.
5. Time Constraints: The study's scope and duration may impose time constraints on conducting
a comprehensive evaluation of the system's long-term impact and scalability. Long-term
monitoring and evaluation of the system's performance, user feedback, and potential system
enhancements may require additional research beyond the study's timeframe.
6. Security and Privacy Considerations: While the study acknowledges the importance of data
security and privacy, it may not comprehensively address all potential security vulnerabilities or
privacy concerns associated with the online appointment scheduling system. To ensure robust
security measures and compliance with regulations, a thorough assessment and ongoing
monitoring may be necessary.
It is important to recognize these limitations to provide a realistic understanding of the study's
scope and potential challenges associated with the design and implementation of an online
appointment scheduling system.
PRESENTATION OF THE ENTERPRICE
INTRODUCTION
RECIEVINGS AND INTEGRATION
A warm welcome was given to us by Mr. William, Lab2View project manager on Thursday, 8
June, 2023 at 8:00 a.m. As soon as we arrived, he talked to us about how we should work during
the internship period. He introduced us to all the other interns as well as the Lab2View staff. We
therefore had the opportunity to visit the premises with a fairly detailed presentation of the
working environment. We also talked about our theoretical and practical knowledge, which
allowed us to define a certain number of rules to follow for the smooth running of our
internship. At the end of the interview, he insisted on our moral behavior as well as our know-
how and good manners in society and in business. The next few days consisted of organizing our
work.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

INTEGRATION
Once welcomed, we integrated the members of the structure in complete peace and in good
conditions and with a view to the theme we chose, we were assigned to the projects division to
benefit from the tools and supervision necessary for the realization of our project.
PRESENTATION OF THE STRUCTURE
HISTORY
LAB2VIEW is a Cameroonian IT company, founded in May 2019, it is located in DOUALA
more precisely in AKWA-NORD BONAMOUSSADI says “Sable” opposite “SERENA
PALACE”. His identity card is as follows:

Table 1: Lab2view identification sheet


LAB2VIEW

Company logo

Figure 1: Company’s logo

Company status SARL Pluri-personal

Capital 995 000 (nine hundred and ninety five thousand


)XAF
Email Lab2view@gmail.com

Telephone +237 6 94 82 48 21

Box 7163 Douala

Location AKWA-NORD Bonamoussadi

Geolocation coordinates Longitude :9.7238815


Latitude :4.0847293

Effective Total 10 + employee(s)


DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

A. Purposes & Services


Lab2view has set itself the following objectives:

 To ensure quality digital service delivery.


 To promote innovative services thanks to new existing technologies;
Lab2view offers services like:

- Software and web development: it develops reliable and secure software and web
applications in accordance with the customer’s needs; it uses languages like PHP, Python,
java, frameworks: symphony, Laravel, Django, etc.
- Computer graphics: It has a team for the production of multiple promotion posters, logos
and even web design.

B. Organization
The company is organized as follows:
i. Managing Director: its current occupant is Mr. TEMEZING ZAMO Ornel, he is
responsible for general management supervision of contracts and partnerships.
ii. Technical Director: Mr. TCHANKEU Rodolphe, he is responsible for the
technical processes aimed at ensuring the sustainability of solution produced by
the company.
iii. General Affairs Assistant: Mr. MEKONTSO NDE Ernest, his role is to assist all
the event of unavailability.
iv. Project Manager: Mr. TOKAM William, who is in charge of monitoring,
management and project management.
v. Assistant in charge of Human Resources: Mrs. MAGNE Marcelle
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

C. Hierachical organigram

Managing Director

Technical

Figure 2: Hierarchical organization of Lab2View

D. Geographical location

Figure 3: Geographical location of the enterprise


DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

CHAPTER II

LITERATURE REVIEW

2.0 Introduction
The purpose of this chapter is to review both theoretical and empirical fact about the subject matter
under the study as put forward by various authors, magazines, journals, textbooks website and
electronic materials about the subject area of study.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

CHAPTER III

ANALYSIS AND DESIGN


Like any type of project, an IT project requires an analysis phase, followed by a design stage.
In the design phase, we add more details to the solution and we seek to clarify technical aspects,
such as the installation of the different software parts and the modeling of user needs.
ANALYSIS

a) Study of the existing

Within the internal medicine department, when a patient needs an appointment he presents
himself to the hospital, there he is admitted by the secretary. The latter enters all the information
concerning his marital status into his register. If the patient is coming for a consultation for the
first time, the secretary sets up a appointment for him, which she notes in her diary.

Indeed, these mode of operation are effective but remain archaic in the face of new technologies
that we can use for more spontaneity, gain and scalability.

b) Contribution of the application

Once the application is in place, its challenges will be:

- Allow patients to make appointments with doctors available on our site.


- Provide doctors with the possibility of managing their working time online.
- Provide a private space for managers(Admin) to manage physicians and their specialties
to prevent confusion.
c) Realization constraints

We have identified some implementation constraints such as:

- Handling new technologies


- Familiarization with tools: The feature system will allow users to quickly became familiar
with its interface because it is designed in a logical and comprehensive way. Its use will
not necessarily require good computer skills but may require training on the software.
- The Deadline: the time of realization extends over 02months.

Internship activities
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

In order to bring this project to fruition, we organized the project as following:

Project management methods:

We did not use a particular management method, the supervision of the evolution of our project
was carried out face-to-face via;

 Morning meetings: during which we establish daily objectives to be achieved and a


summary of the progress of the previous day.
 Reports at the end of the day: at the end of each day a debriefing session was scheduled
with the supervisor and his colleagues, during it, they checked whether the objectives had
been achieved, provided criticism and any ideas for improvement.

In order to be able to progress the project, we used a few tools to establish a communication plan.
They are among others: emails, WhatsApp, GitHub.

1. Planning
We have a produced schedule under the Gantt tool in order to better take into account the
intensity of the loads and the work to be adopted during the realization of this project.
- Provisional Planning
During the development of the project specifications, we carried out a schedule of the progress of
the project over the 02 months:

Figure 4: Provisional planning

- Real Planning
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

Figure 5: Real planning

Design
DEFINITION OF UNIFIED PROCESS UP
The “UP” method: UP or “unified process” is a development process iterative software focused
on the architect, driven by use cases and oriented towards reduction of risks. It is a process
pattern that can be adapted to a large class of software systems, to different fields of application,
different types of companies, different skill levels and company sizes.

Figure 6: Unified process

Characteristics of the unified process


DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

UP is progressive and iterative: the project is divided into iterations, or short stages, so that
overall progress can be tracked more easily. A part of the final procedure that can be executed is
built incrementally at the end of each iteration (by addition).
SSUP focuses on architecture: to facilitate maintenance and development, any complicated
system must be divided into modular sections. This architecture (functional, logical, hardware,
etc.) must be modeled in UML rather than simply saved as text.
Use cases in the UML UP guide: The primary goal of a system IT is to satisfy the needs of its
users. User needs final are illustrated by the use cases. They define and distinguish requirements
functionalities and their interaction. Therefore, the use case model is that which defines all
system functions.
The UP is driven by risk: the main dangers of the project must be recognized as soon as possible,
but above all, eliminated as soon as possible. The order of iterations is determined by the
measurements to be made in this context.

1. UML
1. Interest in modeling
Modeling means describing in a visual and graphic way the needs and the functional and
technical solutions of our software project. The example that we can take is that of building a
house. If we made the plan of the house textually it would be difficult to understand and would
not motivate the reader because of its length. This is why the engineers thought of doing it
graphically. This is exactly what UML is used for in software development projects!

A text document describing precisely what must be accomplished would contain several dozen
pages. In general, few people want to read this kind of document. In addition, a long text of
several pages is a source of interpretation and misunderstanding. UML helps us to make this
description graphically and then becomes an excellent way to visualize future software.
Software that was created without analysis and design (stages where the future software is
modeled) also risks not meeting needs, containing anomalies and being very difficult to maintain.

2. Presentation of the UML language


To deal with the complexity of information systems, new methods and tools have been created.
The main progress of the last fifteen years lies in object-oriented programming.
Faced with this new mode of programming, classic modeling methods (such as MERISE) quickly
showed certain limits and had to adapt.
Many modeling methods have also emerged such as Booch, OMT, etc.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

In this context and given the proliferation of new object-oriented design methods, the OMG
(Object Management Group) aimed to define a standard notation that can be used in object-based
IT developments. This is how UML (which means unified modeling language) appeared, which
resulted from the fusion of the methods of Booch, OMT and OOSE. It is a modeling language
that allows user needs to be graphically represented using diagrams.
A UML diagram is a graphical representation, which focuses on a specific aspect of the model.
This is a perspective of the model, not “the model”. Each type of UML diagram has a structure.

Figure 4. The different UML diagrams

There are two types of system views constituting each of the diagrams which are divided
according to their static or dynamic aspects.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

According to the static views that is structural diagrams we have:


 The use case diagram

The use case diagram helps structure user needs and the corresponding goals of a system. It will
try to answer questions like: Who should be able to do what using the software.

The main actors who are linked to a package will need this part of the software to carry out
several batches of actions.
 The object diagram

The object diagram is used to illustrate complex classes using example instances2(*). With the
exception of multiplicity, which is explicitly stated, the object diagram uses the same concepts as
the class diagram. They are mainly used to understand or illustrate complex parts of a class
diagram.
 The class diagram

The class diagram represents the entities manipulated by users. The interest of the class diagram
is to model the entities of the information system. The diagram highlights possible relationships
between classes or entities.
 The components diagram
The component diagram describes all the components useful for running the system (application,
libraries, database instances, executables, etc.).
Generally, they are only used for complex systems.
 The deployment diagram

Deployment diagrams correspond to the description of the system execution environment


(hardware, network, etc.) and how the components are installed there. Deployment diagrams are
therefore very useful for modeling the physical architecture. of a system.
According to the dynamic views that is behavioral diagrams we have:
 The collaboration diagram

The collaboration diagram (also called communication diagram) allows you to highlight the
exchange of messages between objects. This helps us see clearly the actions that are necessary to
produce these message exchanges. And therefore to complete, if necessary, the sequence and
class diagrams.
 The sequence diagram
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

The sequence diagram allows you to describe the different usage scenarios of the system. It is a
variation of the collaboration diagram except that it intrinsically has a temporal dimension but
does not explicitly represent the links between objects.
 The state-transition diagram

The state-transition diagram allows you to describe the life cycle of objects in a class. It defines
the sequence of class states and therefore reveals the scheduling of work.
 The activity diagram

The activity diagram represents the progress of actions, without using objects. In the analysis
phase, it is used to consolidate the specifications of a use case.

Aware of the complementarity that exists between these different diagrams, and knowing that
UML does not recommend any approach, we considered it necessary to take only certain of these
diagrams which respond well to our needs in order to design our system.
However, the diagrams that will be used in the rest of our presentation are as follows:
- The use case diagram,
- The class diagram,
- And the sequence diagram

2. Design
3.1 Modeling tool

Visual Paradigm is an online diagramming tool for programming. It is capable of supporting


many business and technical diagrams like UML, BPMN, URD, DFD and SysML.
In the main window it is possible to display the diagram, its structure and the properties of the
object, each in a separate section. As for the supported diagram types, the program allows us to
create all types of UML diagrams.

It includes all related objects that we can access in a dedicated toolbar, regardless of the
supported type. This includes various images, shapes and blocks of text that we can insert and
organize in our projects using the built-in collection of alignment options.
In addition, it is possible to change the display order of these elements, as well as to customize
the color of each element of the diagrams.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

3.2 Modeling with the use case diagram


A list of use cases, participants and their relationships is represented by a use case diagram. They
describe the visible static use cases of a system and are particularly useful for organizing and modeling
behaviors system. Invalid source specified.

Use cases: define activity in the form of actions and responses, or simply what is happening. The use
case diagram describes all system functions. It also allows each actor to fulfill their requirements
professionals.

Actors: the actor represents a coherent set of roles that users of use cases play into the interaction with
these cases. Typically, an actor plays a role that a man, a machine or possibly another system interacting
with the modeled system. There are four main types of actors:

- main actors.
- secondary actors.
- external hardware.
- Interactions of the system with other systems.

Relationships between use cases: The UML approach describes three different types of structured
relationships between use cases, which are listed below:

The inclusion relationship: The main use case cannot be done only by specifying another use case in a
mandatory manner. This dependence is symbolized by the stereotype << include >>

The extension relationship: a basic use case includes specifically another use case, optionally,
represented by the keyword "extend".

The relation of generalization or specialization: a case of use can inherit from another use case.

The different needs expressed by users are materialized by the diagram below, which at the same
time materializes their interactions with the system.

Identification of actors
The main profiles that must use the system are:

Patient: Create an account, authenticate with the system, make an appointment, manage your
appointment, contact the system administrator.

Doctor: Register in the system, authenticate with the system, modify your account, cancel a
schedule, manage your specialty, consult appointments.
Admin: Authenticate to the system, manage patients, manage
doctors, Manage specialties,
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

Figure 7:Overall System Use Case Diagram

3.3 Description and representation of scenarios


In this section we will define the word scenarios and develop descriptive sheets.
Definition of the word scenario
A scenario describes a particular execution of a use case from start to finish.

It corresponds to a sequence of actions in the use case, ending with a normal end or not
(exception or error).

In general, it is not possible to describe all scenarios of a use case. It will be necessary to choose
the main nominal scenarios (those which are frequent) and a few exceptional scenarios.

Description of interactions
Authenticate:
The user must authenticate with a username and password to
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

confirm their personal information. The patient must complete a form after visited the
application, the form is used to register it in our database. And only one authentication is
required. The username and password are sent to the patient. To establish the link with the app.
Using their email as their username.

Make an appointment:
To make an appointment with a doctor first, the patient must log in to the system. and choose the
desired date and time, taking into account the work schedule of the doctor. The appointment will
be automatically documented in the database, with all relevant information.

Manage appointments:
The patient has the right to cancel from the specified date. To confirm the cancellation, they
receive a cancellation message. We will try to contact patients who have requested this date after
the patient canceled the appointment. The verified appointment will be taken directly by the first
person to take our call.

He can also change the time, date of his appointment, and the system will check if changes are
possible (date, time, free doctor), and only then whether he will have the opportunity to make an
exchange or not.

Manage specialties:
The system is allowed to confirm the doctor's further specialization of new specialties for doctors
are being introduced throughout the system. After the administration decides to accept or reject
the major.
Finally, the administrator asks for system records details.

Modelling with Sequence diagram


Sequence diagrams are used to show temporal interactions between the actors and the system
according to a chronological order in the formulation Source specified invalid.
Sequence diagrams contain:

The object: the object of a sequence diagram is a concrete manifestation of an abstraction to


which a series of operations can be applied and which has a state capable of memorizing the
results of these operations. The name of an entity is underlined to reflect it.
The relationship: is a semantic link between objects, or an association in general. There will
have a connection between instances of two classes if one class is connected to another by an
interaction, and whenever a relationship exists between two objects, the first object can send a
message to the second.
Message: is the specification of a correspondence between objects that conveys information and
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

is displayed in order to initiate an action. Receiving a message instance can be called an instance
of an occurrence.

Authentication:
Below is the authentication diagram of a patient and a doctor:

Figure 8: Sequence diagram for authentication

Book an appointment:
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

Figure 9: Booking Sequence Diagram

Manage appointment: Edit an appointment following the reservation, the patient has the
possibility to modify the appointment, which is illustrated in the diagram below.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

Figure 10: Manage appointment

Modelling with class diagram:


It is a diagram that shows a collection of static elements (classes), their content and the
relationships between them, in analysis, the class diagram represents the structure of
information manipulated by users. In design, it represents the structure of object-oriented code.
Invalid source specified.
The following elements are commonly found in class diagrams:
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

A class: is a classification of a group of objects which have the same attributes, operations,
relationships and semantics, a rectangle is used to represent a class.
Attribute: A named property of a class that defines a collection of values that instances of this
property can take is called an attribute. A class can have one or more attributes, but it can also
have none.
Operation: an operation is a representation of what an object can do and what all objects in the
class can do. Since a class can have several operations, she may not have any.
Relations between aggregation and composition:
A semantic relationship between two groups is represented by an association. A containment
relation is expressed by an aggregation, which is a non-symmetric relationship.
A composition is a more efficient form of aggregation.
The classes on which our system focuses are as follows:
- Doctor
- Patient
- Appointment
- Schedule
- Specialty
- User
- Admin
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

Figure 11: Class diagram

Dictionary of class and attributes

Classes Attribute Method

Field Type

Patient ID INT Authenticate();


name Character To book() ;
address Character To modify() ;
contact_no Character Cancel() ;
date_create Date
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

Doctor ID INT Authenticate();


name Character consultRDV();
clinic_addresses Character to modify() ;
contact Character
E-mail Character
specialty_id INT
dat_create date

Appointment ID INT To book() ;


id_medcin INT To modify() ;
patient_id INT Cancel() ;
specialty_id INT
date_create Date

Specialty ID INT
Name Character

Schedule ID INT To modify()


Date Date Add()
Hour Character
Time INT
Doctor_id Character

User ID INT Login()


Name Character Signout()
email Character
Password Character
DOB Character
Tel Character
Gender Character
address Character
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

Rules for moving from object-oriented to relational


In order to implement the database on a relational DBMS, the passage of DCL object model to
relational model is performed. Since DBMS does not have still fully occupied the software
industry, the latter was most commonly used to implement databases.
We proceed as follows to go from an OO representation in DCL to relational model:
Any class will return a table including a key id along with attributes.

An association 1 --- *:
The attributes of each class are transformed into table attributes and the identifier of class is
transformed into a table key.

The identifier of the class to be exhausted 1 is inserted into the database of the class to exhaust
from multiple sources, replacing the association (this will be a key foreign).

An association * --- *:
Each class becomes a table, the class attributes become attributes of table and the class identifier
becomes the table key.

The association (which could be an association class) is replaced by a table with a key which is
the concatenation of the identifiers of the association.

Classes that participate The properties are added to the new table in the case of a class
association.

A 1--1 association:
Depending on the designer's usage point of view, there are several approaches to
implement:
Rule 1: Keep both classes and use two tables to implement them. Next, choose a table that will
use a foreign key to refer to the other. This comes down to preserving the most crucial aspect of
design: feel of association (navigability).

Leave a legacy: Inheritance requires a little more thought when selecting one of the three rules of
passage.

Rule 2: In terms of concept, child classes are more important than generic classes and serve as
information supports. For the benefit of girls' classes, the parent class has deteriorated. At the
child class level, all properties and operations of the parent class are reported.

Rule 3: Mother and daughter classes are also significant and should be preserved; inheritance is
therefore replaced by a 1 —1 connection, that's to say*.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

Then it was put into action. For each class, the identification must be verified. The passage of the
conceptual class model of the OOM, represented by the UML, DCL, to the relational logic
model, represented by a table structure, is far to be simple. It is a demonetization which requires
making decisions based on semantics and the possibility of using the data. The application
designer makes this decision.

Noticed:
A class that must not be implemented by the Abstract stereotype >> must be indicated on a DCL.

3.3.3 Relational diagram


The patient, doctor and appointment classes are the most necessary for the transport of operations
and data.
Patient(id, name, address, contact_no, date_create).
Doctor(id, name, address, contact, email, specialty_id,
dat_create).
Appointment(id, doctor_id, patient_id, specialty_id, date_create).
Specialty(id, name).
Schedule(id, date, hour, time, doctor_id).

Conclusion
In this chapter, we focused on the analytical parts and conceptual aspects of our system. The
conceptual phase is an important step in the execution of any project. We did this by defining the
use case and then translating to create the sequence diagram. Finally, the class diagram was
developed in order to construct the tables of the database.
The implementation of our system will be presented in the next chapter.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

CHAPTER IV: REALISATION OF THE PROJECT


1-Introduction
After a thorough review and design of our project, we programmed as much as possible using the
tools in a suitable environment. The main objective of this chapter is to show the work carried
out, this is the development phase of this application.
This chapter is composed of 3 parts, the first section covers the software resources used in
carrying out the project, the second section focuses on a brief presentation of the use and
processing of data via specific interfaces, finally we demonstrate the architecture of the database
modified by the application.
2-Development tools
i. WampServer
WampServer is a wamp-like web development environment that lets you allows you to run php
scripts locally (without having to connect to a server external). WampServer is not a program in
itself, but rather an environment that includes two servers (Apache and MySQL), a script
interpreter (PHP) and phpmyadmin for web administration of the MySQL database.

Figure : WampServer
ii. Visual Studio code
Visual Studio Code is a lightweight but powerful source code editor which runs on your desktop and is
available for Windows, macOS and Linux. It comes with built-in support for JavaScript, TypeScript and
Node.js and has a rich ecosystem of extensions for other languages and runtimes (such as C++, C#, Java,
Python, PHP, Go, .NET).

Figure : Visual studio code


3-The main technologies of a web application
As with websites, a web application is based on technologies essential for displaying pages, we
call them client languages which describe how the website should be displayed.

a. HTML
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

HTML is a computer language used on the internet. This language is used to create web pages.
The acronym stands for HyperText Markup Language. This meaning is aptly named since this
language actually makes it possible to create hypertext based on a markup structure.
Furthermore, HTML is not a programming language per se like C, C++, etc. but rather a language
that allows us to format content and navigate from one page to another in our modules via
hyperlinks.

b. CSS
The term CSS is the acronym in English for Cascading Style Sheets which can be translated as
“cascading style sheet”. CSS is a computer language used on the Internet to format HTML or
XML files.

c. Javascript
JavaScript is a language (more precisely object oriented) programming which allows you to
implement complex mechanisms on a web page. It is a mainly client-side language that makes
web pages dynamic and interactive.

d. PHP
A popular general-purpose scripting language that is especially suited to web development. Fast,
flexible and pragmatic, PHP powers everything from your blog to the most popular websites in
the world. It makes a page to be dynamic and interactive.

4- Presentation of the developed application


During this section we will try to give a general presentation of the application.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

This presentation will focus on the three types of user interfaces offered by our system.
Remember that a user interface is a specific part of the application intended for a user. This part
will allow him to interact with the system and take advantage of the different functionalities
offered to him.
A. Authentication page
The authentication page can be considered the main home page. This part of the application
allows different users to identify themselves using an email and a password in order to access
their graphic interface.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

CHAPTER FIVE
DISCUSSION, RECOMMENDATIONS AND CONCLUSION

5.0 Introduction
This chapter presents the recommendations and conclusion about the designed Online
Scheduling Appointment System.

5.1 Recommendations
The researcher recommends that the organization should update the system after every 3
months to ensure it is effectively running and cater for the adjustments due daily changes in
the nature of transactions.
The staff should also be trained on how to use the new system and a regular follow up done to
ensure they are familiar with it. Users of the system need to be thoroughly able to know how
the tool works. As the researcher recommend that all system requirements stated be
implemented for efficient operation of the system.

The organization should also ensure a backup is created periodically. To avoid loss during
disaster period.

The new system should adopt the use of more advanced Database Management Systems such
as Oracle, SQL et cetera which have unlimited capabilities unlike Microsoft Access Database
that may develop performance problems

5.3 Conclusion
The Online Scheduling Appointment System designed will fasten the process of treatment in
Mulago Hospital. This will benefit the organization by improving on its service delivery. It
should be noted that for a long time many clinics and hospitals have relied on manual
procedures in issuing medicine and treating patients, this has delayed the purpose sought for
the treatment and making it not serve the purpose. The designed online system will improve
the number of patients treated since the barriers and hindrances will be automated making the
whole process less time wasting.
DESIGN AND IMPLEMENTATION OF AN APPOINTMENT SCHEDULLING SYSTEM

You might also like