Software Requirements Specification: Version
Software Requirements Specification: Version
Software Requirements Specification: Version
Specification
for
Version <X.X>
Prepared by
Contents
REVISIONS................................................................................................................................................................III
1 INTRODUCTION................................................................................................................................................1
1.1 DOCUMENT PURPOSE.................................................................................................................................1
1.2 PRODUCT SCOPE................................................................................................................................ 1
1.3 INTENDED AUDIENCE AND DOCUMENT OVERVIEW...............................................................................1
1.4 DEFINITIONS, ACRONYMS AND ABBREVIATIONS...................................................................................1
1.5 DOCUMENT CONVENTIONS.................................................................................................................. 1
1.6 REFERENCES AND ACKNOWLEDGMENTS.............................................................................................. 2
2 OVERALL DESCRIPTION...............................................................................................................................3
2.1 PRODUCT PERSPECTIVE...................................................................................................................... 3
2.2 PRODUCT FUNCTIONALITY................................................................................................................... 3
2.3 USERS AND CHARACTERISTICS............................................................................................................ 3
2.4 OPERATING ENVIRONMENT.................................................................................................................. 3
2.5 DESIGN AND IMPLEMENTATION CONSTRAINTS......................................................................................4
2.6 USER DOCUMENTATION....................................................................................................................... 4
2.7 ASSUMPTIONS AND DEPENDENCIES..................................................................................................... 4
3 SPECIFIC REQUIREMENTS...........................................................................................................................5
3.1 EXTERNAL INTERFACE REQUIREMENTS................................................................................................ 5
3.2 FUNCTIONAL REQUIREMENTS............................................................................................................... 6
3.3 BEHAVIOUR REQUIREMENTS................................................................................................................ 6
4 OTHER NON-FUNCTIONAL REQUIREMENTS..........................................................................................7
4.1 PERFORMANCE REQUIREMENTS.......................................................................................................... 7
4.2 SAFETY AND SECURITY REQUIREMENTS.............................................................................................. 7
4.3 SOFTWARE QUALITY ATTRIBUTES........................................................................................................ 7
5 OTHER REQUIREMENTS...............................................................................................................................8
Revisions
Version Primary Author(s) Description of Version Date Completed
Draft Type Full Name Information about the revision. This table does 00/00/00
and not need to be filled in whenever a document is
Software Requirements Specification for <Project> Page iii
<In this template you will find text bounded by the “<>” symbols. This text appears in italics
and is intended to guide you through the template and provide explanations regarding the
different sections in this document. There are two types of comments in this document. These
comments that are in black are intended specifically for that course. These comments that are
in blue are more general and apply to any SRS. Please, make sure to delete all of the
comments before submitting the document.
The explanations provided below, do not cover all of the material, but merely, the general
nature of the information you would usually find in SRS documents. It is based on the IEEE
requirements and was adapted specifically for the needs of Software Engineering 3K04/3M04
courses. Most of the sections in this template are required sections, i.e. you must include them
in your version of the document. Failure to do so will result in marks deductions. Optional
sections will be explicitly marked as optional.
Software Requirements Specification for <Project> Page 1
1 Introduction
<TO DO: Please provide a brief introduction to your project and a brief overview of what the
reader will find in this section.>
This Software Requirements Specification (SRS) is the requirements work product that formally
specifies Hospital Patient Info Management System (HPIMS). It includes the results of both
business analysis and systems analysis efforts. Various techniques were used to elicit the
requirements and we have identified your needs, analyzed and refined them. The objective of this
document therefore is to formally describe the system’s high level requirements including
functional requirements, non-functional requirements and business rules and constraints. The detail
structure of this document is organized as follows:
Section 2 of this document provides an overview of the business domain that the proposed Hospital
Patient Info Management System (HPIMS) will support. These include a general description of the
product, user characteristics, general constraints, and any assumptions for this system. This model
demonstrates the development team's understanding of the business domain and serves to maximize
the team's ability to build a system that truly does support the business.
Section 3 presents the detail requirements, which comprise the domain model.
Software Requirements Specification for <Project> Page 2
TO DO: Describe any standards or typographical conventions that were followed when writing this
SRS, such as fonts or highlighting that have special significance. Sometimes, it is useful to divide
this section to several sections, e.g., Formatting Conventions, Naming Conventions, etc.>
TO DO: Use the standard IEEE citation guide for this section. An example citation guide is posted
for you on the website.>
Software Requirements Specification for <Project> Page 3
2 Overall Description
TO DO: Provide at least one paragraph describing product perspective. Provide a general
diagram that will illustrate how your product interacts with the environment and in what context it
is being used.>
This Hospital Patient Info Management System is a self-contained system that manages activities of
the hospital as Patient Info. Various stakeholders are involved in the hospital patient info system.
Report Generation: The system generates reports on the following information: List of detailed
information regarding the patient who ha admitted in the hospital
It is assumed that one hundred IBM compatible computers will be available before the system is
installed and tested.
· It is assumed that the Hospital will have enough trained staff to take care of the system
Software Requirements Specification for <Project> Page 6
3 Specific Requirements
<Describe the logical characteristics of each interface between the software product and the
users. This may include sample screen images, any GUI standards or product family style guides
that are to be followed, screen layout constraints, standard buttons and functions (e.g., Cancel)
that will appear on every screen, error message display standards, and so on. Define the
software components for which a user interface is needed.
TO DO: The least you can do for this section is to describe in words the different User Interfaces
and the different screens that will be available to the user. Those who will be able to provide
optional Graphical User Interface screenshots, will be rewarded by extra marks.>
<Describe the logical and physical characteristics of each interface between the software product
and the hardware components of the system. This may include the supported device types, the
nature of the data and control interactions between the software and the hardware. You are not
required to specify what protocols you will be using to communicate with the hardware, but it will
be usually included in this part as well.
TO DO: Please provide a short description of the different hardware interfaces. If you will be
using some special libraries to communicate with your software mention them here. In case you
have more than one hardware interface divide this section into subsections.>
TO DO: The previous part illustrates some of the information you would usually include in this part
of the SRS document. To make things simpler, you are only required to describe the specific
interface with the operating system.>
<Describe the requirements associated with any communications functions required by this
product, including e-mail, web browser, network server communications protocols, electronic
forms, and so on. Define any pertinent message formatting. Identify any communication
standards that will be used, such as FTP or HTTP. Specify any communication security or
encryption issues, data transfer rates, and synchronization mechanisms.
TO DO: Do not go into too much detail, but provide 1-2 paragraphs were you will outline the
major communication standards. For example, if you decide to use encryption there is no need to
specify the exact encryption standards, but rather, specify the fact that the data will be encrypted
and name what standards you consider using. >
< Functional requirements capture the intended behavior of the system. This behavior may be
expressed as services, tasks or functions the system is required to perform. This section is the
direct continuation of section 2.2 where you have specified the general functional requirements.
Here, you should list in detail the different product functions with specific explanations regarding
every function.
TO DO: Brake the functional requirements to several functional areas and divide this section into
subsections accordingly. Provide a detailed list of all product operations related to these
functional areas.
3.2.1.1 Registration
<A use case defines a goal-oriented set of interactions between external actors and the system
under consideration. Since sometimes we will not be able to specify completely the behaviour of
the system by just State Diagrams, we use use-cases to complete what we have already started
in section 3.3.1.
TO DO: Provide a use case diagram which will encapsulate the entire system and all possible
actors. Do not include detailed use case descriptions (these will be needed when you will be
working on the Test Plan), but make sure to include a short description of what every use-case is,
who are the actors in your diagram. For more information please refer to your UML guide and the
MiniThermostat SRS example file.>
4.1.1 Security
Software Requirements Specification for <Project> Page 10
SRS012 Patient Identification
The system requires the patient to identify himself /herself using PHN
SRS013 Logon ID
Any user who uses the system shall have a Logon ID and Password.
SRS014 Modification
Any modification (insert, delete, update) for the Database shall be synchronized and
done only by the administrator in the ward.
SRS015 Front Desk staff Rights
Front Desk staff shall be able to view all information in HPIMS, add new patients to
HPIMS but shall not be able to modify any information in it.
SRS016 Administrators' Rights
Administrators shall be able to view and modify all information in
HPIMS.
<Specify those requirements that are concerned with possible loss, damage, or harm that could
result from the use of the product. Define any safeguards or actions that must be taken, as well
as actions that must be prevented. Refer to any external policies or regulations that state safety
issues that affect the product’s design or use. Define any safety certifications that must be
satisfied. Specify any requirements regarding security or privacy issues surrounding use of the
product or protection of the data used or created by the product. Define any user identity
authentication requirements.
TODO:
Provide at least 3 different safety requirements based on your interview with the client or,
on your ABM related research, and again you need to be creative here.
Describe briefly what level of security is expected from this product by your client and
provide a bulleted (or numbered) list of the major security requirements.>
TODO: Use subsections (e.g., 4.3.1 Reliability, 4.3.2 Portability, etc…) provide requirements
related to the different software quality attributes. Base the information you include in these
subsections on the material you have learned in the class. Make sure, that you do not just write
“This software shall be maintainable…” Indicate how you plan to achieve it, & etc…Do not forget
to include such attributes as the design for change. Please note that you need to include at least
2 quality attributes, but it is the mere minimum and it will not receive the full marks.>
Software Requirements Specification for <Project> Page 11
5 Other Requirements
<This section is Optional. Define any other requirements not covered elsewhere in the SRS. This
might include database requirements, internationalization requirements, legal requirements,
reuse objectives for the project, and so on. Add any new sections that are pertinent to the
project.>
<Data dictionary is used to track all the different variables, states and functional requirements that
you described in your document. Make sure to include the complete list of all constants, state
variables (and their possible states), inputs and outputs in a table. In the table, include the
description of these items as well as all related operations and requirements.>
Software Requirements Specification for <Project> Page 13