You are on page 1of 37

1.

Introduction

1
The advent of smart phones in the recent times has revolutionalized the way
people use technology. Smart phones because of their powerful features and ease of use
have emerged as the next-generation mobiles. The use of smart phones for availing
Health Care services such as doctor appointments, blood bank search, and emergency
message and so on would simplify the process for people unlike the conventional way.
This project is a Health Care Access application using android which provides efficient
and time saving approach to access health care services.

1.1 Purpose:
Health Care Access System is an android based application intended to help
people to book an appointment with a doctor and helps doctors to manage their
appointments, search for blood banks in which blood of the required group is available
using location based services notify the emergency number corresponding to our
location in situations where one is in need of emergency help at an unknown place or is
travelling and is not aware of the emergency number of that location ,search for nearest
hospitals based on our location and handy tips for general health problems and first-aid
tips in emergency.

1.2 Scope
Developing an application for smart phones using the open source android SDK
gives an opportunity to solve problems around us by making use of this technology.
Health Care Access System presents a solution to the common problems faced by people
in availing health care services .It simplifies the process of appointment booking making
this application useful to both a person who uses it for booking appointments and a
person who is responsible for managing them. Searching for a required blood group
based on location is desirable because it would save precious time. Handy first-aid tips
would be useful in unanticipated situations. Finding nearest hospitals based on our
current location is always convenient. Location based emergency number message is
particularly useful for people who are travelling

1.3 Study Of Existing System


Common problems are faced by people in accessing the following health care services

Appointment: In the present system to take an appointment one requires to make


a telephonic call to the hospital to which an Invoice Response System (IVRS) or a
receptionist responds. This procedure is a hassle because the lines may be busy or it takes
time and patience to communicate with the IVRS.

Blood Bank Search: In order to find blood of a required group one has to enquire
several blood banks through telephonic calls which is a time consuming process

Emergency Message: In case a person is travelling or is at an unknown location,if an


emergency occurs and he/she doesn’t know which number corresponds to that location,then
it is a risk to one’s life.
2
Diseases and medication For advise and tips for common ailments either search
over the net or consult a physician.

1.4 Proposed System

1.4.1Appointment

Person chooses a specialty, selects the doctor whom he/she wishes to consult, the
doctor’s schedule is displayed from which the patient selects a slot to book an
appointment. A doctor or doctor’s personal assistant can view his/her schedules and
manage it. The person who books an appointment gets a reminder of appointment.
Also if a scheduled appointment is cancelled by a doctor due to some reason the
person gets a notification to reschedule.This overcomes the tiresome process of
interacting with an Invoice Response System

1.4.2Blood Bank Search

Search for the availability of blood of the required group in the blood banks nearest to
us. This helps to provide timely and accurate information that saves precious time to
search blood for a patient who is in urgent need of blood.The search functionality of
our system also provides the user with a routemap guiding the user towards
thedestination

1.4.3Hospital Search

Using the services provided by the Google Maps API(Application Programmable


Interface),the hospitals which are registered with this application and have the facility
of appointment booking are displayed on the map.The user is also provided the driving
directions to the required hospital.

1.4.4Emergency Message

Forward a message describing your location to an emergency number relevant to that


area. This provides your exact location in terms of latitude and longitude to the
corresponding emergency number. This is particularly useful when a person is in need
of urgent medical help in an unknown location

3
2.Requirements

4
2.1 Functional Requirements
This application has the following functionalities:

Module1:Management of user profile


Module2:Scheduling of appointments
Module3:Blood Bank Search
Module4:Location based emergency number retrieval
Module5:Nearby hospital search

2.1.1 Management of user profile


Users have to register with their general details and clinical details this
information is stored in the cloud. The patient or a doctor can retrieve the information
whenever necessary

2.1.2Scheduling of appointments
A Doctor is selected based on the requirements. then day and time are selected, slots
are obtained .appointment is booked based on the availability of the doctor. later a user can
view , cancel or reschedule the appointments .Doctor manages his/her schedule.

2.1.3 Blood Bank Search


Blood banks are viewed by the user on Google Maps. Upon the selection of a
blood bank availability of blood of a given group can be checked. Route map to the
destination with driving directions can be viewed.

2.1.4 Location based emergency number retrieval

This gives users quick access to local medical assistance, based on the current location
and sends a predefined message to the emergency services with the details of the location of
the emergency case.

