archangels virtual medical home
TRANSCRIPT
ORIENTAL INSTITUTE OF SCIENCE & TECHNOLOGY
Virtual Medical HomeSoftware Requirements Specification
Team:Archangels
Team Members:Deep SaranHarsh HemaniShubhankar Roy
Project Guide:Mr. Prakash Narayan Harda
2
INDEX & TABLES
SNO. CONTENTS PAGE NO.
1 Introduction 31.1 Objective 31.2 Scope 31.3 Abbreviations 41.4 References 41.5 Technologies 5
2 Overall Description 52.1 Product Perspective 52.2 Software Interface 62.3 Hardware Interface 62.4 Communication Interface 62.5 Product Function 72.6 User Characteristics 72.7 Constraints 72.8 Use-Case Model Survey 82.9 Architecture Diagram 92.10 Database Design 102.11 Assumptions and Dependence 12
3 Specific Requirements 123.1 Use-Case Reports 123.2 Supplementary Requirements 27
3
Introduction
Objective: The objective of this project, Virtual Medical Home is to provide essential medical services online to everyone hardly matters you live in metro or a remotely located village. Users can connect through their home internet or approach any nearby kiosk to get these services. What motivate to build this system are:
Very few or no doctors at remote locations
Limited hour services and lack of sophisticated medical equipments
No patient’s history/lab data management
Scope: Create different system users and manage their details.
Doctors and Kiosk Managers will be added as a user of the system only after manual verification from administrator.
Patients can make online appointment, look their previous health records, doctor’s prescriptions, lab reports and medical expenses
Doctor’s can give appointments, e-prescriptions, and view patient’s history.
Web-cam based interaction between patient and doctor.
Kiosk Manager can see/adjust appointments, perform day open & close activities and calculate his commission.
In case of any medical error (wrong medication or lab report) patient can register a complaint. Patient’s grievance and feedback goes to Admin he can forward it to any doctor to answer.
Facilitates appropriate communication between all stakeholders -Discussion forum/chat/mail/polls
Site has details online help manual for patients. Local language support is also provided.
Admin to take backup of all kind of data, view log and generate system reports.
4
Abbreviations: Payment transaction: Transaction between Kiosk manager and Patient
for all the payment of its e-prescription and commission.
Personal details: Details of all the users such as username, company, phone number, address, messenger_Id, e-mail address etc.
Contact details: Contact details of doctors associated with the company and kiosk managers.
HTML: Hypertext Markup Language is a markup language used to design static web pages.
EJB: Enterprise Java Beans. J2EE: Java 2 Enterprise Edition is a programming platform— part of the Java
Platform—for developing and running distributed multitier architecture Java applications, based largely on modular software components running on an application server.
DB2: DB2 Database is the database management system that delivers a flexible and cost-effective database platform to build robust on demand business applications.
WAS: Web sphere application server is an application server that runs business applications and supports J2EE and web services standards.
WSAD: Web sphere studio application developer is a toolkit which is designed for the creation of more complex projects, providing fully dynamic web application utilizing EJB’s. This consist of EJB tools , CMP ,data mapping tools & a universal test client that is designed to aid testing of EJB’ s.
HTTP: Hypertext Transfer Protocol is a transaction oriented client/server protocol between web browser & a Web Server.
TCP/IP: Transmission Control Protocol/Internet Protocol, the suite of communication protocols used to connect hosts on the Internet. TCP/IP uses several protocols, the two main ones being TCP and IP.
5
References: IEEE SRS Format
Problem Definition
Technologies: J2EE: Application Architecture
DB2: Database
WSAD: Development Tool
WAS: Web Application Server
Rational: Design Tool
Overall DescriptionDescribe the general factors that affect the project and its requirements.
Product Perspective:
6
The web pages (XHTML/JSP) are present to provide the user interface on customer client side. Communication between customer and server is provided through HTTP/HTTPS protocols.
The Client Software is to provide the user interface on system user client side and for this TCP/IP protocols are used.
On the server side web server is for EJB and database server is for storing the information.
Software Interface:
Client on Internet: Web Browser, Operating System(any)Client on Intranet: Client Software, Web Browser, Operating System(any)Web Server: WAS, Operating System(any)Data Base Server: DB2, Operating System(any)Development End: WSAD (J2EE, Java, Java Bean, Servlets, HTML),
DB2, Operating System (Linux), Web Server.
Hardware Interface:
Client SideProcessor RAM Disk Space
Internet Explorer 6.0
Pentium II at 500MHz
64 MB 1 GB
Server SideWeb Sphere Application Server V 5.0
Pentium III at 1 GHz
512 MB 2GB
DB2 V8.1 Pentium III at 1 GHz
512 MB 1 GB (Excluding data size)
7
Communication Interface: Client on the Internet will be using HTTP protocol.
Product Function:Track Account Level Data: In this module, receivables from customer
are maintained.Authenticate Doctors and Kiosk Managers: The administrator will
manually check the details of each doctor and kiosk manager and authenticate him/her.Service Level Agreements: It contains the agreements of providing the
services to patients, doctors and kiosk managers.User Contact Information: It maintains all the details (Personal,
Official, Contact, and Company) of different users.Transactions Records: Maintenance of transactions related to
the services provided to patients, kiosk managers.Maintaining Logs: Activities of the various users can be tracked through
the logs, which are maintained by the system.
User Characteristics: Every user should be comfortable of working with computer and net browsing. Although we have provided the support of using local languages yet it is preferred
that user should use English language.
Constraints: For full working of Virtual Medical Home requires internet connection.
Login and password is used for identification of the various users that arepatient, doctor and kiosk manager.
This system is working for single server.
For backing up the data, the administrator will have to manually do it.
8
Use-Case Model Survey:
USE-CASE DIAGRAM
Doctor Patient
Kiosk Manager
Administrator
Patient’s History
Prescriptions
Appointments
Medical Expenses
Calculate commission
Health Records & Lab reports
Manage usersView log
reports
System reports
Back-up all kind of data
View all details
View own details
View own details
View own details
Calculate fees
9
Architecture Diagram:
Application Layer Business Layer Data Layer
User_UI
User_Admin_UI
Chat_UI
Transaction_UI
User_Kiosk_UI
Poll_UI
User_Doctor_UI
Forum_UI
Prescription_UI
Appointment_UI
User
User_Admin
Chat_Record
Transaction_Records
User_Kiosk
Poll_Record
User_Doctor
Forum_Records
Prescription_Taken
Appointment_Made
User
User_Admin
User_Doctor
User_Kiosk
Prescription_Taken
Transaction_Records
Appointment_Made
Poll_Record
Chat_Record
Forum_Records
10
Database Design:
User_AdminUser_IdUser_NamePasswordFirst_NameLast_NameE-mailModifiedCreatedMail_Record
UserUser_IdUser_NamePasswordFirst_NameLast_NameE-MailModifiedCreatedBirth_DateAddressZip_codeCityStateCountryPhoneMobileFaxMessenger_IdMail_recordPhotoAbout meExpense_Record
User_PatientPatient_IdUser_IdGenderHeightWeightBlood_GroupDiseaseLab_ReportsHistoryInterestsFree_info
User_DoctorDoctor_IdUser_IdGenderFieldCompany_NameCompany_ContactFeesInterestsFree_info
User_KioskDoctor_IdUser_IdCentre_NameCommission
IS_A
11
Appointment_MadeApp_IdPatient_IdDoctor_IdDateTimeKioskApproval
Prescription_TakenPP_IdPatient_IdDoctor_IdPrescriptionDate/TimeKioskExpense
Complaint_PatientCP_IdPatient_IdDoctor_IdComplaintArea
Forum_RecordsFR_IdTopicUser_IdDate/TimeComment
Chat_RecordsChat_IdPatient_IdDoctor_IdDate/Time
Poll_RecordsPoll_IdUser_IdTopicQuestionOption_AOption_BOption_COption_DAns_AAns_BAns_CAns_DDate/Time
Transaction RecordsTransaction_IdFrom_IdTo_IdMode_of_TransactionSubjectDateTimeTransaction_DetailKiosk_Manager
12
Assumptions and Dependencies: The details related to the patient, doctor, kiosk manager and
transaction provided manually.
Administrator is created in the system already.
Roles and tasks are predefined.
Specific Requirements:Use-Case Reports:
Administrator: Responsible for managing all the three types of users, viewing logs and managing standard groups of the system.
Manage System Users: The Administrator will provide the system users, Doctors and Kiosk Managers, authentication to use the site.
View Logs: Responsible for checking the logs of different system user for auditing and maintaining the integrity of the system.
System Reports: The Administrator is responsible to generate system reports for the future references.
View All Details: View the users’ details, chatting details, complaint details, daily service transaction details.
Back Up data: The Administrator is responsible to back up all the data at a particular time everyday.
Manage system users
13
Name of use case: View System UsersDescription: View the list of system users in a role and view the details ofroles, tasks and permissions assigned to a system user.Preconditions:
Administrator is already logged in. System users have already been created and assigned some roles, tasks
and permissions.Normal flow of events:
The system user or a role will be selected. Query will be submitted. Relevant output will be displayed (If system user is selected then roles,
tasks and permissions assigned to one will be displayed and if role is selected then list of system users assigned to that role will be displayed).
Alternate flow of events: None.Post Condition: None.
Name of use case: Create System UsersDescription: To create system users (Giving them a login name, password and assign roles, tasks and permissions to them).Preconditions: Administrator is already logged in.Normal flow of events:
New Login name, password, details, roles, tasks and permissions will be entered.
Save the details.
14
Alternate flow of events: A message appears for duplicate login name. The administrator has to fill the details again.
Post condition: A login id is generated with its details.
Name of use case: Update details of UsersDescription: To update the details of system users (assigning or revoking roles, tasks and permissions).Preconditions:
Administrator is already logged in. System Users have already been created.
Normal flow of events: Select the user name. Assign or Revoke the roles, tasks and permissions.
Post Condition: None
15
Name of use case: View logsDescription: To view the activities (logs) of the system users.Precondition:
Administrator is already logged in. System Users have already been created.
Normal flow of events: Select user name. Select date.
Post Condition: None
Kiosk Manager: Responsible to see/adjust appointments, perform day open & close activities and calculate his commission.
Login: Kiosk Manager can login to the site only if it receives an authentication mail from the administrator.
Appointments: Kiosk Manager can arrange appointments between a patient and a doctor.
View own details: Kiosk Manager can view his details and can also update his profile but not its centre name and location.
Calculate Commission: Kiosk Manager can calculate his commission at the end of his day activities.
16
Name of the use case: View own details.Description: View the personal details.Precondition: Kiosk manager is already logged in.Normal flow of events:
View Personal details. The detail of corresponding Kiosk manager is viewed.
Alternate flow of events: NonePost condition: None.
17
Name of the use case: Calculate commission.Description: Calculate the commission.Precondition: Kiosk manager is already logged in.Normal flow of events:
Calculate Commission The commission of Kiosk manager is displayed.
Alternate flow of events: NonePost condition: None.
Name of the use case: Fix Appointment.Description: Fix the appointment of patient with the doctor.Precondition: Kiosk manager is already logged in.Normal flow of events:
Select Ask for appointment. The request for appointment is sent to the doctor.
Alternate flow of events: Patient can directly ask for appointment.Post condition: Appointment may or may not be approved by doctor.
18
Doctor: Responsible to give appointments, e-prescriptions and can also view his patient’s history.
Login: A Doctor can login to the site only if it receives an authentication mail from the administrator.
Appointments: The Doctor can approve or give the appointments to his/her patient.
Prescriptions: The Doctor can provide the patients with e-prescriptions.
Fees: The Doctor can calculate his fees for the prescriptions he/she provided it to patients.
Patients’ History: The Doctor can view his/hers patients’ history that he attended.
View own details: The Doctor can view his details and can also update his profile but not its field, company name and location.
19
Name of the use case: View own details.Description: View the personal details.Precondition: Doctor is already logged in.Normal flow of events:
View Personal details. The detail of corresponding Doctor is viewed.
Alternate flow of events: NonePost condition: None.
Name of the use case: View Patient’s History.Description: View Patient’s health records, previous prescription & related information.Precondition: Doctor is already logged in.Normal flow of events:
View Patient’s History.
20
Enter the PatientID. The required details are displayed.
Alternate flow of events: NonePost condition: None.
Name of the use case: Calculate FeesDescription: Calculate the Fees.Precondition: Doctor is already logged in.Normal flow of events:
Select calculate Fee. The fee is displayed.
Alternate flow of events: NonePost condition: None.
21
Name of the use case: Give E-Prescription.Description: Doctor gives prescription to his patient.Precondition: Doctor is already logged in.Normal flow of events:
Select give E-Prescription. The mail is sent to the PatientID.
Alternate flow of events: NonePost condition: Save the E-Prescription.
Name of the use case: Approve Appointments.Description: Doctor gives appointment to the patient.Precondition: Doctor is already logged in.Normal flow of events:
Select Approve Appointments. Doctor approve and fix the Appointment.(with any change in date and time)
Alternate flow of events: None
22
Post condition: Save the approved appointment.
Patients: Patients can make online appointment; look their previous health records, doctor’s prescriptions, lab reports and medical expenses.
Login: Patients can easily register to the site and after verification they can easily login.
Appointments: Patients can ask for appointments from their respective doctor.
Prescription: Patients can keep the records of the prescriptions they’d been given by their respective doctors.
Health Records: Patients can watch their previous health records in their profile.
Lab Reports: Patients can watch their previous lab reports provided to them from their respective doctors.
Medical Expense: They can keep a record of all the medical expense and watch them in their profile.
23
Name of the use case: Ask for Appointment.Description: Ask for appointment with the doctor.Precondition: Patient is already logged in.Normal flow of events:
Select Ask for appointment. The request for appointment is sent to the doctor.
Alternate flow of events: Patient can ask for appointment through Kiosk Manager.Post condition: Appointment may or may not be approved by doctor.
24
Name of the use case: View Prescription.Description: View the prescription given by the doctor.Precondition: Patient is already logged in.Normal flow of events:
Select View E-Prescription. E-Prescriptions list is displayed. Select the E-Prescriptions to be viewed from the list. E-Prescriptions is displayed.
Alternate flow of events: NonePost condition: None.
Name of the use case: View Health Record.Description: View the health record.Precondition: Patient is already logged in.Normal flow of events:
Select View Health Record. The Health Record is displayed.
Alternate flow of events: None.Post condition: None.
25
Name of the use case: Update Health Record.Description: Update the health record.Precondition: Patient is already logged in.Normal flow of events:
Select Update Health Record. Make Changes to the existing health record. Updated Health Record is displayed.
Alternate flow of events: None.Post condition: None.
26
Name of the use case: View Lab Reports.Description: View the Lab Reports given by the doctor.Precondition: Patient is already logged in.Normal flow of events:
Select View Lab Reports. Lab Reports list is displayed. Select the Lab Report to be viewed from the list. Lab Report is displayed.
Alternate flow of events: NonePost condition: None.
Name of the use case: View Medical Expenses.Description: View total medical expenses.Precondition: Patient is already logged in.Normal flow of events:
Select View Medical Expenses. Medical Expenses are displayed.
Alternate flow of events: NonePost condition: none.
27
Supplementary Requirements:
Have hours of operation that are 24 x 7 - Because system can be an automatedprocess, so it can stay open for 24 hours a day. If the base is now the entire world,staying open 24 hours a day becomes critical. System is required to be available 24X7 soUPS support must be on server site for at least 8 hours in case of power failure. Systemwill remain inaccessible to users at 2:00 to 4:00 am for backup and maintenancepurpose. Reduce the cost of a sales transaction - To the extent that one can automate thesales process through this system, one can start to reduce the cost of that salestransaction. This is particularly true of mundane sales transactions where the customerknows what they want. Make the existing Web site more dynamic in nature - Many early Webimplementations consisted of static HTML pages. This becomes very difficult to manageif the number of pages gets too large. An effective system should be largely dynamictaking advantage of technology that automates this process rather than relying on manualprocesses. Application should serve dynamic user based customized web pages to itsclients from server. Tie the existing Web site into existing enterprise systems – Any existing Web sitethat relies on the manual duplication of data from another system is one that can beimproved. Most of the business data in the world today exists in enterprise servers that
can be connected to the Web servers to make this process far more effective.