Sanjivani- Medical Practice Management System


SOFTWARE REQUIREMENTS SPECIFICATION


Prepared by: Rohan N. Shah

Kaustubh Phatak



Contents

------------

1. Introduction.

    1. Purpose of Requirements Document

1.2 Document conventions

1.3 Intended audience and reading suggestions

1.4 Scope of development project

1.5 Definitions, Acronyms, and Abbreviations

1.6 References

1.7 Document overview


2 General Description.

2.1 Product Function

2.2 User classes and Characteristics

2.3 Operating environment

2.4 Design and Implementation constraints

2.5 User Documentation

2.6 Assumptions and dependencies

2.7 Overview of data requirements

2.8 User view of product use


3 External interface requirements

3.1 User interface

3.2 Hardware interfaces

3.3 Software interfaces

3.4 Communication interfaces


4 System features

4.1 Modules


5 Other non-functional requirements

5.1 Performance requirements

5.2 Safety requirements

5.3 Security requirements

5.4 Software quality attributes

5.4.1 Portability

5.4.2 Reliability

5.4.3 Testability

5.5 Special user requirements

5.5.1 Backup & Recovery

5.5.2 Data Migration & Retention

5.6 Installation


6 Other requirements


7 Entity Relationship diagram


1. INTRODUCTION


1.1 Purpose


This Software Requirement Specification (SRS) specifies the requirements of The Sanjivani- A complete Medical Practice Management System, which will be used in clinics and hospitals. This document will be used by the customer to ensure all specifications are correct and verified by the software engineer to design the system.


1.2 Document convention


Main Section Title: Font: Arial : BOLD : SIZE : 14

Sub Section Title: Font: Arial : BOLD : SIZE: 11

Other Text Matter: Font: Arial : Size : 11


1.3 Intended audience and reading suggestions


Hospital and Clinic Administrators: Hospital and Clinic Administrator will be using this software for overall management.


Doctors: Doctors will be using this to keep track of their patients, appointments, their consultation fees, and other details


Computer Operators: Computer Operators will be using this software to for patient billing, accounting and inventory tracking, patient records, employee records, etc


1.4 Scope of development project


The purpose of the MPPS software is to simplify the handling of day-to-day administrative and financial tasks so as to improve the efficiency. It shall integrate all aspects of running a hospital, as well as provide relevant information to various departments and doctors as and when required. Sanjivani is an enterprise wide resource planning solution for hospitals, which addresses the issues from multi disciplines vis-à-vis patient, hospital management, doctors and pharmacy. This solution is modular in nature having following modules- Billing, Patient Records, Accounting and Inventory Tracking and Human Resources Management Module for medical and non-medical staff.

1.5 Definition, Acronyms, Abbreviations

  1. MPPS-Medical Practice Management Software

  2. EPR- Electronic Patient Record

1.6 References

Books referred:

1. Java 2 Complete Reference

2. Java Unleashed

3. SAMS Teach yourself MySQL in 21 days

4. Mastering MySQL 4



1.7 Overview of document

The first section of SRS gives a brief idea what is the need of having a Medical Practice Management System. Along with this it also provides the reference information for design and implementation.

The second section throws light on overall description of functions, operating environment, design and implementation constraints.

The third section gives description of external interfaces such as user interface, software interface, and hardware interface.

The fourth section includes system features in detail.

The fifth section gives details of non-functional requirements such as security requirements, safety requirements.



2. OVERALL DESCRIPTION

2.1 Product Functions

The following is the list of the primary functions provided by Sanjivani:

1. Operations and Administration



2.2 User classes and Characteristics


Administrators:

The Administrator(s) has all Operator control, along with features to directly update the system. The Administrator is responsible for overall user management and should have thorough knowledge of the system, database and networks.


The Administrator will be able to:



Operators:

Operators interact with the system through the overlying GUI. They must have comprehensive knowledge of the system, its behavior and also should be able to troubleshoot possible errors encountered.

The Operators will be able to:


Doctors:

Doctors shall be using the system mainly to access patient information.

Doctors will be able to:


2.3 Operating Environments


Operating System : Red Hat Linux

Processor: Pentium II and above


2.4 Design Implementation Constraints

It is assumed that the terminals are connected to the server using 100Mbps ethernet connections.


User Constraints

Each user can access only those modules and information permitted to him

Each user must keep the password private and that they must be greater than 7 characters.

Each user can access only from 1 site at a time.

At a time a maximum of 101 users can log in to the system (MySQL constraint)


2.5 User Documentation

The documentation and tutorials for the software will be provided after the product is fully developed and tested


2.6 Assumptions and Dependencies

Assumptions

Each terminal is always connected to the server whenever Sanjivani is running

The terminal running Sanjivani supports atleast JRE - 5



2.7 Hardware Dependencies/System Dependencies


Sanjivani requires minimum 128 MB RAM and recommended RAM is 256 MB

Sanjivani requires minimum 500 MHz Processor

Sanjivani requires JRE version 5 on the terminal


2.8 Overview of Data Requirements


Input: Patient information, previous records if any, patient-type, bed no, bills as and when charged to patients, patient's lab and test reports. Doctor’s information, appointment schedules, purchase receipts of medicines and bio-medical instruments, etc.


