SlideShare a Scribd company logo
1 of 90
Download to read offline
Automated Doctor Appointment and Doctor Help
Management System
Submitted By
Shahrin Sultana
A PROJECT REPORT SUBMITTED IN PARTIAL FULFILMENT OF THE
REQUIREMENTS FOR THE DEGREE OF BACHELOR OF COMPUTER SCIENCE AND
ENGINEERING
Department of Computer Science and Engineering
International Islamic University Chittagong
May 2015
i
Automated Doctor Appointment and Doctor Help Management System
By
Shahrin Sultana C111230
PROJECT REPORT SUBMITTED FOR THE PARTIAL FULFILLMENT OF THE
REQUIREMENT FOR THE DEGREE OF B. SC. IN COMPUTER SCIENCE AND
ENGINEERING
Approved by:
______________________________________
Mohammad Aman Ullah Supervisor
Assistant Professor
Department of Computer Science & Engineering
International Islamic University Chittagong
__________________________________
Dr. Md. Monirul Islam Head
Associate Professor and Head
Department of Computer Science & Engineering
International Islamic University Chittagong
_______________________________________
Dr. Mohammad Shahadat Hossain External
Professor
Department of Computer Science & Engineering
University of Chittagong
ii
DECLARATION
This is to certify that the project entitled “Automated Doctor Appointment System and
Doctor Help Management System” done by Shahrin Sultana student of Bachelor in
Computer Science and Engineering at International Islamic University Chittagong under
the guidance of Mohammad Aman Ullah and Md. Azhar Uddin. The matter embodied in this
project has not been submitted earlier for the award of any degree or diploma to the best of my
knowledge and belief.
____________________________
Shahrin Sultana
iii
DEDICATION
This project is dedicated to
My Parents and Teachers
iv
ACKNOWLEDGEMENT
Words are not just enough to express my gratitude but I take this opportunity to express my
profound sense of gratitude and respect to all those who helped me throughout the duration of
this project. I acknowledge the effort of those who have contributed significantly to my project.
First of all I am very thankful to Allah for providing me such a great opportunity to do the
Project and also very thankful to my Parents for their regular support and guidance’s.
I feel privileged to offer my sincere thanks and deep sense of gratitude to my respected and
honorable Teacher Mohammad Aman Ullah, Supervisor, Md. Azhar Uddin, Co-supervisor,
for expressing Their confidence in me by letting me work on a project of this magnitude and
using latest technologies and providing Their support, help & encouragement in implementing
this project. It would never been possible to complete this complicated task without Their
continuous support, supervision and encouragement. In spite of very busy schedule He always
guided me properly. It was an exciting and enlightening experience for me doing my project
under His guidance and supervision.
Last but not the least, am grateful to all my friends for providing critical feedback & support
whenever required.
There are times in such projects when clock beats you time and you run out of energy, you just
want to finish it once and forever, Parents and Friends made me endure such times with their
unfailing humor & warm wishes.
v
ABSTRACT
The project entitled as “Automated Doctor Appointment and Doctor Help Management
System” is a web based application. It maintains records of patient, doctor, appointment and
schedule that occur at any of the medical center. It maintains two levels of users, administrator
level and user level. User level is divided into two, patient level and the doctor level. The
administrator level encompasses the hospital staffs, who maintain the appointment records. The
user level includes the patients, who take service from the hospital, and the doctors. The
administrators are able to perform operations on more sensitive and confidential documents
/modules that contain different information about doctors and patient to ensure confidentiality.
System enables registration of new patient at the user level. Doctors are registered by hospital
staff. From the account of user as patient, one can take appointment of a doctor; can see doctor
details and all his appointment date and time. Another extra facility one will get is that, he can
send message to a doctor about his sickness if he agrees prior and doctor can also reply it.
The current system is taking appointment of a doctor by phone call or taking serial directly from
the hospital. The proposed system has the following capabilities:-maintaining patient’s records,
registering new patients, records of appointments and easy future references. Users and
administrators can search records more easily. The project has been developed in back-end: PHP,
MySQL and front-end: HTML, CSS, and JavaScript.
The main motto of my project is to facilitate the people to take appointment easily, find doctors
available schedule. It is also helpful for doctors to mange his schedule and appointments easily.
vi
TABLE OF CONTENTS
TITLE
APPROVAL i
DECLARATION ii
DEDICATION iii
ACKNOELEDGEMENT iv
ABSTRACT v
TABLE OF CONTENTS
LIST OF TABLES x
LIST OF FIGURES xi
Contents
INTRODUCTION ........................................................................................................................................................... 1
1.1 Objectives of the Project .................................................................................................. 1
1.2 Motivation........................................................................................................................ 1
1.3 Requirement Specification............................................................................................... 2
1.4 Problems of the Existing System ..................................................................................... 2
1.5 Literature Review............................................................................................................. 3
CHAPTER 2..................................................................................................................................................................... 4
AUTOMATED DOCTOR APPOINTMENT AND DOCTOR HELP MANAGEMENT SYSTEM ....................... 4
2.1 Proposed System .............................................................................................................. 4
vii
2.2 Site Proposal..................................................................................................................... 6
2.2.1 Features of Proposed System.................................................................................... 6
CHAPTER 3..................................................................................................................................................................... 8
METHODOLOGY .......................................................................................................................................................... 8
3.1 Necessity of Methodology ............................................................................................... 8
3.2 Software Development Life Cycle (SDLC)..................................................................... 9
3.2.1 Feasibility Study ....................................................................................................... 9
3.2.2 Requirement Definition .......................................................................................... 10
3.2.3 System Definition ................................................................................................... 11
3.2.4 System Design ........................................................................................................ 11
3.2.5 Program Design and Coding................................................................................... 11
3.2.6 Testing..................................................................................................................... 11
3.2.7 Implementation ....................................................................................................... 12
3.2.8 Changing Request Definition.................................................................................. 12
3.3 Software Process Model................................................................................................. 12
3.3.1 Incremental Model.................................................................................................. 13
CHAPTER 4................................................................................................................................................................... 15
FEASIBILITY STUDY................................................................................................................................................. 15
4.1 Gantt Chart..................................................................................................................... 15
4.2 Objectives of Feasibility Study ...................................................................................... 16
4.2.1 Technical Feasibility............................................................................................... 17
4.2.2 Economic Feasibility .............................................................................................. 17
4.2.3 Operational Feasibility............................................................................................ 18
4.2.4 Schedule Feasibility................................................................................................ 18
CHAPTER 5................................................................................................................................................................... 19
SOFTWARE DESIGN DESCRIPTION ..................................................................................................................... 19
5.1 Software Design Description ......................................................................................... 19
5.2 Design Overview............................................................................................................ 19
5.3 Traceability..................................................................................................................... 19
viii
5.4 Architecture Design Process .......................................................................................... 20
5.5 Overall Design................................................................................................................ 20
5.5.1 Entity Relation Diagram ......................................................................................... 20
5.5.2 Date Flow Diagram................................................................................................. 22
5.5.3 Use Case Diagram................................................................................................... 29
5.5.4 Sequence Diagram .................................................................................................. 30
5.5.5 Activity Diagram .................................................................................................... 35
5.6 Interface Design ............................................................................................................. 39
CHAPTER 6................................................................................................................................................................... 53
DATA DICTIONARY................................................................................................................................................... 53
6.1 Data Dictionary .............................................................................................................. 53
6.2 Database ......................................................................................................................... 53
6.3 Database Management System....................................................................................... 53
6.4 Tables of System............................................................................................................ 54
6.4.1 Patient Info Table.................................................................................................... 54
6.4.2 Doctor Info Table.................................................................................................... 55
6.4.3 Appointment Table ................................................................................................. 55
6.4.4 Doctor Details Table............................................................................................... 56
6.4.5 Invalid Patient Info Table ....................................................................................... 56
6.4.6 Message Table ........................................................................................................ 57
6.4.7 Doctor Schedule Table............................................................................................ 58
6.4.8 Bank Account Table ............................................................................................... 58
6.4.9 System Admin Table............................................................................................... 59
6.4.10 Bank Admin Table.................................................................................................. 59
CHAPTER 7................................................................................................................................................................... 60
SOFTWARE IMPLEMENTATION ........................................................................................................................... 60
7.1 Software Implementation............................................................................................... 60
7.2 Web Application ............................................................................................................ 62
7.3 Text Editor...................................................................................................................... 63
7.4 Software ......................................................................................................................... 63
ix
CHAPTER 8................................................................................................................................................................... 64
TESTING ....................................................................................................................................................................... 64
8.1 Testing................................................................................................................................. 64
8.2 Testing Methods.................................................................................................................. 65
8.2.1 Static Testing .......................................................................................................... 65
8.2.2 Dynamic Testing..................................................................................................... 65
8.2.3 Black Box Testing................................................................................................... 66
8.2.4 White Box Testing.................................................................................................. 67
8.3 Testing Level.................................................................................................................. 68
8.4 Testing Types ................................................................................................................. 70
8.5 Importance of Testing ................................................................................................... 71
CHAPTER 9................................................................................................................................................................... 72
SOFTWARE MAINTANANCE................................................................................................................................... 72
9.1 Software Maintenance.................................................................................................... 72
9.2 Importance of Software Maintenance ............................................................................ 73
CHAPTER 10................................................................................................................................................................. 75
DISCUSSION AND CONCLUSION ........................................................................................................................... 75
10.1 Advantages of the system ................................................................................................. 75
10.2 Limitation of the system ................................................................................................... 75
10.3 Future Plan........................................................................................................................ 76
CHAPTER 11................................................................................................................................................................. 77
REFERENCES .............................................................................................................................................................. 77
x
LIST OF TABLES
Table 6.4.1 Patient Info Table ………………………………………………………. 55
Table 6.4.2 Doctor Info Table ………………………………………………………. 56
Table 6.4.3 Appointment Table……………………………………………………… 56
Table 6.4.4 Doctor Details Table…………………………………………………….. 57
Table 6.4.5 Invalid Patient Info Table……………………………………………….. 57
Table 6.4.6 Message Table…………………………………………………………... 58
Table 6.4.7 Doctor Schedule Table………………………………………………….. 59
Table 6.4.8 Bank Account Table………………………………………………......... 59
Table 6.4.9 System Admin Table……………………………………………………. 60
Table 6.4.10 Bank Admin Table……………………………………………………… 60
Table 8.2.2 Test Cases for User Registration Page…………………………………… 67
Table 8.2.3 Black Box Testing Test Cases……………………………………………. 68
LIST OF FIGURES
Fig 2.1: Proposed System……………………………………………………………..... 06
Fig 3.2: Software Development Life Cycle………………………………………......... 10
Fig 3.3.1: Incremental Model…………………………………………………………… 14
Fig 4.1: Gantt chart……………………………………………………………….......... 17
Fig 5.5.1: ERD………………………………………………………………………….. 23
Fig 5.5.2.1: Context Diagram…………………………………………………………… 25
Fig 5.5.2.2: Level 0 DFD………………………………………………………………... 26
Fig 5.5.2.3: Level 1 DFD for Doctor……………………………………………………. 27
Fig 5.5.2.4: Level 1 DFD for Patient……………………………………………………. 28
Fig 5.5.2.5: Level 2 DFD………………………………………………………………... 29
xi
Fig 5.5.3: Use Case……………………………………………………………………… 31
Fig 5.5.4.1: Sequence Diagram…………………………………………………………. 33
Fig 5.5.4.2: Sequence Diagram for Patient…………………………………………….. 34
Fig 5.5.4.3: Sequence Diagram for Doctor…………………………………………….. 35
Fig 5.5.4.4: Sequence Diagram for Admin…………………………………………….. 36
Fig 5.5.5.1: Activity Diagram for Patient……………………………………………… 38
Fig 5.5.5.2: Activity Diagram for Doctor……………………………………………… 39
Fig 5.5.5.3: Activity Diagram for Admin……………………………………………… 40
Fig 5.6.1: Home Page…………………………………………………………………… 41
Fig 5.6.2: Patient Signup………………………………………………………………... 42
Fig 5.6.3: Patient Login…………………………………………………………............ 43
Fig 5.6.4: Patient Appointment…………………………………………………………. 44
Fig 5.6.5: Select Appointment Date…………………………………………………….. 45
Fig 5.6.6: Payment Form………………………………………………………………... 45
Fig 5.6.7: Send Message to Doctor………………………………………………........... 46
Fig 5.6.8: Add Schedule for Doctor…………………………………………………….. 47
Fig 5.6.9: View Schedules for Doctor…………………………………………….......... 48
Fig 5.6.10: View Appointments for Doctor……………………………………………... 49
Fig 5.6.11: Prescribe Medicine by Doctor………………………………………………. 50
Fig 5.6.12: Admin Register Doctor……………………………………………………... 51
Fig 5.6.13: View Patients by Admin……………………………………………………. 52
Fig 5.6.14: View Bookings by Admin………………………………………………….. 53
Fig 8.2.4.1: Message When User Want to Select Previous Date……………………….. 69
Fig 8.2.4.2: User Want to Take Appointment More Than One in the Same Date……… 69
Fig 8.4: Testing Sequence………………………………………………………………. 71
Fig 10.2.1: Pie Chart of Different Maintenance………………………………………… 75
1
Chapter 1
INTRODUCTION
The proposed system is to make an online web application for easily taking appointment of a
doctor see the schedule of doctors, so that everyone can get information about doctor’s
availability, time slot, and send request to any doctor for medicine. Doctors and patients can also
easily communicate with each other from any where. This project is aimed at developing an
online application for appointing a doctor. Users have to logging in the system to be able to take
appointment of a doctor and update their information. Doctors have to logging to see his
appointments. The proposed system could be accessed from any corner of the world on net.
1.1 Objectives of the Project
Our modern age of technology is greatly depends on internet. Everything is converted to
computer based for easier and faster communication. Here I tried to develop such a system,
which will ensure some aspects,
 Reliability, maintainability, cost-effectiveness and a nice user-friendly environment.
 The objective of the project is to provide an opportunity of getting doctor appointment
easily.
 Proper management of appointments, securely stores all records.
 Save money and time.
1.2 Motivation
This project is enabling to search for doctor from user account. The motive of developing this
application is to design a feature rich search engine which can make the search of doctors of the
hospital. In the Automated Doctor appointment System the users (admin, patient, doctor) will be
much benefited. Admin will be able to register doctor, view/delete patient listing, and finally
moderate (insert, update and delete) information. The deliverables of the software are focused
below in brief:
 Theycanview,edit,andupdatetheirprofilefromanywhere.
2
 User friendly interfaces are developed to use this software easily.
 Doctor and patient information are stored.
 All users can login by using username and password to access their information.
 Reduce the paperwork and storage area.
 Improve accuracy in result.
1.3 Requirement Specification
Scope:-
The scope of the project is to enable the users to search for doctors, get appointment and also send
message to the doctor. User can search doctors which can make user to find specific doctor an easy
task. This project has a large scope as it has the following features which help in making it easy
to use, understand and modify it:
 Easily take doctor appointment.
 No Need to do Paper Work.
 To save the environment by using paper free work.
 To increase the accuracy and efficiency of the procedure.
 Management of Patient and doctor Data.
The implementation of this application also gives a hands-on experience in PHP, MySQL,
HTML, CSS, JavaScript and Ajax.
1.4 Problems of the Existing System
The main purpose of this Web Application is to handle doctor appointment easily among the
hundreds of existing systems on World Wide Web. Though there are lots of applications like this
in web but it is a matter of sorrow that, in our country real life example like this is very rear.
Only a few amounts of hospitals in our country provide such facility. One may come to know
that doctor’s serial is finished after arriving to the hospital. However, in the proposed system we
will try to overcome these entire problems.
Present Working System
 In Various hospital one have to take appointment by phone call or by directly from the
hospital. It is time consuming and costly.
 Hospital staffs have to collect the information manually.
3
 It needs paper work and takes input by human and there is a lot of transaction which is
not efficiently done.
 If any modifications or updating are required of any doctor/patient, it has to search and to be done it
manually. So it is prone to error.
 It is a time consuming activity of managing, updating and informing specific patient
information.
 Patient or doctor can’t modify their information themselves and if there is any update
or modification,theyhavetoinformittohospitalstaffandgetitupdated.
 It takes a lot of space for storage and other information.
1.5 Literature Review
I read some papers related to this work. The main objective of their work is given below,
 For the first one, Chutisant Kerdvibulvech and Nwe Ni Win, done it for a dental hospital.
Here administrator of the system is dentist. Administrator can check the patient’s
requests, manage the appointment schedule, and manage the patient’s information.
Patients can submit their personal comments to the dental clinic for better services [10]. I
think that, doctor has to manage all the activities. So excess workload for doctor. We can
divide the work between doctor and hospital staff.
 In the second one, Xiuju Zhan and Xiufeng Liu, built a system that consists of
appointment registration, data management, data backup and recovery. They emphasize
on date backup for security and recover from failure. For editing, deleting and searching
of data special work is done. [11]Here I found that, they have not any option for payment.
 In the third one, Mohd Helmy, Abd Wahab and others, implement a web-based
appointment system by integrating with Intelligent System techniques. It does not have
any ID and password to log-in before making any appointment. Role of agent is to
manage information in databases. It is not only doctor but also other appointments [12].
Here I found that, they have not any user account.
4
Chapter 2
AUTOMATED DOCTOR APPOINTMENT AND DOCTOR HELP
MANAGEMENT SYSTEM
The “Automated Doctor Appointment and Doctor Help Management System” is a web-
based application structured on PHP, MYSQL for providing better service and easiest access to
appoint doctor and by using this system any hospital can manage appointment schedule easily. A
new system is proposed which is processed through computers. The system is operated by three
types of users, namely Administrator, Patient and Doctor.
2.1 Proposed System
This software can be readily used by non-programming personal, avoiding human handled
chance of error. This project is used by three types of users
i. Administrator.
ii. Patient.
iii. Doctor.
The system includes the entities as their admin. Only few members, who called admin, are able
to control that system. Update any system information such as register doctor, view doctor, view
patient, delete patient, delete doctor, and view appointments. Admins are the core user of the
system. There is no involvement of any user other than administrator to update the core
information due to security purpose.
The second types of user, patient has limited access. He can add and modify information of his
own. He can also see all of his appointments and can search doctor for the doctor list. He can pay
doctor fee online. Another thing is that, he can send message to doctor about his sickness. This
facility is only available for registered user who agreed before to get this facility.
The third type of user is doctor. He is registered by admin. From his account he can add and
modify his schedule time, modify his information, and see all of his appointments. Doctor can
also search appointments of a specific date. Administrator, patient and doctor must be authorized
user. The administrator has the central control over the whole. In figure below shows the proposed system
architecture.Itshowshowthethreetypesofusercommunicatewiththesystem.
5
Main Points are:-
 For patient
 Register in system.
 Taking appointment of doctor.
 Send message to doctor.
 For doctor
 Set schedule.
 View appointments.
 Reply message.
 For Admin
 Register doctor.
 View appointments.
 Delete patient/doctor.
