Software Requirements Specification
Software Requirements Specification
Revision History
Date Version Description Author
03/Nov/09 1.0 Introduction Usman Shafi
04/Nov/08 1.0 Overall Description Burcin Dede
06/Nov/08 1.0 Specific Requirements Burcin Dede
Usman Shafi
08/Nov/09 1.0 Non- Functional Requirements Burcin Dede
Usman Shafi
09/Nov/09 1.0 Fixing date correction in revision Burcin Dede
history and update table of content Usman Shafi
13/Nov/2009 1.0 Reviewing Functional Requirements Burcin Dede
Usman Shafi
16/Nov/2009 1.0 Merging Functional Requirements, Burcin Dede
Document Review
Page 2
Software Requirements Specification Version 1.0
TABLE OF CONTENTS
TABLE OF CONTENTS 3
1. INTRODUCTION 4
1.1 Purpose 4
1.2 Scope 4
1.3 Definitions, Acronyms, and Abbreviations 4
1.4 Overview 4
2. OVERALL DESCRIPTION 4
3. SPECIFIC REQUIREMENTS 5
3.1 System features 5
3.1.1 User Management 5
3.1.2 Announcement 6
3.1.3 Forum 7
3.1.4 Instant Messaging 11
3.1.5 Frequently Asked Questions 12
3.1.6 Diagnosis Service 13
3.1.7 Blogs and Social Networks 14
3.1.8 Search 16
3.1.9 Subscription Service 16
3.1.10 Online Reservation System 17
3.1.11 Map 18
3.1.12 Health information 19
4. Non-Functional Requirements 22
4.1 Reliability 22
4.1.1 Availability 22
4.1.2 Fault tolerance 22
4.1.3 Recoverability 22
4.2 Security 22
4.2.1 User Authentication and Concurrency Controls 23
4.3 Usability 24
4.4 Scalability Error! Bookmark not defined.
Page 3
Software Requirements Specification Version 1.0
1. INTRODUCTION
This software requirement specification document provides full and comprehensive Health
Information System web application description. The document presents functional requirements of
the whole system in the form of text descriptive using Use Case Modeling technique supported by
Use Case diagrams.
1.1 Purpose
This document is constructed to describe entirely the external behavior of the Health Information
System web application. The document aims to help stakeholders to understand functional behavior of
the application in details and to present a clear vision of the system to the development team for
implementation in order to achieve business objectives of the project mentioned in Vision document.
The document is also designed to assist the end users to interact with the final product.
1.2 Scope
This document provides only functional requirements of the Health Information System web
application. This product will serve the users with services to establish a communicative and
informative bridge between the people of Sweden with medical authorities at national health agency
offices.
1.4 Overview
During the development life cycle, we comply Rational Unified Process modeling. It is
adopted in thousands of projects worldwide, and has been proven very effective for software
project management.
Although in RUP there are 4 phases, in this document we apply only 2 phases, these are inception and
elaboration. Requirements analysis takes place both in inception and elaboration phases.
In inception phase, after business case study, architectures should be able to understand and elicit
users or stakeholders’ requirements and write a preliminary requirement specification.
Elaboration phase is the most critical one of the four phases. It contains the most important decision
makings. In elaboration phase, all requirements should be qualitatively identified, so we can
predictably determine detail schedule and risks.
2. OVERALL DESCRIPTION
The overall goals of the system are analysis the epidemiological situation for infectious diseases in
humans and give information about the various types of crisis situations, as well as providing
possibility of online tracking the queue number for appointment in health centers and communication
between people who have knowledge about infectious diseases. This system also helps medical
authorities monitoring internal purposes to make statistics.
The most important features of the system include providing web based communication platform that
provides patients direct communication opportunity with medical authorities beside of controlling the
crisis situations and making them aware of infectious diseases. Web based communication platform
includes instant messaging, diagnosis service and online reservation system. Patient can fill the form
in diagnose service and send it to the medical authorities to give some basic information about their
Page 4
Software Requirements Specification Version 1.0
diseases before starting messaging with them instantly. According to the conversation with medical
authorities, they can make an appointment online if they need to go to health centers immediately.
Another group of features is for making people aware of infectious diseases generally and giving
opportunity to share their knowledge about diseases with other people in common platform. This
group includes Health Information which will allow users to quickly get the idea of infectious
diseases, Blogs and Social Networks which people can read other people’s opinions and experiences
about diseases, Forum which will give opportunity to communicate with other people and patients.
The rest of the features are mainly for support of the features above. They include user registration
and setting permissions (User Management section), providing the list of recently found treatment
methods (Announcement management section), subscribing different alerts via email and mobile
(Subscription section), getting the exact locations of health centers and hospitals (Map section) and
search engine, which allows users to easily find information that they need in system.
One of the most important non-functional requirements is usability, as the website is intended to
support people when are sick in quickest and easiest way. That is why using of the system should not
become a barrier. For the same reason reliably is also important issue.
3. SPECIFIC REQUIREMENTS
3.1 System features
3.1.1 User Management
3.1.1.1 Create User
Page 5
Software Requirements Specification Version 1.0
All users enter user name and password in the login form and click on "Login" button. System
checks that account is available with the user name supplied and password is correct.
Validation redirected to start page. Start Page of the application is shown to the user.
3.1.2 Announcement
3.1.2.1 Create Announcement
Page 6
Software Requirements Specification Version 1.0
3.1.3 Forum
3.1.3.1 View topic
Page 7
Software Requirements Specification Version 1.0
Page 8
Software Requirements Specification Version 1.0
After authentication, admin user goes to forum page. He/she can see Remove button under all
the topics that has been added since now. For deleting a topic he/she clicks on the delete
button that is under each link. After clicking, he/she can see a confirmation message. After
confirming the message he/she can delete the topic.
Users open Forum search page then write the possible key words that topic can include and
clicks on search button. List of matching forum topic are displayed.
Page 9
Software Requirements Specification Version 1.0
All users can search any post that is shared before in forum section.
Users open Forum search page then write the possible key word that post can include and
clicks on search button. List of matching post are displayed.
Page 10
Software Requirements Specification Version 1.0
All users click on the Forum link then they are directed to the page that contains list of forum
topics. When they click on the topic, they can see all posts that are under each topic. Then
they click on the post, all comments will be displayed under related post.
3.1.3.11 Remove comment
Page 11
Software Requirements Specification Version 1.0
Member user and organization user can type their messages in the message box and press
enter or Send button to send the message to each other.
3.1.4.1 Receive Message
Page 12
Software Requirements Specification Version 1.0
Users can click on FAQ link that is on the left hand side of main page. They are directed to
the FAQ page. They can see list of FAQ then they click on the question that they want to
know answer of it. Answer of question is displayed.
Page 13
Software Requirements Specification Version 1.0
After sending diagnosis form, member user will see a message that tells him/her
his/her form has been sent to the medical officers.
3.1.6.2 View Diagnosis Form
After linking, admin and organization user can get the latest posts
from these blogs externally.
3.1.7.2 Connect Social Networks
After linking, admin and organization user can get the latest posts
from these blogs externally.
3.1.7.3 View All Blogs
All users can view blogs in different orders. They can view the blogs
in alphabetical order by clicking on letters. In order to view
chorological order, users click on “Latest updates” button. System
displays the blogs categorized in an alphabetic order or in
chronological order.
3.1.7.4 View All Social Networks
Page 15
Software Requirements Specification Version 1.0
3.1.8 Search
3.1.8.1 Search Keyword
Page 16
Software Requirements Specification Version 1.0
After authentication, admin user redirect to the admin control panel. Admin user clicks on
“Subscription” button. He/she can view the form to create the subscription. After filling the
subscription form, he/she clicks on “Continue and Save” button. When he/she will clicks on
the Send button, subscription will be sent.
3.1.9.3 Manage Newsletter email / Mobile alert
Page 17
Software Requirements Specification Version 1.0
If member user enters invalid information to the patient information form, system
displays an error message.
3.1.10.2 View Appointment
3.1.10.2.3.1 Print
Member user clicks on the “Print” button in order to print the appointment.
3.1.11 Map
3.1.11.1 View Tags
Page 18
Software Requirements Specification Version 1.0
Hospitals and regional health agencies will be tagged with a unique symbolic icon
in order to differentiate easily between the hospital and regional health agency.
Page 19
Software Requirements Specification Version 1.0
Page 20
Software Requirements Specification Version 1.0
Page 21
Software Requirements Specification Version 1.0
4. Non-Functional Requirements
In systems and requirements engineering, non-functional requirements are defined as requirements
that specify criteria that can be used to judge the operation of a system, rather than specific behaviors.
This should be contrasted with functional requirements that specify specific behavior or functions. In
general, functional requirements define what a system is supposed to do whereas non-functional
requirements define how a system is supposed to be. The non-functional requirements are often called
qualities attributes of a system and the underlying design principles should be made according to
them.
The Health Information System & Crisis Response as a web-based software application has high
requirements for a number of quality attributes that should underlie all decisions made in development
of this system. This section provides the non-functional requirements that are important for
development of Health Information System & Crisis Response online system. These requirements are
motivated by the domain analysis of Health Information System & Crisis Response and should be the
qualities underlying all decisions made to produce the system.
4.1 Reliability
The Health Information System & Crisis Response should be reliable from both system and
information reliability aspect.
It should be reliable and maintain its level of performance under routine circumstances as well as
hostile or unexpected circumstances for a stated period of time. It's not enough to show that system
can do something once. If a system does not work reliably (for instance, while under load, or when
systems fail, and so on), then it's not going to serve the user needs. It is also important for the patients
to reach the information as fast as possible so if our website does not work well, the users do not use it
more and simply point their browser to a different URL.
The reliability of the information is also important for recruiting people to use our website. Because of
the importance of health issues, people want to get reliable and helpful information especially when
are they are sick. If the system does not provide reliable information to the people, they won’t use this
service anymore so we will lose our users and in businesses we will not succeed since there are lots of
health care websites in a competitive market.
The following sections describe the sub characteristics for the reliability attribute of Health
Information System & Crisis Response:
4.1.1 Availability
The system should be accessible from anywhere via the Internet. The application should be
accessible at least 99.9%.
4.1.3 Recoverability
To support the recoverability the system should be able to re-establish a specified level of
performance and recover the data directly affected in the case of a failure.
4.2 Security
The system should be secure enough against the possible assault. There must also be proper
data validation controls. In this case, the invalid data that may make the system vulnerable
Page 22
Software Requirements Specification Version 1.0
will not be entered into the application. The data must be securely stored in the application
servers and should be accessible only by the authenticated users based on the privileges given
to the users.
The security should be provided to Health Information System & Crisis Response to protect
information and data so that unauthorized persons or systems cannot read or modify them and
authorized persons or systems are not denied access to them.
4.2.1 User Authentication and Concurrency Controls
The application Health Information System & Crisis Response has three types of users having
different kind of privileges and access rights:
Guest User: This user only has the access to the public information of the website.
This user cannot add, edit, or remove any information on the web application.
Member User: This user has all the end user’s privileges and additionally can interact
with the application by using its features and access to the information that is shared
with him/her. This user basically will contribute to the information flow in forums,
social networks and blogs, etc.
Admin User: This user has all the privileges of end user and additionally plays the
role of the administration of the web application by having access to the
administration control panel. This user can remove some registered users’
membership; control the content of the health information, blogs, forums, etc. This
user also can administer the privileges of registered user, for example, it can ban a
user from editing a blog or forum or kicking a registered user out of a community.
Organization User: This user has all the end user’s and member user’s privileges and
additionally can interact with the application by supporting health information as an
expert. This user basically will support most reliable information related with health
issues.
There must be proper data validation controls. In this case, the invalid data that may make the
system vulnerable will not be entered into the application.
Page 23
Software Requirements Specification Version 1.0
The data must be securely stored in the application servers and should be accessible only by
the authenticated users based on the privileges given to the users.
The personal information such as name, email address, address, telephone number, date of
birth, nationality, and religion and etc. belonging to the user A should only be accessible for
the user B with the permission of the user A.
4.3 Usability
Our system will be used by all kinds of users therefore interface of application should be easy
and usable in a way that any user belonging to any age group or having any sort of aptitude
feels easy while browsing and traversing the application.
The application’s layout should be like other popular application’s to which user is already
familiar e.g. 1177.se, healthmap.org. So that user may not feel strange or difficulty in using
and traversing any feature.
Applications map should be easy so that user can access any module or section of application
by making at most 4 clicks and by browsing less links.
4.4 Scalability
The application should be designed in a way that it may be extended in terms of hardware if
needed in future. In near future if the numbers of user are increasing then the application
should be flexible enough that after adding one or more application servers, load can be
distributed and performance and speed of the application will not be affected. The application
must remain always able to authenticate thousands of users concurrently.
At the time of crisis situation it is predicted that the system is to be used by hundreds of users
in start and within the passage of time the number of users will increase rapidly. Therefore, it
must have ability to accept such high transaction volume. In this case, after adding new
database servers it must be able to manage that many transactions of thousands of users.
Page 24