2.1.5Nearby hospital search


Locating the nearest hospitals based on user’s current location and provision
of the route map to the user along with driving directions.

5
2.2 Non-functional Requirements:
Those requirements which are not the functionalities of a system but are the
characteristics of a system are called the non-functionalities. Every software system has some
non-functionalities. Just fulfilling the requirements of the user is not a good task, keeping the
system accurate, easy to maintain, reliable and secure is also a basic part of software
engineering. Health Care Access System must have the following non-functional requirements.

2.2.1 Performance constraints

This system must be fit according to the performance wise. It should use
less memory and will be easily accessible by the user. Memory management should be
done wisely so that none of the memory part goes wasted.
.
2.2.2 Safety Requirements:
The software used is open source software and thus all licenses are free.
Android applications run in a sandbox, an isolated area of the system that does not have
access to the rest of the system's resources, unless access permissions are explicitly
granted by the user when the application is installed. The sandboxing and permissions
system lessens the impact of vulnerabilities and bugs in applications.

2.2.3Software Quality Attributes

Quality is the degree of excellence. For a customer it is the fitness for use
HealthCare Access System should possess the following quality attributes.

Reliability
Measure if product is reliable enough to sustain in any condition. Should give
consistently correct results. Product reliability is measured in terms of working of
project under different working environment and different conditions.

Maintainability
Different versions of the product should be easy to maintain. For development its
should be easy to add code to existing system, should be easy to upgrade for new
features and new technologies time to time.

Usability
This can be measured in terms of ease of use. Application should be user friendly.
Should be easy to learn. Navigation should be simple.
The system must be easy to use for input preparation, operation, and interpretation of
output,provide consistent user interface standards or conventions with our other
frequently used systems and be easy for new or infrequent users to learn to use the
system.

6
Portability
This can be measured in terms of Costing issues related to porting, Technical issues
related to porting, Behavioral issues related to porting.

Correctness
Application should be correct in terms of its functionality, calculations used internally
and the navigation should be correct. This means application should adhere to
functional requirements.

Efficiency

To Major system quality attribute. Measured in terms of time required to complete any
task given to the system. For example system should utilize processor capacity, disk
space and memory efficiently. If system is using all the available resources then user
will get degraded performance failing the system for efficiency. If system is not
efficient then it cannot be used in real time applications.

Integrity and security

Integrity comes with security. System integrity or security should be sufficient to


prevent unauthorized access to system functions, preventing information loss, ensure
that the software is protected from virus infection, and protecting the privacy of data
entered into the system.

Testability

System should be easy to test and find defects. If required should be easy to divide in
different modules for testing.

Flexibility

Should be flexible enough to modify. Adaptable to other products with which it needs
interaction. Should be easy to interface with other standard 3rd party components.

Reusability

Software reuse is a good cost efficient and time saving development way. Different
code libraries classes should be generic enough to use easily in different application
modules. Dividing application into different modules so that modules can be reused
across the application.

Interoperability

Interoperability of one system to another should be easy for product to exchange data or
services with other systems. Different system modules should work on different
operating system platforms, different databases and protocols conditions

7
2.3 Life cycle

The life cycle model used for our project is the Prototyping Model. In the prototyping model of
software development a prototype is made first and based on it final product is developed. A prototype
is a model or a program which is not based on strict planning, but is an early approximation of the final
product or software system. A prototype acts as a sample to test the process. From this sample we learn
and try to build a better final product.

Fig 2.1: The Prototyping Model

Advantages
 When prototype is shown to the user, he gets a proper clarity and 'feel' of the functionality of
the software and he can suggest changes and modifications.
 When client is not confident about the developer's capabilities, he asks for a small prototype to
be built. Based on this model, he judges capabilities of developer.
 It reduces risk of failure, as potential risks can be identified early and mitigation steps can be
taken.
 Iteration between development team and client provides a very good and conductive
environment during project.
 Time required to complete the project after getting final the SRS reduces, since the developer
has a better idea about how he should approach the project.

8
2.4 Computational resource requirements

2.4.1 Hardware interfaces

 Processor : Pentium 4
 RAM : 512MB
 Hard Disk : 40GB
 Android phone : Version 2.3 or higher

2.4.2 Software interfaces

 Languages used : JAVA,XML


 Database used : Oracle
 Operating System used : Android 2.3
 IDE :Eclipse 3.5
 Web Server : Apache Tomcat 6.0