`
`
Server
$
Bank
Database
System
patient
admin
doctor
Req. for
appointment
Confirmation
Req. for view
appointments
Response req.
View all
info.
Respond
Request
Respond
Request
Respond
Response req.
Req. for account
Fig 2.1: Proposed System.
6
2.2 Site Proposal
This project proposal may be seen as an outline following the requirement analysis phase for a
more complete and specific web site plan for the system.
2.2.1 Features of Proposed System
The proposed system is better than others because some extensive features as follows,
2.2.1.1 Administrator
Admin Panel:
1. Add Doctor: Admin can add doctor details using add doctor module. It has an option named agree to
prescribepatient.Ifadoctoragreedtohelponlinethenhewillgetmessagefrompatientsotherwisenot.
2. View Doctor: Admin can see the doctor list in this module. Admin can view details and also can
deletespecificdoctor.
3. View patient: Admincan seethepatient list inthis module; who areregisteredinthis system.Admin
canviewdetailsandalsocandeletespecificpatientaccount.
4. Delete Patient: Admin can delete patient account by email id in this module.
5. Delete Doctor: Admin can delete doctor account by email id in this module.
6. View Booking: In this module admin can see all the appointments of doctors. It can be retrieved by
doctorname,byspecialistorbydate.Oradmincansearchspecific.
2.2.1.2 Patient
Patient Panel:
1. Create a Profile (Registration): Here a new user can register in the system. He must
have to fill up all the information. He must have a unique user name, email id and
account number. Here an option named “do you want online doctor help”. If anyone
agree to this extra feature than he have to pay an amount and can request doctor online
for prescribe medicine. Otherwise he will not get this facility.
2. Add More Information: In this module patient can add more information about him.
3. Modify Information: Patient can modify information whenever he needs.
4. Deactivate Account: If anyone wants to deactivate his account he can do that by this
module. He has to enter user name, email and password correctly then his account will be
deactivated.
7
5. Appointment: It is the most important module from where a patient can take doctors
appointment. One can see doctor name, specialist and payment here. He can select one
from there or can search by doctor name or by specialist. After getting his desire doctor
he can see details of the doctor by the button “more” or can take appointment by
“appointment” button. After pressing “appointment” he can see doctors schedule and
time. He has to select the date. After satisfying all the conditions if everything okay then
he has to pay the fixed amount for doctor fees. For payment he has to enter name on card,
card no and pin no. if all are correct then he will get appointment successfully and get a
notification. It has a sub module named view appointment. Where he can see all of his
appointments along with, serial number, date and time.
6. Doctor Help: It is an extra feature of this system. One who agrees to get online doctor help will get
this facility. For this he has to pay a fixed amount at the time of registration. He can send message to a
doctorabouthissicknessandrequestdoctorformedicinethendoctorwillreply.
2.2.1.3 Doctor
Doctor Panel:
1. Modify Information: Doctor can modify information whenever he needs.
2. Add Schedule: Doctor can add his visiting time schedule. He has to set start time, end
time and duration of each patient visiting time.
3. View Schedule: Doctor can see all of his schedules. Can edit or delete schedule.
4. Appointments: Doctor can see all of his appointments. It is categorized by today,
previous and next. He can see the patient name, serial no and time. He can also search for
a specific date.
5. Prescribe Medicine: In this module doctor will receive message from patient. He can
reply or delete.
6. Deactivate Account: If anyone wants to deactivate his account he can do that by this
module. He has to enter user name, email and password correctly then his account will be
deactivated.
8
Chapter 3
METHODOLOGY
Software Engineering is the practice of using selected process techniques to improve the quality
of a software development effort. This is based on the assumption, subject to endless debate and
supported by patient experience, which is a methodical approach to software development results
in fewer defects and therefore ultimately provides shorter delivery time and better value. The
document collection of policies, process and procedures used by a development team or
organization to practice software engineering is called its Software Development Methodology
(SDM) or Software Development Life Cycle (SDLC).
A methodology is a formalized approach to implementing the SDLC. There are many different
system development methodologies and each one is unique because of its emphasis on process
verses data and the order and focus it places on each SDLC phase.
3.1 Necessity of Methodology
Software developers follows some methodology which is step wise process to develop a project
involving usage of programming language for a particular solutions. It includes examining,
designing, developing, testing, documenting, implementing, and evaluating the complex subject
of software engineering. Developers work to reduce the risks involved in the project
management. If a project runs for a long time, it has a higher chance of risks for the software
development team and as well as the project. So developers have to follow a framework, which
helps them to finish off the software development in the least amount of time. Agile software
development is a group of software development methodology based on iterative and
incremental development, where requirements and solutions evolve through collaboration
between self-organizing, cross functional teams [19]. We have to select methodology very
wisely. The challenge in selecting a methodology is that if we wrongly select anyone that is not
appropriate and don’t match with our project there is a big risk of project failure.
In order to develop the system, we need a methodology. An advanced SDLC is the appropriate
framework at this point.
9
3.2 Software Development Life Cycle (SDLC)
Computer software experts have adapted several approaches from older engineering fields, and
also for developing new ones. For instance, divide and conquer a widely known technique for
handling more complex problems, is used in a number of ways in software engineering. The
software engineering process, for example, is normally divided into phases. SDLC is a series of
steps which provides a model for development and lifecycle management of software. It varies
across industry and organization. But it has a standard. For this a number of system development
life cycle models have been created. Some of them are waterfall, spiral, fountain, build and fix,
rapid prototyping, incremental.
Changing request
definition
Program design
and coding
System design
System
specification
Requirement
definition
Feasibility study
Implementation
Testing
SDLC
Fig 3.2: Software Development Life Cycle.
3.2.1 Feasibility Study
In the first stage of SDLC I have to make measure feasibility study for the proposed system.
There are basically five parts to any effective Feasibility Study:
10
1. The Project Scope–I define the project scope earlier. Users can search for doctors, get
appointment and also send message to the doctor. User can search doctors which can make
user to find specific doctor an easy task.This project has a large scope as it has the
following features which help in making it easy to use, understand and modify it.
 Easily take doctor appointment.
 No Need to do Paper Work.
 To save the environment by using paper free work.
 To increase the accuracy and efficiency of the procedure.
 Management of Patient and doctor Data.
2. The Current Analysis – In Various hospital we have to take appointment by phone call
or by directly from the hospital. It is time consuming and costly.Hospital staffs have to
collect the information manually. It needs paper work and takes input by human and there
is a lot of transaction which is not efficiently done.If anymodifications or updating is required
ofanydoctor/patient,ithastosearchandtobedoneitmanually. So it is prone to error.
3. Requirements – User requires using the system simply a laptop, PC or mobile phone to
access internet. Using internet it is very much easy to take appointment.
4. Evaluation – In evaluation I examine cost effectiveness of the system. It is cost effective
as patient need not to go to hospital for taking appointment previously. Time is also
saved. One can take appointment from his home using internet.
5. Review – From the above analysis it may be conclude that the system would be useful,
cost effective, easy to use and will solve the manual system faults.
3.2.2 Requirement Definition
The purpose of the requirements phase is to define what a system should do and the constraints
under which it must operate. This information is recorded in a requirements document. A typical
requirements document might include a product overview; a specification of the development,
operating, and maintenance environment for the product; a high-level conceptual model of the
system; a specification of the user interface; specification of functional requirements;
specification of nonfunctional requirements; specification of interfaces to systems outside the
system under development; specification of how errors will be handled; and a listing of possible
changes and enhancements to the system.
11
3.2.3 System Definition
In system specification I first focus is ERD (Entity Relationship Diagram), which shows entity
with their attributes, relationship with entities involving one-one, one-many, many-one or many-
many. Data flow diagram, use case diagram, activity diagram, sequence diagram are also
designed to understand the system clearly and completely.
3.2.4 System Design
Systems design is the process of defining the architecture, components, modules, interfaces, and
data for a system to satisfy specified requirements [18]. It helps in specifying hardware and
system requirements and also helps in defining overall system architecture. The system design
specifications serve as input for the next phase of the model. It includes interface design, data
design, and process design. In user interface design I concerned with how users interact with the
system, add information to the system. And how the system will presents information back to the
users. In data design it concerned with how the data is represented and stored within the system.
Finally, Process Design is concerned with how data moves through the system. I show this in
DFD.
3.2.5 Program Design and Coding
The coding phase of the software life-cycle is concerned with the development of code that will
implement the design. This code is written is a formal language called a programming language.
Programming languages have evolved over time from sequences of ones and zeros directly
interpretable by a computer, through symbolic machine code, assembly languages, and finally to
higher-level languages that are more understandable to humans.
Most coding today is done in one of the higher-level languages. When code is written in a
higher-level language, it is translated into assembly code, and eventually machine code, by a
compiler. Many higher-level languages have been developed, and they can be categorized as
functional languages, declarative languages, and imperative languages.
3.2.6 Testing
Testing is the process of examining a software product to find errors. This is necessary not just
for code but for all life-cycle products and all documents in support of the software such as user
12
manuals. The software testing process is often divided into phases. The first phase is unit testing
of software developed by a single programmer. The second phase is integration testing where
units are combined and tested as a group. System testing is done on the entire system, usually
with test cases developed from the system requirements. Acceptance testing of the system is
done by its intended users. The basic unit of testing is the test case. A test case consists of a test
case type, which is the aspect of the system that the test case is supposed to exercise; test
conditions, which consist of the input values for the test; the environmental state of the system to
be used in the test; and the expected behavior of the system given the inputs and environmental
factors. I perform various testing and give complete description of it in chapter 8.
3.2.7 Implementation
The implementation stage of any project is a true display of the defining moments that make a
project a success or a failure. The implementation stage is defined as "the system or system
modifications being installed and made operational in a production environment. The phase is
initiated after the system has been tested and accepted by the user.
In SDLC model, this implementation part involves implementing the system to any types of
administration site and to make process of client request and payment processing.
3.2.8 Changing Request Definition
If any advance or updated point comes after delivering the system, then at this stage explains the
processing of development of the delivered system. This type of changeable maintenance is very
important.
3.3 Software Process Model
Software process models are general approaches for organizing a project into activities. Each
project ends up with its own unique plan. It helps to decide,
 What work should be done?
 In what sequence to perform the work.
Process is an activity, which operates on an object and changes its state. Model is the graphical
representation of an object. Therefore, a process model shows the activities of software
graphically. We need process model because process is important than product. If the process is
13
good, the product is also good. While developing the system I follow incremental method.
Particularly in this method break a project into smaller segments and providing more ease of
change during development process. A series of mini-Waterfalls are performed, where all phases
of the Waterfall development model are completed for a small part of the system, before
proceeding to the next increment.
3.3.1 Incremental Model
Incremental development is a staging and scheduling strategy in which various parts of the
system are developed at different times or rates, and integrated as they are completed. [1]
Design Testing Implementation
Design Testing
Implementation
Design Testing
Implementation
Requirements
Build 1
Build 2
Build N
Fig 3.3.1: Incremental Model.
The Incremental approach is a method of software development where the model is designed,
implemented and tested incrementally (a little more is added each time) until the product is
finished. It involves both development and maintenance. The product is defined as finished when
it satisfies its entire requirement. In incremental model the whole requirement is divided into
various builds. Multiple development cycles take place here, making the life cycle a “multi-
waterfall” cycle. Cycles are divided up into smaller, more easily managed modules. Each
module passes through the requirements, design, implementation and testing phases. Each
subsequent release of the module adds function to the previous release. The process continues till
the complete system is achieved.
In my system I start building its first module patient panel for the first iteration. Likewise in the
second iteration the admin module is ready and integrated with the first module. Similarly, in the
14
third iteration the whole system is ready and integrated. Hence, the system got ready step by
step. In every step I tested each module separately.
In Incremental Approach it uses a number of steps and development goes from start to finish in a
linear path of progression.
Advantage of Incremental Model
There are various models to develop a software system. I choose this model among those
because,
 It is generally easier to test and debug than other methods of software development.
Because relatively smaller changes are made during each iteration. This allows me for
more targeted and rigorous testing of each element within the overall product.
 Risk of changing requirement is reduced because; In each iteration I built a small portion
of the system.
 Work load is less because the whole system need not done together.
 I add the main function in the first iteration so it helps to the other iterations.
 It is flexible and easy to manage more manageable process and better software making
and better software structure.
Disadvantage of Incremental Model
Though I have used this model but in the development phase I face some difficulties,
 It needs good planning and design. So when I change a plan it needs to work for the
previous iteration.
 Needs a clear and complete definition of the whole system before it can be broken down
and built incrementally. In some iteration I was confused what I should do next.
15
Chapter 4
FEASIBILITY STUDY
A feasibility study is a study that includes the analysis of the software if it is cost effective from
the economic view, if it can fulfill the requirement technically, and if it is adaptable in the
required environment. It also condiments the groundwork and determine whether the project
should be taken or not. Finally, the net result will be rough plane for proceeding with the project.
4.1 Gantt Chart
One of the oldest and still one of the most useful of presenting schedule information is the Gantt
chart. Gantt chart is a pioneer in the field of scientific management. The Gantt chart show
planned and actual progress for a number of tasks displayed against horizontal time scale. In
figure horizontal bars indicate time duration. In figure it shows there are eight tasks and their
time duration, start time and end time. Initial study takes 3.2 weeks. It includes the understanding
of the whole system. Then feasibility study takes 4.2 weeks. Similarly requirement analysis 4
weeks, design 6.8 weeks, coding 10.4 weeks, testing 12 weeks, implementation and review 6.4
weeks, review report 3 weeks. From the vertical bar it is clear that design, coding and testing
takes the maximum time and overlap the works with each other.
16
ID Task Name Start Finish Duration
Nov2014Sep2014 Jan2015
9/28 10/19 12/14 3/81/2510/26 2/812/289/219/7 2/22
1 3.2w9/22/20149/1/2014InitialStudy
2 4.2w10/16/20149/18/2014FeasibilityStudy
3 4w11/3/201410/7/2014
Requirement
Analysis
4 6.8w12/9/201410/23/2014Design
5 10.4w1/23/201511/13/2014Coding
6 12w2/20/201512/1/2014Testing
7 6.4w3/3/20151/19/2015
Implementation
&Review
8 3w3/23/20153/3/2015ReviewReport
Dec2014
11/23 11/3011/16 1/1112/78/31
Oct2014
10/5 2/110/12 11/2
Mar2015
1/412/21 3/153/12/15
Feb2015
9/14 11/9 1/18 3/22
Figure 4.1: Gantt chart
4.2 Objectives of Feasibility Study
A feasibility study evaluates the project's potential for success. So before start to design and
develop a system feasibility study is very much important. From the feasibility study of the
project, I have identified four fundamental criteria. As a feasible project complete successfully,
the project will complete successfully. The four dimensions are:
1. Technical feasibility
2. Economic feasibility
3. Operational feasibility/Organizational feasibility
4. Schedule feasibility
17
4.2.1 Technical Feasibility
A system request is technically feasible if the organization has or can obtain the equipment to
develop, install and operate the system. The following questions point up those we must solve.
o Will the combination of hardware and software be able to supply performance?
o What is the impact on the end users of the proposed system after implemented?
Technical Criteria: Technical criteria study is concerned with the hardware requirement for the
system. For our system the minimum hardware requirements are,
PC: Pentium III or more
RAM: 128 MB or more
Hard Disk: minimum2 GB
Keyboard
Mouse
For our system the software requirements are
Operating system: Linux, Windows XP, Windows Vista or more
Server: Apache web server.
Application Software: Google Chrome, operamini or Mozilla Firefox.
4.2.2 Economic Feasibility
A system request is economically feasible if the projected benefits of the proposed system
outweigh the estimated cost involved in developing, installing and operating it. To determine
economic feasibility I ascertain the following:
o The system is economic feasible in the sense that people need not to go to hospital for
appointment.
o No special hardware is needed. So Estimate the cost of needed equipment, the hardware
that will be needed to develop the system. For example: need of a personal computer.
o Estimate the cost of purchasing the necessary software.
o Estimate the benefits that will result from the proposed system.
Economic feasibility is usually answered from cost/benefit analysis. The purpose of cost
estimation helps to classify what the system is going to do.
18
4.2.3 Operational Feasibility
Operationally feasible project can be accomplished with the organizations available facilities.
Operational feasibility is concerned with, how the user will accept the software. If the software
does not meet the user expectation, then the user might not use the software. It is dependent on
human resources available for the project and involves projecting whether the system will be
used if it is developed and implemented. It is a measure of how well a proposed system solves
the problems. And it takes advantage of the opportunities identified during scope definition and
how it satisfies the requirements identified in the requirements analysis phase of system
development. The system I developed, I tried my best to make it in such a way, and users of all
level can easily use the software.
4.2.4 Schedule Feasibility
A project will fail if it takes too long to be completed before it is useful. Typically this means
estimating how long the system will take to develop, and if it can be completed in a given time
period using some methods like payback period. Schedule feasibility is a measure of how
reasonable the project timetable is. Based on given information the system will perform given
tasks. Planning a project strategy and building a project schedule to
o Complete project within time and budget.
o Resource management system.
o Increase team productivity.
o Increase project success rate.
o Realize significant time and resource savings.
I tried to complete the software within time limit. And almost I can do it. The proposed system
will easily be accessible and it will be well organized and delivered the right information in the
right place.
19
Chapter 5
SOFTWARE DESIGN DESCRIPTION
5.1 Software Design Description
The Software Design Description specifies the required information content [2].It provides an
architectural overview, logical design, detail design, physical design and application design of
the System. This document presents to various stakeholders different types of abstraction. It aims
to provide the stakeholders a clear understanding of the system [3]. It must contain all the design
information needed by users. This document user may not have the same level of system
understanding. So they may need a selected portion of SDD. But it should be collected and
presented in a way that assures completeness.
It describes design decisions, architectural design, and the detailed design needed to implement
the system. Typically, SDD is prepared to support the development of a software item. This
information will farther can be used for analysis, planning, implementation, development and
evaluation of the software system, by identifying and addressing essential design concerns. The
main purpose of SDD is,
 Identify required system resources.
 Describe functional structure, algorithm and process.
 Can be used to impact the requirement change.
 Need for maintenance activity.
5.2 Design Overview
In overall system, there are two template portions. In Right side Navigation links. Left to middle
side is the main window.
5.3 Traceability
The term Traceability or Requirements Traceability refers to the ability to link product
requirements back to stakeholders' rationales and forward to corresponding design artifacts,
code, and test cases. Traceability supports numerous software engineering activities such as
20
change impact analysis, compliance verification or trace back of code, requirements validation. It
is usually accomplished in the form of a matrix created for the verification and validation of the
project. In transaction processing software, traceability implies use of a unique piece of data
which can be traced through the entire software flow of all relevant application programs.
Messages and files at any point in the system can then be audited for correctness and
completeness, using the traceability key to find the particular transaction. This is also sometimes
referred to as the transaction footprint [4].
5.4 Architecture Design Process
The Architecture design process is used for identifying the sub system, making up a system and
the framework for sub-system control and communications architectural design. The output of
this design process is a description of the software architecture.
5.5 Overall Design
5.5.1 Entity Relation Diagram
The ER diagram is principally used to capture the relationships that exist between static data
objects in a problem model or a design model. In particular, the Entity-Relationship Model has
provided an essential foundation for the development of the relational models. To design of an E-
R diagram, it is important to select criteria that have different alternative. For this purpose,
design considering the following steps:
 To use an attributes or a set of attributes to represent an objects.
 A real world concept is expressed most accurately an entity set or by a relationship.
 To use a ternary relationship or a pair of binary relationship among the entities.
In an effective system, data is divided into discrete categories or entities. An entity relationship
(E-R) model is an illustration of various entities and the relationship of various entities and the
relationship between them. ER model is build during the analysis phase of the system
development life cycle. ER model separates the information required by the system from the
activities performed within a system. In ERD there are,
21
 Entities: An object or concept that is identified by the enterprise. In figure below the
rectangle box indicates entity. There are five entities. They are patient, doctor, schedule,
bank account and doctor details. An entity may have one or more attributes.
 Attribute: Attributes are the properties of entities. Attributes are represented by means of
eclipses. Every eclipse represents one attribute and is directly connected to its entity. In
figure all the entities have a number of attributes. Attributes may be primary key or
foreign key. Primary key is denoted by underline.
 Relations: Relationships are represented by diamond shaped box. Name of the
relationship is written in the diamond-box. All entities participating in relationship are
connected to it by a line. In figure there are six relationships. Relationship may be one-to-
one, one-to-many, many-to-one, and many-to-many. Also a relationship may be binary,
ternary or quaternary. There is only one ternary relationship in the figure which connects
doctor, doctor details and bank account entities.
 Links: Links are the connection between entities and relations.
