Professional Documents
Culture Documents
Specification
for
Clinic Patient Record System
(CPRS)
Version 1.0
Prepared by
Course: SSE3001
Introduction to Software Engineering
Contents
1.0 INTRODUCTION ................................................................................................................................. 3
1.1 PURPOSE ................................................................................................................................................ 3
1.2 DOCUMENT CONVENTION ......................................................................................................................... 3
1.3 INTENDED AUDIENCE AND READING SUGGESTIONS ......................................................................................... 3
1.4 PRODUCT SCOPE ...................................................................................................................................... 4
2.0 OVERALL DESCRIPTION ..................................................................................................................... 5
2.1 PRODUCT PERSPECTIVE ............................................................................................................................. 5
2.2 PRODUCT FUNCTIONS ............................................................................................................................... 5
2.3 USER CLASSES & CHARACTERISTICS ............................................................................................................. 5
2.4 OPERATING ENVIRONMENT ........................................................................................................................ 6
2.5 DESIGN AND IMPLEMENTATION CONSTRAINTS ............................................................................................... 6
2.6 USER DOCUMENTATION ............................................................................................................................ 7
2.7 ASSUMPTIONS AND DEPENDENCIES ............................................................................................................. 7
3.0 EXTERNAL INTERFACE REQUIREMENTS ............................................................................................. 8
3.1 USER INTERFACES..................................................................................................................................... 8
3.1.1 Log in Page [Management Staff & Non-Management Staff] ......................................................... 8
3.1.2 Menu [Receptionist vs Doctor vs Administrator] ............................................................................ 9
3.1.3 Add Staff [Administrator] .............................................................................................................. 10
3.1.4 Delete Staff [Administrator] .......................................................................................................... 10
3.1.5 View Staff ...................................................................................................................................... 11
3.1.6 View Appointment [Doctor] .......................................................................................................... 11
3.1.7 View Inventory [Doctor] ................................................................................................................ 12
3.1.8 Create Schedule [Receptionist] ..................................................................................................... 12
3.1.9 Create Appointment [Receptionist] .............................................................................................. 13
3.1.10 Update Patient Appointment [Receptionist] ............................................................................ 14
3.1.11 Add Patient [Receptionist] ........................................................................................................ 14
3.1.12 View Patient [Receptionist] ...................................................................................................... 15
3.1.13 Create Treatment Record [Receptionist] .................................................................................. 15
3.1.14 Search Individual Patient Record [Receptionist] ....................................................................... 16
3.1.15 Search Individual Patient Appointment [Receptionist] ............................................................. 17
3.1.16 View Inventory [Receptionist] ................................................................................................... 18
3.1.17 Add Inventory [Receptionist] .................................................................................................... 18
3.1.18 Update Inventory [Receptionist] ............................................................................................... 19
3.1.19 Contact Us [Receptionist / Doctor / Administrator] ................................................................. 19
3.2 HARDWARE INTERFACES .......................................................................................................................... 20
3.3 SOFTWARE INTERFACES ........................................................................................................................... 20
3.4 COMMUNICATIONS INTERFACES ................................................................................................................ 20
4.0 SYSTEM FEATURES .......................................................................................................................... 21
4.1 SYSTEM LOGIN & REGISTRATION ............................................................................................................... 21
4.1.1 Description & Priority .................................................................................................................... 21
4.1.2 Stimulus/Response Sequences ...................................................................................................... 21
4.1.3 Functional Requirements .............................................................................................................. 22
4.2 APPOINTMENTS BOOKING & MANAGEMENT .............................................................................................. 22
4.2.1 Description & Priority .................................................................................................................... 22
4.2.2 Stimulus/Response Sequences ...................................................................................................... 22
4.2.3 Functional Requirements .............................................................................................................. 23
4.3 PATIENTS TREATMENT RECORD CREATION & PROFILE .................................................................................. 23
4.3.1 Description & Priority .................................................................................................................... 23
4.3.2 Stimulus/Response Sequences ...................................................................................................... 24
4.3.3 Functional Requirements .............................................................................................................. 24
Software Requirement Specification for
<Clinic Patient Record System> Page |2
Revision History
Name Date Reason for changes Version
Software Requirement Specification for
<Clinic Patient Record System> Page |3
1.0 Introduction
1.1 Purpose
This document is the software requirement specification (v1.0) for Clinic Patient
Record System (CPRS). The main objective of this system is to replace the existing
system in small-sized clinics, particularly in rural areas, that still relies on paper-based
database. The traditional paper-based database has many downsides, such as slow
records lookup, loss of records and tiresome filing and records procedure. Thus, CPRS
is proposed in order to help these small-sized clinics in terms of storing and managing
patients records and appointments.
This document uses Calibri and Calibri Light font throughout the entire
document. Topic headlines use Calibri, bold, size 18 font. Subtopic headlines use Calibri,
bold, size 15 font. Smaller subtopic headlines use Calibri, bold, size 13 font. The content
of each sections are documented using Calibri Light with size 13 font. The 2.54cm
margin is maintained throughout this document. Lastly, the spacing used is set to 1.0
with extra spacing added before and after the header.
The remainder of this document provides the system description and a technical
outline for the requirements of this system. In section two, the high-level descriptions of
the system functionalities and implementation details are explained and illustrated. In
section three, the external interface requirements for various interfaces are discussed. In
section four, the primary features of CPRS are described. In section five, the description of
non-functional requirements in CPRS are listed and documented. Finally, other relevant
requirements are stated in section six.
The administrator (clinic owner) is able to register staff into the system, which
are categorized to administrator, receptionist, and doctor.
Doctors will only be able to view their own upcoming appointments and the
clinics inventory.
This system is meant to ease the staffs workload in retrieving and keeping track
of patients records, appointments, and the clinics inventory.
1.5 References
In back-end, our system consists of Database Server, Application Server and Web
Server. The combination of front-end and back-end perspectives will enable
management staffs to key-in data at the front-end, data processing at the back-end and
lastly the output of the process will be available to view on at the front-end. The outputs
are then will be by staffs to facilitate their daily clinical interactions.
1. Administrator can add, delete and view staff, which are divided into
administrator, receptionist and doctor usertype.
2. Doctor can view their upcoming appointments.
3. Doctor and receptionist and view the clinics inventory.
4. Receptionist can register new patient into the database.
5. Receptionist can search patients profiles, treatments, and past and future
appointments based on patient IC.
6. Receptionist can add, update, and delete doctors schedule.
7. Receptionist can register new appointment for a patient based on doctors
availability, which in turn is based on doctors schedule.
8. Receptionist can modify appointment status from UPCOMING to WAITING,
COMPLETED and CANCELLED.
9. Receptionist can register new item into the inventory.
10. Receptionist can update the item quantity in inventory.
The primary user of CPRS will be the receptionists, who are tasked with recording
patients information, adding treatment records, and handling appointments in the
clinic. The secondary user of the system are the doctors, who are tasked with treating
and prescribing medicines to the patients. The clinic owner would be the default
administrator tasked with adding and removing users from the system. Some of the
users may not be as tech-savvy and require training to use CPRS effectively.
In the back-end of CPRS would be our team of Software Engineers and Database
Administrator, who are tasked with maintaining and developing new features for CPRS.
Any future changes to the software requirements will be conducted by us.
Software Requirement Specification for
<Clinic Patient Record System> Page |6
The web application is run on a localhost web server for testing purposes. On
deployment, we will run the web application on Apache Web Server.
Design:
Declarative Language/Style Sheet Language: HTML, CSS
Programming Language: JavaScript, Java
Database Server: Oracle Database
Servlet: JSP
Application Server (contains servlet container): Orion Application Server or
Tomcat Apache Server
Web Application: Localhost Web Server for prototyping, Apache Web Server
for deployment
Constraints:
The system must have password authentication. The password is known only
by the administrator and the account owner.
Non-administrator staff should not be able to access administrator menu.
Receptionists must add a doctors schedule into the database first before his
time slot will open up for appointments.
Receptionists can only add appointments if there is available slots.
Doctors must only be able to view their own upcoming appointments and must
not be able to modify them.
On deployment, the web server will be running on LAN.
The web server is to be configured to only cater to devices connected within
the clinics LAN.
Desktop PCs and Laptop PCs that are accessing the system must be using
Google Chrome or Microsoft Edge as browsers and must be connected to the
LAN via Ethernet or Wi-Fi technologies.
Software Requirement Specification for
<Clinic Patient Record System> Page |7
Customer Support:
We provide an email address that can be used to contact our developer team.
We assume that the stakeholders have access to Desktop PCs or Laptop PCs.
We assume that the stakeholders have a functional LAN for the web server.
We assume the stakeholders know how to install and use Google Chrome and
Microsoft Edge as their default browser to access CPRS.
We depend on the JDBC API to access Oracle Database.
We depend on the correct implementation of SQL statements in the servlet
pages to deliver the systems functionality.
We depend on Oracle Database and Apache Web Server to be running at 100%
availability with minimal downtime during the workdays.
Software Requirement Specification for
<Clinic Patient Record System> Page |8
CPRS is a web-based application and thus only requires the bare minimum of any
devices that are able to run the aforementioned web browsers.
The device must be located in the same LAN as the web server.
For testing purposes, the localhost:8080 are used, 8080 is the application port
number. On deployment, the port number will be changed to 80, which is the
default port number for HTTP applications.
Uses JDBC API on the servlet to connect to the Database Server to create, modify,
delete and retrieve data.
Uses common modern network interface cards or network interface controller
that has TCP/IP chips and uses common Ethernet technologies like IEEE 802
family.
Software Requirement Specification for
<Clinic Patient Record System> P a g e | 21
Upon registering the correct input, the user will be redirected to different
menus depending on their usertype (receptionist or doctor or administrator).
Without this feature, patient health records cannot be created due to the
data dependencies. As conclusion, on a scale of 1 to 9, this feature is scaled on 9.
In addition, the records are used to review the patients treatment records
history and consequently can be used as reference in providing better plan in
treating the patients. On a scale of 1-9 this features is also scaled at 9.
Software Requirement Specification for
<Clinic Patient Record System> P a g e | 24
REQ-10: The receptionist must be able to create and add patients health,
vaccine and prescription records after an appointment is completed.
REQ-11: The receptionist must be able to search and view patients
treatment records after its added into CPRS.
REQ-12: The receptionist must be able to add new item into inventory
REQ-13: The receptionist must be able to update quantity of item in
inventory
REQ-14: Both doctor and receptionist must be able to view inventory
Software Requirement Specification for
<Clinic Patient Record System> P a g e | 26
Based from our understanding of how web application works. This diagram
illustrated the web application general architecture. The browser is at the front-end
and localhost web server, Orion application server and oracle database server is at
the back-end.