Software Requirements
Specification
For
Hospital Information System
Version 1.0
Prepared by
Chintan Mehta
Lead Software Engineer
Prepared for
COMP 5423—Software Engineering
Instructor:
A. Lodgher, Ph.D.
Table of Contents
Cover Page..………i
Table of Contents………..ii
Introduction ... 6
Existing System ... 6
Statement of Need and Feasibility ... 6
A Bounded Scope for the System ... 6
A list of All Stakeholders Interviewed ... 7
Systems Technical Requirement ... 7
Numbered list of requirements and the constraints that apply to each ... 8
Use Case Diagram 1 ... 10
Use Case Diagram 2 ... 11
Use Case Scenarios ... 12
Use Case A –User Login ... 12
Use Case B –Doctor Check Schedule ... 13
Use Case C-Doctor Change the Schedule of Patient ... 14
Use Case D-Lab Test ... 15
Use Case E –Prescribe Medicine ... 16
Use Case F-Keep in Touch ... 17
Use Case G-Register with System ... 18
Use Case H-Appointment ... 19
Use Case I-Pay the fees ... 20
Use Case J- Logs the patient data ... 20
Use Case K-Nurse Checks Schedule ... 21
Use Case L- Allot the room ... 22
Use Case M-Admin Maintenance ... 23
Activity Diagrams ... 25
Activity Diagram for the Logging In of all Stakeholders (Use Case A) ... 25
Activity Diagram for Doctor Check Schedule (Use Case B) ... 26
Activity diagram for Doctor Change the Schedule of Patient (Use Case C) ... 28
Activity Diagram for Prescribing Medicine (Use Case E) ... 31
Activity Diagram for Keep in Touch (Use Case F) ... 32
Activity Diagram for Patient Registering with System (Use Case G) ... 33
Activity Diagram for Patient Schedule the Appointment (Use Case H) ... 34
Activity Diagram for Pay the Fees (Use Case I) ... 35
Activity Diagram for Nurse Logs Patient Data (Use Case J) ... 36
Activity Diagram for Nurse Check Schedule (Use Case K) ... 37
Activity Diagram for Allotting Room to Patient (Use Case L) ... 38
Activity Diagram for Administrator Maintenance (Use Case M) ... 39
Swimlane Diagrams ... 40
Swimlane Diagram for Schedule the Appointment ... 40
Swimlane Diagram for Login and Registration ... 41
Table of Classes (With Purpose, Attributes and Operations) ... 42
A Class Connectivity Diagram, Associations and Dependencies ... 45
Data Flow Diagram (DFD) ... 46
Context Level-DFD ... 46
DFD Level 1 ... 47
DFD Level 2 ... 48
DFD Level 3 Logs In to the system, Display the Respective Menu ... 49
DFD Level 4 Appointment Booking System... 50
DFD Level 4 Diagnose Diseases & Prescribe Medicine System ... 51
DFD Level 4 Allot Ward and Bed ... 52
DFD Level 4 Laboratory and Patient Log System ... 53
A Set of Data and Data object Type being used ... 54
1] SecurityUser ... 54 2] Address ... 54 3] PatientType ... 54 4] DoctorType ... 54 5] Patient ... 54 6] Doctor ... 55 6.1] DosageType ... 55 7] Prescription ... 55
8] Nurse ... 55 9] Schedule ... 55 10] PatientVisitDetail ... 56 11] LabTest ... 56 12] PatientMedicalFinding ... 56 13] Ward ... 56 14] Room ... 57 15] Bed ... 57 State Diagrams ... 57
State Diagram for Prescription Class ... 57
State Diagram for Appointment Class... 58
Sequence Diagram ... 59
Doctor Prescribes Medicine ... 59
Get Patient’s Data and Diagnose ... 60
Change Schedule of the Patient ... 61
Introduction
Software Requirement Specification is the detailed analysis of what stakeholders wants. It does not show how the system will function. In Software Requirement we break the Requirements into parts so that we can easily understand the part. It is “divide and conquer” policy. First we dig-out each requirement and make their Use Cases. From the Use Case we go on build Use Case Scenarios. Doing grammatical parse on Use Case Scenarios we build Classes, Properties and Operations. We then build Data objects. From Scenarios and Classes we build State Diagram, Activity Diagrams and Sequence diagrams. We understand the Functionality from user point of view. As a Project Manager I have to first study the actual need and Feasibility of the System.
Existing System
There are numerous locations where Sherman Hospital has opened up its branch. These branches do have good IT infrastructure but they are not interconnected. The Present System is not having modern state-of-art facility.
Statement of Need and Feasibility
Feasibility study is an analysis and viability of Idea, idea to build the Hospital Information system. A feasible business/System is that business or system from which we get benefits, more ease of use, more profits. It is proven from Dr. Halmaka’s Experience that good Hospital Information System will be beneficial to all hospital stakeholders and organization as a whole. Patient will have ease to get appointments. Doctor will have ease to view patient record. No need keep records in big store room. It will definitely be beneficial to build the hospital information Web Based System. We can have multiple backups at different Location so our data is safe and secure in situation of catastrophe.
A Bounded Scope for the System
The Hospital Information System should be accessible from Website. It wants the User Security. That means the Authenticate must be able to access the system. User must have UserID and Password to Log on to the system. He must be able to access website from mobile phone as well. If the Patient is new to the Hospital then he has to first register. After registration only he could be able to access further pages of website.
Doctor should be able to check his schedule, change the Patient’s Schedule in emergency. Doctor should also be keep in touch with the patient via email, text messages and phone calls which should get recorded in the system. Doctor can have talk with remote patient and that meeting with the patient should be recorded. Doctor should be able to check the Schedule and on drilling down of the date of schedule. Doctor should be able to see the Patient name and time on further drilling down of Schedule. Doctor should be able to see the Demographic data; Patient’s previous visit Tests, Medical Findings, allergies and Medication given to Patients.
Nurse should be able to check schedule and Logs the patient Medical findings. Receptionist manages the Scheduling of the Patient and Patient appointment with Doctor. There is Laboratory which logs the tests data suggested by Doctor. Pharmacist gives the medicine to Patient as prescribed by the Doctor.
A list of All Stakeholders Interviewed
Designation What is importance?Nurse Nurse gave all the detail about the role she is playing in the hospital
Doctor Doctor is the heart of hospital and initiates most of the tasks
Patient Patient is God of Hospital and his satisfaction is of prime importance
Administrator Administrator is the person who visualizes overall management of the hospital. Pharmacist Pharmacist is person who gives proper
medicine prescribed by the Doctor Laboratory Take care of all the Test, X-Ray, Echo
Cardiograph, Trade-mill tests etc.
Systems Technical Requirement
System will need the Following Technology in order to perform well. 1. There should be Internet connection at the all branches of Hospitals. 2. There should be one high end server at the Head Location.
3. All the Nodes should be having Browser say for example Internet Explorer. 4. System should be up and running 24 hours a day 7 days a week and 365 days. 5. Doctors should have Web Cam in order to view the remote Patient.
6. High end server should be connected with Leased line with IP. 7. Must use VPN as the Hospital is having Mission critical environment
Numbered list of requirements and the constraints that apply to each
No Requirement Constraint Type Type of
Diagram 1 Doctor, Patient, Nurse,
Pharmacist, Nurse, Receptionist should login
What if unauthorized user tries to login and try to hack site?
Functional, Flow, Data
Use Case, DFD
1.1 Register the Patient if he is new to the System
How can we know that the patient registered is who his name is? Can we take photo identity Or from SSN identify his identity. Functional, Flow, Data Use Case, DFD, Data Objects
2 Doctor Could be able to see Schedule in day, month and year fashion
Is giving calendar on the webpage ideal way of seeing schedule?
Functional, Data
Use Case, Data Objects
3.1 On drilling down he can see the detailed schedule tasks and list of patients
No constraint Functional, Data
Use Case, Data objects
3.1.1 On clicking the patient name he can see the patient profile which includes key demographic data including insurance, primary care provider, and pharmacy.
What if nobody is at the specified address and if not having insurance?
Functional, Data
Use Case, Data objects
4 Doctor could be able to see any medical alerts, reminders and schedule of the patient for any tests.
What if patient doesn’t go for test?
Functional, Data
Use Case, Data objects
5 Doctor can see information on allergies, medication and admissions and appointments at the hospital in the past
No constraint Functional, Data
Use Case, Data objects
5.1 On further drill down of each of those visits he can see the treatment given to the patient
What about treatment given to hospital other than Sherman
Functional, Data
Use Case, Data objects
6 If doctor notices that a quick action on his side may be
beneficial for the patient then he can change his schedule and patient schedule too.
What if patient is not available at his home or on the phone number he has given.
Functional, Data, Flow, Behavior Use Case, DFD, Data objects, Sequence
7 Patient can schedule, approve, disapprove or recommend a change to the doctors request of change of schedule
No Constraint, apart from Website is down
Functional, Behavior, Data
Use Case, State, Data objects
No Requirement Constraint Type Type of Diagram 8 Patient can view his/or her
medical information on the website
No Constraint, apart from Website is down
Functional, Data
Use Case, Data objects
9 Doctor can view the patient’s medical images like X-ray, CT-Scan, Echo-Cardiograph etc.
What if Bandwidth is not available to see the videos and emergency is there?
Functional, Data
Use Case, Data objects
9.1 Doctor can get in touch with the patient or any of the associated caretakers via phone, text messages, and email directly from System.
What if patient is not available at his home or on the phone number he has given.
Functional, Data
Use Case, Data objects
9.1.1 The communication between doctor and patient should be recorded and doctor/other doctor can access it for viewing
What if the
communication link fails in between the recording?
Functional, Data
Use Case, Data objects
10 Patient visit from remote clinics may be recorded based on patient-doctor discretion and videos of those visits may also be available for a doctor to view.
Bandwidth problem? Will we use
readymade third party component to fulfill this requirement?
Functional, Data
Use Case, Data objects
11 Administrator is able to Delete, Update and Add the
Doctor/Nurse/Staff if they are leaving the hospital, their detail changes or New staff arrives at the hospital.
From whose instruction the administrator would perform these action is to be decided.
Functional, Flow, Data
Use Case, DFD, Data objects
12 Receptionist will allocate Room or Bed to the patient in case if patient is hospitalized. Is Receptionist independent on taking the decisions? Functional, Data
Use Case, Data objects
13 Nurse will Log the patient data into the system. Doctor enter his diagnoses log too.
Is Doctor going to verify the data nurse has entered?
Functional, Flow, Data
Use Case, DFD , Data objects 14 Receptionist will collect the fees
from the patient.
Where will Receptionist deposit fee? Is it Cashier or Accountant? Functional, Data
Use Case, Data objects
15 Doctor enter his diagnoses and Prescribes medicine. Functional, Flow, Behavior, Data Use Case, Sequence, State, Data objects
Use Case Diagram 1
Hospital Information SystemDoctor Patient Laboratory Nurse Receptionist Pharmacy Administrator
Logs in
Add, Delete, Edit Staff, Doctor, Patient
Nurse
Logs & Check the patient data like heart rate, blood pressure.
Checks schedule
Use Case Diagram 2
Hospital Information SystemDoctor
Check the Schedule via website and Mobile phone and see the details of it and detail of the patient
Can change the schedule of the patient and his schedule as per the emergency
Prescribe the Laboratory test
Prescribe the Medicine
Receptionist
Laboratory
Patient Call the Patient via Phone, Text Messages and
Email (Keep in touch with patient) & videos of Remote Patients
Phone & Viedo calling recording
Schedules or Cancel Reschedules appointment
Take Fee
Check the occupancy and allot the bed/Room
Pharmacy
Use Case Scenarios
Use Case A –User Login
Doctors, Nurse, Receptionist, Patient, Administrator, Laboratory, and Pharmacist
Logs In via Internet PC or Mobile phone having internet facility.
Primary Actors
:
Doctors, Nurse, Receptionist, Patient, Administrator, Laboratory, PharmacistGoal in Context
:
To gain access to the Hospital Information System as per role assigned to the user.Preconditions
: 1 System must be fully configured and appropriate user ID and passwords must be obtained from system administrator.2 If user is patient then he has to register with the HIS prior to login.
Trigger
: To use the functionality of the systemScenario:
1. All stakeholders log on to the Hospital Information System Website. 2. Stakeholders enter his or her user ID.
3. Stakeholders enter passwords (Password length is minimum 6 alphanumeric characters). 4. Save the Login time of particular stakeholder.
5. The system displays all major menus that are authorized to view by that stakeholder.
Exceptions:
1. Website or Web Server is down.
2. Mobile phone is moving out of the Internet connection zone. 3. Session time out expires.
4. Website maintenance is going on.
5. User ID and Password are incorrect. See Use Case Validate ID and password
Channel to Actor
: Via PC-based browser and internet connection.Secondary Actors
: System AdministratorChannels to Secondary Actors
:Open issues
:1. What mechanisms protect unauthorized use of the capability by the other employees of HIS?
2. Is Password mechanism for authenticating the user is sufficient? 3. Should we track the User with malicious intention?
3.1 Should we track the IP from where there are many login in short time?
Priority
:
HighWhen Available
:
First IncrementIteration
:
FirstCreated by
:
Chintan MehtaUse Case B –Doctor Check Schedule
Use Case
: Check the Schedule via website and Mobile phone and See the
Detail of his schedule and details of Patient
Primary Actors
:
DoctorGoal in Context :
To See at what time he should remain present at the hospital so he could attend them.Preconditions
: User must be logged in with sufficient privilege.Trigger
: Doctors decides to take a look at his appointment with his patients.Scenario:
1. Doctor selects the Schedule Button available to him on the screen. 2. System will give calendar of current month.
3. In calendar the red date, green dates and blue dates will be there. 4. The red date indicates that there is higher number of patients to check. 5. The green date indicates that there is moderate number of patients to check. 6. The blue date indicates that there are no patient yet appointed.
7. The system displays the 3 option Daily, Monthly, Yearly. 8. The Doctor selects the Daily Schedule Option.
9. The system gives the Daily Schedule of the Doctor who is logged in. 10. The Doctor selects the Monthly Schedule option.
11. The system gives the Monthly schedule of the Doctor who is logged in. 12. The doctor selects the Yearly Schedule option.
13. The system gives the Yearly schedule of the Doctor who is logged in. 14. Doctor could view the schedule by date and time.
15. On clicking further on date the Doctor would get the detail schedule, tasks and list of patient.
16. On clicking patient name Doctor can see the profile which includes key demographic data which includes insurance, primary care provider, pharmacy.
17. On clicking alerts, reminders and schedule of patient for any test Doctor would able to see those things.
18. On Pressing the Allergies and Medication button Doctor could be able to see the detail about that particular patient.
Exceptions:
1. Website or Web Server is down. 2. Session time out expires.
3. Website maintenance is going on. 4. Doctor selects other Menu Item or Link.
Channel to Actor
:1. Via PC-based browser and internet connection. 2. Mobile Phone
Secondary Actors
: System Administrator, ReceptionistChannels to Secondary Actors
:1. Can the Doctor logged in be able to view the schedule of other Doctor?
2. Will mobile phone viewing be enough good (user friendly) for doctor to view his schedule? (Small screen of mobile phone)
Priority
:
HighWhen Available
:
First IncrementIteration
:
FirstCreated by
:
Chintan MehtaDate
:
12th October, 2010Use Case C-Doctor Change the Schedule of Patient
Use Case
: Change the schedule of the patient as per the emergency
Primary Actors
:
DoctorGoal in Context :
For the patient who is going to get benefit if s/he is treated earlier then doctor could change the schedule.Preconditions
: Use Case Scenario B must be executedTrigger
:
To treat patient in emergency like situation or would it be beneficial for the patient if he is treated earlier.Scenario
:
1. Doctor goes to change schedule button. 2. Press that button.
3. Doctor presses the Enter/Ok button.
4. The Schedule of the patients appears on the screen. 5. There appears the calendar.
6. Doctor selects the calendar date for the patient. 7. Then Presses the Save button.
8. Patient schedule is now gone to Receptionist for further notification to patient. 9. Receptionist Checks whether the changed date is available or not.
10. If date is available then calls the patient or send the schedule change notification to patient. 11. Patient on receiving the notification confirms of Reject the request.
12. If patient rejects the date then the original date is kept.
Exceptions:
1. Website or Web Server is down. 2. Session time out expires.
3. Website maintenance is going on. 4. Doctor selects other Menu Item or Link.
5. Doctor changes the schedule two or more than two times of same patient.
Channel to Actor
:1. Via PC-based browser and internet connection.
Secondary Actors
: Receptionist, Patient1. Patient: PC-based Web browser system or Telephone call 2. Receptionist: PC-based Web browser system
Open issues
:1. Doctor could take any route.
Priority
:
ModerateWhen Available
:
First IncrementIteration
:
FirstCreated by
:
Chintan MehtaDate
:
12th October, 2010Use Case D-Lab Test
Use Case
: Prescribe the Laboratory test
Primary Actors
:
DoctorGoal in Context :
To get the Clear picture of patients Diseases.Preconditions
: User must be logged in with sufficient privilegeTrigger
:
Explanation given by the Patient about his/her illness.Scenario
:
1. Doctor is on any screen.
2. Press the Go for Laboratory test button.
3. A drop-down box containing patient names appears on the screen. 4. Doctor selects the patient name.
5. Doctor selects the Laboratory test to be done. 6. Patient goes to Lab department.
7. Laboratory checks the test particular patient has been suggested by doctor.
8. Lab does the test of the patient and enters the test data of the patient in the system
Exceptions:
1. Website or Web Server is down. 2. Session time out expires.
3. Website maintenance is going on. 4. Doctor selects other Menu Item or Link. 5. Patient doesn’t go to the Laboratory. 6. Lab is closed for the day
Channel to Actor
:1. Via PC-based browser and internet connection.
Secondary Actors
:Patient, LaboratoryChannels to Secondary Actors
:1. System Administrator: PC-based Web browser system 2. Laboratory: PC-based Web browser system
Open issues
:Priority
:
HighWhen Available
:
First IncrementIteration
:
FirstCreated by
:
Chintan MehtaDate
:
12th October, 2010Use Case E –Prescribe Medicine
Use Case
: Prescribe the medicine to the Patient
Primary Actors
:
DoctorGoal in Context
:
Ultimate goal to give the patient required ailment.Preconditions
: Doctor must be logged in with sufficient privilegeTrigger
:
All data is there now it is time to perform final step.Scenario
:
1. Doctor diagnoses disease. 2. Save the Diagnoses.
3. Press the Prescribe the medicine button. 4. Patient name combo box appears.
5. The Patient name combo box is populated with those patients whose check-in date is the date selected
6. Doctor prescribes to the patient the drugs and enters into the system. 7. Patient goes to Pharmacy.
8. Pharmacy checks the Medicine to be given on the system. 9. Gives the Prescribed medicine to the Patient.
Exceptions:
1. Website or Web Server is down. 2. Session time out expires.
3. Website maintenance is going on. 4. Doctor selects other Menu Item or Link. 5. Patient does not turn up to receive prescription.
Channel to Actor
:1. Via PC-based browser and internet connection.
Secondary Actors
: Pharmacy, LaboratoryChannels to Secondary Actors
:1. Pharmacy : PC-based Web browser system 2. Laboratory: PC-based Web browser system
Open issues
:Priority
:
HighWhen Available
:
First IncrementIteration
:
FirstDate
:
12th October, 2010Use Case F-Keep in Touch
Use Case
: Stay in touch with the Patient via Phone, Email or Messaging
And video conference remote Patient via this system.
Primary Actors
:
DoctorGoal in Context :
Patient’s satisfaction is prime importance for the doctor.Preconditions
: Doctor must be logged in with sufficient privilegeTrigger
:
Know that if patient is satisfied with the service and whether patient is feeling well with the medication.Scenario
:
1. Doctor is on any screen.
2. Press the Keep in touch button. 3. Patient name combo box appears.
4. The Patient name combo box is populated with those patients by decreasing order of check-in date.
5. Doctor select’s the patient name.
6. The detail of patient like email address, phone number appears on the screen. 7. Doctor selects the option which he likes.
8. If doctor calls then Conversation with the patient is established and recorded. 9. Recorded Conversation and Video is saved against patient’s history.
10. If Patient is at remote place then the doctor will ask the patient to video record the conversation
11. If patient says yes then Doctor will record the video conferencing conversation and saves it.
12. Email, Text messages are recorded without patient discretion.
Exceptions:
1. Website or Web Server is down. 2. Session time out expires.
3. Website maintenance is going on. 4. Doctor selects other Menu Item or Link.
5. Conversation via telephone or mobile ends up in between.
Channel to Actor
:1. Via PC-based browser and internet connection.
Secondary Actors
: Patient, Phone - Video Calling and Recording system, Email SystemChannels to Secondary Actors
:1. Phone and Video Call and Recording system
2. Patient: PC-based Web browser system or cell phone or LL 3. Email-System: PC-based Web browser system
Open issues
:When Available
:
First IncrementIteration
:
FirstCreated by
:
Chintan MehtaDate
:
12th October, 2010Use Case G-Register with System
Use Case
: Registers with the System.
Primary Actors
:
PatientGoal in Context
:
To Go for check-up to the hospital’s doctorPreconditions
: Patient must be ready with all the information required by the Hospital to RegisterTrigger
: Patient has fallen sick or wants to have regular check up.Scenario:
1. Patient log on to the Hospital Information System Website. 2. Clicks on New Patient Button.
3. Fills Necessary detail required for registration (Name, SSN, Date of Birth). 4. Submit the Detail
5. System Administrator Verifies the detail
6. Send the Patient Unique UserID and password on his Email. 7. Or Rejects the Registration.
Exceptions:
1. Website or Web Server is down.
2. Mobile phone is moving out of the Internet connection zone. 3. Session time out expires.
4. Website maintenance is going on.
5. User ID and Password are already there (It should be unique)
Channel to Actor
: Via PC-based browser and internet connection.Secondary Actors
: System Administrator, PatientChannels to Secondary Actors
:1.
System Administrator: Via PC-based browser and internet connection.2.
Patient : Via PC-based browser and internet connection.Open issues
:1. The patient may enter Wrong information (There should be proper mechanism to trap this down).
Priority
:
HighWhen Available
:
First IncrementIteration
:
FirstDate
:
12th October, 2010Use Case H-Appointment
Use Case
:
Schedules, Reschedules Request with the doctor via HIS Website.Primary Actors
:
PatientGoal in Context
:
To Go for check-up to the hospital’s doctorPreconditions
: Patient must logged in the HIS system or call the ReceptionistTrigger
: Patient has fallen sick and wants to see doctor.Scenario:
1. Patient presses the Schedule an Appointment Button or calls via Telephone. 2. Patient Gets Appointment welcome screen.
3. Clicks on New Appointment Button or Reschedule button or Cancel Schedule button 4. Select the department and name of the doctor whom Patient wants to see.
5. Press submit button.
6. Request goes to Receptionist.
7. Receptionist check the Doctors Schedule
8. Receptionist gives or suggests new date to Patient.
Exceptions:
1. Website or Web Server is down.
2. Mobile phone is moving out of the Internet connection zone. 3. Session time out expires.
4. Website maintenance is going on. 5. Receptionist is not at the counter.
Channel to Actor
: Via PC-based browser and internet connection or phone.Secondary Actors
: Receptionist, DoctorChannels to Secondary Actors
:Receptionist: Via PC-based browser and internet connection or phone.
Open issues
:Patient may fill up wrong information.
Here we have assumed that the Patient is not having emergency.
Priority
:
HighWhen Available
:
First IncrementIteration
:
FirstCreated by
:
Chintan MehtaUse Case I-Pay the fees
Use Case
: Pay the amount after check up is complete
Primary Actors
:
PatientGoal in Context
:
Pay the amount for Service renderedPreconditions
: Patient must be checked by doctor. Receptionist must be logged in.Trigger
: Finally it is time to pay.Scenario:
1. Patient goes to Reception counter to pay Fees 2. Receptionist feeds the patient name.
3. System gets insurance detail and based on that calculates the Fee amount. 4. Patient Gives the amount to receptions
Exceptions:
1. Website or Web Server is down.
2. Mobile phone is moving out of the Internet connection zone. 3. Session time out expires.
4. Website maintenance is going on.
Channel to Ac
tor : Via PC-based browser and internet connectionSecondary Actors
: ReceptionistChannels to Secondary Actors
:Receptionist : Via PC-based browser and internet connection
Open issues
:Priority
:
HighWhen Available
:
First IncrementIteration
:
FirstCreated by
:
Chintan MehtaDate
:
12th October, 2010Use Case J- Logs the patient data
Use Case
: Logs the patient data like heart rate, blood pressure
Primary Actors
:
NurseGoal in Context :
To Enter the patient heart rate blood pressure etc data.Preconditions
: Nurse must be logged in with sufficient privilege.Trigger
: It is part of the duty to take such test of patient.Scenario:
1. When patient arrives in the hospital Nurse attends him.
3. Nurse takes the test and press the Enter the Log of patient selected from drop down combo.
4. Nurse also asks Patient about the problem s/he is suffering from. 5. And enter the above data in to system.
6. Then she saves the data she entered by pressing save button.
Exceptions:
1. Website or Web Server is down. 2. Session time out expires.
3. Website maintenance is going on. 4. Nurse selects other Menu Item or Link.
5. Nurse enters the wrong data while asking the patient. 6. Patient tells misleading information to the Nurse
Channel to Actor
:1. Via PC-based browser and internet connection.
Secondary Actors
: PatientChannels to Secondary Actors
:1. Patient Via PC-based browser and internet connection.
Open issues
:1. What if Patient is not able to speak or Write?
Priority
:
HighWhen Available
:
First IncrementIteration
:
FirstCreated by
:
Chintan MehtaDate
:
12th October, 2010Use Case K-Nurse Checks Schedule
Use Case
: Check the Schedule via website and Mobile phone
Primary Actors
:
NurseGoal in Context
:
To See at what time he should remain present at the hospital so he could attend them.Preconditions
: User must be logged in with sufficient privilege.Trigger
: Nurse decides to take a look at his appointment with his patients.Scenario:
1. Nurse selects the Schedule Button available to him on the screen. 2. System will give calendar.
3. In calendar the red date, green dates and blue dates will be there. 4. The red date indicates that there is higher number of patients to check. 5. The green date indicates that there is moderate number of patients to check. 6. The blue date indicates that there are no patient yet appointed.
7. The system displays the 3 option Daily, Monthly, Yearly. 8. The Nurse selects the Daily Schedule Option.
9. The system gives the Daily Schedule of the Nurse who is logged in. 10. The Nurse selects the Monthly Schedule option.
11. The system gives the Monthly schedule of the Nurse who is logged in. 12. The Nurse selects the Yearly Schedule option.
13. The system gives the Yearly schedule of the Nurse who is logged in. 14. Nurse could view the schedule by date and time and the patient name.
Exceptions:
1. Website or Web Server is down. 2. Session time out expires.
3. Website maintenance is going on. 4. Nurse selects other Menu Item or Link.
Channel to Actor
:1. Via PC-based browser and internet connection. 2. Mobile Phone
Secondary Actors
: ReceptionistChannels to Secondary Actors
:Open issues
:1. Can the Nurse logged in able to view the schedule of other Nurse?
2. Will mobile phone viewing be enough good (user friendly) for Nurse to view his schedule? (Small screen of mobile phone)
Priority
:
HighWhen Available
:
First IncrementIteration
:
FirstCreated by
:
Chintan MehtaDate
:
12th October, 2010Use Case L- Allot the room
Use Case
: Check the occupancy and allot the room to inpatient for
Primary Actors
:
ReceptionistGoal in Context
:
To have patient admitted in hospital because doctor wants to keep him under observation or operationPreconditions
: Receptionist must be logged in with sufficient privilegeTrigger
:
To see whether there are any beds occupiedScenario
:
1. Receptionist is at any screen of the system. 2. Select the Bed available button.
4. Allocates the Bed which patient wants.
Exceptions:
1. Website or Web Server is down. 2. Session time out expires.
3. Website maintenance is going on.
4. There are no Rooms available to admit patient
Channel to Actor
:1. Via PC-based browser and internet connection.
Secondary Actors
: PatientChannels to Secondary Actors
:1. System Administrator: PC-based Web browser system 2. Patient: Face to Face Conversation
Open issues
:What if Bed is not available with the patient?
Priority
:
HighWhen Available
:
First IncrementIteration
:
FirstCreated by
:
Chintan MehtaDate
:
12th October, 2010Use Case M-Admin Maintenance
Use Case
:
Add, Delete, Edit all stakeholderPrimary Actors
:
AdministratorGoal in Context :
To change the Status of Doctor, Nurse, and Receptionist.Preconditions
: Administrator must be logged in with sufficient privilegeTrigger
:
Someone from the staff has left the job or some information about staff has changed or some has joined the organization.Scenario
:
1. Administrator is at any screen of the system. 2. Select the staff name.
3. Press the Add, Delete or Edit button to Add New staff, to discontinue the Staff and to edit the staff detail.
4. Enter the necessary detail.
5.
Press ok to perform the action.Exceptions:
1. Website or Web Server is down. 2. Session time out expires.
3. Website maintenance is going on.
1. Via PC-based browser and internet connection.
Secondary Actors
: System Administrator, ReceptionistChannels to Secondary Actors
:1. System Administrator: PC-based Web browser system 2. Receptionist: PC-based Web browser system
Open issues
:Priority
:
HighWhen Available
:
First IncrementIteration
:
FirstCreated by
:
Chintan MehtaActivity Diagrams
Activity Diagram for the Logging In of all Stakeholders (Use Case A)
Enter Password and UserID
Prompt For ReEntry Show the screen as per
user role
Valid Password & ID InValid Password or ID
Activity Diagram for Doctor Check Schedule (Use Case B)
Doctor selects the Schedule button available to him
Calendar will be shown to Doctor from current date to whole year Calendar having the Red, Blue and Green color show High, None and Moderate numbers of appointments respectively.
A List of Particular Date & Time and Patient name Appointments appears on the screen with calendar on top of it. Drill down button appears before each Date& Time Doctor selects the Particular Date to see appointments
Exit the function
Clicking date and time gives detail schedule, tasks and list of patient.
Exit the function
A
Exit the function
A
clicking patient name Doctor can see the profile which includes key demographic data which includes insurance, primary care provider, pharmacy
On clicking alerts, reminders and schedule of patient for any test Doctor would able to see those things.
Exit the function Exit the function
Exit the function
On Pressing the Allergies and Medication button Doctor could be able to see the detail about that particular patient.
Activity diagram for Doctor Change the Schedule of Patient (Use Case C)
Doctor Presses change schedule button.
There appears the calendar on the screen (For selecting the date to change)
Doctor select the date and Press Save button
Exit the function
Calls the patient or send the schedule change notification to patient
A
Exit the function Gone to Receptionist
Date is Not Available Date is Available
Receptionist Notifies the Doctor through email or message.
Exit the function
Patient on receives the notification A
Accepts the Date change request
Rejects the date change request
Old date is kept as it is
Exit the function
Activity Diagram for Lab Test (Use Case D)
Doctor Presses Lab Test Button
Dropdown box & Test List appears on the screen
Doctor Press Save button
Lab does the test and logs the data
Lab is open Sends Patient to Lab
Lab is closed Doctor selects the Patient name and Test to be done
Come next day
Patient goes to doctor
Exit the function
Activity Diagram for Prescribing Medicine (Use Case E)
Doctor Selects Prescribe medicine button
Patient Name’s Dropdown box & List of Drugs appear on the screen
Patient Goes to Pharmacy To get drugs
Gives the drugs listed by the Doctor
Doctor Press Save button Doctor selects the Patient name and Drugs name on after the other
Pharmacist check patient name and gets the list of drugs
Exit the function
Activity Diagram for Keep in Touch (Use Case F)
Doctor Selects Keep In touch button
Patient Name’s Dropdown box
Patient Contact details are available
Doctor selects the Patient name
System Saves the Talk done with Video conferencing system and Email System against patient name.
Exit the function Remote Location : Video
Activity Diagram for Patient Registering with System (Use Case G)
Patient log on to the Hospital Information System Website
Clicks on New Patient Registration Button
Patient Press Save button
Send the Patient the User name and Password Accepts the Registration
Fills Necessary detail required for registration (Name, SSN, Date of Birth).
Administrator verifies the information
Patient goes to doctor
Exit the function Rejects the Registration
Patient goes to
Activity Diagram for Patient Schedule the Appointment (Use Case H)
Patient Schedule the Appointment
Receptionist asks the Time Sends the confirmation to patient Date is available
Patient put the preferred time slots for appointment and Doctor Name
Checks the Doctor Schedules
Send Apologies message or ask for other date Exit the function Not Available Via Website Calls the Receptionist
Activity Diagram for Pay the Fees (Use Case I)
Patient goes to Reception counter to pay Fees
Receptionist Feeds the patient name in the system
Patient Gives the amount to receptions
System gets insurance detail and based on that calculates the Fee amount
Exit the function
Activity Diagram for Nurse Logs Patient Data (Use Case J)
When patient arrives in the hospital Nurse attends him
Nurse selects the patient name from dropdown button in the HIS System
Enter the above data in to system.
Nurse takes the test and press the Enter the Log of patient selected from drop down combo
Activity Diagram for Nurse Check Schedule (Use Case K)
Nurse selects the Schedule button available to him
Calendar will be shown to Nurse from current date to whole year Calendar having the Red, Blue and Green color show High, None and Moderate numbers of appointments respectively.
A List of Particular Date & Time and Patient name Appointments appears on the screen with calendar on top of it. Drill down button appears before each Date& Time Doctor selects the Particular Date to see appointments
Exit the function
Activity Diagram for Allotting Room to Patient (Use Case L)
Receptionist is at any screen of the system.
Select the Bed available button.
Allot the bed, Enter the Bed and Patient data in to system.
Asks the Patient Preference.
Apologies
Activity Diagram for Administrator Maintenance (Use Case M)
Administrator is at any screen of the system.
Select the staff name
Press the Add, Delete or Edit button to Add New staff, to discontinue the Staff and to edit the
Swimlane Diagrams
Swimlane Diagram for Schedule the Appointment
Schedule the Appointment
Gives the Time
Send Apologise message or ask for other date Date is available
Put the preferred time slots for appointment and Doctor name
Checks the Doctor Schedules
Sends the confirmation
Not Available
Gives other date Calls the
Receptionist
Via Website
Patient Receptionist Website
Exit the function
Swimlane Diagram for Login and Registration
Logs on to the site
Fill username
and Password Enters Registration Details
Moves to User Specific Screen
Flashes Incorrect UserID Password message
Approve the registration All ready
registered
Clicks on First time
Patient Website System Administration
Valid UserID Password
Send Approval to patient via emai with USERID and Password DisApproves the registration Valid UserID Password
Table of Classes (With Purpose, Attributes and Operations)
By Performing Grammatical Parse on the Use Cases we are able to identify the Classes its attributes and the operations
No Name of Class
Purpose
Attributes
Operations
1 Patient To maintain Patients Profile of Each visit PatientID ViewSchedule PatientName PutApptRequest Address RegistersWithSystem SSN ApproveVisit Sex DisApproveVisit BirthDate RecommendVisit Allergies Reactions 2 Doctor Doctor is heart of the Hospital and initiates most of the task DoctorID PrescribesMedicine DoctorName SuggestsTests Degree ChecksPreviousVisitData Area Of Specialisation ChecksHisSchedule JoinDate ChecksVideoForRemotePati ent LeavingDate ChecksNurseLoggedFinding DoctorType ChecksPatientSchedule ChangePatientSchedule DrawSalary RecordsRemotePatientVideo SendMessageSMS 3 Prescription Doctor Prescribes the Medicine PrescriptionID ViewParticularPrescirption MedicineName Dosage DateAndTime 4 Nurse Nurse is the
second person whom patient has to meet NurseID LogsPatientData NurseName DrawSalary JoinDate LeavingDate DoctorID StartRecording DateAndTime StopRecording StopDateAndTime 5 Schedule Scheduling of Doctor, Patient, Nurse ScheduleID GetSchedule ScheduleDateAndTi me PatientID NurseID
DoctorID 6 PatientVisitDetail (Appointment) Stores Patient Visit Details VisitID PayTheBill VisitDate PatientID PrescriptionID DoctorID NurseID Insurance IsRemotePatient VisitChargeFees Ward RoomNo IsInPatient VideoRecordPath Diagnoses
7 Receptionist Attends the Patient first when the Patient visits the clinic ReceptionistID TakesFees AllotRoomOrBed ChecksDoctorSchedule ChecksPatientApptRequest AllocatesPatientVisitDateTi me 8 PatientMedicalFind ing Saves the data of every visit VisitID TestName TestImages TestFinding 9 LabTests What are the
test done at this hospital TestID GetTestDataType TestName CreateNewTesr TestDataType(Image ,Video, Number, Text) UnitOfMeasurement 10 User Allows the
user to access the system LogInStatus LogsIn UserName LogsOut UserId Password IsAuthenticateUser Role(Patient,Doctor etc) Login Time Logout Time 11 Admin Administers
the User and take backup
AdminName ApprovesPatientRegistration Address AddDoctor
and restores. SSN AddStaff UpdateDoctor UpdateNurse UpdateStaff DeleteDoctor DeleteNurse DeleteStaff TakeBackup RestoreDatabase
A Class Connectivity Diagram, Associations and Dependencies
User Doctor LabTest Patient Prescription Schedule PatientVisit PatientMedicalFindingNurse Receptionist Admin
*All Attributes and Properties of Class are listed on previous page Is Kind Of
Is having
Goes for
Can have Can have
Data Flow Diagram (DFD)
Context Level-DFD Hospital Information System Administrator Doctor /Nurse/ Receptionist Username password Add Update DeleteDFD Level 1 Nurse Patient Doctor Pharmacy First Time Processes Hospital Information Database UserID password Laboratory Receptionist
DFD Level 2 Patient First Time Registers With System Database Registration Detail Administrator Approves The
Patient & Emails UserID Password Registration Detail Logs In to the system ,Display the Respective Menu UserID Password Database UserID Password Doctor Nurse Receptionist Display Menus UserID Password UserID Password Display Menus Display Menus Pharmacy Laboratory
DFD Level 3 Logs In to the system, Display the Respective Menu Patient Doctor Nurse Receptionist Appointment Booking System Diagnoses Disease and Prescribes Medicine Database
Laboratory Test & Patient Log System Pharmacy
Laboratory
Allot Ward and Bed
Remote Calling and Recording System
DFD Level 4 Appointment Booking System Patient
Doctor
Receptionist
Puts the Request for Appointment
Database Time Slot, Date, Doctor
Puts his schedules
Check the Doctor and Patient Schedule Time, Date
Informs to Patient or Calls him Time, Date Email
Available date, time
DoctorID, PatientID, Date & Time of Doctor and Patient
Time, Date, DoctorID
DFD Level 4 Diagnose Diseases & Prescribe Medicine System Patient Doctor Pharmacy Database Write The Prescription
Get The medicine Lsit
PatientID, Medicine Names
Medicine PatientID Date, DoctorID
PatientID, Medicine Names
Diagnose the diseases
DFD Level 4 Allot Ward and Bed Patient Receptionist Goes To Counter Database Patient ID
Check for the Availability of Ward and Bed
Gets The Ward and Bed Detail
Patient ID
Available Ward and Bed
Allots The Room
Ward And Bed Ward And Bed
DFD Level 4 Laboratory and Patient Log System Database Nurse Laboratory Suggest Laboratory Test Comes To Doctor PatientID PatientID
PatientID Test Names
PatientID Test Names Does Test
Saves Test Finding
PatientID
Logs Patient Medical Findings
Saves Patient Log Types of Test Remote Calling and Recording System Patient Doctor
A Set of Data and Data object Type being used
1] SecurityUserNo Data Attributes Type Data
1 UserLoginID Alphanumeric UL000001
2 UserName Character Joe Johnson
3 UserPassword Alphanumeric gj0001
2] Address
No Data Attributes Type Data
1 AddressID Alphanumeric AD000001
2 Street1 Character YorkTown St
3 Street2 Character Apartment No 67
4 ZIPCode Character 77056
5 State Character TEXAS
6 Country Character USA
3] PatientType
No Data Attributes Type Data
1 PatientTypeID Alphanumeric PT000001 2 PatientTypeName Alphanumeric InPatient
4] DoctorType
No Data Attributes Type Data
1 DoctorTypeId Alphanumeric DT000001 2 DoctorTypeName Alphanumeric Surgeon
5] Patient
No Data Attributes Type Data
1 PatientID Alphanumeric PA000001
2 AddressID Number AD000001
3 Type TypeID DC000001
4 UserLoginID Alphanumeric UL000001
5 Allergies Alphanumeric Dusting
6] Doctor
No Data Attributes Type Data
1 DoctorID Alphanumeric DC000001
3 DoctorTypeID Alphanumeric DT000001
4 Degree Character MD
5 AreaOfSpecialisation Character Cardio Vascular
6 JoinDate Date 10/12/2008
7 AddressID Alphanumeric AD000001
8 UserLoginID Alphanumeric UL000001
6.1] DosageType
No Data Attributes Type Data
1 DosageTypeID Alphanumeric DOS00001 2 DosageTypeName Alphanumeric 3 times a day
7] Prescription
No Data Attributes Type Data
1 PrescriptionID Alphanumeric PS000001
2 MedicineName Number Cetrizine Hydrochloride
3 Dosage Number 5
4 DosageTypeID Alphanumeric DOS00001
8] Nurse
No Data Attributes Type Data
1 NurseID Alphanumeric NS000001
2 AddressID Number AD000001
3 UserLoginID TypeID UL000001
4 JoiningDate Date 12/10/2007
9] Schedule
No Data Attributes Type Data
1 ScheduleID Alphanumeric SC000001
2 PatientID Alphanumeric PT000001
3 DoctorID Alphanumeric DC000001
4 NurseID Alphanumeric NS000001
10] PatientVisitDetail
No Data Attributes Type Data
1 VisitID Alphanumeric VS000001
2 VisitDateTime Date 10/12/2010
3 PatientID Alphanumeric PA000001
4 NurseID Alphanumeric NU000001
5 DoctorID Alphanumeric DT000001
6 WardID Alphanumeric WA000001
7 RoomID Alphanumeric RM000001
8 BedID Alphanumeric BD000001
9 PrescriptionID Alphanumeric PR000001 10 PatientTypeID Alphanumeric PT000001
11 IsRemoteVisit Boolean YES
12 VideoRecordedPath Alphanumeric C:\Video1.mpg
13 Diagnoses Alphanumeric Suffering from Ulcerative colitis
11] LabTest
No Data Attributes Type Data
1 LabTestID Alphanumeric LT000001
2 LabTestName Alphanumeric Blood Sugar 3 LabTestDataType Alphanumeric Number 4 UnitOfMeasurement Alphanumeric Gm/ml
12] PatientMedicalFinding
No Data Attributes Type Data
1 VisitID Alphanumeric VS000001
2 LabTestID Alphanumeric LT000001
3 TestImages Image Image of Xray/ Video
EchoCardiography 4 TestFindings Alphanumeric X-Ray shows Tuberclosis
13] Ward
No Data Attributes Type Data
1 WardID Alphanumeric WR000001
14] Room
No Data Attributes Type Data
1 RoomID Alphanumeric RM000001
2 RoomName Alphanumeric General Room
15] Bed
No Data Attributes Type Data
1 BedID Alphanumeric BD000001
2 BedDescription Alphanumeric Good Bed
State Diagrams
State Diagram for Prescription Class
Medicine Selected Writing Logs In Checking Do IsAvailable No Yes Checking Reaction Yes
No & First time Prescribed No & More than
State Diagram for Appointment Class
Waits for further approval Creating Logs In Approving Want to change or cancel Reschedul ing Disapproving Canceling
Sequence Diagram
Doctor Prescribes MedicineDatabase Pharmacy Doctor ChecksForReaction(PatientID) GetsReactionList PrescribesMedicine(PatientID) GetTheMedicineList(PatientID)
Get Patient’s Data and Diagnose
Database Website
Doctor
Enters PatientID
Save the Diagnoses Diagnose diseases
Display Information GetPatientData
Change Schedule of the Patient Database Website Doctor Change Schedule Select date Appears calendar Receptionist SavePatientNewSch GetAllChangeRequest ShowAllChange Requests Process It SaveTheProcessedToDatabase NotifyDoctor
Validating all Requirements
No Question Answer Reason
1 Is each requirement consistent with the overall objectives for the system/product?
Yes The overall objective of the system is to take care about Patient, Doctor, Nurse,
Pharmacy and Laboratory and it is well achieved.
2 Have all requirements been specified at the proper level of abstraction? That is, do some requirements provide a level of technical detail that is inappropriate at this state?
No All the requirements gives the overview of system without going into the detail of those requirements
3 Is the requirement really necessary or does it represent an add-on feature that may not be essential to the objective of the system?
Yes The requirement say for example Videos of remote patient is not essential to the objective of the system 4 Is each requirement bounded and
unambiguous?
Yes There are no such requirements which are
ambiguous but at the end what are Joe’s more requirements is still unspecified.
5 Does each requirement have attribution? That is, is a source (generally a specific individual) noted for each requirement?
Yes All requirements are having the source.
6 Do any requirements conflict with other requirements?
No All the requirement are crystal clear and do not conflict with each other.
7 Is each requirement achievable in the technical environment that will house the system or product?
Yes Yes each requirement for example video-conferencing need will require more system resource then present
condition. 8 Is each requirement testable, once
implemented?
Yes We can test the requirements once they are implemented provided they are fully equipped with system resources.
9 Does the requirements model properly reflect the information, function, and behavior of the system to be built?
Yes The requirement model reflect the behavior of the system to be built but also need extra functionality like Refilling of medicine etc in it to be complete
10 Has the requirements model been “partitioned” in a way that exposes progressively more detailed information
Yes It has been partitioned to accommodate the more detailed information about the
No Question Answer Reason
about the system? system
11 Have requirements patterns been used to simplify the requirements model?
Yes For example for login and Appointment we have taken standard way to do it.