22
DoctorPatient
FirstName
AccountNo
UserName
LastName
CIty
DateOfBirth
ContactNo
Address
PId
Password
Email
BloodGroup
Gender
Email dName
Password
Address
Gender
AccountNo
Specialist
Payment
DId
Qualification
Appoint
SerialNo
Date Time
Schedule
Set
Day
ETime1
STime1
Interval
DId
Pay
BankAccount
AccountNo
AccountNameBalance
FromAccount
ToAccount
Date
Time
1:M 1:M
1:M
has
1:M
1:1
1:1 1:1
1:1
Special
Sickness
dHelp
LastName
FirstName
Help
STime2
ETime2
SProfession
QuaDetails
SpeDegree
Achievements
Message
Pmessage
Dmessage
Psubject
Dsubject
Date
Time
1:M
1:M
Cardno
Pinno
has
Time
Date
Payment
Fig 5.5.1: ERD of the System.
5.5.2 Date Flow Diagram
Data flow diagrams are highly essential for requirement specification of the system that shows
how data is processed and how data flows through a sequence of processing steps by a system.
The data is transformed at each step before moving on the next stage.
The four basic elements that are used in the diagram are:
 The round shape rectangular which are used to denote an operation/process and is labeled
with a brief description of the operation.
23
 The rectangular box, used to denote a data source or sink of information;
 The parallel bars, used to denote a data store or file;
 The arc, used to denote the flow of information between the other three components.
We find out the different flow information like follows:
Symbol Meaning
0.10 Process
Source/destination
Date flow
Data store
Context Diagram
In figure it shows the context diagram of the system. Here three types of users interact with the
system patient, doctor and admin. Patient can request for appointment. Doctor can see all of his
appointments. And admin can supervise all the activities.
24
Patient
Doctor
Admin
Appointment
request
Request
approved/reject
View
appointments
request
Show result
Registered doctor
View patient
detail
View
appointments
Delete patient/
doctor account
0.0
Automated Doctor
Appointment
System
Fig 5.5.2.1: Context Diagram of the system.
Level 0 DFD
Level zero DFD is the expansion of context diagram. It shows the process and data flow more
briefly. In figure it shows level zero DFD for both doctor and patient.
25
Doctor
Appointment
record
Patient
Schedule
record
doctor
record
0.10
Prescribe
medicine
0.5
payment
0.7
Doctor
Information
0.3
Patient
Information
0.4
Appointment
0.8
Schedule
0.9
Doctor
Appointment
Message
record
0.1
Login
0.0
Signup
Appointment
record0.6
Request
medicine
Patient
record
Message
record
0.2
Account
Signup info
Successful
signup
Verified
login
Login info
Set schedule
View
schedule
Edit info
View info
Recommend
medicine
View
appointments
Edit info
View info
Pay doctor
Request help
View
appointment
Appointments
Pay
Get
Appointments
Appointments
Fig 5.5.2.2: Level 0 DFD of the System.
26
Level 1 DFD for Doctor
Level one DFD is the expansion of level zero DFD. In figure it shows the level one DFD for
doctor. It starts from the “login account” process. After login it goes to “account” process. All
the updating info’s are stored in data store and can be viewed by the admin.
Doctor
Login info
Verified
account
Appointment
record
doctor
record
Verify login
Patient
Schedule
record
doctor
record
Schedule
set
Appoint
ments
Update
info
Patient request
Admin
Admin
Admin
1.1
Login
Account
1.4
Doctor
Appointments
1.2
Account
1.3
Schedule
1.5
Edit/update
Account
1.6
Prescribe
Medicine
View
info
Recommend
medicine
Message
record
Schedules
Fig 5.5.2.3: Level 1 DFD for Doctor.
27
Level 1 DFD for Patient
In figure it shows the level one DFD for patient. It starts with “fill signup form process”. After
signup, then login to account. Information’s are seen and retrieved from data store.
Patient
Patient info
Successfully
registered
Verified
account
patient
record
Verify login
Doctor
Update
info
Appointment
record
Admin
Admin
Sickness
info
Request
appointment
1.4
Edit/update
Account
1.6
Request
medicine
1.3
Account
1.2
Login
Account
1.1
Fill
Signup
Form
1.5
Appointment View
info
View
appointment
1.7
Payment
Pay doctor
Message
record
Fig 5.5.2.4: Level 1 DFD for Patient.
28
Level 2 DFD
It is the expansion of the process 1.5 “Appointment “from level one DFD for patient. For
appointment search doctor then select date after that select payment option. After successfully
appointment it will notify to the patient account.
Patient
Appointment
record
Notify
Successfully
appointment
Selected
doctor
Selected
date
Successfully
appoint
Admin
Request
appointment
1.5.1
Appointment
1.5.4
Select
Payment
mode
1.5.3
Select Date
1.5.2
Search
Doctor
Doctor
record
Fig 5.5.2.5: Level 2 DFD for patient.
29
5.5.3 Use Case Diagram
Use case diagram (UCD) is a methodology used to describe the functionality of a system in a
horizontal way. Each use case focuses on describing how to achieve a goal or task. The use case
is made up of a set of possible sequences of interactions between system and users or actor in a
particular environment and related to a particular goal. The user or actor might be a person or
something more abstract, such as an external software system or manual process.
The three basic elements that are used in design diagram are:
 The Actor-Actor is one who is using the web site. May be a person, organization, or
external system that plays a role in one or more interactions with the system. In figure
outside the system boundary person like figure is the actor. In the system it has three
actors. Patient, doctor and admin. They work outside the system boundary.
 Use Cases – It is what the user wants to do. Describe a sequence of action that
provide something of measureable value to an actor and is drawn as a horizontal
ellipse. In figure within the system boundary oval shapes are the use cases. There are
nine use cases for patient, eleven use cases for doctor and ten use cases for admin.
 System Boundary Boxes – It is what the scope of system for users. A rectangle is
drawn around the use cases, called the system boundary box, to indicate the scope of
the system. Anything within the box represents the functionality that is in scope and
nothing outside the box is.
30
Use Case of the System
Patient
Doctor
System
Admin
Signup
login
Addinfo
ModifyInfo
GetAppointment
ViewAppointment
DoctorHelp
DeactiveAccount
ViewAppointments
PrescribeMedicine
AddNewDoctor
ViewDoctor
DeleteDoctor
ViewPatient
DeletePatient
ViewBooking
EditSchedule
DeleteSchedule
ByName
BySpecialist
ByDate
login
login
ViewInfo
Addinfo
ModifyInfo
ViewInfo
AddSchedule
DeactiveAccount
Fig 5.5.3: Use Case of the system.
5.5.4 Sequence Diagram
The sequence Diagrams are used to show how objects interact with others in particular
scenario of a use case. An important characteristics of a sequence diagram is that time passes
from top to bottom. It depicts the objects and classes involved in the scenario and the
sequence of message exchanged between the objects needed to carry out the functionality of
the scenario, Sequence diagrams are sometimes called, event diagrams, event scenarios, and
timing diagrams.
31
There are five elements to representing a sequence diagram.
1. Actor -An Actor may represent the roles played by human users, external hardware,
or other subjects. In figure 5.5.4.1 user indicate by 1 is the actor.
2. Object -Objects or classes are the targets on a sequence diagram, which means that
messages can be sent to them. A target is displayed as a rectangle with some text in it.
Below the target, its lifeline extends for as long as the target exists. The lifeline is
displayed as a vertical dashed line. In figure 5.5.4.1 system and database indicated by
2 is the object.
3. Activation –A rectangle shape, an activation box represents the time needed for an
object to complete a task. The longer the task will take, the longer the activation box
becomes. In figure 5.5.4.1 vertical box indicated by 3 is activation.
4. Message - A message defines a particular communication between Lifelines of an
Interaction. Call message is a kind of message that represents an invocation of
operation of target lifeline. In figure 5.5.4.1 rigid arrow line indicated by 4is call
message and the text above them is the message which they pass. Reply messages is
represented by a dashed line with a lined arrowhead, these messages are replies to
calls. In figure 7 indicate reply message. Message call indicated by 5.
5. Lifelines - The dashed lines hanging from the object boxes are called object lifelines,
representing the life span of the object during the scenario being modeled. In figure
lifeline is indicated by 6.
32
System Database
Check
reply
Check validity
Update
Success/Reject
login req.
Change info
Update success
Logout
Success
User
1
2
3
4
5
6
7
Fig 5.5.4.1: Sequence Diagram Example.
Sequence Diagram for Patient
In figure 5.5.4.2 it shows the sequence diagram for patient. Patient is actor here. System and
database are the objects. It shows different message pass among patient, system and database.
Patient registration information is passed to the system. System verifies the information and then
inserts it into the database. Then reply success or reject request. Similarly it shows other
messages and its reply between the system and database.
33
System Database
Enter reg info
Check validity
Req login Varify ID
req Add Info Update
req modify info modify
req appointment
valid req
req medicine send req
ID varifiedAccept
Update success
modify success
App success
notify
Reject/Accept req
logout req
logout
Check validity
Patient
Add info
Fig 5.5.4.2: Sequence Diagram for Patient.
Sequence Diagram for Doctor
In figure 5.5.4.3 it shows sequence diagram for doctor. Doctor is actor, system and database is
object. Message call is represented by rigid arrow and message reply is represented by doted
arrow.
34
System Database
Req login Varify ID
Req Add Info Update
Req Modify Info modify
Req Add Schedule
Prescribribe Medicine Send Req
ID varifiedAccept
Update success
Modify Success
Notify
Logout Req
Logout
Schedule Add
Notify
Appointments App Req
show
Doctor
Fig 5.5.4.3: Sequence Diagram for Doctor.
Sequence Diagram for Admin
In figure 5.5.4.4 it shows the sequence diagram for admin. Admin is actor here. System and
database are the objects.
35
System Database
Req login Varify ID
Add doctor doctor add
View Doctor Req
Delete Doctor
Delete Patient Req
ID varifiedAccept
add success
Doctor List
Delete
logout req
logout
Req
Delete
View Patient Req
Patient List
View Booking Req
Bookings
Admin
Fig 5.5.4.4: Sequence Diagram for Admin.
5.5.5 Activity Diagram
Activity Diagrams are graphical representations of workflows of stepwise components in a
system means shows the overall flow of control. The elements of Activity diagram are presented
below with a figure:
 Initial State -The filled blocked circle is the starting point of the diagram. In figure black
circle is the initial state.
36
 Final State -The activities flow terminates when the transition line of the last action in
the sequence connects to a “final state” symbol that is the ending point, which is a bull’s-
eye. In figure the circle surrounding a smaller solid circle or encircled block circle is the
final node.
 Action State -An action or an activity is indicated on the activity diagram by a “Capsule”
shape. The text inside it indicates the action. In figure there are fourteen action states.
 Transition Fork -A transaction fork has one input and one or more output transactions.
It shows what activity state follows after another. In figure after decision state the
horizontal bar is the transaction fork where there are one input and five output
transactions.
 Transaction Join -A transaction join has more than one input and only one output
transaction. It represents many action states combine into one state. In figure horizontal
bar before logout state is transaction join.
 Decisions -The diamonds represent the decisions where a set of guard conditions are
defined.
 Control Flow – Control flow adds a transaction state from one to another. It is
represented by arrow line. In figure arrow lines represent the control flow.
Activity Diagram for Patient
In figure 5.5.5.1 is shows activity diagram for patient. The first black circle indicates the initial
state. In the next decision state it checks whether the user is registered or not. If he is registered
then go to login state. Again check for user name and password. If valid then he can access the
states add information, modify information, appointment, deactivate account and doctor help.
For appointment one has to select doctor name and date. After completing all the activities he
can log out from his account. And reach to the final state which is represented by the circle
surrounding a smaller solid circle.
37
Register
Login
Reg User?
Yes
No
Username
& password
correct?
Add Info Modify Info Appointment Doctor Help
Select Doctor Select Date
App Success/Reject
Yes
No
Logout
Select Doctor
Write Message
Send
Account
Select Pay Option
Fig 5.5.5.1: Activity Diagram for Patient.
38
Activity Diagram for Doctor
In figure 5.5.5.2 it shows activity diagram for doctor. In initial state it checks for a registered
doctor. Then check the username and password. Then one can perform modify information, add
schedule, edit/delete schedule, prescribe medicine, deactivate account and appointments. For
schedule add one have to select day, time and interval. After finishing all the states we reach to
the final state by logout.
Register by Admin
Login
Reg
Doctor?
Yes
No
Username
& password
correct?
Modify Info
Add Schedule
Edit/Delete Schedule Appointments
Select Day
Select Time
Schedule Added
Yes
No
Logout
Select Patient
Write Message
Send
Prescribe Medicine
Select Interval
Account
Fig 5.5.5.2: Activity Diagram for Doctor.
39
Activity Diagram for Admin
After login into the system what admin can do are shown in figure 5.5.5.3.
Login
Username
& password
correct?
Add Doctor Doctors Delete PatientDelete Doctor Bookings
Yes
No
Logout
Patients
Account
Fig 5.5.5.3: Activity Diagram for Admin.
5.6 Interface Design
Home Page
In figure 5.6.1 it shows the home page of the system. Home page can be accessed by any types of
user whether he is registered or not. From home page user is redirected to signup page or his
account by login.
40
Fig 5.6.1: Home Page
Patient Signup
In figure it shows the patient signup page. Here all fields are required. Valid inputs are only
accepted. Here a special field named “do you want online doctor help”. If anyone agrees, he has
to pay a small amount of money for get the special feature online doctor help.
41
Fig5.6.2: Patient Signup.
Patient login
In the figure below it shows the patient login page. Patient has to enter user name and password
that is already registered in the system. Wrong user name or password will not accepted by the
system. Until correct user name and password is given one cannot access his account.
42
Fig 5.6.3: Patient Login.
Patient Appointment
In the figure below patient can see the doctor list from his account. He can select doctor form
there or can search for doctor. Search can be by doctor name or by specialist. If he gets intended
doctor then he can see more details about the doctor like schedule time or can take appointment
by simply clicking appointment button.
43
Fig5.6.4: Patient Appointment.
Select Appointment Date
In figure 5.6.5 it shows appointment date selection after clicking appointment button previously.
Patient has to select date when he wants to meet the doctor. It must be the date when doctor is
available. The selected date must not a previous date or when doctor is not available. If anyone
does like this error, system will alert him. Another thing is that, anyone can take only one
appointment in the same date. If he tries to take more then one appointment in the same date,
system will stop it. If anyone want to take appointment in a specific date but the serial is already
finished for that date system will give him a message.
44
Fig 5.6.5: Select Appointment Date.
Payment Form
In figure it shows bank payment form. Patient has to enter his name, card no, pin no for payment.
Anything invalid or wrong will not be accepted.
Fig 5.6.6: Payment Form.
45
Doctor Help
This option is available only for the patients who agree at the time of registration. Otherwise it
will not activate in his account. If he agreed he can send message to a specific doctor about his
sickness and request him for medicine. For this he has to pay 500tk at the time of registration.
Fig 5.6.7: Send Message to Doctor.
Doctor Add Schedule
Doctor has to enter day, duration for each patient, start time (when he start to check patient) and
end time (when he want to end) for his schedule. After successfully added he will be notified.
Without out adding schedule he will not get any appointment by patient. So a doctor must add
his schedule.
46
Fig 5.6.8: Add Schedule for Doctor
Doctor View Schedule
Doctor can see all of his schedules added by him. Here he can see day, start time, end time and
interval of his schedule. He can also edit or delete schedules. For this he has to select edit or
delete from the option.
47
Fig 5.6.9: View Schedules for Doctor
View Appointments
It is the appointment page for doctor. Doctor can see all of his appointments along with patient
name, serial no, date and time. Can also search specific date, previous, next appointments and
more details.
48
Fig 5.6.10: View Appointments for Doctor.
Prescribe Medicine
It is a new feature of this system where a doctor will get messages from patients if he agreed
prior. Otherwise he will not get any message. In figure it shows that a doctor account, who
agreed to help patient online get messages from them. He can reply or delete it.
49
Fig 5.6.11: Prescribe Medicine by Doctor
Add Doctor
Here admin register doctors of their hospital. It is essential to input all the fields. System will
notify after successfully added. After adding a doctor in the system by the admin doctor can
access his account using his username and password. In figure it shows adding a doctor.
50
Fig 5.6.12: Admin Register Doctor
View Patients
Admin can see the patient list, which are registered in the system. He can see more details or
delete any patient from the system if he wants. In figure it shows the patient list in admin panel.
51
Fig 5.6.13: View Patients by Admin
View Booking
Admin can see all the bookings along with doctor name, date and time. He can find out bookings
by doctor name, by specialist or by date. He can search specific date also. In the figure it shows
the booking page.
52
Fig 5.6.14: View Bookings by Admin.
53
Chapter 6
DATA DICTIONARY
6.1 Data Dictionary
In database management systems, a file defines the basic organization of a database. A data
dictionary contains a list of all files in the database, the number of records in each file, and
the names and types of each field. Most database management systems keep the data dictionary
hidden from users to prevent them from accidentally destroying its contents. Data dictionaries do
not contain any actual data from the database, only book keeping information for managing it.
Without a data dictionary, however, a database management system cannot access data from the
database. A Data Dictionary is a data structure that stores meta-data, i.e., data about data. The
Software package for a stand-alone Data Dictionary or Data Repository may interact with the
software modules of the DBMS, but it is mainly used by the Designers, Users and
Administrators of a computer system for information resource management. These systems are
used to maintain information on system hardware and software configuration, documentation,
application and users as well as other information relevant to system administration.
The data dictionary is an organized listing of all data element that are applicable to the system
with precise, accurate definitions so that both user and system analysis will have a common
understanding of inputs, outputs components of stores and event intermediate calculations.
6.2 Database
Database is the collection of data, which contains information relevant to an enterprise. Database
holds all the information needed by the system. In my system I used relational database. In which
it holds all data in a table format. Database is very much important because information added,
edited or deleted are maintained in the database.
6.3 Database Management System
A database management system (DBMS) is collection of interrelated data and a set of program to
access those data. The collection of data, usually referred to as the database contains information
54
relevant to an enterprise. The primary goal of a DBMS is to provide a way to store and retrieve
database information that is both convenient and efficient.
6.4 Tables of System
6.4.1 Patient Info Table
It is the patient information table. It contains all the information about patient. Here pid is the
primary key. And pName, email, accountNo are the unique key.
Column Type Null Index
fName varchar(20) No
lName varchar(20) No
pid int(8) No PK
pName varchar(20) No
email varchar(40) No
password varchar(20) No
contactNo varchar(20) No
address varchar(40) No
dateOfBirth varchar(20) No
city varchar(20) No
gender varchar(20) No
accountNo varchar(20) No
bloodGroup varchar(4) No
specialSickness varchar(40) No
dHelp varchar(20) No
55
6.4.2 Doctor Info Table
It holds all the information of doctors. Here did is the primary key. dName, email are the unique
key.
Column Type Null Index
Did int(8) No PK
dName varchar(20) No
email varchar(40) No
password varchar(20) No
address varchar(40) No
specialist varchar(20) No
gender varchar(20) No
payment int(10) No
accountNo varchar(20) No
qualification varchar(20) No
Help varchar(20) No
fName varchar(20) No
lName varchar(20) No
6.4.3 Appointment Table
It is the appointment table where all appointments are saved with doctor id, patient id, serial no,
date and time.
Column Type Null Index
serialNo int(8) No
Pid int(8) No FK
Did int(8) No FK
56
Date varchar(20) No
Time varchar(20) No
6.4.4 Doctor Details Table
It holds additional information about doctors. Here doctor id is the foreign key.
Column Type Null Index
Did int(8) No FK
Pic blob No
achievements varchar(400) No
specialDegree varchar(400) No
qualificationDetails varchar(400) No
startProfession varchar(400) No
6.4.5 Invalid Patient Info Table
It holds all the patient information, who deactivated their account. Like as patient table pid is the
primary key.
Column Type Null Index
fName varchar(20) No
lName varchar(20) No
Pid int(8) No PK
pName varchar(20) No
email varchar(40) No
password varchar(20) No
contactNo varchar(20) No
57
address varchar(40) No
dateOfBirth varchar(20) No
City varchar(20) No
gender varchar(20) No
accountNo varchar(20) No
bloodGroup varchar(4) No
specialSickness varchar(40) No
dHelp varchar(20) No
6.4.6 Message Table
It holds the messages of doctors and patients. It contains message, reply, subject, date and time.
Separate date and time for doctor and patient. That is massage date and time for doctor. Same as
patient.
Column Type Null Index
Pid int(8) No FK
Did int(8) No FK
pSubject varchar(300) No
dSubject varchar(300) No
Date varchar(20) No
Time varchar(20) No
Pmsg varchar(300) No
Dmsg varchar(300) No
ddate varchar(20) No
dtime varchar(20) No
58
6.4.7 Doctor Schedule Table
It holds the schedule for doctor. Here did is the foreign key.sTime1 is for start time and sTime2
is for am or pm. Same as eTime1 and eTime2. Dinterval is the duration.
Column Type Null Index
Did int(8) No FK
Day varchar(20) No
sTime1 varchar(20) No
sTime2 varchar(20) No
eTime1 varchar(20) No
eTime2 varchar(20) No
dinterval varchar(20) No
6.4.8 Bank Account Table
It is the table for bank account. It holds all the information for opening a bank account. Here
account no is the primary key. Card no unique key.
Column Type Null Index
accountNo bigint(11) No PK
userName varchar(20) No
cardNo bigint(13) No
pinNo int(4) No
balance bigint(10) No
toAccount bigint(11) No
fromAccount bigint(11) No
date varchar(20) No
time varchar(20) No
59
6.4.9 System Admin Table
It is the table for admin login. Only user name and password is needed.
Column Type Null Index
aName varchar(20) No
password varchar(20) No
6.4.10 Bank Admin Table
It is the table for bank admin login. Only user name and password is needed.
Column Type Null Index
aName varchar(20) No
password varchar(20) No
60
Chapter 7
SOFTWARE IMPLEMENTATION
7.1 Software Implementation
A software product implementation method is a systematically structured approach to effectively
integrate software based service or component into the workflow of an organizational structure
or an individual end-user. The implementation of product software, as the final link in the
deployment chain of software production, is in a financial perspective of a major issue. The
software can be able to access through the internet. I used to implement the software using given
below:
 PHP
 HTML
 JAVA SCRIPT
 MySQL
 Ajax
