DAS Report
DAS Report
On
Project Document
By
Report Index
Acknowledgement
Abstract
Introduction
Purpose
Objectives
Requirement Specification (Software and Hardware Specification)
Feasibility analysis
Analysis and Design (Use case, Er, Class, MySQL Tables Schema DFD Diagram)
Implementation and System Testing
Evaluation
Future Enhancement
Conclusion
Bibliography
Acknowledgement
The success and final outcome of this project required a lot of guidance
and assistance from many people and I am extremely privileged to have
got this all along the completion of my project. All that I have done is only
due to such supervision and assistance and I would not forget to thank
them.
I respect and thank Mr./Ms. [NAME 1], for providing me an opportunity
to do the project and giving us all support and guidance which made me
complete the project duly. I am extremely thankful to [her/him] for
providing such a nice support and guidance.
I owe my deep gratitude to our project guide [NAME 2], who took keen
interest on our project work and guided us all along, till the completion of
our project work by providing all the necessary information for
developing a good project.
----------------------
Abstract
“Doctor Appointment System” is a web based application which provides
patients or any user and easy way of booking a doctor’s appointment
online. This is a web based application that overcomes the issue of
managing and booking appointments according to user’s choice or
demands. The task sometime become very tedious for the compounder
or doctor himself in manually allotting appointments for the users as per
their availability. Hence this project offers an effective solution where
user can view various booking slots available select the preferred date
and time.
Admin Module
1. Dashboard: In this section, admin can briefly view the total doctor
registered and total specialization.
2. Specializations: In this section, admin can manage specialization
(Add/Update/Delete).
3. Doctor List: In this section, admin can view doctor list and their
appointments.
4. Search Doctor: In this section, admin can search doctor on the basis
of their mobile number.
5. Doctor Reg Report: In this section, admin can generate between
date reports of doctor registration.
6. Website Page: In this section, admin can manage website about us
and contact us page.
Doctor Module
1. Dashboard: In this section, doctor can briefly view the total number of
the new appointment, total approved appointment, total cancelled
appointment and completed appointments
2. Appointment: In this section, doctor views the appointment details
and they have also the right to change application status according to
current status.
3. Patient List: In this section, doctor can check their final appointments
also prescribe medicine and recommend the test.
4. Appointment Completed: In this section, doctor can view their
completed appointments.
3. Reports: In this section doctor can view the appointment details in a
particular period.
4. Search: In this section, doctor can search appointment with the help of
user appointment number/Name
Doctor can also update his profile, change the password and recover the
password.
1. Home Page: In this section, user can view the welcome page of the
web application.
2. Book: In this section, user can sent the appointment request.
3. Check Appointment: In this section, user can search appointment with
the help of user appointment number/Name
Purpose
We here propose a Doctor Appointment System that helps doctors in
their work and also patients to book doctor appointments and view
medical progress. The system allows doctors to manage their booking
slots online. Patients are allowed to book appointment and reserve the
appointment with required doctor. The system manages the appointment
data for multiple doctors for various date and times. Each time a user
visits a doctor his/her medical entry is stored in the database by doctor.
So, we can easily take the appointment of doctor from any place, if you
have internet. This project is an effort to develop a platform where the
users of this portal say doctors, patients and the administrator can
communicate.
Objectives
The main objective of this project is to manage the details of doctor,
appointment, patient, booking, Doctor Schedule. It manages all the
information about doctor, doctor appointments, doctor schedule. The
project is totally built at administrative end and thus only the
administrator is guaranteed the access. The purpose of the project is to
built an application program to reduce the manual working for manage
the doctor, appointment , patient. It tracks all the details about doctor
schedule, patient, booking. Functionalities provided by Future scope of
online doctor appointment:
• It tracks all the details about doctor schedule, patient, booking etc.
Client Side:
MfgdfRA RAM 512 MB
Hard disk 10 GB
Server side:
RAM 1 GB
Hard disk 20 GB
Processor 2.0 GHz
Software Requirement:
Client Side:
IDE PyCharm
Framework Django
APACHE
The Apache HTTP Server Project is an effort to develop and maintain an
open-source HTTP server for modern operating systems including UNIX
and Windows. The goal of this project is to provide a secure, efficient and
extensible server that provides HTTP services in sync with the current
HTTP standards.
The Apache HTTP Server ("httpd") was launched in 1995 and it has been
the most popular web server on the Internet since April 1996. It has
celebrated its 20th birthday as a project in February 2015.
Python
Python is an interpreter, object-oriented, high-level programming
language with dynamic semantics. Its high-level built in data structures,
combined with dynamic typing and dynamic binding, make it very
attractive for Rapid Application Development, as well as for use as a
scripting or glue language to connect existing components together.
Python's simple, easy to learn syntax emphasizes readability and
therefore reduces the cost of program maintenance. Python supports
modules and packages, which encourages program modularity and code
reuse. The Python interpreter and the extensive standard library are
available in source or binary form without charge for all major platforms,
and can be freely distributed.
Often, programmers fall in love with Python because of the increased
productivity it provides. Since there is no compilation step, the edit-test-
debug cycle is incredibly fast. Debugging Python programs is easy: a bug
or bad input will never cause a segmentation fault. Instead, when the
interpreter discovers an error, it raises an exception. When the program
doesn't catch the exception, the interpreter prints a stack trace. A source
level debugger allows inspection of local and global variables, evaluation
of arbitrary expressions, setting breakpoints, stepping through the code a
line at a time, and so on. The debugger is written in Python itself,
testifying to Python's introspective power. On the other hand, often the
quickest way to debug a program is to add a few print statements to the
source: the fast edit-test-debug cycle makes this simple approach very
effective.
Django
What is Django?
Django takes care of the difficult stuff so that you can concentrate on
building your web applications.
Model - The data you want to present, usually data from a database.
View - A request handler that returns the relevant template and
content - based on the request from the user.
Template - A text file (like an HTML file) containing the layout of the
web page, with logic on how to display the data.
Model
The most common way to extract data from a database is SQL. One
problem with SQL is that you have to have a pretty good understanding of
the database structure to be able to work with it.
View
Templates are often .html files, with HTML code describing the layout of a
web page, but it can also be in other file formats to present other results,
but we will concentrate on .html files.
Django uses standard HTML to describe the layout, but uses Django tags
to add logic:
<h1>My Homepage</h1>
URLs
When a user requests a URL, Django decides which view it will send it to.
When you have installed Django and created your first Django web
application, and the browser requests the URL, this is basically what
happens:
1. Django receives the URL, checks the urls.py file, and calls the view
that matches the URL.
2. The view, located in views.py, checks for relevant models.
3. The models are imported from the models.py file.
4. The view then sends the data to a specified template in
the template folder.
5. The template contains HTML and Django tags, and with the data it
returns finished HTML content back to the browser.
Django can do a lot more than this, but this is basically what you will learn
in this tutorial, and are the basic steps in a simple web application made
with Django.
Django History
Django Admin
Django Admin is a really great tool in Django, it is actually a CRUD* user
interface of all your models!
What is a database?
engine.
SQLite is different from other SQL databases because unlike most other
SQL databases, SQLite does not have a separate server process. It reads
and writes directly to ordinary disk files. A complete SQL database with
multiple tables, indices, triggers, and views, is contained in a single disk
file.
MYSQL
• MYSQL is a database server
• MYSQL is ideal for both small and large applications
• MYSQL supports standard SQL
• MYSQL compiles on a number of platforms
http://localhost/phpmyadmin
Feasibility analysis
The analysis of the requirement has lead to a conclusion that the project
is feasible with respect to time and cost. The data collection from the field
is assured by the client to provide. The technology used to develop is
almost Open Source, therefore less cost for implementation and
maintenance will be involved. A feasibility study is an analysis used in
measuring the ability and likelihood to complete a project successfully
including all relevant factors. It must account for factors that affect it such
as economic, technological and time factors. It is used to assess the
strengths and weaknesses of a proposed project and present directions of
activities which will improve a project and achieve desired results.
Economic feasibility
The purpose of economic feasibility assessment is to determine the
positive economic benefits to the organization that the proposed system
will provide. The assessment typically involves a cost/benefits analysis.
Technical feasibility
Technical analysis is a trading tool employed to evaluate securities and
attempt to forecast the future movement. I am using java language and
other tools like net beans to develop the software.
Operational feasibility
Operational feasibility is a measure of how well proposed system solves
the problems, and takes advantage of the opportunities identified during
scope definition and how it satisfies the requirements analysis phase of
the system development.
Analysis and Design
Analysis:
In present all doctor appointment work done on the paper. The whole
year data is stored in the registers. We can’t generate reports as per our
appointments.
• Not user friendly: The present system not user friendly because
chance of error.
• Time consuming
Design Introduction:
Design is the first step in the development phase for any techniques and
principles for the purpose of defining a device, a process or system in
sufficient detail to permit its physical realization.
Once the software requirements have been analyzed and specified the
software design involves three technical activities - design, coding,
implementation and testing that are required to build and verify the
software.
The design activities are of main importance in this phase, because in this
activity, decisions ultimately affecting the success of the software
implementation and its ease of maintenance are made. These decisions
have the final bearing upon reliability and maintainability of the system.
Design is the only way to accurately translate the customer’s
requirements into finished software or a system.
UML Diagrams:
Actor:
A coherent set of roles that users of use cases play when interacting
with the use `cases.
USECASE DIAGRAMS:
Use case diagrams model behavior within a system and helps the
developers understand of what the user require. The stick man
represents what’s called an actor.
Use case diagram can be useful for getting an overall view of the system
and clarifying who can do and more importantly what they can’t do.
Use case diagram consists of use cases and actors and shows the
interaction between the use case and actors.
Sign In
Dashboard
Manage Specialization
Update Profile
Change Password
Password Recovery
Doctor
Sign In/Signup
Dashboard
Manage Appointment
Search Appointment
Generate Reports
Update Profile
Change Password
Password Recovery
User
Visit Website
Book Appointment
View Contact
View about Us
Class Diagram:
A description of set of objects that share the same attributes operations,
relationships, and semantics.
ER Diagram:
The Entity-Relationship (ER) model was originally proposed by Peter in
1976 [Chen76] as a way to unify the network and relational database
views. Simply stated the ER model is a conceptual data model that views
the real world as entities and relationships. A basic component of the
model is the Entity-Relationship diagram which is used to visually
represent data objects. Since Chen wrote his paper the model has been
extended and today it is commonly used for database design for the
database designer, the utility of the ER model is:
ER Notation
There is no standard for representing data objects in ER diagrams. Each
modeling methodology uses its own notation. The original notation used
by Chen is widely used in academics texts and journals but rarely seen in
either CASE tools or publications by non-academics. Today, there are a
number of notations used; among the more common are Bachman,
crow's foot, and IDEFIX.
All notational styles represent entities as rectangular boxes and
relationships as lines connecting boxes. Each style uses a special set of
symbols to represent the cardinality of a connection. The notation used in
this document is from Martin. The symbols used for the basic ER
constructs are:
default table.
permission system and is used to manage the relationship between user groups and
permissions.
used to store information about each model (database table) in your Django project.
django_migrations table Structure : This table table is part of the database schema
and is used to keep track of which migrations have been applied to the database.
django_session table Structure : This table store the session data for user.
Standard symbols for DFDs are derived from the electric circuit diagram
analysis and are shown in fig:
Circle: A circle (bubble) shows a process that transforms data inputs into
data outputs.
Data Flow: A curved line shows the flow of data into or out of a process
or data store.
Data Store: A set of parallel lines shows a place for the collection of data
items. A data store indicates that the data is stored which can be used at
a later stage or by the other processes in a different order. The data store
can have an element or group of elements.
System Testing
The goal of the system testing process was to determine all faults in our
project .The program was subjected to a set of test inputs and many
explanations were made and based on these explanations it will be decided
whether the program behaves as expected or not. Our Project went through two
levels of testing
1. Unit testing
2. Integration testing
UNIT TESTING
Unit testing is commenced when a unit has been created and effectively
reviewed .In order to test a single module we need to provide a
complete environment i.e. besides the section we would require
• The procedures belonging to other units that the unit under test
calls
• Non local data structures that module accesses
• A procedure to call the functions of the unit under test with
appropriate parameters
1. Test for the admin module
INTEGRATION TESTING
Admin Panel
Login Page
Dashboard
Profile
Change Password
Add Specialization
Manage Specialization
Update Specialization
Generate Report
Webpage Details
Doctor Panel
Signup
Login Page
Dashboard
Profile
Change Password
New Appointment
View New Appointment Details
Approved Appointment
View Approved Appointment Details
Patient list
View Patient List Details
Appointment Completed
Appointment Completed Details
It makes entire process online and can generate reports. It has a facility
of doctor login where doctor can manage user appointment and
generate appointment report.
The Application was designed in such a way that future changes can be
done easily. The following conclusions can be deduced from the
development of the project.
Bibliography
For Python and Django
For MySQL
https://www.mysql.com/
http://www.mysqltutorial.org
For XAMPP
https://www.apachefriends.org/download.html