2.4.3 Communication interfaces

HTTP- Hypertext Transfer Protocol is an application protocol for distributed,


collaborative, hypermedia information systems. HTTP is the foundation of data
communication for the World Wide Web.Hypertext is a multi-linear set of objects, building
a network by using logical links (the so-called hyperlinks) between the nodes (e.g. text or
words). HTTP is the protocol to exchange or transfer hypertext.

Google Maps API (Application Programmable Interface) allows developers to embed


Google maps within their applications to build innovative and feature based location based
interactive services.

9
3.Architecture

10
3.1 Software Architecture

Android Client

-General User

-Doctor

Fig 3.1 Client Server Architecture

3.1.2 System Architecture:

The Android SDK includes a mobile device emulator, a virtual mobile device that runs on your
computer. The emulator lets you develop and test Android applications without using a physical
device.

Fig. 3.2:System Architecture

11
3.2 Technical Architecture

APPOINTMENT SCHEDULING

BLOOD BANK SEARCH

12
EMERGENCY

HOSPITAL SEARCH

13
4. Design

4.1 Objective

A software design document details how the software requirements should be implemented
as well as giving the programmers a blueprint to follow. Once the software design document is
approved by the appropriate parties, it becomes a baseline for limiting changes in the scope of
the project.

4.2 Modules

Health Care Access System comprises of the following modules

4.2.1Profile management:
This module takes the information of clinical details of a patient and his family
members also. The patient or a doctor can retrieve the information whenever necessary.
Functionalities:
 User registers giving all his details.
 User can login with his username and password.
 User can change his password.
 User can register his family members

4.2.2Appointment:
User can book an appointment with the doctor.

Functionalities:
o User can select a hospital and fix an appointment with the doctor in the
available slots.
o Doctor can login with his username and password and view his
appointments.
o Doctor can also cancel, re-schedule his appointments.
o Doctor can also view the clinical details of the patient with whom his
appointment is booked.

14
4.2.3Blood bank Search:
Searches blood banks for the availability of blood of a required group.

Functionalities
 Displays blood banks on Google Maps
 Checks for blood group availability
 Get directions
4.2.4Emergency Message:
This module sends a predefined message to the emergency services with the
details of the location of the emergency case.

Functionality:

A predefined message showing the exact user location ongoogle maps is sent to the
emergency number

4.3 Data flow and UML diagrams

DFD(Data Flow Diagram) for Appointment Module

15
Use Case diagram for Whole System

A use case illustrates a unit of functionality provided by the system. The main purpose of the use
case diagram is to help development teams visualize the functional requirements of a system,
including the relationship of the “actors” (human beings who will interact with the system) to
essential processes, as well as relationships among different use cases.

Use case diagram generally show groups of use cases – either al use cases for the complete
system, or a breakout of a particular group of use cases with related functionality (e.g., all
security administration –related use cases).

A use case diagram is typically used to communicate the high level functions of the system and
system scope

Registration

Clinical Details

Login

Appointment

Disease and symptoms

Hospital Search
User Doctor

Blood Bank Search

Emergency

16
Class diagram for Whole System

A class diagram is a static structure diagram that describes the structure of system by shadowing
the systems classes, their attributes, operations (or methods), and the relationship among the
classes

Patient Doctor

+Id: int +Id: int


+Name: char +Hospital: char
+DOB: varchar +Name: char
+Gender: char +Gender: char
+BP: varchar +Speciaization: varchar
+Sugar: float +Experience: int Disease & symptoms
+Count: float +Qualification: varchar
+PracticeId: int +DiseaseId: int
+SearchDoctor() +MailId: varchar +DiseaseName: char
+SearchHospital() Emergency +SymptomId: int
+EditAppointment() +EditMedication() +SymptomName: char
+SearchBloodGroup() +EditAppointment() +ServiceNumber: int
+() +DisplaySymptom()
+SendMessage()
+ReceiveCall() +getServiceNumber() +MatchSymptom()
+Call()

Location
Appointment Medication
+Latitude
+Longitude +Day: char +TipId: int
+Time: varchar +TipDescription: char
+Search() +Hospital: char +RemedyId: int
+Doctor: char +RemedyDescription: char
+Patient: char +MedicineId: int
+MedicineName: char
BloodBank
+MatchSymtom()
+Name: char Hospital
+Display()
+Id: int
+HospitalId: int
+Volume: varchar
+HospitalName: char
+Groups: varchar
+Doctors: char
+SearchGroup()
+CheckAvailability()