PHP
PHP is a powerful tool for making dynamic and interactive Web pages. PHP is the widely used,
free and efficient alternative to competitors such as Microsoft’s ASP.
o Server-side, scripting language
o Event based
o Designed for use with HTML. File Name .php
o Provide more flexibility than HTML alone
Syntax is similar to C, Java, and Perl 61. PHP is perfectly suited for web development and can be
embedded directly into the HTML code. The PHP syntax is very similar to Perl and C. PHP is
often used together with Apache (Web server) on various operating systems.
HTML
HTML is a language for instructing the browser how to display web pages. It is the building
block for building web site.
61
o HTML is a language for describing web pages.
o HTML stands for Hyper Text Markup Language.
o HTML is not a programming language, it is a markup language.
o An HTML file is a text file containing small markup HTML stands for.
o The markup tags tell the Web browser how to display the page.
o An HTML file must have an html file extension.
o An HTML file can be created using a simple text editor.
Java Script
JavaScript is used in millions of Web pages to improve the design, validate forms, detect
browsers, create cookies, and much more. JavaScript is the most popular scripting language on
the internet, and works in all major browsers, such as Internet Explorer, Firefox, and Opera.
o JavaScript was designed to add interactivity to HTML pages.
o JavaScript is a scripting language.
o A scripting language is a lightweight programming language.
o JavaScript is usually embedded directly into HTML pages.
o JavaScript is an interpreted language (means that scripts execute without preliminary
compilation).
o Everyone can use JavaScript without purchasing a license.
MySQL
MySQL is the world's most widely used relational database management system. It is most
widely used open-source RDBMS. The SQL acronym stands for Structured Query Language.
MySQL is a popular choice of database for use in web applications.
o Written in C and C++.
o Tested with a broad range of different compilers.
o Works on many different platforms.
o Provides transactional and non transactional storage engines.
o Designed to make it relatively easy to add other storage engines.
o All data is saved in the chosen character set.
o Uses multi-layered server design with independent modules.
o Can refer to tables from different databases in the same statement.
62
Ajax
The term Ajax has come to represent a broad group of web technologies that can be used to
implement a web application that communicates with a server in the background, without
interfering with the current state of the page. Since then, however, there have been a number of
developments in the technologies used in an Ajax application, and the definition of the term
Ajax. XML is not required for data interchange and therefore XSLT is not required for the
manipulation of data. JavaScript Object Notation (JSON) is often used as an alternative format
for data interchange, although other formats such as preformatted HTML or plain text can also
be used.
o HTML, XHTML and CSS is used for presentation.
o The Document Object Model (DOM) for dynamic display of and interaction with data.
o XML for the interchange of data, and XSLT for its manipulation.
o The XML Http Request object for asynchronous communication.
o JavaScript to bring these technologies together
7.2 Web Application
Web Server
Web server can refer to either the hardware or the software that helps to deliver Web content that
can be accessed through the Internet. The most common use of web servers is to host, but there
are other uses such as gaming, data storage or running enterprise applications. The web server
has what seems to be a fairly straightforward job. It sits there running on top of our operating
system, listing for request that somebody on the web might make, responding to those requests,
and serving out the appropriate web pages. In this project I use the apache web server.
Apache
The Apache HTTP Server, commonly referred to as Apache, is a web server software notable for
playing a key role in the initial growth of the World Wide Web. The apache web server is the
most popular web server. It likes PHP and MySQL is an open source project. Apache is a great
web server. It is extremely quick and amazingly stable. It is very easy and more reliable for the
database.
63
Web Browser
Mozilla Firefox 33.0 is used to develop and run the system. It is a free and open-source web
browser developed for Windows, OSX, and Linux, with a mobile version for Android, by the
Mozilla Foundation and its subsidiary, the Mozilla Corporation. Firefox uses the Gecko layout
engine to render web pages, which implements current and anticipated web standards.
7.3 Text Editor
Notepad++
Notepad++ is a simple text editor for Microsoft Windows. It is a common text-only editor. The
resulting files typically saved with the .txt extension. But can also be saved as other extension
like .html, .php, .css, .js etc. It has no format tags or styles, making the program suitable for
editing system files to use in a DOS environment
o Syntax Highlighting and Syntax Folding.
o User Defined Syntax Highlighting and Folding.
o Perl Compatible Regular Expression Search/Replace.
o GUI entirely customizable: minimalist, tab with close button, multi-line tab, vertical tab
and vertical document list.
o Auto-completion: Word completion, Function completion and Function parameters hint.
o Multi-Document (Tab interface).
o Multi-View.
7.4 Software
XAMPP
XAMPP is a free and open source, cross-platform, web server, solution stack package, consisting
mainly of the Apache HTTP Server, MySQL database, and interpreters for scripts written in the
PHP and Perl programming languages [9]. Components of XAMPP for Windows and Linux,
Mac OSX, includes Apache, MySQL, PHP, phpMyAdmin, FileZilla FTP Server, Tomcat,
XAMPP Control Panel.
o It is the easiest way to carry out Apache-MySQL-PHP work.
o Available for Windows and Linux flavors.
o Features an easy control panel, start / stop panel, and port checker.
64
Chapter 8
TESTING
Software testing is an investigation conducted to provide stakeholders with information about the
quality of the product or service under test [7].Without doubt is one of the most important parts
of software development life cycle. It is an element of software quality support and that can be
considered as a technique of running a program in such a way in order to uncover any errors.
Testing also illustrates that software functions look like functioning according to specifications,
that behavioral and overall performances requirements seem also have been met. The test is
performed when the system is complete. It includes the execution of a software component or
system component to evaluate more than one properties of interest. As the number of possible
tests for even simple software components is practically infinite, all software testing uses some
strategy to select tests that are feasible for the available time and resources [7]. As a result,
software testing typically attempts to execute a program or application with the intent of finding
software bugs, errors and other defects. In this chapter I test my simulation software with testing
method.
The primary intention of testing is to identify software failures so that defects could possibly be
discovered and corrected. Testing cannot establish that a product functions effectively under all
conditions but can only prove that it does not function properly under some specific conditions.
The scope of software testing often includes examination of code along with execution of that
code in various environments and issues as well as inspecting the aspects of code. Does it do
what it is supposed to do? Does it give the desired result? Does it check predefined conditions?
And do what it needs to do. Resources and information derived from software testing may be
utilized to correct the process that can be used in software development.
8.1 Testing
The testing of the system starts when I start coding. In every step of coding of the software,
testing works as an important part of checking that is it okay or not. To validate and verify all
activities I used different types and methods of testing. It helps to ensure that it is working fine
and requirements are met properly.
65
8.2 Testing Methods
There are many approaches available in software testing. Any engineering product can be tested
in any ways given below:
1. Knowing the specified function that a product has been designed to perform, tests can be
conducted that demonstrate each function is fully operational while at the same time
searching for error in each function.
2. Knowing the internal working of a product, tests can be conducted to ensure that all
internal operations are performed according to specification and all internal components
have been adequately examined.
For my system I specify all of its functions in requirement. Than I design its interface. After that
I start to implement internal functions. And test each function operate fully with different test
case. Now I describe some of my testing methods by which I test my system.
8.2.1 Static Testing
Reviews, walkthroughs, or inspections are referred to as static testing [8]. Static testing is often
implicit as proofreading. When programming text editors check source code structure check
syntax and data flow as static program analysis. To build the software I used notepad++ for text
editor. In this text editor syntax error are identified automatically. So one thing I have to check is
that, syntactic error in my code. Check conditions of loops properly, any missing symbols like
semicolon etc. It involve verification of the system, it helps improve software quality. Among
the techniques for static analysis, mutation testing can be used to ensure the test-cases will detect
errors which are introduced by mutating the source code. Several time I changed the source code
to check whether it satisfy the required condition.
8.2.2 Dynamic Testing
Executing programmed code with a given set of test cases is referred to as dynamic testing
[8].Dynamic testing takes place when the program itself is run. That means after done the static
testing dynamic testing is performed. Dynamic testing may begin before the program is 100%
complete in order to test particular sections of code and are applied to discrete functions or
modules. Dynamic testing involves validation of the system. Some of my test case, their result,
expected result, actual result are given below. In table below I tried out by this inputs. Check
66
that, whether my predefined conditions are met at run time. It is done for user registration page.
For all the other pages I do also like this way.
Table 8.2.2: Test Cases for User Registration Page.
Test source Input Expected result Actual result Comment
First name Lucky1 Not accepted Not accepted
First name cannot
contain any digit
Last name Sultana05 Not accepted Not accepted
Last name cannot
contain any digit
Email aaa@ Not accepted Not accepted
Invalid email
address
Email lucky@yahoo.com Accepted Accepted
Valid email
address
First name shahrin Accepted Accepted Valid first name
Password 1234 Accepted Accepted
Length
acceptable
Password 123 Not accepted Not accepted
Password must
have 4 to 20
characters
Confirm
Password
1235 Not accepted Not accepted
Confirm
password must be
same as password
In the box approach testing methods are divided into two. They are,
8.2.3 Black Box Testing
Black-box testing treats the software as a "black box". Examine functionality of the software
without any knowledge of internal implementation. The testers are only aware of what the
software is supposed to do, not how it does it [8]. This test is performed in presence of user. I
67
perform black box testing by giving the software to my friend to use. He tried different portion of
the system and give me a result. From his result I found different problems of the system. Then I
tried to solve those problems. Some problems are given in the table below,
Table 8.2.3: Black-Box Testing Test Cases.
Test source Input Expected output Output Comment
First name Hasib -hasan Accepted Not accepted
First name may
contain white
space. But it
doesn’t take it.
Solved further.
Last name Not accepted Not accepted
Last name cannot
be empty
Email lucky@yahoo.com Accepted Not accepted
Valid email
address but
already used.
Solved further.
Account no Not accepted Not accepted Cannot be empty.
Account no 1234 Not accepted Accepted
Unregistered
account no.
8.2.4 White Box Testing
White-box testing tests internal structures or workings of a program, as opposed to the
functionality exposed to the end-user. In white-box testing an internal perspective of the system,
as well as programming skills, are used to design test cases. The tester chooses inputs to exercise
paths through the code and determine the appropriate outputs [8]. In this type testing all the lines,
loops and logical expression are tested by executing the program. I did some testing in the
software by white box testing.
68
 When a user wants to select an appointment date, that is already passed, system will alert
him.
Fig 8.2.4.1: Message When User Want to Select Previous Date.
 When a user want to take appointment more than one in a same date it cannot be done.
Fig 8.2.4.2: User Want to Take Appointment More Than One in the Same Date.
8.3 Testing Level
Tests are frequently grouped by where they are added in the software development process.
There are four levels of tests:
 Unit Testing– It is also known as component testing refers to tests that verify the
functionality of a specific section of code, usually at the function level. These types of
69
tests are usually written by developers as they work on code, to ensure that the specific
function is working as expected. One function might have multiple tests, to catch corner
cases or other branches in the code. Unit testing alone cannot verify the functionality of a
piece of software, but rather is used to ensure that the building blocks of the software
work independently from each other. In my system unit testing is done by testing various
java script functions. For example, I write a java script code for validating user input in
sign up page. When a user want to register without having any password I want that
system will show an error message. I do this using java script. Likely password less than
four characters, first name or last name contain any digit, invalid account no user name
already used etc. That’s unit testing for my system.
 Integration Testing -Once I have unit tests covering the critical parts of the application,
then I start assembling the parts. Interfaces between different components of a system are
good places for mistakes, so the integration of components needs to be tested as well.
This is what integration tests are about. Integration testing is any type of software testing
that seeks to verify the interfaces between components against a software design.
Software components may be integrated in an iterative way or all together. So in
integration testing I tested the whole module as different parts are combined together.
 Component interface testing - The practice of component interface testing can be used
to check the handling of data passed between various units, or subsystem components,
beyond full integration testing between those units. The data being passed can be
considered as "message packets" and the range or data types can be checked, for data
generated from one unit, and tested for validity before being passed into another unit. For
component interface testing, when I complete patient module test its integrated parts then
I combine its result with doctor module. Check the data and values pass from the patient
module are correctly found in the doctor module or not. Similarly for admin module.
 System Testing - Once all bricks are combined into a system, this system may not be
functioning as expected, even if integration tests haven't revealed anything wrong. Here,
system tests come into play. System testing, or end-to-end testing, tests a completely
integrated system to verify that it meets its requirements. For this testing as the whole
system is completed I checked whether the whole system works fine. If there are any
contradiction among the modules.
C111230
C111230
C111230
C111230
C111230
C111230
C111230
C111230
C111230

More Related Content

What's hot

Hospital management system
Hospital management systemHospital management system
Hospital management systemsubu
 
Doctor appointment-booking-script
Doctor appointment-booking-scriptDoctor appointment-booking-script
Doctor appointment-booking-scriptCoderobotics Studio
 
Ignou MCA mini project report
Ignou MCA mini project reportIgnou MCA mini project report
Ignou MCA mini project reportHitesh Jangid
 
Online doctor appointment and emr system
Online doctor appointment and emr systemOnline doctor appointment and emr system
Online doctor appointment and emr systemAnjelika Parasar
 
Hospital management final report presentation
Hospital management final report presentationHospital management final report presentation
Hospital management final report presentationMd Abul Kalam Azad
 
Online doctor appointment
Online doctor appointmentOnline doctor appointment
Online doctor appointmentAmna Nawazish
 
Hospital management synopsis
Hospital management synopsisHospital management synopsis
Hospital management synopsisYogeshDhamke2
 
DOCTOR APPOINTMENT SYSREM PPT (1).pptx
DOCTOR APPOINTMENT SYSREM PPT (1).pptxDOCTOR APPOINTMENT SYSREM PPT (1).pptx
DOCTOR APPOINTMENT SYSREM PPT (1).pptxYashAhire28
 
44478167 hospital-management-system
44478167 hospital-management-system44478167 hospital-management-system
44478167 hospital-management-systemAkshay Iliger
 
Patient appointment app for your clinic or hospital
Patient appointment app for your clinic or hospitalPatient appointment app for your clinic or hospital
Patient appointment app for your clinic or hospitalwww.webprogr.com
 
"Hospital Management"
"Hospital Management""Hospital Management"
"Hospital Management"vivek kct
 
Hospital management system project
Hospital management system projectHospital management system project
Hospital management system projectHimani Chopra
 
Hospital Management System proposal
Hospital Management System proposalHospital Management System proposal
Hospital Management System proposalChandresh Prasad
 
Student Management System report
Student Management System reportStudent Management System report
Student Management System reportChandresh Prasad
 
Super marketbillingsystemproject
Super marketbillingsystemprojectSuper marketbillingsystemproject
Super marketbillingsystemprojectVickey Mahant
 

What's hot (20)

Hospital management system
Hospital management systemHospital management system
Hospital management system
 
Doctor appointment-booking-script
Doctor appointment-booking-scriptDoctor appointment-booking-script
Doctor appointment-booking-script
 
Hospital management system
Hospital management systemHospital management system
Hospital management system
 
Ignou MCA mini project report
Ignou MCA mini project reportIgnou MCA mini project report
Ignou MCA mini project report
 
Online doctor appointment and emr system
Online doctor appointment and emr systemOnline doctor appointment and emr system
Online doctor appointment and emr system
 
Hospital management final report presentation
Hospital management final report presentationHospital management final report presentation
Hospital management final report presentation
 
Online doctor appointment
Online doctor appointmentOnline doctor appointment
Online doctor appointment
 
Hospital management synopsis
Hospital management synopsisHospital management synopsis
Hospital management synopsis
 
Hospital management system
Hospital management systemHospital management system
Hospital management system
 
Report hospital
Report hospitalReport hospital
Report hospital
 
DOCTOR APPOINTMENT SYSREM PPT (1).pptx
DOCTOR APPOINTMENT SYSREM PPT (1).pptxDOCTOR APPOINTMENT SYSREM PPT (1).pptx
DOCTOR APPOINTMENT SYSREM PPT (1).pptx
 
44478167 hospital-management-system
44478167 hospital-management-system44478167 hospital-management-system
44478167 hospital-management-system
 
Patient appointment app for your clinic or hospital
Patient appointment app for your clinic or hospitalPatient appointment app for your clinic or hospital
Patient appointment app for your clinic or hospital
 
"Hospital Management"
"Hospital Management""Hospital Management"
"Hospital Management"
 
Hospital management system project
Hospital management system projectHospital management system project
Hospital management system project
 
Hospital Management System proposal
Hospital Management System proposalHospital Management System proposal
Hospital Management System proposal
 
Student Management System report
Student Management System reportStudent Management System report
Student Management System report
 
E healthcare ppt
E healthcare pptE healthcare ppt
E healthcare ppt
 
Healthcare copy
Healthcare   copyHealthcare   copy
Healthcare copy
 
Super marketbillingsystemproject
Super marketbillingsystemprojectSuper marketbillingsystemproject
Super marketbillingsystemproject
 

Viewers also liked

Doctor Appointment Management System
Doctor Appointment Management SystemDoctor Appointment Management System
Doctor Appointment Management SystemSM. Aurnob
 
Dfd examples
Dfd examplesDfd examples
Dfd examplesMohit
 
