System Overview
2.1 General Description:
The HMS (Hospital Management system) deals primarily with the scheduling and
tracking of various hospital resources and patients. HMS schedules doctors and
nurses to perform surgical procedures or to staff a given ward. HMS also
admits patients, assigns them a room [in an appropriate ward] if one is
available or assigns the patient to an admissions waiting list.
HMS is grouped into 3 major components:
Each component contains task related functions.
2.2 Summary of Required System Functions:
2.2.1 Patient Administration:
The patient administration module provides all the information regarding
patients. Such information includes name, hospital insurance#, address and
phone number, treatment information, admission date, room occupied and
operation information if any. This module deals with adding, updating and
deleting patient information. This module also handles admissions wait list
features that include additions, deletions and updates to the waiting list.
Click here for a complete listing of patient attributes.
2.2.1.1 User admits new patient
User: authorized administrator/admitting nurse
Function: A patient is entered into the system if this the patient's first
visit to this hospital. The patient will then either be assigned a room
and/or an operating room, or wait-listed. Wait-listed patients will be assigned
a wait list number along with a priority code while patients admitted will be
issued a treatment number.
Inputs: hospital number, first name, last name, treatment number, ward, room
number or wait list priority code, date admitted, length of treatment,
position on waiting list
Error Conditions:
- syntactically incorrect inputs
- hospital number corresponds to someone in the system but with a
different name
- treatment number corresponds to one already in the system
At the incidence of an error condition the user is given an opportunity to
correct the input data.
2.2.1.2 User admits previous patient
User: authorized administrator/admitting nurse
Function: A patient (with previous visits to the hospital) will either be
assigned a room and/or an operating room or wait-listed. Wait listed patients
will be assigned a wait-list number and a priority code. Upon entry of the
hospital insurance number, the patient information will be retrieved from the
database. It is then the responsibility of the user to verify the validity of
the patient information.
Inputs: Hospital number, treatment number, room number or wait list priority
code, date admitted, length of treatment, position on waiting list
Error Conditions:
- syntactically incorrect inputs - user flagged and allowed to correct
the input
- patient not found in previous patient file - user queried for a new and
hopefully correct patient number
- treatment number corresponds to one already in the system - user
flagged and prompted for a correct treatment number
- patient has been previously admitted for this treatment (ie done
twice) - user flagged and prompted for correct treatment number
2.2.1.3 User changes treatment for patient
User: authorized administrator/doctor/nurse.
Function: A doctor or nurse can change the treatment for a patient (ie. cancel
operation, or alter operation date, even re-book-book for a different operation).
Inputs: Hospital number, first name, last name, treatment number, ward, room
number/wait list code, date admitted, length of treatment, position on waiting
list.
Error Conditions:
- syntactically incorrect inputs - user flagged and prompted to repeat
incorrect inputs
- patient not found in patient file - user flagged and prompted to
re-enter patient data
- treatment number not found in the system - user flagged and prompted to
re-enter correct treatment number
- treatment already the same as change - user flagged and prompted to
edit input information
2.2.1.4 User takes patient off Waiting list
2.2.1.5 User discharges patient.
User: nurse/doctor or authorized administrator
Function: When treatment is complete a doctor issues discharge approval. A
discharge note will be printed.
Inputs: Hospital number, treatment number, date of discharge, first name, last
name.
Outputs: (on invoice to patient) date of admittance, date of discharge, total
length of stay, ward stayed in, room number
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- patient not found in patient file - user flagged and prompted to
re-enter patient information
- treatment number not found in the system - user flagged and prompted to
re-enter correct treatment number
- patient has been previously discharged for this treatment (ie done
twice) - user flagged and prompted to re-enter input information
2.2.1.6 User inquires about patient information
User: nurse/doctor/authorized administrator
Function: Query patient information (old,current or wait-listed) for the
following purposes:
- find out about current treatment
- find how to contact patient
- find out about patient wait-list status
Inputs: (one or more of) hospital number, first name, last name, street, city,
prov/state, country, postal code, treatment number, ward, room number/wait
list code, date admitted, length of treatment, position on waiting list
Outputs: (on screen) all patient records corresponding to the given inputs.
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- no patient exists for the given input - user flagged and prompted to
re-enter input information
2.2.1.7 User generates notification to patient
User: authorized administrator
Function: Print out an admittance date notification for patients on the waiting
list. These are patients that in two weeks time will be admitted to the
hospital.
Inputs: Hospital number, first name, last name, street, city, prov/state,
country, postal code, treatment number, ward, room number / wait list code,
date admitted, length of treatment, position on waiting list
Outputs: (on notice mailed to patient) date of admittance, ward, floor of
ward, room number
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- hospital number does not correspond to a patient in the system - flag
user and prompt for re-entry
- hospital number does not correspond to a patient on a waiting list -
flag user and prompt for re-entry
2.2.2 Staff-Administration Functions:
The staff administration module deals with staff information and scheduling.
This module allows the user to add, delete and update staff records. The user
may also view a particular staff record on demand.
Click here to see a complete list of staff attributes.
2.2.2.1 User hires staff
User: Authorized administrator
Function: Information about new nurse/doctor is entered into system (ex: name,
address, phone#, specialty...)
Inputs: Staff number, staff first name, staff last name, phone number, street,
city, prov/state, country, postal code, staff title, specialty.
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- staff number already corresponds to someone in the system but with a
different name - flag user and prompt for confirmation or re-entry
2.2.2.2 User terminates staff member
2.2.2.3 User updates staff information
User: authorized administrator
Function: doctor/nurse information is updated (eg. new phone#, new address ...)
Inputs: staff number, staff first name, staff last name, phone number, street,
city, prov/state, country, postal code, staff title, specialty
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- staff number not found - flag user and prompt for re-entry
2.2.2.4 User inquires about staff information
User: authorized administrator/doctor/nurse
Function: A person queries a staff record for a reason like:
- notification of shift change
- contact staff for an emergency
Inputs: (one or more of) staff number, staff first name, staff last name,
phone number, street, city, prov/state, country, postal code, staff title,
specialty.
Outputs: (on screen) all staff records corresponding to the given inputs.
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- no staff member exists for the given input - flag user and prompt for
re-entry of correct input information
2.2.3 Scheduling:
The scheduling module, schedules staff into wards and operating rooms according
to specific requirements. The scheduling module can be also used to schedule
operating theaters and recovery rooms for surgical procedures.
Click here for a list of staff scheduling rules.
2.2.3.1 User books an operation
2.2.3.1.1 User books an operating room
User: authorized administrator/doctor/nurse
Function: an operating room is booked for a specific treatment.
Inputs: hospital number, date of operation, operating room number, treatment
number
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- schedule conflict for operating theater - flag user and prompt for
re-entry
2.2.3.1.2 User schedules staff for operation
User: authorized administrator
Function: A schedule is issued for each booked operation in 3.1.1. according
the specified guidelines (ex: 2 doctors, 2 nurses are associated with each
operation).
Inputs: Hospital number, treatment number, patient first name, patient last
name, operating room, recovery room, day, month, year, start time, completion
time, attending doctors, attending nurses
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- patient not found in patient file - flag user and prompt for re-entry
- treatment number not found in system - flag user and prompt for
re-entry
- operating room does not exist - user flagged and prompted to enter
correct operating theater
- recovery room does not exist - user flagged and prompted to enter
correct recovery room
- operating room not available for time specified - user flagged and
prompted for re-entry of input information
- recovery room not available for time specified - user flagged and
prompted for re-entry of input information
- attending doctor(s) not available at specified time - user flagged and
prompted to select different doctor(s)
- attending nurse(s) not available at specified time - user flagged and
prompted to enter new nurse(s)
- patient booked on other operation - user flagged
- operation previously booked for this treatment number - user flagged
2.2.3.2 User changes scheduled operation
User: authorized administrator/doctor/nurse
Function: An operation can be rescheduled for another room, or date. Staff
operation schedule can be updated.
Inputs: hospital number, treatment number, patient first name, patient last
name, operating room, recovery room, day, month, year, start time, completion
time, attending doctors, attending nurse.
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- patient not found in patient file - flag user and prompt for re-entry
- treatment number not found in system - flag user and prompt for
re-entry
- operating room does not exist - user flagged and prompted to enter
correct operating theater
- recovery room does not exist - user flagged and prompted to enter
correct recovery room
- operating room not available for time specified - user flagged and
prompted for re-entry of input information
- recovery room not available for time specified - user flagged and
prompted for re-entry of input information
- attending doctor(s) not available at specified time - user flagged and
prompted to select different doctor(s)
- attending nurse(s) not available at specified time - user flagged and
prompted to enter new nurse(s)
- patient booked on other operation - user flagged
2.2.3.3 User cancels an operation
User: authorized administrator/doctor/nurse
Function: An operation can be canceled along with related schedules.
Inputs: Hospital number, treatment number, patient first name, patient last
name, operating room, recovery room, day, month, year, start time, completion
time, attending doctors, attending nurses
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- patient not found in patient file - flag user and prompt for re-entry
- treatment number not found in system - flag user and prompt for
re-entry
- operating room does not exist - user flagged and prompted to enter
correct operating theater
- recovery room does not exist - user flagged and prompted to enter
correct recovery room
- operating room not available for time specified - user flagged and
prompted for re-entry of input information
- recovery room not available for time specified - user flagged and
prompted for re-entry of input information
- attending doctor(s) not available at specified time - user flagged and
prompted to select different doctor(s)
- attending nurse(s) not available at specified time - user flagged and
prompted to enter new nurse(s)
- treatment number not found in system - user flagged and prompted for
re-entry
2.2.3.4 User makes up work schedule
User: authorized administrator
Function: A work schedule is made for each ward. This function also checks for
staffing conflicts with the operating room schedules.
Inputs: ward, date, start time, stop time, staff number
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- staff number does not correspond to a person in the system - user
flagged and prompted to enter correct staff number
- given shift is already covered - user flagged
- staff specialty or type does not match shift requirements - user
flagged
- all shifts are not covered according to specified criteria - user
flagged
2.2.3.5 User updates work schedule
User: authorized administrator
Function: Work schedule is updated for a particular time slot and ward.
Inputs: ward, date, start time, stop time, staff number
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- staff number does not correspond to a person in the system - user
flagged and prompted to enter correct staff number
- given shift is already covered - user flagged
- staff specialty or type does not match shift requirements - user
flagged
- all shifts are not covered according to specified criteria - user
flagged
2.2.3.6 User views own work schedule schedule
User: doctors/nurses
Function: A work schedule is displayed for a particular staff member for a
specified date. This work schedule may include either ward shifts or
operating room shifts.
Inputs: staff number
Output: (on screen) The staff member's individual schedule.
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- staff number not found - user flagged and prompted to enter correct
staff number
2.2.3.7 User views ward schedule
User: authorized administrator/nurses/doctors
Function: A ward staffing schedule is displayed for a specified time and date.
Inputs: ward.
Outputs: (on screen) Schedule for the given ward.
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- input ward does not exist - user flagged and prompted to enter
correct ward number
2.2.3.8 User queries operation schedule
User: Authorized Administrator/Nurses/Doctors
Function: Schedule is displayed for a specified operating room and date.
Inputs: (one or more of) hospital #, treatment #, patient first name, patient last
name, operating room, recovery room, day, month, year, start time, completion
time, attending doctors, attending nurses
Outputs: (on screen) all operations corresponding to the given inputs
Error Conditions:
- syntactically incorrect inputs - user flagged for re-entry of inputs
- no operation exists for the given input - user flagged
Next Section
Previous Section
Back to the Functional Specification titlepage
Back to Sirius Software Product's Home Page
Last Modified Jan. 25, 1996 by
Darrell Nash