17
ACTIVITY DIAGRAM

Activity diagram is another important diagram in UML to describe dynamic aspects of the
system. Activity diagram is basically a flowchart to represent a flow from one activity to another
activity. The activity can be described as an operation of the system. So the control flow is drawn
from one operation to another. This flow can be sequential, branched or concurrent. Activity
diagram deals with all type of flow control by using different elements like fork, join etc.

Activity diagram for Appointment Module

User Appointment Doctor

Register
Register

Login
Login

View Slots View Appointment


Search Doctor

Availability
Cancel Slot

No

Yes
Book an Appointment

No

Yes

18
19
4.4 Database design

4.4.1 Entity-Relationship diagram

20
5. References

 Software Engineering-A Practitioner’s Approach-Roger.S.Pressman


 The Unified Modeling Language User Guide-Ivar Jacobson,Grady Booch &James
Rumbaugh
 www.wikipedia.com
 www.sdlc.ws

6. Presentation Slides

21
Department of Computer Science
and Engineering
Graduate With Excellence

A.Sirisha-3090
K.Shruthi-3088

Empower Women – Impact the World

Easy access to health care services.


 Doctor Appointment Booking
 Emergency Services
 Blood Banks
 First-Aid Tips
 Diseases and Medication

Empower Women – Impact


Graduate Withthe World
Excellence

22
Can be used by Smartphone holders.

Provides access to health care services based on


location.

Project scope is Client-Server programming.

Communication between the smart phone and the


remote server.

Empower Women – Impact


Graduate Withthe World
Excellence

 Booking an appointment via phone call to which an


Invoice Response System or a person responds.

 Enquire several blood banks and look out for


availability for blood.

 While travel or at an unknown place, first find out the


corresponding number

 Difficulty in looking out for first-aid tips.

Empower Women – Impact


Graduate Withthe World
Excellence

23
 Display nearby hospitals.
 Choose hospital specialty and doctor.
 Display doctors schedule.
 Book an appointment.
 Get Confirmation of the appointment.
 Get Remainders.
 Doctors manage their appointments

Empower Women – Impact


Graduate Withthe World
Excellence

Searches the nearest blood banks based on the


availability of blood.

Tips for Common Ailments.


First-aid tips in case of emergency

Empower Women – Impact


Graduate Withthe World
Excellence

24
GPS determines our current location.

Check to find out our location falls under the


circumference of which area

Obtain the emergency number of that area


E.g. 108 if in A.P,103 if in Karnataka etc

 Forward a message describing our exact location to


that number.

Empower Women – Impact


Graduate Withthe World
Excellence

This application has the following functionalities:

 Management of user Profile


 Scheduling of appointments
 Blood Bank Search
 Location based emergency number retrieval
 Nearby hospital search
 Tips and medication management

Empower Women – Impact


Graduate Withthe World
Excellence
\

25
Performance constraints
 It should use less memory and should be easily
accessible by the user.
Safety Requirements
 Android applications run in a sandbox.

Software Quality Attributes


 Reliability

 Usability

 Maintainability

 Correctness

 Flexibility

 Reusability

Empower Women – Impact


Graduate Withthe World
Excellence

Fig: The Incremental


Model

Empower Women – Impact


Graduate Withthe World
Excellence

26
SOFTWARE INTERFACES

 Languages used :JAVA,XML


 Database used :Oracle
 Operating System used : Android 2.3
 IDE :Eclipse 3.5
 Web Server :Apache Tomcat 6.0

Empower Women – Impact


Graduate Withthe World
Excellence

COMMUNICATION INTERAFACES

 HTTP(Hyper Text Transfer Protocol)


 XML(Extensible Markup Language)
 JSON(JavaScript Object Notation)

Empower Women – Impact


Graduate Withthe World
Excellence

27
Apache Tomcat

Android -User info.


Client -Doctor Info
-General User -Blood Bank Info.
-Doctor Application
-Emergency Info
Programmable
Interface -Tips info.
(Google Maps)

TIER-1 TIER-2 TIER-3


CLIENT WEB SERVER Database Server
Empower Women – Impact
Graduate Withthe World
Excellence

Empower Women – Impact


Graduate Withthe World
Excellence

28
Appointment
Scheduling