automated doctor appointment and prescription management system
automated doctor appointment and prescription management systemautomated doctor appointment and prescription management system
automated doctor appointment and prescription management systemluckymoni76
 
Clinic Workflow Diagram
Clinic Workflow DiagramClinic Workflow Diagram
Clinic Workflow Diagramataveechai
 
09.project hospital management system
09.project hospital management system09.project hospital management system
09.project hospital management systemshahidahmad527
 
09.project hospital management system
09.project hospital management system09.project hospital management system
09.project hospital management systemAbiola Oladejo
 
Online clinic reservation
Online clinic reservationOnline clinic reservation
Online clinic reservationMay Ann Mas
 
Library management sytem
Library management sytemLibrary management sytem
Library management sytemashu6
 
Event Management System Document
Event Management System Document Event Management System Document
Event Management System Document LJ PROJECTS
 

Viewers also liked (11)

Doctor Appointment Management System
Doctor Appointment Management SystemDoctor Appointment Management System
Doctor Appointment Management System
 
Dfd examples
Dfd examplesDfd examples
Dfd examples
 
Final presntatn
Final presntatnFinal presntatn
Final presntatn
 
automated doctor appointment and prescription management system
automated doctor appointment and prescription management systemautomated doctor appointment and prescription management system
automated doctor appointment and prescription management system
 
Clinic Workflow Diagram
Clinic Workflow DiagramClinic Workflow Diagram
Clinic Workflow Diagram
 
09.project hospital management system
09.project hospital management system09.project hospital management system
09.project hospital management system
 
09.project hospital management system
09.project hospital management system09.project hospital management system
09.project hospital management system
 
Online clinic reservation
Online clinic reservationOnline clinic reservation
Online clinic reservation
 
My project work
My project workMy project work
My project work
 
Library management sytem
Library management sytemLibrary management sytem
Library management sytem
 
Event Management System Document
Event Management System Document Event Management System Document
Event Management System Document
 

Similar to C111230

Blood pressure.pdf
Blood pressure.pdfBlood pressure.pdf
Blood pressure.pdfSKma4
 
Doctor appointment system.docx
Doctor appointment system.docxDoctor appointment system.docx
Doctor appointment system.docxbbc53020
 
Hospital Management System SRS for software
Hospital Management System SRS for softwareHospital Management System SRS for software
Hospital Management System SRS for softwareknowledgeradha07
 
CLINICAL_MANAGEMENT_SYSTEM_PROJECT_DOCUM.docx
CLINICAL_MANAGEMENT_SYSTEM_PROJECT_DOCUM.docxCLINICAL_MANAGEMENT_SYSTEM_PROJECT_DOCUM.docx
CLINICAL_MANAGEMENT_SYSTEM_PROJECT_DOCUM.docxHussainiHamza1
 
HOSPITAL-MANAGEMENT-SYSTEM.docx
HOSPITAL-MANAGEMENT-SYSTEM.docxHOSPITAL-MANAGEMENT-SYSTEM.docx
HOSPITAL-MANAGEMENT-SYSTEM.docxRajNath14
 
Hospital mangement system report file
Hospital mangement system report fileHospital mangement system report file
Hospital mangement system report fileNausheen Hasan
 
18CSE029 project presentation.pptx
18CSE029 project presentation.pptx18CSE029 project presentation.pptx
18CSE029 project presentation.pptxMDSUMONRAHMAN1
 
Outpatient management system with smart queue processing and e-prescription
Outpatient management system with smart queue processing and e-prescriptionOutpatient management system with smart queue processing and e-prescription
Outpatient management system with smart queue processing and e-prescriptionMr. Green
 
Software Engineering Final Year Project Report
Software Engineering Final Year Project ReportSoftware Engineering Final Year Project Report
Software Engineering Final Year Project Reportjudebwayo
 
Health Care System with Smart Assistant
Health Care System with Smart AssistantHealth Care System with Smart Assistant
Health Care System with Smart AssistantIRJET Journal
 
Hospital Management System
Hospital Management SystemHospital Management System
Hospital Management SystemRANJIT SINGH
 
Report on Smart Blood Bank project
Report on Smart Blood Bank projectReport on Smart Blood Bank project
Report on Smart Blood Bank projectk Tarun
 
A Project Paper On Smart Gym Management System
A Project Paper On Smart Gym Management SystemA Project Paper On Smart Gym Management System
A Project Paper On Smart Gym Management SystemAmy Roman
 
Final-project-Report.pdf
Final-project-Report.pdfFinal-project-Report.pdf
Final-project-Report.pdfMahadiHassan93
 
What Is Cloud Medical Software and Why Should Doctors Consider It?
What Is Cloud Medical Software and Why Should Doctors Consider It?What Is Cloud Medical Software and Why Should Doctors Consider It?
What Is Cloud Medical Software and Why Should Doctors Consider It?PostDICOM
 
SCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.doc
SCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.docSCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.doc
SCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.docbosed0737
 

Similar to C111230 (20)

Blood pressure.pdf
Blood pressure.pdfBlood pressure.pdf
Blood pressure.pdf
 
Doctor appointment system.docx
Doctor appointment system.docxDoctor appointment system.docx
Doctor appointment system.docx
 
Hospital Management System SRS for software
Hospital Management System SRS for softwareHospital Management System SRS for software
Hospital Management System SRS for software
 
CLINICAL_MANAGEMENT_SYSTEM_PROJECT_DOCUM.docx
CLINICAL_MANAGEMENT_SYSTEM_PROJECT_DOCUM.docxCLINICAL_MANAGEMENT_SYSTEM_PROJECT_DOCUM.docx
CLINICAL_MANAGEMENT_SYSTEM_PROJECT_DOCUM.docx
 
HOSPITAL-MANAGEMENT-SYSTEM.docx
HOSPITAL-MANAGEMENT-SYSTEM.docxHOSPITAL-MANAGEMENT-SYSTEM.docx
HOSPITAL-MANAGEMENT-SYSTEM.docx
 
Health information card
Health information cardHealth information card
Health information card
 
Hospital mangement system report file
Hospital mangement system report fileHospital mangement system report file
Hospital mangement system report file
 
Majd
MajdMajd
Majd
 
Majd
MajdMajd
Majd
 
18CSE029 project presentation.pptx
18CSE029 project presentation.pptx18CSE029 project presentation.pptx
18CSE029 project presentation.pptx
 
Outpatient management system with smart queue processing and e-prescription
Outpatient management system with smart queue processing and e-prescriptionOutpatient management system with smart queue processing and e-prescription
Outpatient management system with smart queue processing and e-prescription
 
Software Engineering Final Year Project Report
Software Engineering Final Year Project ReportSoftware Engineering Final Year Project Report
Software Engineering Final Year Project Report
 
Health Care System with Smart Assistant
Health Care System with Smart AssistantHealth Care System with Smart Assistant
Health Care System with Smart Assistant
 
Hospital Management System
Hospital Management SystemHospital Management System
Hospital Management System
 
Report on Smart Blood Bank project
Report on Smart Blood Bank projectReport on Smart Blood Bank project
Report on Smart Blood Bank project
 
Fyp report
Fyp reportFyp report
Fyp report
 
A Project Paper On Smart Gym Management System
A Project Paper On Smart Gym Management SystemA Project Paper On Smart Gym Management System
A Project Paper On Smart Gym Management System
 
Final-project-Report.pdf
Final-project-Report.pdfFinal-project-Report.pdf
Final-project-Report.pdf
 
What Is Cloud Medical Software and Why Should Doctors Consider It?
What Is Cloud Medical Software and Why Should Doctors Consider It?What Is Cloud Medical Software and Why Should Doctors Consider It?
What Is Cloud Medical Software and Why Should Doctors Consider It?
 
SCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.doc
SCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.docSCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.doc
SCHOOL_MANAGEMENT_SYSTEM_This_Report_Pre.doc
 

Recently uploaded

How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitolTechU
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfUjwalaBharambe
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentInMediaRes1
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxAvyJaneVismanos
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementmkooblal
 

Recently uploaded (20)

How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptx
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media Component
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptx
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of management
 