Output: Electronic Patient's Record, Doctors' record, etc



2.9 User View of Product Use

First, a patient is admitted to hospital. The patient is assigned a unique Patient Identification Number (PIN). All the required information is entered into Sanjivani database. As and when the tests and diagnosis are carried out, their reports are inputted. Also, appropriate bills are charged to the patient. When the patient is to be discharged or transferred to another hospital, all his medical reports, bills, etc is quickly made available. Also discrepancies if any can be checked.

The doctor enters details about the patients he is looking after, also consultations provided, etc. As and when medicines and other equipments are purchased their details are inputted into the database.


3 EXTERNAL INTERFACE REQUIREMENTS:


3.1 User Interface:

Login Screen: The users log in and access the system depending on privileges given.


Registration form: At the time of admission, patient's details like patient name, patient type, sex, bed number, referred from, doctor's name, illness, blood group, contact details, previous illness, etc


OPD Screen: Book appointments; attach reports and images to the patient's records.


IPD Screen: Book beds/Operation theatres/appointments; attach reports, images, and charges.


Inventory Management Screen: Present stock, usage.

Admin screen: Add and remove system users / change rights, password, perform backup and restore operations, change configurations, etc.


HR Screen: Administrator enters details about all the employees, which includes medical and non-medical staff. Their salaries payable, perks, etc.


Report preparing utility: Settings for preparing the reports such as medical reports, bills, etc





3.2 Hardware interface

Main Server: server is located in the hospital premises which hosts the database using MySQL


Clients: each dept is provided with client systems, which run the app and connect to the database server using internal LAN


Internal connections: internal connections are hi-speed Ethernet connections


External connections: external connection is provided by means of Internet and/or private dialup access.


3.3 Software interface

Sanjivani is a multi user, multi-tasking environment. It uses Java 2 Standard Edition as front end and MySQL as backend database.


3.4 Communication Interface:

The entire communication interface is handled by the operating system. Example sockets are used for communication between MySQL server and Sanjivani.



4 SYSTEM FEATURES


4.1 Modules:


Patient Records

This module consists of Registration, OPD and IPD panels. This module provides all the information about the patient as per the user access level.


Human Resources Module:

This module is responsible for employee management. Typical hospital consists of doctors, nurses, ward boys, lab technician, house keeping staff and clerks. HR module keeps track of various details such as salaries, perks, medical benefits, leaves, etc. However, only the HR staff and Administrators can access this module.


Accounting and Inventory Module

This module allows tracking of the inventory and finances. All purchases made by hospital such as medicines, bio-medical equipments and other relevant items are recorded by this module. It allows bookkeeping, generates Income and Expenditure Account, Balance Sheet and other accounting reports. It generates various Inventory reports, allows the hospital staff to view total stock available. Based upon the reports hospital can decide which medicines are sold faster so that they can keep adequate stock of it.


Billing Module

This module generates bills of patients as per the information about the various services offered. The services include the bed, tests, consultation, medicines, etc. The module automatically generates bills according to the services used by the patient.

Pharmacy Module

The Pharmacy Dept will basically use this module. This module keeps tracks of sales of medicines. This module will be linked to Accounting and Inventory module so that the net stock of medicines is always available.


5 OTHER NON-FUNCTIONAL REQUIREMENTS:


5.1 Performance requirements

The important aspect of Sanjivani is that it must offer complete control management and all information at the click of a button. Response time of server may not be greater than 1 min. Number of terminals is not restricted by the application but the operating system or N/w may impose some restrictions, in any case only one login per terminal and only one login per user name is allowed



5.2 Safety Requirements:

Sanjivani must guarantee that the data is safe.

It keeps backup of all data files in separate directory, tape drives, etc

5.3 Security requirements

  1. Access to the system will only be granted to the operators after authentication

  2. Each user will be provided with a user name, password (minimum 8 characters) and access level. The user can access only those modules and features as permitted by the administrator.

  3. Administrator(s) will have access to entire system


5.4 Software quality attributes

The product is open source so its source code will be available for everyone to see. It will be free for further modifications and improvements.


5.4.1 Portability



5.4.2 Reliability

The reliability of the software system is important. Any failure reporting must be correctly reported. It should reject invalid user input without crashing. Errors should be displayed to the user in a simple language. Sanjivani must ensure proper memory management.


5.4.3 Testability

The requirement of this SRS will be verified through the exercising of test cases as described by the requirement. Each requirement of this SRS will be tested by thoroughly running the system with all forms of input. System should be closely monitored during and after user testing to ensure that any fault is quickly fixed



5.5 Special User requirements

5.5.1 Backup and Recovery

  1. Keep backups of all data files in tape drives, separate directory/drive

  2. Frequently auto save information in case of system failure


5.5.2 Data Migration and Retention

As all information is stored in a MySQL database, data migration and retention can be easily performed.


5.6 Installation

Setting up a conducive environment for the efficient running of Sanjivani, like setup of Database Server, etc.


6 OTHER REQUIREMENTS


Not applicable


7 ENTITY RELATIONSHIP DIAGRAM