Empower Women – Impact


Graduate Withthe World
Excellence

Blood Bank Search

Empower Women – Impact


Graduate Withthe World
Excellence

29
Emergency Number

Empower Women – Impact


Graduate Withthe World
Excellence

Design document
 Details how the software requirements should
be implemented
 Provides a blueprint to follow.
 Becomes a baseline for limiting changes in the
scope of the project on approval.

Empower Women – Impact


Graduate Withthe World
Excellence

30
Profile management:
This module takes the information of clinical details of a patient
and his family members also. The patient or a doctor can
retrieve the information whenever necessary.
Functionalities:
 User registers giving all his details.
 User can login with his username and password.
 User can change his password.
 User can register his family members

Empower Women – Impact


Graduate Withthe World
Excellence

Appointment:
User can book an appointment with the doctor.
Functionalities:
 User can select a hospital and fix an appointment
with the doctor in the available slots.
 Doctor can login with his username and password
and view his appointments.
 Doctor can also cancel, re-schedule his
appointments.
 Doctor can also view the clinical details of the patient
with whom his appointment is booked.

Empower Women – Impact


Graduate Withthe World
Excellence

31
Blood bank finder:
Searches for the nearest blood bank based upon the
availability of blood.

Functionalities
 Searches for nearest blood bank based on location of the user
and the availability of blood
 Get directions

Empower Women – Impact


Graduate Withthe World
Excellence

Disease and Medication


Disease or medical problem is taken as input from the patient.
The lists of symptoms are displayed on the screen by the input
given by the patient.
Functionalities:
 User gives the symptoms as input and based on the input the
diseases that the user might be suffering from are displayed.
 User can get tips based on the symptoms given as input.
 He can also get information about home remedies based on
input.
 He will also be suggested medicines based on the symptoms
given

Empower Women – Impact


Graduate Withthe World
Excellence

32
Empower Women – Impact
Graduate Withthe World
Excellence

USE CASE DIAGRAM Registration

Clinical Details

Login

Appointment

Disease and symptoms

Hospital Search
User Doctor

Blood Bank Search

Emergency

Empower Women – Impact


Graduate Withthe World
Excellence

33
ACTIVITY DIAGRAM
User Appointment Doctor

Register
Register

Login
Login

View Slots View Appointment


Search Doctor

Availability
Cancel Slot

No

Yes
Book an Appointment

No

Yes

Empower Women – Impact


Graduate Withthe World
Excellence

Patient Doctor
CLASS DIAGRAM
+Id: int +Id: int
+Name: char +Hospital: char
+DOB: varchar +Name: char
+Gender: char +Gender: char
+BP: varchar +Speciaization: varchar
+Sugar: float +Experience: int Disease & symptoms
+Count: float +Qualification: varchar
+PracticeId: int +DiseaseId: int
+SearchDoctor() +MailId: varchar +DiseaseName: char
+SearchHospital() Emergency +SymptomId: int
+EditAppointment() +EditMedication() +SymptomName: char
+SearchBloodGroup() +EditAppointment() +ServiceNumber: int
+() +DisplaySymptom()
+SendMessage()
+ReceiveCall() +getServiceNumber() +MatchSymptom()
+Call()

Location
Appointment Medication
+Latitude
+Longitude +Day: char +TipId: int
+Time: varchar +TipDescription: char
+Search() +Hospital: char +RemedyId: int
+Doctor: char +RemedyDescription: char
+Patient: char +MedicineId: int
+MedicineName: char
BloodBank
+MatchSymtom()
+Name: char Hospital
+Display()
+Id: int
+HospitalId: int
+Volume: varchar
+HospitalName: char
+Groups: varchar
+Doctors: char
+SearchGroup()
+CheckAvailability()

Empower Women – Impact


Graduate Withthe World
Excellence

34
Empower Women – Impact
Graduate Withthe World
Excellence

Empower Women – Impact


Graduate Withthe World
Excellence

35
 Software Engineering-A Practitioner’s Approach-
Roger.S.Pressman
 The Unified Modeling Language User Guide-Ivar
Jacobson,Grady Booch &James Rumbaugh
 www.wikipedia.com
 www.sdlc.ws

Empower Women – Impact


Graduate Withthe World
Excellence

 This system would certainly enable people to


access health care services in a convenient
manner.

Empower Women – Impact


Graduate Withthe World
Excellence

36
37

You might also like