C111230

  • 1. Automated Doctor Appointment and Doctor Help Management System Submitted By Shahrin Sultana A PROJECT REPORT SUBMITTED IN PARTIAL FULFILMENT OF THE REQUIREMENTS FOR THE DEGREE OF BACHELOR OF COMPUTER SCIENCE AND ENGINEERING Department of Computer Science and Engineering International Islamic University Chittagong May 2015
  • 2. i Automated Doctor Appointment and Doctor Help Management System By Shahrin Sultana C111230 PROJECT REPORT SUBMITTED FOR THE PARTIAL FULFILLMENT OF THE REQUIREMENT FOR THE DEGREE OF B. SC. IN COMPUTER SCIENCE AND ENGINEERING Approved by: ______________________________________ Mohammad Aman Ullah Supervisor Assistant Professor Department of Computer Science & Engineering International Islamic University Chittagong __________________________________ Dr. Md. Monirul Islam Head Associate Professor and Head Department of Computer Science & Engineering International Islamic University Chittagong _______________________________________ Dr. Mohammad Shahadat Hossain External Professor Department of Computer Science & Engineering University of Chittagong
  • 3. ii DECLARATION This is to certify that the project entitled “Automated Doctor Appointment System and Doctor Help Management System” done by Shahrin Sultana student of Bachelor in Computer Science and Engineering at International Islamic University Chittagong under the guidance of Mohammad Aman Ullah and Md. Azhar Uddin. The matter embodied in this project has not been submitted earlier for the award of any degree or diploma to the best of my knowledge and belief. ____________________________ Shahrin Sultana
  • 4. iii DEDICATION This project is dedicated to My Parents and Teachers
  • 5. iv ACKNOWLEDGEMENT Words are not just enough to express my gratitude but I take this opportunity to express my profound sense of gratitude and respect to all those who helped me throughout the duration of this project. I acknowledge the effort of those who have contributed significantly to my project. First of all I am very thankful to Allah for providing me such a great opportunity to do the Project and also very thankful to my Parents for their regular support and guidance’s. I feel privileged to offer my sincere thanks and deep sense of gratitude to my respected and honorable Teacher Mohammad Aman Ullah, Supervisor, Md. Azhar Uddin, Co-supervisor, for expressing Their confidence in me by letting me work on a project of this magnitude and using latest technologies and providing Their support, help & encouragement in implementing this project. It would never been possible to complete this complicated task without Their continuous support, supervision and encouragement. In spite of very busy schedule He always guided me properly. It was an exciting and enlightening experience for me doing my project under His guidance and supervision. Last but not the least, am grateful to all my friends for providing critical feedback & support whenever required. There are times in such projects when clock beats you time and you run out of energy, you just want to finish it once and forever, Parents and Friends made me endure such times with their unfailing humor & warm wishes.
  • 6. v ABSTRACT The project entitled as “Automated Doctor Appointment and Doctor Help Management System” is a web based application. It maintains records of patient, doctor, appointment and schedule that occur at any of the medical center. It maintains two levels of users, administrator level and user level. User level is divided into two, patient level and the doctor level. The administrator level encompasses the hospital staffs, who maintain the appointment records. The user level includes the patients, who take service from the hospital, and the doctors. The administrators are able to perform operations on more sensitive and confidential documents /modules that contain different information about doctors and patient to ensure confidentiality. System enables registration of new patient at the user level. Doctors are registered by hospital staff. From the account of user as patient, one can take appointment of a doctor; can see doctor details and all his appointment date and time. Another extra facility one will get is that, he can send message to a doctor about his sickness if he agrees prior and doctor can also reply it. The current system is taking appointment of a doctor by phone call or taking serial directly from the hospital. The proposed system has the following capabilities:-maintaining patient’s records, registering new patients, records of appointments and easy future references. Users and administrators can search records more easily. The project has been developed in back-end: PHP, MySQL and front-end: HTML, CSS, and JavaScript. The main motto of my project is to facilitate the people to take appointment easily, find doctors available schedule. It is also helpful for doctors to mange his schedule and appointments easily.
  • 7. vi TABLE OF CONTENTS TITLE APPROVAL i DECLARATION ii DEDICATION iii ACKNOELEDGEMENT iv ABSTRACT v TABLE OF CONTENTS LIST OF TABLES x LIST OF FIGURES xi Contents INTRODUCTION ........................................................................................................................................................... 1 1.1 Objectives of the Project .................................................................................................. 1 1.2 Motivation........................................................................................................................ 1 1.3 Requirement Specification............................................................................................... 2 1.4 Problems of the Existing System ..................................................................................... 2 1.5 Literature Review............................................................................................................. 3 CHAPTER 2..................................................................................................................................................................... 4 AUTOMATED DOCTOR APPOINTMENT AND DOCTOR HELP MANAGEMENT SYSTEM ....................... 4 2.1 Proposed System .............................................................................................................. 4
  • 8. vii 2.2 Site Proposal..................................................................................................................... 6 2.2.1 Features of Proposed System.................................................................................... 6 CHAPTER 3..................................................................................................................................................................... 8 METHODOLOGY .......................................................................................................................................................... 8 3.1 Necessity of Methodology ............................................................................................... 8 3.2 Software Development Life Cycle (SDLC)..................................................................... 9 3.2.1 Feasibility Study ....................................................................................................... 9 3.2.2 Requirement Definition .......................................................................................... 10 3.2.3 System Definition ................................................................................................... 11 3.2.4 System Design ........................................................................................................ 11 3.2.5 Program Design and Coding................................................................................... 11 3.2.6 Testing..................................................................................................................... 11 3.2.7 Implementation ....................................................................................................... 12 3.2.8 Changing Request Definition.................................................................................. 12 3.3 Software Process Model................................................................................................. 12 3.3.1 Incremental Model.................................................................................................. 13 CHAPTER 4................................................................................................................................................................... 15 FEASIBILITY STUDY................................................................................................................................................. 15 4.1 Gantt Chart..................................................................................................................... 15 4.2 Objectives of Feasibility Study ...................................................................................... 16 4.2.1 Technical Feasibility............................................................................................... 17 4.2.2 Economic Feasibility .............................................................................................. 17 4.2.3 Operational Feasibility............................................................................................ 18 4.2.4 Schedule Feasibility................................................................................................ 18 CHAPTER 5................................................................................................................................................................... 19 SOFTWARE DESIGN DESCRIPTION ..................................................................................................................... 19 5.1 Software Design Description ......................................................................................... 19 5.2 Design Overview............................................................................................................ 19 5.3 Traceability..................................................................................................................... 19
  • 9. viii 5.4 Architecture Design Process .......................................................................................... 20 5.5 Overall Design................................................................................................................ 20 5.5.1 Entity Relation Diagram ......................................................................................... 20 5.5.2 Date Flow Diagram................................................................................................. 22 5.5.3 Use Case Diagram................................................................................................... 29 5.5.4 Sequence Diagram .................................................................................................. 30 5.5.5 Activity Diagram .................................................................................................... 35 5.6 Interface Design ............................................................................................................. 39 CHAPTER 6................................................................................................................................................................... 53 DATA DICTIONARY................................................................................................................................................... 53 6.1 Data Dictionary .............................................................................................................. 53 6.2 Database ......................................................................................................................... 53 6.3 Database Management System....................................................................................... 53 6.4 Tables of System............................................................................................................ 54 6.4.1 Patient Info Table.................................................................................................... 54 6.4.2 Doctor Info Table.................................................................................................... 55 6.4.3 Appointment Table ................................................................................................. 55 6.4.4 Doctor Details Table............................................................................................... 56 6.4.5 Invalid Patient Info Table ....................................................................................... 56 6.4.6 Message Table ........................................................................................................ 57 6.4.7 Doctor Schedule Table............................................................................................ 58 6.4.8 Bank Account Table ............................................................................................... 58 6.4.9 System Admin Table............................................................................................... 59 6.4.10 Bank Admin Table.................................................................................................. 59 CHAPTER 7................................................................................................................................................................... 60 SOFTWARE IMPLEMENTATION ........................................................................................................................... 60 7.1 Software Implementation............................................................................................... 60 7.2 Web Application ............................................................................................................ 62 7.3 Text Editor...................................................................................................................... 63 7.4 Software ......................................................................................................................... 63
  • 10. ix CHAPTER 8................................................................................................................................................................... 64 TESTING ....................................................................................................................................................................... 64 8.1 Testing................................................................................................................................. 64 8.2 Testing Methods.................................................................................................................. 65 8.2.1 Static Testing .......................................................................................................... 65 8.2.2 Dynamic Testing..................................................................................................... 65 8.2.3 Black Box Testing................................................................................................... 66 8.2.4 White Box Testing.................................................................................................. 67 8.3 Testing Level.................................................................................................................. 68 8.4 Testing Types ................................................................................................................. 70 8.5 Importance of Testing ................................................................................................... 71 CHAPTER 9................................................................................................................................................................... 72 SOFTWARE MAINTANANCE................................................................................................................................... 72 9.1 Software Maintenance.................................................................................................... 72 9.2 Importance of Software Maintenance ............................................................................ 73 CHAPTER 10................................................................................................................................................................. 75 DISCUSSION AND CONCLUSION ........................................................................................................................... 75 10.1 Advantages of the system ................................................................................................. 75 10.2 Limitation of the system ................................................................................................... 75 10.3 Future Plan........................................................................................................................ 76 CHAPTER 11................................................................................................................................................................. 77 REFERENCES .............................................................................................................................................................. 77
  • 11. x LIST OF TABLES Table 6.4.1 Patient Info Table ………………………………………………………. 55 Table 6.4.2 Doctor Info Table ………………………………………………………. 56 Table 6.4.3 Appointment Table……………………………………………………… 56 Table 6.4.4 Doctor Details Table…………………………………………………….. 57 Table 6.4.5 Invalid Patient Info Table……………………………………………….. 57 Table 6.4.6 Message Table…………………………………………………………... 58 Table 6.4.7 Doctor Schedule Table………………………………………………….. 59 Table 6.4.8 Bank Account Table………………………………………………......... 59 Table 6.4.9 System Admin Table……………………………………………………. 60 Table 6.4.10 Bank Admin Table……………………………………………………… 60 Table 8.2.2 Test Cases for User Registration Page…………………………………… 67 Table 8.2.3 Black Box Testing Test Cases……………………………………………. 68 LIST OF FIGURES Fig 2.1: Proposed System……………………………………………………………..... 06 Fig 3.2: Software Development Life Cycle………………………………………......... 10 Fig 3.3.1: Incremental Model…………………………………………………………… 14 Fig 4.1: Gantt chart……………………………………………………………….......... 17 Fig 5.5.1: ERD………………………………………………………………………….. 23 Fig 5.5.2.1: Context Diagram…………………………………………………………… 25 Fig 5.5.2.2: Level 0 DFD………………………………………………………………... 26 Fig 5.5.2.3: Level 1 DFD for Doctor……………………………………………………. 27 Fig 5.5.2.4: Level 1 DFD for Patient……………………………………………………. 28 Fig 5.5.2.5: Level 2 DFD………………………………………………………………... 29
  • 12. xi Fig 5.5.3: Use Case……………………………………………………………………… 31 Fig 5.5.4.1: Sequence Diagram…………………………………………………………. 33 Fig 5.5.4.2: Sequence Diagram for Patient…………………………………………….. 34 Fig 5.5.4.3: Sequence Diagram for Doctor…………………………………………….. 35 Fig 5.5.4.4: Sequence Diagram for Admin…………………………………………….. 36 Fig 5.5.5.1: Activity Diagram for Patient……………………………………………… 38 Fig 5.5.5.2: Activity Diagram for Doctor……………………………………………… 39 Fig 5.5.5.3: Activity Diagram for Admin……………………………………………… 40 Fig 5.6.1: Home Page…………………………………………………………………… 41 Fig 5.6.2: Patient Signup………………………………………………………………... 42 Fig 5.6.3: Patient Login…………………………………………………………............ 43 Fig 5.6.4: Patient Appointment…………………………………………………………. 44 Fig 5.6.5: Select Appointment Date…………………………………………………….. 45 Fig 5.6.6: Payment Form………………………………………………………………... 45 Fig 5.6.7: Send Message to Doctor………………………………………………........... 46 Fig 5.6.8: Add Schedule for Doctor…………………………………………………….. 47 Fig 5.6.9: View Schedules for Doctor…………………………………………….......... 48 Fig 5.6.10: View Appointments for Doctor……………………………………………... 49 Fig 5.6.11: Prescribe Medicine by Doctor………………………………………………. 50 Fig 5.6.12: Admin Register Doctor……………………………………………………... 51 Fig 5.6.13: View Patients by Admin……………………………………………………. 52 Fig 5.6.14: View Bookings by Admin………………………………………………….. 53 Fig 8.2.4.1: Message When User Want to Select Previous Date……………………….. 69 Fig 8.2.4.2: User Want to Take Appointment More Than One in the Same Date……… 69 Fig 8.4: Testing Sequence………………………………………………………………. 71 Fig 10.2.1: Pie Chart of Different Maintenance………………………………………… 75
  • 13. 1 Chapter 1 INTRODUCTION The proposed system is to make an online web application for easily taking appointment of a doctor see the schedule of doctors, so that everyone can get information about doctor’s availability, time slot, and send request to any doctor for medicine. Doctors and patients can also easily communicate with each other from any where. This project is aimed at developing an online application for appointing a doctor. Users have to logging in the system to be able to take appointment of a doctor and update their information. Doctors have to logging to see his appointments. The proposed system could be accessed from any corner of the world on net. 1.1 Objectives of the Project Our modern age of technology is greatly depends on internet. Everything is converted to computer based for easier and faster communication. Here I tried to develop such a system, which will ensure some aspects,  Reliability, maintainability, cost-effectiveness and a nice user-friendly environment.  The objective of the project is to provide an opportunity of getting doctor appointment easily.  Proper management of appointments, securely stores all records.  Save money and time. 1.2 Motivation This project is enabling to search for doctor from user account. The motive of developing this application is to design a feature rich search engine which can make the search of doctors of the hospital. In the Automated Doctor appointment System the users (admin, patient, doctor) will be much benefited. Admin will be able to register doctor, view/delete patient listing, and finally moderate (insert, update and delete) information. The deliverables of the software are focused below in brief:  Theycanview,edit,andupdatetheirprofilefromanywhere.
  • 14. 2  User friendly interfaces are developed to use this software easily.  Doctor and patient information are stored.  All users can login by using username and password to access their information.  Reduce the paperwork and storage area.  Improve accuracy in result. 1.3 Requirement Specification Scope:- The scope of the project is to enable the users to search for doctors, get appointment and also send message to the doctor. User can search doctors which can make user to find specific doctor an easy task. This project has a large scope as it has the following features which help in making it easy to use, understand and modify it:  Easily take doctor appointment.  No Need to do Paper Work.  To save the environment by using paper free work.  To increase the accuracy and efficiency of the procedure.  Management of Patient and doctor Data. The implementation of this application also gives a hands-on experience in PHP, MySQL, HTML, CSS, JavaScript and Ajax. 1.4 Problems of the Existing System The main purpose of this Web Application is to handle doctor appointment easily among the hundreds of existing systems on World Wide Web. Though there are lots of applications like this in web but it is a matter of sorrow that, in our country real life example like this is very rear. Only a few amounts of hospitals in our country provide such facility. One may come to know that doctor’s serial is finished after arriving to the hospital. However, in the proposed system we will try to overcome these entire problems. Present Working System  In Various hospital one have to take appointment by phone call or by directly from the hospital. It is time consuming and costly.  Hospital staffs have to collect the information manually.
  • 15. 3  It needs paper work and takes input by human and there is a lot of transaction which is not efficiently done.  If any modifications or updating are required of any doctor/patient, it has to search and to be done it manually. So it is prone to error.  It is a time consuming activity of managing, updating and informing specific patient information.  Patient or doctor can’t modify their information themselves and if there is any update or modification,theyhavetoinformittohospitalstaffandgetitupdated.  It takes a lot of space for storage and other information. 1.5 Literature Review I read some papers related to this work. The main objective of their work is given below,  For the first one, Chutisant Kerdvibulvech and Nwe Ni Win, done it for a dental hospital. Here administrator of the system is dentist. Administrator can check the patient’s requests, manage the appointment schedule, and manage the patient’s information. Patients can submit their personal comments to the dental clinic for better services [10]. I think that, doctor has to manage all the activities. So excess workload for doctor. We can divide the work between doctor and hospital staff.  In the second one, Xiuju Zhan and Xiufeng Liu, built a system that consists of appointment registration, data management, data backup and recovery. They emphasize on date backup for security and recover from failure. For editing, deleting and searching of data special work is done. [11]Here I found that, they have not any option for payment.  In the third one, Mohd Helmy, Abd Wahab and others, implement a web-based appointment system by integrating with Intelligent System techniques. It does not have any ID and password to log-in before making any appointment. Role of agent is to manage information in databases. It is not only doctor but also other appointments [12]. Here I found that, they have not any user account.
  • 16. 4 Chapter 2 AUTOMATED DOCTOR APPOINTMENT AND DOCTOR HELP MANAGEMENT SYSTEM The “Automated Doctor Appointment and Doctor Help Management System” is a web- based application structured on PHP, MYSQL for providing better service and easiest access to appoint doctor and by using this system any hospital can manage appointment schedule easily. A new system is proposed which is processed through computers. The system is operated by three types of users, namely Administrator, Patient and Doctor. 2.1 Proposed System This software can be readily used by non-programming personal, avoiding human handled chance of error. This project is used by three types of users i. Administrator. ii. Patient. iii. Doctor. The system includes the entities as their admin. Only few members, who called admin, are able to control that system. Update any system information such as register doctor, view doctor, view patient, delete patient, delete doctor, and view appointments. Admins are the core user of the system. There is no involvement of any user other than administrator to update the core information due to security purpose. The second types of user, patient has limited access. He can add and modify information of his own. He can also see all of his appointments and can search doctor for the doctor list. He can pay doctor fee online. Another thing is that, he can send message to doctor about his sickness. This facility is only available for registered user who agreed before to get this facility. The third type of user is doctor. He is registered by admin. From his account he can add and modify his schedule time, modify his information, and see all of his appointments. Doctor can also search appointments of a specific date. Administrator, patient and doctor must be authorized user. The administrator has the central control over the whole. In figure below shows the proposed system architecture.Itshowshowthethreetypesofusercommunicatewiththesystem.
  • 17. 5 Main Points are:-  For patient  Register in system.  Taking appointment of doctor.  Send message to doctor.  For doctor  Set schedule.  View appointments.  Reply message.  For Admin  Register doctor.  View appointments.  Delete patient/doctor. ` ` Server $ Bank Database System patient admin doctor Req. for appointment Confirmation Req. for view appointments Response req. View all info. Respond Request Respond Request Respond Response req. Req. for account Fig 2.1: Proposed System.
  • 18. 6 2.2 Site Proposal This project proposal may be seen as an outline following the requirement analysis phase for a more complete and specific web site plan for the system. 2.2.1 Features of Proposed System The proposed system is better than others because some extensive features as follows, 2.2.1.1 Administrator Admin Panel: 1. Add Doctor: Admin can add doctor details using add doctor module. It has an option named agree to prescribepatient.Ifadoctoragreedtohelponlinethenhewillgetmessagefrompatientsotherwisenot. 2. View Doctor: Admin can see the doctor list in this module. Admin can view details and also can deletespecificdoctor. 3. View patient: Admincan seethepatient list inthis module; who areregisteredinthis system.Admin canviewdetailsandalsocandeletespecificpatientaccount. 4. Delete Patient: Admin can delete patient account by email id in this module. 5. Delete Doctor: Admin can delete doctor account by email id in this module. 6. View Booking: In this module admin can see all the appointments of doctors. It can be retrieved by doctorname,byspecialistorbydate.Oradmincansearchspecific. 2.2.1.2 Patient Patient Panel: 1. Create a Profile (Registration): Here a new user can register in the system. He must have to fill up all the information. He must have a unique user name, email id and account number. Here an option named “do you want online doctor help”. If anyone agree to this extra feature than he have to pay an amount and can request doctor online for prescribe medicine. Otherwise he will not get this facility. 2. Add More Information: In this module patient can add more information about him. 3. Modify Information: Patient can modify information whenever he needs. 4. Deactivate Account: If anyone wants to deactivate his account he can do that by this module. He has to enter user name, email and password correctly then his account will be deactivated.
  • 19. 7 5. Appointment: It is the most important module from where a patient can take doctors appointment. One can see doctor name, specialist and payment here. He can select one from there or can search by doctor name or by specialist. After getting his desire doctor he can see details of the doctor by the button “more” or can take appointment by “appointment” button. After pressing “appointment” he can see doctors schedule and time. He has to select the date. After satisfying all the conditions if everything okay then he has to pay the fixed amount for doctor fees. For payment he has to enter name on card, card no and pin no. if all are correct then he will get appointment successfully and get a notification. It has a sub module named view appointment. Where he can see all of his appointments along with, serial number, date and time. 6. Doctor Help: It is an extra feature of this system. One who agrees to get online doctor help will get this facility. For this he has to pay a fixed amount at the time of registration. He can send message to a doctorabouthissicknessandrequestdoctorformedicinethendoctorwillreply. 2.2.1.3 Doctor Doctor Panel: 1. Modify Information: Doctor can modify information whenever he needs. 2. Add Schedule: Doctor can add his visiting time schedule. He has to set start time, end time and duration of each patient visiting time. 3. View Schedule: Doctor can see all of his schedules. Can edit or delete schedule. 4. Appointments: Doctor can see all of his appointments. It is categorized by today, previous and next. He can see the patient name, serial no and time. He can also search for a specific date. 5. Prescribe Medicine: In this module doctor will receive message from patient. He can reply or delete. 6. Deactivate Account: If anyone wants to deactivate his account he can do that by this module. He has to enter user name, email and password correctly then his account will be deactivated.
  • 20. 8 Chapter 3 METHODOLOGY Software Engineering is the practice of using selected process techniques to improve the quality of a software development effort. This is based on the assumption, subject to endless debate and supported by patient experience, which is a methodical approach to software development results in fewer defects and therefore ultimately provides shorter delivery time and better value. The document collection of policies, process and procedures used by a development team or organization to practice software engineering is called its Software Development Methodology (SDM) or Software Development Life Cycle (SDLC). A methodology is a formalized approach to implementing the SDLC. There are many different system development methodologies and each one is unique because of its emphasis on process verses data and the order and focus it places on each SDLC phase. 3.1 Necessity of Methodology Software developers follows some methodology which is step wise process to develop a project involving usage of programming language for a particular solutions. It includes examining, designing, developing, testing, documenting, implementing, and evaluating the complex subject of software engineering. Developers work to reduce the risks involved in the project management. If a project runs for a long time, it has a higher chance of risks for the software development team and as well as the project. So developers have to follow a framework, which helps them to finish off the software development in the least amount of time. Agile software development is a group of software development methodology based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross functional teams [19]. We have to select methodology very wisely. The challenge in selecting a methodology is that if we wrongly select anyone that is not appropriate and don’t match with our project there is a big risk of project failure. In order to develop the system, we need a methodology. An advanced SDLC is the appropriate framework at this point.
  • 21. 9 3.2 Software Development Life Cycle (SDLC) Computer software experts have adapted several approaches from older engineering fields, and also for developing new ones. For instance, divide and conquer a widely known technique for handling more complex problems, is used in a number of ways in software engineering. The software engineering process, for example, is normally divided into phases. SDLC is a series of steps which provides a model for development and lifecycle management of software. It varies across industry and organization. But it has a standard. For this a number of system development life cycle models have been created. Some of them are waterfall, spiral, fountain, build and fix, rapid prototyping, incremental. Changing request definition Program design and coding System design System specification Requirement definition Feasibility study Implementation Testing SDLC Fig 3.2: Software Development Life Cycle. 3.2.1 Feasibility Study In the first stage of SDLC I have to make measure feasibility study for the proposed system. There are basically five parts to any effective Feasibility Study:
  • 22. 10 1. The Project Scope–I define the project scope earlier. Users can search for doctors, get appointment and also send message to the doctor. User can search doctors which can make user to find specific doctor an easy task.This project has a large scope as it has the following features which help in making it easy to use, understand and modify it.  Easily take doctor appointment.  No Need to do Paper Work.  To save the environment by using paper free work.  To increase the accuracy and efficiency of the procedure.  Management of Patient and doctor Data. 2. The Current Analysis – In Various hospital we have to take appointment by phone call or by directly from the hospital. It is time consuming and costly.Hospital staffs have to collect the information manually. It needs paper work and takes input by human and there is a lot of transaction which is not efficiently done.If anymodifications or updating is required ofanydoctor/patient,ithastosearchandtobedoneitmanually. So it is prone to error. 3. Requirements – User requires using the system simply a laptop, PC or mobile phone to access internet. Using internet it is very much easy to take appointment. 4. Evaluation – In evaluation I examine cost effectiveness of the system. It is cost effective as patient need not to go to hospital for taking appointment previously. Time is also saved. One can take appointment from his home using internet. 5. Review – From the above analysis it may be conclude that the system would be useful, cost effective, easy to use and will solve the manual system faults. 3.2.2 Requirement Definition The purpose of the requirements phase is to define what a system should do and the constraints under which it must operate. This information is recorded in a requirements document. A typical requirements document might include a product overview; a specification of the development, operating, and maintenance environment for the product; a high-level conceptual model of the system; a specification of the user interface; specification of functional requirements; specification of nonfunctional requirements; specification of interfaces to systems outside the system under development; specification of how errors will be handled; and a listing of possible changes and enhancements to the system.
  • 23. 11 3.2.3 System Definition In system specification I first focus is ERD (Entity Relationship Diagram), which shows entity with their attributes, relationship with entities involving one-one, one-many, many-one or many- many. Data flow diagram, use case diagram, activity diagram, sequence diagram are also designed to understand the system clearly and completely. 3.2.4 System Design Systems design is the process of defining the architecture, components, modules, interfaces, and data for a system to satisfy specified requirements [18]. It helps in specifying hardware and system requirements and also helps in defining overall system architecture. The system design specifications serve as input for the next phase of the model. It includes interface design, data design, and process design. In user interface design I concerned with how users interact with the system, add information to the system. And how the system will presents information back to the users. In data design it concerned with how the data is represented and stored within the system. Finally, Process Design is concerned with how data moves through the system. I show this in DFD. 3.2.5 Program Design and Coding The coding phase of the software life-cycle is concerned with the development of code that will implement the design. This code is written is a formal language called a programming language. Programming languages have evolved over time from sequences of ones and zeros directly interpretable by a computer, through symbolic machine code, assembly languages, and finally to higher-level languages that are more understandable to humans. Most coding today is done in one of the higher-level languages. When code is written in a higher-level language, it is translated into assembly code, and eventually machine code, by a compiler. Many higher-level languages have been developed, and they can be categorized as functional languages, declarative languages, and imperative languages. 3.2.6 Testing Testing is the process of examining a software product to find errors. This is necessary not just for code but for all life-cycle products and all documents in support of the software such as user
  • 24. 12 manuals. The software testing process is often divided into phases. The first phase is unit testing of software developed by a single programmer. The second phase is integration testing where units are combined and tested as a group. System testing is done on the entire system, usually with test cases developed from the system requirements. Acceptance testing of the system is done by its intended users. The basic unit of testing is the test case. A test case consists of a test case type, which is the aspect of the system that the test case is supposed to exercise; test conditions, which consist of the input values for the test; the environmental state of the system to be used in the test; and the expected behavior of the system given the inputs and environmental factors. I perform various testing and give complete description of it in chapter 8. 3.2.7 Implementation The implementation stage of any project is a true display of the defining moments that make a project a success or a failure. The implementation stage is defined as "the system or system modifications being installed and made operational in a production environment. The phase is initiated after the system has been tested and accepted by the user. In SDLC model, this implementation part involves implementing the system to any types of administration site and to make process of client request and payment processing. 3.2.8 Changing Request Definition If any advance or updated point comes after delivering the system, then at this stage explains the processing of development of the delivered system. This type of changeable maintenance is very important. 3.3 Software Process Model Software process models are general approaches for organizing a project into activities. Each project ends up with its own unique plan. It helps to decide,  What work should be done?  In what sequence to perform the work. Process is an activity, which operates on an object and changes its state. Model is the graphical representation of an object. Therefore, a process model shows the activities of software graphically. We need process model because process is important than product. If the process is
  • 25. 13 good, the product is also good. While developing the system I follow incremental method. Particularly in this method break a project into smaller segments and providing more ease of change during development process. A series of mini-Waterfalls are performed, where all phases of the Waterfall development model are completed for a small part of the system, before proceeding to the next increment. 3.3.1 Incremental Model Incremental development is a staging and scheduling strategy in which various parts of the system are developed at different times or rates, and integrated as they are completed. [1] Design Testing Implementation Design Testing Implementation Design Testing Implementation Requirements Build 1 Build 2 Build N Fig 3.3.1: Incremental Model. The Incremental approach is a method of software development where the model is designed, implemented and tested incrementally (a little more is added each time) until the product is finished. It involves both development and maintenance. The product is defined as finished when it satisfies its entire requirement. In incremental model the whole requirement is divided into various builds. Multiple development cycles take place here, making the life cycle a “multi- waterfall” cycle. Cycles are divided up into smaller, more easily managed modules. Each module passes through the requirements, design, implementation and testing phases. Each subsequent release of the module adds function to the previous release. The process continues till the complete system is achieved. In my system I start building its first module patient panel for the first iteration. Likewise in the second iteration the admin module is ready and integrated with the first module. Similarly, in the
  • 26. 14 third iteration the whole system is ready and integrated. Hence, the system got ready step by step. In every step I tested each module separately. In Incremental Approach it uses a number of steps and development goes from start to finish in a linear path of progression. Advantage of Incremental Model There are various models to develop a software system. I choose this model among those because,  It is generally easier to test and debug than other methods of software development. Because relatively smaller changes are made during each iteration. This allows me for more targeted and rigorous testing of each element within the overall product.  Risk of changing requirement is reduced because; In each iteration I built a small portion of the system.  Work load is less because the whole system need not done together.  I add the main function in the first iteration so it helps to the other iterations.  It is flexible and easy to manage more manageable process and better software making and better software structure. Disadvantage of Incremental Model Though I have used this model but in the development phase I face some difficulties,  It needs good planning and design. So when I change a plan it needs to work for the previous iteration.  Needs a clear and complete definition of the whole system before it can be broken down and built incrementally. In some iteration I was confused what I should do next.
  • 27. 15 Chapter 4 FEASIBILITY STUDY A feasibility study is a study that includes the analysis of the software if it is cost effective from the economic view, if it can fulfill the requirement technically, and if it is adaptable in the required environment. It also condiments the groundwork and determine whether the project should be taken or not. Finally, the net result will be rough plane for proceeding with the project. 4.1 Gantt Chart One of the oldest and still one of the most useful of presenting schedule information is the Gantt chart. Gantt chart is a pioneer in the field of scientific management. The Gantt chart show planned and actual progress for a number of tasks displayed against horizontal time scale. In figure horizontal bars indicate time duration. In figure it shows there are eight tasks and their time duration, start time and end time. Initial study takes 3.2 weeks. It includes the understanding of the whole system. Then feasibility study takes 4.2 weeks. Similarly requirement analysis 4 weeks, design 6.8 weeks, coding 10.4 weeks, testing 12 weeks, implementation and review 6.4 weeks, review report 3 weeks. From the vertical bar it is clear that design, coding and testing takes the maximum time and overlap the works with each other.
  • 28. 16 ID Task Name Start Finish Duration Nov2014Sep2014 Jan2015 9/28 10/19 12/14 3/81/2510/26 2/812/289/219/7 2/22 1 3.2w9/22/20149/1/2014InitialStudy 2 4.2w10/16/20149/18/2014FeasibilityStudy 3 4w11/3/201410/7/2014 Requirement Analysis 4 6.8w12/9/201410/23/2014Design 5 10.4w1/23/201511/13/2014Coding 6 12w2/20/201512/1/2014Testing 7 6.4w3/3/20151/19/2015 Implementation &Review 8 3w3/23/20153/3/2015ReviewReport Dec2014 11/23 11/3011/16 1/1112/78/31 Oct2014 10/5 2/110/12 11/2 Mar2015 1/412/21 3/153/12/15 Feb2015 9/14 11/9 1/18 3/22 Figure 4.1: Gantt chart 4.2 Objectives of Feasibility Study A feasibility study evaluates the project's potential for success. So before start to design and develop a system feasibility study is very much important. From the feasibility study of the project, I have identified four fundamental criteria. As a feasible project complete successfully, the project will complete successfully. The four dimensions are: 1. Technical feasibility 2. Economic feasibility 3. Operational feasibility/Organizational feasibility 4. Schedule feasibility
  • 29. 17 4.2.1 Technical Feasibility A system request is technically feasible if the organization has or can obtain the equipment to develop, install and operate the system. The following questions point up those we must solve. o Will the combination of hardware and software be able to supply performance? o What is the impact on the end users of the proposed system after implemented? Technical Criteria: Technical criteria study is concerned with the hardware requirement for the system. For our system the minimum hardware requirements are, PC: Pentium III or more RAM: 128 MB or more Hard Disk: minimum2 GB Keyboard Mouse For our system the software requirements are Operating system: Linux, Windows XP, Windows Vista or more Server: Apache web server. Application Software: Google Chrome, operamini or Mozilla Firefox. 4.2.2 Economic Feasibility A system request is economically feasible if the projected benefits of the proposed system outweigh the estimated cost involved in developing, installing and operating it. To determine economic feasibility I ascertain the following: o The system is economic feasible in the sense that people need not to go to hospital for appointment. o No special hardware is needed. So Estimate the cost of needed equipment, the hardware that will be needed to develop the system. For example: need of a personal computer. o Estimate the cost of purchasing the necessary software. o Estimate the benefits that will result from the proposed system. Economic feasibility is usually answered from cost/benefit analysis. The purpose of cost estimation helps to classify what the system is going to do.
  • 30. 18 4.2.3 Operational Feasibility Operationally feasible project can be accomplished with the organizations available facilities. Operational feasibility is concerned with, how the user will accept the software. If the software does not meet the user expectation, then the user might not use the software. It is dependent on human resources available for the project and involves projecting whether the system will be used if it is developed and implemented. It is a measure of how well a proposed system solves the problems. And it takes advantage of the opportunities identified during scope definition and how it satisfies the requirements identified in the requirements analysis phase of system development. The system I developed, I tried my best to make it in such a way, and users of all level can easily use the software. 4.2.4 Schedule Feasibility A project will fail if it takes too long to be completed before it is useful. Typically this means estimating how long the system will take to develop, and if it can be completed in a given time period using some methods like payback period. Schedule feasibility is a measure of how reasonable the project timetable is. Based on given information the system will perform given tasks. Planning a project strategy and building a project schedule to o Complete project within time and budget. o Resource management system. o Increase team productivity. o Increase project success rate. o Realize significant time and resource savings. I tried to complete the software within time limit. And almost I can do it. The proposed system will easily be accessible and it will be well organized and delivered the right information in the right place.
  • 31. 19 Chapter 5 SOFTWARE DESIGN DESCRIPTION 5.1 Software Design Description The Software Design Description specifies the required information content [2].It provides an architectural overview, logical design, detail design, physical design and application design of the System. This document presents to various stakeholders different types of abstraction. It aims to provide the stakeholders a clear understanding of the system [3]. It must contain all the design information needed by users. This document user may not have the same level of system understanding. So they may need a selected portion of SDD. But it should be collected and presented in a way that assures completeness. It describes design decisions, architectural design, and the detailed design needed to implement the system. Typically, SDD is prepared to support the development of a software item. This information will farther can be used for analysis, planning, implementation, development and evaluation of the software system, by identifying and addressing essential design concerns. The main purpose of SDD is,  Identify required system resources.  Describe functional structure, algorithm and process.  Can be used to impact the requirement change.  Need for maintenance activity. 5.2 Design Overview In overall system, there are two template portions. In Right side Navigation links. Left to middle side is the main window. 5.3 Traceability The term Traceability or Requirements Traceability refers to the ability to link product requirements back to stakeholders' rationales and forward to corresponding design artifacts, code, and test cases. Traceability supports numerous software engineering activities such as
  • 32. 20 change impact analysis, compliance verification or trace back of code, requirements validation. It is usually accomplished in the form of a matrix created for the verification and validation of the project. In transaction processing software, traceability implies use of a unique piece of data which can be traced through the entire software flow of all relevant application programs. Messages and files at any point in the system can then be audited for correctness and completeness, using the traceability key to find the particular transaction. This is also sometimes referred to as the transaction footprint [4]. 5.4 Architecture Design Process The Architecture design process is used for identifying the sub system, making up a system and the framework for sub-system control and communications architectural design. The output of this design process is a description of the software architecture. 5.5 Overall Design 5.5.1 Entity Relation Diagram The ER diagram is principally used to capture the relationships that exist between static data objects in a problem model or a design model. In particular, the Entity-Relationship Model has provided an essential foundation for the development of the relational models. To design of an E- R diagram, it is important to select criteria that have different alternative. For this purpose, design considering the following steps:  To use an attributes or a set of attributes to represent an objects.  A real world concept is expressed most accurately an entity set or by a relationship.  To use a ternary relationship or a pair of binary relationship among the entities. In an effective system, data is divided into discrete categories or entities. An entity relationship (E-R) model is an illustration of various entities and the relationship of various entities and the relationship between them. ER model is build during the analysis phase of the system development life cycle. ER model separates the information required by the system from the activities performed within a system. In ERD there are,
  • 33. 21  Entities: An object or concept that is identified by the enterprise. In figure below the rectangle box indicates entity. There are five entities. They are patient, doctor, schedule, bank account and doctor details. An entity may have one or more attributes.  Attribute: Attributes are the properties of entities. Attributes are represented by means of eclipses. Every eclipse represents one attribute and is directly connected to its entity. In figure all the entities have a number of attributes. Attributes may be primary key or foreign key. Primary key is denoted by underline.  Relations: Relationships are represented by diamond shaped box. Name of the relationship is written in the diamond-box. All entities participating in relationship are connected to it by a line. In figure there are six relationships. Relationship may be one-to- one, one-to-many, many-to-one, and many-to-many. Also a relationship may be binary, ternary or quaternary. There is only one ternary relationship in the figure which connects doctor, doctor details and bank account entities.  Links: Links are the connection between entities and relations.
  • 34. 22 DoctorPatient FirstName AccountNo UserName LastName CIty DateOfBirth ContactNo Address PId Password Email BloodGroup Gender Email dName Password Address Gender AccountNo Specialist Payment DId Qualification Appoint SerialNo Date Time Schedule Set Day ETime1 STime1 Interval DId Pay BankAccount AccountNo AccountNameBalance FromAccount ToAccount Date Time 1:M 1:M 1:M has 1:M 1:1 1:1 1:1 1:1 Special Sickness dHelp LastName FirstName Help STime2 ETime2 SProfession QuaDetails SpeDegree Achievements Message Pmessage Dmessage Psubject Dsubject Date Time 1:M 1:M Cardno Pinno has Time Date Payment Fig 5.5.1: ERD of the System. 5.5.2 Date Flow Diagram Data flow diagrams are highly essential for requirement specification of the system that shows how data is processed and how data flows through a sequence of processing steps by a system. The data is transformed at each step before moving on the next stage. The four basic elements that are used in the diagram are:  The round shape rectangular which are used to denote an operation/process and is labeled with a brief description of the operation.
  • 35. 23  The rectangular box, used to denote a data source or sink of information;  The parallel bars, used to denote a data store or file;  The arc, used to denote the flow of information between the other three components. We find out the different flow information like follows: Symbol Meaning 0.10 Process Source/destination Date flow Data store Context Diagram In figure it shows the context diagram of the system. Here three types of users interact with the system patient, doctor and admin. Patient can request for appointment. Doctor can see all of his appointments. And admin can supervise all the activities.
  • 36. 24 Patient Doctor Admin Appointment request Request approved/reject View appointments request Show result Registered doctor View patient detail View appointments Delete patient/ doctor account 0.0 Automated Doctor Appointment System Fig 5.5.2.1: Context Diagram of the system. Level 0 DFD Level zero DFD is the expansion of context diagram. It shows the process and data flow more briefly. In figure it shows level zero DFD for both doctor and patient.
  • 38. 26 Level 1 DFD for Doctor Level one DFD is the expansion of level zero DFD. In figure it shows the level one DFD for doctor. It starts from the “login account” process. After login it goes to “account” process. All the updating info’s are stored in data store and can be viewed by the admin. Doctor Login info Verified account Appointment record doctor record Verify login Patient Schedule record doctor record Schedule set Appoint ments Update info Patient request Admin Admin Admin 1.1 Login Account 1.4 Doctor Appointments 1.2 Account 1.3 Schedule 1.5 Edit/update Account 1.6 Prescribe Medicine View info Recommend medicine Message record Schedules Fig 5.5.2.3: Level 1 DFD for Doctor.
  • 39. 27 Level 1 DFD for Patient In figure it shows the level one DFD for patient. It starts with “fill signup form process”. After signup, then login to account. Information’s are seen and retrieved from data store. Patient Patient info Successfully registered Verified account patient record Verify login Doctor Update info Appointment record Admin Admin Sickness info Request appointment 1.4 Edit/update Account 1.6 Request medicine 1.3 Account 1.2 Login Account 1.1 Fill Signup Form 1.5 Appointment View info View appointment 1.7 Payment Pay doctor Message record Fig 5.5.2.4: Level 1 DFD for Patient.
  • 40. 28 Level 2 DFD It is the expansion of the process 1.5 “Appointment “from level one DFD for patient. For appointment search doctor then select date after that select payment option. After successfully appointment it will notify to the patient account. Patient Appointment record Notify Successfully appointment Selected doctor Selected date Successfully appoint Admin Request appointment 1.5.1 Appointment 1.5.4 Select Payment mode 1.5.3 Select Date 1.5.2 Search Doctor Doctor record Fig 5.5.2.5: Level 2 DFD for patient.
  • 41. 29 5.5.3 Use Case Diagram Use case diagram (UCD) is a methodology used to describe the functionality of a system in a horizontal way. Each use case focuses on describing how to achieve a goal or task. The use case is made up of a set of possible sequences of interactions between system and users or actor in a particular environment and related to a particular goal. The user or actor might be a person or something more abstract, such as an external software system or manual process. The three basic elements that are used in design diagram are:  The Actor-Actor is one who is using the web site. May be a person, organization, or external system that plays a role in one or more interactions with the system. In figure outside the system boundary person like figure is the actor. In the system it has three actors. Patient, doctor and admin. They work outside the system boundary.  Use Cases – It is what the user wants to do. Describe a sequence of action that provide something of measureable value to an actor and is drawn as a horizontal ellipse. In figure within the system boundary oval shapes are the use cases. There are nine use cases for patient, eleven use cases for doctor and ten use cases for admin.  System Boundary Boxes – It is what the scope of system for users. A rectangle is drawn around the use cases, called the system boundary box, to indicate the scope of the system. Anything within the box represents the functionality that is in scope and nothing outside the box is.
  • 42. 30 Use Case of the System Patient Doctor System Admin Signup login Addinfo ModifyInfo GetAppointment ViewAppointment DoctorHelp DeactiveAccount ViewAppointments PrescribeMedicine AddNewDoctor ViewDoctor DeleteDoctor ViewPatient DeletePatient ViewBooking EditSchedule DeleteSchedule ByName BySpecialist ByDate login login ViewInfo Addinfo ModifyInfo ViewInfo AddSchedule DeactiveAccount Fig 5.5.3: Use Case of the system. 5.5.4 Sequence Diagram The sequence Diagrams are used to show how objects interact with others in particular scenario of a use case. An important characteristics of a sequence diagram is that time passes from top to bottom. It depicts the objects and classes involved in the scenario and the sequence of message exchanged between the objects needed to carry out the functionality of the scenario, Sequence diagrams are sometimes called, event diagrams, event scenarios, and timing diagrams.
  • 43. 31 There are five elements to representing a sequence diagram. 1. Actor -An Actor may represent the roles played by human users, external hardware, or other subjects. In figure 5.5.4.1 user indicate by 1 is the actor. 2. Object -Objects or classes are the targets on a sequence diagram, which means that messages can be sent to them. A target is displayed as a rectangle with some text in it. Below the target, its lifeline extends for as long as the target exists. The lifeline is displayed as a vertical dashed line. In figure 5.5.4.1 system and database indicated by 2 is the object. 3. Activation –A rectangle shape, an activation box represents the time needed for an object to complete a task. The longer the task will take, the longer the activation box becomes. In figure 5.5.4.1 vertical box indicated by 3 is activation. 4. Message - A message defines a particular communication between Lifelines of an Interaction. Call message is a kind of message that represents an invocation of operation of target lifeline. In figure 5.5.4.1 rigid arrow line indicated by 4is call message and the text above them is the message which they pass. Reply messages is represented by a dashed line with a lined arrowhead, these messages are replies to calls. In figure 7 indicate reply message. Message call indicated by 5. 5. Lifelines - The dashed lines hanging from the object boxes are called object lifelines, representing the life span of the object during the scenario being modeled. In figure lifeline is indicated by 6.
  • 44. 32 System Database Check reply Check validity Update Success/Reject login req. Change info Update success Logout Success User 1 2 3 4 5 6 7 Fig 5.5.4.1: Sequence Diagram Example. Sequence Diagram for Patient In figure 5.5.4.2 it shows the sequence diagram for patient. Patient is actor here. System and database are the objects. It shows different message pass among patient, system and database. Patient registration information is passed to the system. System verifies the information and then inserts it into the database. Then reply success or reject request. Similarly it shows other messages and its reply between the system and database.
  • 45. 33 System Database Enter reg info Check validity Req login Varify ID req Add Info Update req modify info modify req appointment valid req req medicine send req ID varifiedAccept Update success modify success App success notify Reject/Accept req logout req logout Check validity Patient Add info Fig 5.5.4.2: Sequence Diagram for Patient. Sequence Diagram for Doctor In figure 5.5.4.3 it shows sequence diagram for doctor. Doctor is actor, system and database is object. Message call is represented by rigid arrow and message reply is represented by doted arrow.
  • 46. 34 System Database Req login Varify ID Req Add Info Update Req Modify Info modify Req Add Schedule Prescribribe Medicine Send Req ID varifiedAccept Update success Modify Success Notify Logout Req Logout Schedule Add Notify Appointments App Req show Doctor Fig 5.5.4.3: Sequence Diagram for Doctor. Sequence Diagram for Admin In figure 5.5.4.4 it shows the sequence diagram for admin. Admin is actor here. System and database are the objects.
  • 47. 35 System Database Req login Varify ID Add doctor doctor add View Doctor Req Delete Doctor Delete Patient Req ID varifiedAccept add success Doctor List Delete logout req logout Req Delete View Patient Req Patient List View Booking Req Bookings Admin Fig 5.5.4.4: Sequence Diagram for Admin. 5.5.5 Activity Diagram Activity Diagrams are graphical representations of workflows of stepwise components in a system means shows the overall flow of control. The elements of Activity diagram are presented below with a figure:  Initial State -The filled blocked circle is the starting point of the diagram. In figure black circle is the initial state.
  • 48. 36  Final State -The activities flow terminates when the transition line of the last action in the sequence connects to a “final state” symbol that is the ending point, which is a bull’s- eye. In figure the circle surrounding a smaller solid circle or encircled block circle is the final node.  Action State -An action or an activity is indicated on the activity diagram by a “Capsule” shape. The text inside it indicates the action. In figure there are fourteen action states.  Transition Fork -A transaction fork has one input and one or more output transactions. It shows what activity state follows after another. In figure after decision state the horizontal bar is the transaction fork where there are one input and five output transactions.  Transaction Join -A transaction join has more than one input and only one output transaction. It represents many action states combine into one state. In figure horizontal bar before logout state is transaction join.  Decisions -The diamonds represent the decisions where a set of guard conditions are defined.  Control Flow – Control flow adds a transaction state from one to another. It is represented by arrow line. In figure arrow lines represent the control flow. Activity Diagram for Patient In figure 5.5.5.1 is shows activity diagram for patient. The first black circle indicates the initial state. In the next decision state it checks whether the user is registered or not. If he is registered then go to login state. Again check for user name and password. If valid then he can access the states add information, modify information, appointment, deactivate account and doctor help. For appointment one has to select doctor name and date. After completing all the activities he can log out from his account. And reach to the final state which is represented by the circle surrounding a smaller solid circle.
  • 49. 37 Register Login Reg User? Yes No Username & password correct? Add Info Modify Info Appointment Doctor Help Select Doctor Select Date App Success/Reject Yes No Logout Select Doctor Write Message Send Account Select Pay Option Fig 5.5.5.1: Activity Diagram for Patient.
  • 50. 38 Activity Diagram for Doctor In figure 5.5.5.2 it shows activity diagram for doctor. In initial state it checks for a registered doctor. Then check the username and password. Then one can perform modify information, add schedule, edit/delete schedule, prescribe medicine, deactivate account and appointments. For schedule add one have to select day, time and interval. After finishing all the states we reach to the final state by logout. Register by Admin Login Reg Doctor? Yes No Username & password correct? Modify Info Add Schedule Edit/Delete Schedule Appointments Select Day Select Time Schedule Added Yes No Logout Select Patient Write Message Send Prescribe Medicine Select Interval Account Fig 5.5.5.2: Activity Diagram for Doctor.
  • 51. 39 Activity Diagram for Admin After login into the system what admin can do are shown in figure 5.5.5.3. Login Username & password correct? Add Doctor Doctors Delete PatientDelete Doctor Bookings Yes No Logout Patients Account Fig 5.5.5.3: Activity Diagram for Admin. 5.6 Interface Design Home Page In figure 5.6.1 it shows the home page of the system. Home page can be accessed by any types of user whether he is registered or not. From home page user is redirected to signup page or his account by login.
  • 52. 40 Fig 5.6.1: Home Page Patient Signup In figure it shows the patient signup page. Here all fields are required. Valid inputs are only accepted. Here a special field named “do you want online doctor help”. If anyone agrees, he has to pay a small amount of money for get the special feature online doctor help.
  • 53. 41 Fig5.6.2: Patient Signup. Patient login In the figure below it shows the patient login page. Patient has to enter user name and password that is already registered in the system. Wrong user name or password will not accepted by the system. Until correct user name and password is given one cannot access his account.
  • 54. 42 Fig 5.6.3: Patient Login. Patient Appointment In the figure below patient can see the doctor list from his account. He can select doctor form there or can search for doctor. Search can be by doctor name or by specialist. If he gets intended doctor then he can see more details about the doctor like schedule time or can take appointment by simply clicking appointment button.
  • 55. 43 Fig5.6.4: Patient Appointment. Select Appointment Date In figure 5.6.5 it shows appointment date selection after clicking appointment button previously. Patient has to select date when he wants to meet the doctor. It must be the date when doctor is available. The selected date must not a previous date or when doctor is not available. If anyone does like this error, system will alert him. Another thing is that, anyone can take only one appointment in the same date. If he tries to take more then one appointment in the same date, system will stop it. If anyone want to take appointment in a specific date but the serial is already finished for that date system will give him a message.
  • 56. 44 Fig 5.6.5: Select Appointment Date. Payment Form In figure it shows bank payment form. Patient has to enter his name, card no, pin no for payment. Anything invalid or wrong will not be accepted. Fig 5.6.6: Payment Form.
  • 57. 45 Doctor Help This option is available only for the patients who agree at the time of registration. Otherwise it will not activate in his account. If he agreed he can send message to a specific doctor about his sickness and request him for medicine. For this he has to pay 500tk at the time of registration. Fig 5.6.7: Send Message to Doctor. Doctor Add Schedule Doctor has to enter day, duration for each patient, start time (when he start to check patient) and end time (when he want to end) for his schedule. After successfully added he will be notified. Without out adding schedule he will not get any appointment by patient. So a doctor must add his schedule.
  • 58. 46 Fig 5.6.8: Add Schedule for Doctor Doctor View Schedule Doctor can see all of his schedules added by him. Here he can see day, start time, end time and interval of his schedule. He can also edit or delete schedules. For this he has to select edit or delete from the option.
  • 59. 47 Fig 5.6.9: View Schedules for Doctor View Appointments It is the appointment page for doctor. Doctor can see all of his appointments along with patient name, serial no, date and time. Can also search specific date, previous, next appointments and more details.
  • 60. 48 Fig 5.6.10: View Appointments for Doctor. Prescribe Medicine It is a new feature of this system where a doctor will get messages from patients if he agreed prior. Otherwise he will not get any message. In figure it shows that a doctor account, who agreed to help patient online get messages from them. He can reply or delete it.
  • 61. 49 Fig 5.6.11: Prescribe Medicine by Doctor Add Doctor Here admin register doctors of their hospital. It is essential to input all the fields. System will notify after successfully added. After adding a doctor in the system by the admin doctor can access his account using his username and password. In figure it shows adding a doctor.
  • 62. 50 Fig 5.6.12: Admin Register Doctor View Patients Admin can see the patient list, which are registered in the system. He can see more details or delete any patient from the system if he wants. In figure it shows the patient list in admin panel.
  • 63. 51 Fig 5.6.13: View Patients by Admin View Booking Admin can see all the bookings along with doctor name, date and time. He can find out bookings by doctor name, by specialist or by date. He can search specific date also. In the figure it shows the booking page.
  • 64. 52 Fig 5.6.14: View Bookings by Admin.
  • 65. 53 Chapter 6 DATA DICTIONARY 6.1 Data Dictionary In database management systems, a file defines the basic organization of a database. A data dictionary contains a list of all files in the database, the number of records in each file, and the names and types of each field. Most database management systems keep the data dictionary hidden from users to prevent them from accidentally destroying its contents. Data dictionaries do not contain any actual data from the database, only book keeping information for managing it. Without a data dictionary, however, a database management system cannot access data from the database. A Data Dictionary is a data structure that stores meta-data, i.e., data about data. The Software package for a stand-alone Data Dictionary or Data Repository may interact with the software modules of the DBMS, but it is mainly used by the Designers, Users and Administrators of a computer system for information resource management. These systems are used to maintain information on system hardware and software configuration, documentation, application and users as well as other information relevant to system administration. The data dictionary is an organized listing of all data element that are applicable to the system with precise, accurate definitions so that both user and system analysis will have a common understanding of inputs, outputs components of stores and event intermediate calculations. 6.2 Database Database is the collection of data, which contains information relevant to an enterprise. Database holds all the information needed by the system. In my system I used relational database. In which it holds all data in a table format. Database is very much important because information added, edited or deleted are maintained in the database. 6.3 Database Management System A database management system (DBMS) is collection of interrelated data and a set of program to access those data. The collection of data, usually referred to as the database contains information
  • 66. 54 relevant to an enterprise. The primary goal of a DBMS is to provide a way to store and retrieve database information that is both convenient and efficient. 6.4 Tables of System 6.4.1 Patient Info Table It is the patient information table. It contains all the information about patient. Here pid is the primary key. And pName, email, accountNo are the unique key. Column Type Null Index fName varchar(20) No lName varchar(20) No pid int(8) No PK pName varchar(20) No email varchar(40) No password varchar(20) No contactNo varchar(20) No address varchar(40) No dateOfBirth varchar(20) No city varchar(20) No gender varchar(20) No accountNo varchar(20) No bloodGroup varchar(4) No specialSickness varchar(40) No dHelp varchar(20) No
  • 67. 55 6.4.2 Doctor Info Table It holds all the information of doctors. Here did is the primary key. dName, email are the unique key. Column Type Null Index Did int(8) No PK dName varchar(20) No email varchar(40) No password varchar(20) No address varchar(40) No specialist varchar(20) No gender varchar(20) No payment int(10) No accountNo varchar(20) No qualification varchar(20) No Help varchar(20) No fName varchar(20) No lName varchar(20) No 6.4.3 Appointment Table It is the appointment table where all appointments are saved with doctor id, patient id, serial no, date and time. Column Type Null Index serialNo int(8) No Pid int(8) No FK Did int(8) No FK
  • 68. 56 Date varchar(20) No Time varchar(20) No 6.4.4 Doctor Details Table It holds additional information about doctors. Here doctor id is the foreign key. Column Type Null Index Did int(8) No FK Pic blob No achievements varchar(400) No specialDegree varchar(400) No qualificationDetails varchar(400) No startProfession varchar(400) No 6.4.5 Invalid Patient Info Table It holds all the patient information, who deactivated their account. Like as patient table pid is the primary key. Column Type Null Index fName varchar(20) No lName varchar(20) No Pid int(8) No PK pName varchar(20) No email varchar(40) No password varchar(20) No contactNo varchar(20) No
  • 69. 57 address varchar(40) No dateOfBirth varchar(20) No City varchar(20) No gender varchar(20) No accountNo varchar(20) No bloodGroup varchar(4) No specialSickness varchar(40) No dHelp varchar(20) No 6.4.6 Message Table It holds the messages of doctors and patients. It contains message, reply, subject, date and time. Separate date and time for doctor and patient. That is massage date and time for doctor. Same as patient. Column Type Null Index Pid int(8) No FK Did int(8) No FK pSubject varchar(300) No dSubject varchar(300) No Date varchar(20) No Time varchar(20) No Pmsg varchar(300) No Dmsg varchar(300) No ddate varchar(20) No dtime varchar(20) No
  • 70. 58 6.4.7 Doctor Schedule Table It holds the schedule for doctor. Here did is the foreign key.sTime1 is for start time and sTime2 is for am or pm. Same as eTime1 and eTime2. Dinterval is the duration. Column Type Null Index Did int(8) No FK Day varchar(20) No sTime1 varchar(20) No sTime2 varchar(20) No eTime1 varchar(20) No eTime2 varchar(20) No dinterval varchar(20) No 6.4.8 Bank Account Table It is the table for bank account. It holds all the information for opening a bank account. Here account no is the primary key. Card no unique key. Column Type Null Index accountNo bigint(11) No PK userName varchar(20) No cardNo bigint(13) No pinNo int(4) No balance bigint(10) No toAccount bigint(11) No fromAccount bigint(11) No date varchar(20) No time varchar(20) No
  • 71. 59 6.4.9 System Admin Table It is the table for admin login. Only user name and password is needed. Column Type Null Index aName varchar(20) No password varchar(20) No 6.4.10 Bank Admin Table It is the table for bank admin login. Only user name and password is needed. Column Type Null Index aName varchar(20) No password varchar(20) No
  • 72. 60 Chapter 7 SOFTWARE IMPLEMENTATION 7.1 Software Implementation A software product implementation method is a systematically structured approach to effectively integrate software based service or component into the workflow of an organizational structure or an individual end-user. The implementation of product software, as the final link in the deployment chain of software production, is in a financial perspective of a major issue. The software can be able to access through the internet. I used to implement the software using given below:  PHP  HTML  JAVA SCRIPT  MySQL  Ajax PHP PHP is a powerful tool for making dynamic and interactive Web pages. PHP is the widely used, free and efficient alternative to competitors such as Microsoft’s ASP. o Server-side, scripting language o Event based o Designed for use with HTML. File Name .php o Provide more flexibility than HTML alone Syntax is similar to C, Java, and Perl 61. PHP is perfectly suited for web development and can be embedded directly into the HTML code. The PHP syntax is very similar to Perl and C. PHP is often used together with Apache (Web server) on various operating systems. HTML HTML is a language for instructing the browser how to display web pages. It is the building block for building web site.
  • 73. 61 o HTML is a language for describing web pages. o HTML stands for Hyper Text Markup Language. o HTML is not a programming language, it is a markup language. o An HTML file is a text file containing small markup HTML stands for. o The markup tags tell the Web browser how to display the page. o An HTML file must have an html file extension. o An HTML file can be created using a simple text editor. Java Script JavaScript is used in millions of Web pages to improve the design, validate forms, detect browsers, create cookies, and much more. JavaScript is the most popular scripting language on the internet, and works in all major browsers, such as Internet Explorer, Firefox, and Opera. o JavaScript was designed to add interactivity to HTML pages. o JavaScript is a scripting language. o A scripting language is a lightweight programming language. o JavaScript is usually embedded directly into HTML pages. o JavaScript is an interpreted language (means that scripts execute without preliminary compilation). o Everyone can use JavaScript without purchasing a license. MySQL MySQL is the world's most widely used relational database management system. It is most widely used open-source RDBMS. The SQL acronym stands for Structured Query Language. MySQL is a popular choice of database for use in web applications. o Written in C and C++. o Tested with a broad range of different compilers. o Works on many different platforms. o Provides transactional and non transactional storage engines. o Designed to make it relatively easy to add other storage engines. o All data is saved in the chosen character set. o Uses multi-layered server design with independent modules. o Can refer to tables from different databases in the same statement.
  • 74. 62 Ajax The term Ajax has come to represent a broad group of web technologies that can be used to implement a web application that communicates with a server in the background, without interfering with the current state of the page. Since then, however, there have been a number of developments in the technologies used in an Ajax application, and the definition of the term Ajax. XML is not required for data interchange and therefore XSLT is not required for the manipulation of data. JavaScript Object Notation (JSON) is often used as an alternative format for data interchange, although other formats such as preformatted HTML or plain text can also be used. o HTML, XHTML and CSS is used for presentation. o The Document Object Model (DOM) for dynamic display of and interaction with data. o XML for the interchange of data, and XSLT for its manipulation. o The XML Http Request object for asynchronous communication. o JavaScript to bring these technologies together 7.2 Web Application Web Server Web server can refer to either the hardware or the software that helps to deliver Web content that can be accessed through the Internet. The most common use of web servers is to host, but there are other uses such as gaming, data storage or running enterprise applications. The web server has what seems to be a fairly straightforward job. It sits there running on top of our operating system, listing for request that somebody on the web might make, responding to those requests, and serving out the appropriate web pages. In this project I use the apache web server. Apache The Apache HTTP Server, commonly referred to as Apache, is a web server software notable for playing a key role in the initial growth of the World Wide Web. The apache web server is the most popular web server. It likes PHP and MySQL is an open source project. Apache is a great web server. It is extremely quick and amazingly stable. It is very easy and more reliable for the database.
  • 75. 63 Web Browser Mozilla Firefox 33.0 is used to develop and run the system. It is a free and open-source web browser developed for Windows, OSX, and Linux, with a mobile version for Android, by the Mozilla Foundation and its subsidiary, the Mozilla Corporation. Firefox uses the Gecko layout engine to render web pages, which implements current and anticipated web standards. 7.3 Text Editor Notepad++ Notepad++ is a simple text editor for Microsoft Windows. It is a common text-only editor. The resulting files typically saved with the .txt extension. But can also be saved as other extension like .html, .php, .css, .js etc. It has no format tags or styles, making the program suitable for editing system files to use in a DOS environment o Syntax Highlighting and Syntax Folding. o User Defined Syntax Highlighting and Folding. o Perl Compatible Regular Expression Search/Replace. o GUI entirely customizable: minimalist, tab with close button, multi-line tab, vertical tab and vertical document list. o Auto-completion: Word completion, Function completion and Function parameters hint. o Multi-Document (Tab interface). o Multi-View. 7.4 Software XAMPP XAMPP is a free and open source, cross-platform, web server, solution stack package, consisting mainly of the Apache HTTP Server, MySQL database, and interpreters for scripts written in the PHP and Perl programming languages [9]. Components of XAMPP for Windows and Linux, Mac OSX, includes Apache, MySQL, PHP, phpMyAdmin, FileZilla FTP Server, Tomcat, XAMPP Control Panel. o It is the easiest way to carry out Apache-MySQL-PHP work. o Available for Windows and Linux flavors. o Features an easy control panel, start / stop panel, and port checker.
  • 76. 64 Chapter 8 TESTING Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test [7].Without doubt is one of the most important parts of software development life cycle. It is an element of software quality support and that can be considered as a technique of running a program in such a way in order to uncover any errors. Testing also illustrates that software functions look like functioning according to specifications, that behavioral and overall performances requirements seem also have been met. The test is performed when the system is complete. It includes the execution of a software component or system component to evaluate more than one properties of interest. As the number of possible tests for even simple software components is practically infinite, all software testing uses some strategy to select tests that are feasible for the available time and resources [7]. As a result, software testing typically attempts to execute a program or application with the intent of finding software bugs, errors and other defects. In this chapter I test my simulation software with testing method. The primary intention of testing is to identify software failures so that defects could possibly be discovered and corrected. Testing cannot establish that a product functions effectively under all conditions but can only prove that it does not function properly under some specific conditions. The scope of software testing often includes examination of code along with execution of that code in various environments and issues as well as inspecting the aspects of code. Does it do what it is supposed to do? Does it give the desired result? Does it check predefined conditions? And do what it needs to do. Resources and information derived from software testing may be utilized to correct the process that can be used in software development. 8.1 Testing The testing of the system starts when I start coding. In every step of coding of the software, testing works as an important part of checking that is it okay or not. To validate and verify all activities I used different types and methods of testing. It helps to ensure that it is working fine and requirements are met properly.
  • 77. 65 8.2 Testing Methods There are many approaches available in software testing. Any engineering product can be tested in any ways given below: 1. Knowing the specified function that a product has been designed to perform, tests can be conducted that demonstrate each function is fully operational while at the same time searching for error in each function. 2. Knowing the internal working of a product, tests can be conducted to ensure that all internal operations are performed according to specification and all internal components have been adequately examined. For my system I specify all of its functions in requirement. Than I design its interface. After that I start to implement internal functions. And test each function operate fully with different test case. Now I describe some of my testing methods by which I test my system. 8.2.1 Static Testing Reviews, walkthroughs, or inspections are referred to as static testing [8]. Static testing is often implicit as proofreading. When programming text editors check source code structure check syntax and data flow as static program analysis. To build the software I used notepad++ for text editor. In this text editor syntax error are identified automatically. So one thing I have to check is that, syntactic error in my code. Check conditions of loops properly, any missing symbols like semicolon etc. It involve verification of the system, it helps improve software quality. Among the techniques for static analysis, mutation testing can be used to ensure the test-cases will detect errors which are introduced by mutating the source code. Several time I changed the source code to check whether it satisfy the required condition. 8.2.2 Dynamic Testing Executing programmed code with a given set of test cases is referred to as dynamic testing [8].Dynamic testing takes place when the program itself is run. That means after done the static testing dynamic testing is performed. Dynamic testing may begin before the program is 100% complete in order to test particular sections of code and are applied to discrete functions or modules. Dynamic testing involves validation of the system. Some of my test case, their result, expected result, actual result are given below. In table below I tried out by this inputs. Check
  • 78. 66 that, whether my predefined conditions are met at run time. It is done for user registration page. For all the other pages I do also like this way. Table 8.2.2: Test Cases for User Registration Page. Test source Input Expected result Actual result Comment First name Lucky1 Not accepted Not accepted First name cannot contain any digit Last name Sultana05 Not accepted Not accepted Last name cannot contain any digit Email aaa@ Not accepted Not accepted Invalid email address Email lucky@yahoo.com Accepted Accepted Valid email address First name shahrin Accepted Accepted Valid first name Password 1234 Accepted Accepted Length acceptable Password 123 Not accepted Not accepted Password must have 4 to 20 characters Confirm Password 1235 Not accepted Not accepted Confirm password must be same as password In the box approach testing methods are divided into two. They are, 8.2.3 Black Box Testing Black-box testing treats the software as a "black box". Examine functionality of the software without any knowledge of internal implementation. The testers are only aware of what the software is supposed to do, not how it does it [8]. This test is performed in presence of user. I
  • 79. 67 perform black box testing by giving the software to my friend to use. He tried different portion of the system and give me a result. From his result I found different problems of the system. Then I tried to solve those problems. Some problems are given in the table below, Table 8.2.3: Black-Box Testing Test Cases. Test source Input Expected output Output Comment First name Hasib -hasan Accepted Not accepted First name may contain white space. But it doesn’t take it. Solved further. Last name Not accepted Not accepted Last name cannot be empty Email lucky@yahoo.com Accepted Not accepted Valid email address but already used. Solved further. Account no Not accepted Not accepted Cannot be empty. Account no 1234 Not accepted Accepted Unregistered account no. 8.2.4 White Box Testing White-box testing tests internal structures or workings of a program, as opposed to the functionality exposed to the end-user. In white-box testing an internal perspective of the system, as well as programming skills, are used to design test cases. The tester chooses inputs to exercise paths through the code and determine the appropriate outputs [8]. In this type testing all the lines, loops and logical expression are tested by executing the program. I did some testing in the software by white box testing.
  • 80. 68  When a user wants to select an appointment date, that is already passed, system will alert him. Fig 8.2.4.1: Message When User Want to Select Previous Date.  When a user want to take appointment more than one in a same date it cannot be done. Fig 8.2.4.2: User Want to Take Appointment More Than One in the Same Date. 8.3 Testing Level Tests are frequently grouped by where they are added in the software development process. There are four levels of tests:  Unit Testing– It is also known as component testing refers to tests that verify the functionality of a specific section of code, usually at the function level. These types of
  • 81. 69 tests are usually written by developers as they work on code, to ensure that the specific function is working as expected. One function might have multiple tests, to catch corner cases or other branches in the code. Unit testing alone cannot verify the functionality of a piece of software, but rather is used to ensure that the building blocks of the software work independently from each other. In my system unit testing is done by testing various java script functions. For example, I write a java script code for validating user input in sign up page. When a user want to register without having any password I want that system will show an error message. I do this using java script. Likely password less than four characters, first name or last name contain any digit, invalid account no user name already used etc. That’s unit testing for my system.  Integration Testing -Once I have unit tests covering the critical parts of the application, then I start assembling the parts. Interfaces between different components of a system are good places for mistakes, so the integration of components needs to be tested as well. This is what integration tests are about. Integration testing is any type of software testing that seeks to verify the interfaces between components against a software design. Software components may be integrated in an iterative way or all together. So in integration testing I tested the whole module as different parts are combined together.  Component interface testing - The practice of component interface testing can be used to check the handling of data passed between various units, or subsystem components, beyond full integration testing between those units. The data being passed can be considered as "message packets" and the range or data types can be checked, for data generated from one unit, and tested for validity before being passed into another unit. For component interface testing, when I complete patient module test its integrated parts then I combine its result with doctor module. Check the data and values pass from the patient module are correctly found in the doctor module or not. Similarly for admin module.  System Testing - Once all bricks are combined into a system, this system may not be functioning as expected, even if integration tests haven't revealed anything wrong. Here, system tests come into play. System testing, or end-to-end testing, tests a completely integrated system to verify that it meets its requirements. For this testing as the whole system is completed I checked whether the whole system works fine. If there are any contradiction among the modules.