Professional Documents
Culture Documents
<Organization>
<
Software Requirements Specification
<mm
<Version
The document in this file is adapted from the IEEE standards for Software Project
Requirements Specifications, 830-1998, which conforms to the requirements of ISO
standard 12207 Software Life Cycle Processes.
Items that are intended to stay in as part of your document are in bold; blue italic text is
used for explanatory information that should be removed when the template is used.
2 v. 1.0 2006
Software Requirements Specification
Table of Contents
1. INTRODUCTION..................................................................................................................................4
1.1 PURPOSE.................................................................................................................................... 4
1.2 SCOPE........................................................................................................................................ 4
1.3 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS..........................................................................4
1.4 REFERENCES.............................................................................................................................. 4
1.5 OVERVIEW.................................................................................................................................. 4
2. OVERALL DESCRIPTION.................................................................................................................5
PROBLEM STATEMENT.............................................................................................................................. 5
2.1 PRODUCT PERSPECTIVE............................................................................................................. 5
PRODUCT POSITION STATEMENT.............................................................................................................. 5
2.1.1 System Interfaces..................................................................................................................5
2.1.2 User Interfaces.......................................................................................................................6
2.1.3 Hardware Interfaces..............................................................................................................6
2.1.4 Software Interfaces...............................................................................................................6
2.1.5 Communications Interfaces..................................................................................................6
2.1.6 Memory Constraints..............................................................................................................6
2.1.7 Operations...............................................................................................................................6
2.1.8 Site Adaptation Requirements.............................................................................................6
2.2 PRODUCT FUNCTIONS................................................................................................................. 7
2.3 USER CHARACTERISTICS............................................................................................................ 7
2.4 CONSTRAINTS............................................................................................................................. 7
2.5 ASSUMPTIONS AND DEPENDENCIES............................................................................................ 7
2.6 APPORTIONING OF REQUIREMENTS............................................................................................ 7
3. SPECIFIC REQUIREMENTS............................................................................................................7
3.1 EXTERNAL INTERFACES.............................................................................................................. 8
3.2 FUNCTIONS................................................................................................................................. 8
3.3 PERFORMANCE REQUIREMENTS................................................................................................. 9
3.4 LOGICAL DATABASE REQUIREMENTS..........................................................................................9
3.5 DESIGN CONSTRAINTS................................................................................................................ 9
3.5.1 Standards Compliance..........................................................................................................9
3.6 SOFTWARE SYSTEM ATTRIBUTES.............................................................................................. 10
3.6.1 Reliability...............................................................................................................................10
3.6.2 Availability.............................................................................................................................10
3.6.3 Security..................................................................................................................................10
3.6.4 Portability...............................................................................................................................10
3.7 ORGANIZING THE SPECIFIC REQUIREMENTS.............................................................................11
3.7.1 System Mode.......................................................................................................................11
3.7.2 User Class............................................................................................................................11
3.7.3 Feature..................................................................................................................................11
3.7.4 Stimulus.................................................................................................................................12
3.7.5 Response..............................................................................................................................12
3.7.6 Functional Hierarchy...........................................................................................................12
3.8 ADDITIONAL COMMENTS............................................................................................................ 12
4. SUPPORTING INFORMATION......................................................................................................12
DOCUMENT CONTROL............................................................................................................................13
CHANGE HISTORY................................................................................................................................. 13
DOCUMENT STORAGE............................................................................................................................. 13
DOCUMENT OWNER................................................................................................................................ 13
3 v. 1.0 2006
Software Requirements Specification
APPENDICES..............................................................................................................................................14
1. INTRODUCTION
Online Dentist Appointment Booking System (ODABS) is a web application that provides a
registration and login for dentist and patients. Dentist can register by giving his details like
timings, fee, etc. After registration, the Dentist is able to log in by giving username and password.
The Dentist can view the booking request by patients and if he accepts the patient requests the
status will be shown as booking confirmed to the patient. The patients must be registered and log
in to book a doctor
1.1 PURPOSE
a) The purpose of this document is to describe the requirements for the Online Dentist
Appointment Booking System (ODABS) that provides a simple web application with good
UI that both patient and Dentist can log in and book appointment easily.
b) This system is available anytime and anywhere for those whom want to book
appointment at specific time with their prefer Dentist and clinics.
1.2 SCOPE
a)
This Online Dentist Appointment Booking System (ODABS). It provides a completed
booking system that both patients and dentist can register through the system and they
can log in after registration and log in into the system, Thus patients can book
appointment and doctor can accept or reject.
b)
The system basically can allow the users whom already registered either patients or
dentist to start using the system. People whom have not registered yet they are not able
to use the system, System required registration first, After registration system do
authentication to check whether the person who tries to log in already in the system data
base or not
c)
Online Dentist Appointment Booking System (ODABS) is providing a simple system can
help people in such a way that saves both their time and money, So people are not
supposed to go to clinics or dentist to book appointment , This system enable this feature
from smart phone or any device able to open the browser. Additional to that this system
provides easy and flexible feature for users , So users are no required to have
knowledge to user this system.
4 v. 1.0 2006
Software Requirements Specification
1.4 REFERENCES.
a) Zhang, M., Zhang, C., Sun, Q., Cai, Q., Yang, H., & Zhang, Y. (2014, June 09).
Questionnaire survey about use of an online appointment booking system in one large
tertiary public hospital outpatient service center in China. Retrieved from BMC Medical
Informatics and Decision Making:
https://bmcmedinformdecismak.biomedcentral.com/articles/10.1186/1472-6947-14-49
b) dowu, A. P., Adeosun, O. O., & Williams, a. K. (August 2014). DEPENDABLE ONLINE
APPOINTMENT BOOKING SYSTEM FOR NHIS OUTPATIENT IN NIGERIAN TEACHING
HOSPITALS. International Journal of Computer Science & Information Technology
(IJCSIT), 16.
1.5 OVERVIEW
a) Describe what the rest of the SRS contains
b) Explain how the SRS is organized.
a)
This Software Requirements Specification (SRS) is the requirements work product that
formally specifies Online Dentist Appointment Booking System (ODABS) and It includes the
Various techniques were used to elicit the requirements and we have identified system needs.
The ODABS a self-contained system that allows patients to book appointment and doctors
to manage appointments. Various stakeholders are involved in this system. The system is
a user friendly tool developed to assist humans in medical field to arrange the
appointment efficiently between doctors and patients.
b)
2. OVERALL DESCRIPTION
Describe background that affects the product and its requirements. This section does not state
specific requirements. Instead, it provides a background for those requirements, which are
defined in section 3, and makes them easier to understand.
<Click
PROBLEM STATEMENT
[Provide a statement summarizing the problem being solved by this project. The following
5 v. 1.0 2006
Software Requirements Specification
This software is totally independent system that manages online booking between patients
and doctor, generating
In this project all the records are stored in single database. Different users have different
permission to access this web application. Each user has unique id.
[Provide an overall statement summarizing at the highest level, the unique position the product
intends to fill in the marketplace. The following format may be used:]
For Patients and doctors
Who (statement of the need or opportunity)
The (product name) is a (product category)
That (statement of key benefit - that is - compelling reason to buy)
Unlike (primary competitive alternative)
Our product (statement of primary differentiation)
[A product position statement communicates the intent of the application and the
importance of the project to all concerned personnel.]
6 v. 1.0 2006
Software Requirements Specification
2.1.7 Operations
If appropriate, specify the normal and special operations required by the user such as:
a) The various modes of operations in the user organization;
b) Periods of interactive operations and periods of unattended operations;
c) Data processing support functions;
d) Backup and recovery operations.
<Click
7 v. 1.0 2006
Software Requirements Specification
3. SPECIFIC REQUIREMENTS
This section contains all the software requirements at a level of detail sufficient to enable
designers to design a system to satisfy those requirements, and testers to test that the system
satisfies those requirements. Throughout this section, each stated requirement should be
externally perceivable by users, operators, or other external systems. These requirements
should include at a minimum a description of every input (stimulus) into the system, every output
(response) from the system and all functions performed by the system in response to an input or
in support of an output. As this is often the largest and most important part of the SRS, the
following principles apply:
<Click
a) Specific requirements should be stated with all the characteristics of a good SRS
correct
unambiguous
complete
consistent
ranked for importance and/or stability
verifiable
modifiable
traceable.
8 v. 1.0 2006
Software Requirements Specification
Before examining specific ways of organizing the requirements it is helpful to understand the
various items that comprise requirements as described in the following subsections. When using
use-case modeling, these requirements are captured in the use cases and the applicable
supplementary specifications.
<Click
3.2 FUNCTIONS
Functional requirements define the fundamental actions that must take place in the software in
accepting and processing the inputs and in processing and generating the outputs. These are
generally listed as “shall” statements starting with “The system shall…”.
These include:
a) Validity checks on the inputs
b) Exact sequence of operations
c) Responses to abnormal situation, including
Overflow
Communication facilities
Error handling and recovery
d) Effect of parameters
e) Relationship of outputs to inputs, including
Input/Output sequences
Formulas for input to output conversion
9 v. 1.0 2006
Software Requirements Specification
Note: Numerical limits applied to one specific function are normally specified as part of the
processing subparagraph description of that function.
<Click
For example, this could specify the requirement for software to trace processing activity. Such
traces are needed for some applications to meet minimum regulatory or financial standards. An
audit trace requirement may, for example, state that all changes to a payroll database must be
recorded in a trace file with before and after values.
<Click
10 v. 1.0 2006
Software Requirements Specification
<Click
3.6.1 Reliability
Specify the factors required to establish the required reliability of the software system at time of
delivery.
<Click
3.6.2 Availability
Specify the factors required to guarantee a defined availability level for the entire system such as
checkpoint, recovery, and restart.
<Click
3.6.3 Security
Specify the factors that would protect the software from accidental or malicious access, use,
modification, destruction, or disclosure. Specific requirements in this area could include the need
to
a) Utilize certain cryptographic techniques
b) Keep specific log or history data sets
c) Assign certain functions to different modules
d) Restrict communications between some areas of the program
e) Check data integrity for critical variables
<Click
3.6.4 Portability
Specify attributes of software that relate to the ease of porting the software to other host
machines and/or operating systems. This may include
a) Percentage of components with host-dependent code
b) Percentage of code that is host dependent
c) Use of a proven portable language
d) Use of a particular compiler or language subset
e) Use of a particular operating system.
Once the relevant characteristics are selected, a subsection should be written for each,
explaining the rationale for including this characteristic and how it will be tested and measured. A
chart like this might be used to identify the key characteristics (rating them High, Medium, or
Low), or ranking them in order of importance (1, 2, 3, etc.).
<Click
ID Characteristic Rank
1 Correctness
2 Efficiency
3 Flexibility
etc.
11 v. 1.0 2006
Software Requirements Specification
Integrity/Security - factors that protect the software from accidental or malicious access,
use, modification, destruction, or disclosure
Interoperability - effort needed to couple one system with another
Maintainability - ease of maintenance of the software itself
Portability - ease of porting the software to another host
Reliability - factors required to establish the required reliability of the system
Reusability - extent to which it can be reused in another application
Testability - effort needed to test to ensure performs as intended
Usability - effort required to learn, operate, prepare input, interpret output
Availability - factors required to guarantee a defined availability level for the system
<Click
3.7.3 Feature
A feature is an externally desired service by the system that may require a sequence of inputs to
effect the desired result. For example, in a telephone system, features include local call, call
forwarding, and conference call. Each feature is generally described in as sequence of stimulus-
response pairs.
<Click
3.7.4 Stimulus
Some systems can be best organized by describing their functions in terms of stimuli. For
example, the functions of an automatic aircraft landing system may be organized into sections for
loss of power, wind shear, sudden change in roll, vertical velocity excessive, etc.
<Click
3.7.5 Response
Some systems can be best organized by describing their functions in support of the generation of
a response. For example, the functions of a personnel system may be organized into sections
12 v. 1.0 2006
Software Requirements Specification
corresponding to all functions associated with generating paychecks, all functions associated
with generating a current list of employees, etc.
<Click
4. SUPPORTING INFORMATION.
The supporting information makes the SRS easier to use. It includes:
a) Table of Contents at the front of the document
b) Index
c) Appendices
The Appendices are not always considered part of the actual requirements specification and are
not always necessary. They may include:
(a) Sample I/O formats, descriptions of cost analysis studies, results of user surveys;
(b) Supporting or background information that can help the readers of the SRS;
(c) A description of the problems to be solved by the software;
(d) Special packaging instructions for the code and the media to meet security, export,
initial loading, or other requirements.
When Appendices are included, the SRS should explicitly state whether or not the Appendices
are to be considered part of the requirements.
<Click
Tables on the following pages provide alternate ways to structure section 3 on the specific
requirements.
13 v. 1.0 2006
Software Requirements Specification
DOCUMENT CONTROL
CHANGE HISTORY
Release
Revision Description [list of changed pages and reason for change]
Date
DOCUMENT STORAGE
This document was created using <>. The file is stored <file.
DOCUMENT OWNER
<> is responsible for developing and maintaining this document.
APPENDICES
A.1 Outline for SRS Section 3: Organized by mode: Version 1
3 Specific Requirements
3.1 External interface requirements
3.1.1 User interfaces
3.1.2 Hardware interfaces
14 v. 1.0 2006
Software Requirements Specification
15 v. 1.0 2006
Software Requirements Specification
3 Specific Requirements
3.1 Functional Requirements
3.1.1 Mode 1
3.1.1.1 External interfaces
3.1.1.1 User interfaces
3.1.1.2 Hardware interfaces
3.1.1.3 Software interfaces
3.1.1.4 Communications interfaces
3.1.1.2 Functional Requirement
3.1.1.2.1 Functional requirement 1
.....
3.1.1.2.n Functional requirement n
3.1.1.3 Performance
3.1.2 Mode 2
.....
3.1.m Mode m
3.2 Design constraints
3.3 Software system attributes
3.4 Other requirements
16 v. 1.0 2006
Software Requirements Specification
3 Specific Requirements
3.1 External interface requirements
3.1.1 User interfaces
3.1.2 Hardware interfaces
3.1.3 Software interfaces
3.1.4 Communications interfaces
3.2 Functional requirements
3.2.1 User class 1
3.2.1.1 Functional requirement 1.1
.....
3.2.1.n Functional requirement 1.n
3.2.2 User class 2
.....
17 v. 1.0 2006
Software Requirements Specification
3 Specific Requirements
3.1 External interface requirements
3.1.1 User interfaces
3.1.2 Hardware interfaces
3.1.3 Software interfaces
3.1.4 Communications interfaces
3.2 Classes/Objects
3.2.1 Class/Object 1
3.2.1.1 Attributes (direct or inherited)
3.2.1.1.1 Attribute 1
.....
3.2.1.1.n Attribute n
18 v. 1.0 2006
Software Requirements Specification
An alternative to embedding the use cases in line with the functional requirements (as shown
below) is to provide the use cases separately from the SRS and refer to the use case name or ID
for each functional requirement in the SRS.
3 Specific Requirements
3.1 External interface requirements
3.1.1 User interfaces
3.1.2 Hardware interfaces
3.1.3 Software interfaces
3.1.4 Communications interfaces
3.2 Functional Requirements
3.1.1.2 Functional Requirement
3.1.1.2.1 Functional requirement 1
Use case for functional requirement 1
.....
3.1.1.2.n Functional requirement n
Use case for functional requirement n
3.3 Performance Requirements
3.4 Design Constraints
3.5 Software system attributes
3.6 Other requirements
19 v. 1.0 2006
Software Requirements Specification
3 Specific Requirements
3.1 External interface requirements
3.1.5 User interfaces
3.1.6 Hardware interfaces
3.1.7 Software interfaces
3.1.8 Communications interfaces
3.3 System features
3.2.1 System Feature 1
3.2.1.1 Introduction/Purpose of feature
3.2.1.2 Stimulus/Response sequence
3.2.1.3 Associated functional requirements
3.2.1.3.1 Functional requirement 1
.....
3.2.1.3.n Functional requirement n
3.2.2 System Feature 2
.....
3.2.m System Feature m
.....
3.3 Performance Requirements
3.4 Design Constraints
3.5 Software system attributes
3.6 Other requirements
20 v. 1.0 2006
Software Requirements Specification
3 Specific Requirements
3.1 External interface requirements
3.1.1 User interfaces
3.1.2 Hardware interfaces
3.1.3 Software interfaces
3.1.4 Communications interfaces
3.2 Functional requirements
3.2.1 Stimulus 1
3.2.1.1 Functional requirement 1.1
.....
3.2.1.n Functional requirement 1.n
3.2.2 Stimulus 2
.....
3.2.m Stimulus m
3.2.m.1 Functional requirement m.1
.....
3.2.m.n Functional requirement m.n
3.3 Performance Requirements
3.4 Design Constraints
3.5 Software system attributes
3.6 Other requirements
21 v. 1.0 2006
Software Requirements Specification
3 Specific Requirements
3.1 External interface requirements
3.1.1 User interfaces
3.1.2 Hardware interfaces
3.1.3 Software interfaces
3.1.4 Communications interfaces
3.2 Functional requirements
3.2.1 Response 1
3.2.1.1 Functional requirement 1.1
.....
3.2.1.n Functional requirement 1.n
3.2.2 Response 2
.....
3.2.m Response m
3.2.m.1 Functional requirement m.1
.....
3.2.m.n Functional requirement m.n
3.3 Performance Requirements
3.4 Design Constraints
3.5 Software system attributes
3.6 Other requirements
22 v. 1.0 2006
Software Requirements Specification
3 Specific Requirements
3.1 External interface requirements
3.1.1 User interfaces
3.1.2 Hardware interfaces
3.1.3 Software interfaces
3.1.4 Communications interfaces
3.2 Functional requirements
3.2.1 Information flows
3.2.1.1 Data flow diagram 1
3.2.1.1.1 Data entities
3.2.1.1.2 Pertinent processes
3.2.1.1.3 Topology
3.2.1.2 Data flow diagram 2
3.2.1.2.1 Data entities
3.2.1.2.2 Pertinent processes
3.2.1.2.3 Topology
.....
3.2.1.n Data flow diagram n
3.2.1.n.1 Data entities
3.2.1.n.2 Pertinent processes
3.2.1.n.3 Topology
3.2.2 Process descriptions
3.2.2.1 Process 1
3.2.2.1.1 Input data entities
3.2.2.1.2 Algorithm or formula of process
3.2.2.1.3 Affected data entities
3.2.2.2 Process 2
3.2.2.2.1 Input data entities
3.2.2.2.2 Algorithm or formula of process
3.2.2.2.3 Affected data entities
.….
3.2.2.m Process m
3.2.2.m.1 Input data entities
3.2.2.m.2 Algorithm or formula of process
3.2.2.m.3 Affected data entities
3.2.3 Data construct specifications
3.2.3.1 Construct 1
3.2.3.1.1 Record type
3.2.3.1.2 Constituent fields
3.2.3.2 Construct 2
3.2.3.2.1 Record type
3.2.3.2.2 Constituent fields
…..
3.2.3.p Construct p
3.2.3.p.1 Record type
3.2.3.p.2 Constituent fields
3.2.4 Data dictionary
3.2.4.1 Data element 1
3.2.4.1.1 Name
23 v. 1.0 2006
Software Requirements Specification
3.2.4.1.2 Representation
3.2.4.1.3 Units/Format
3.2.4.1.4 Precision/Accuracy
3.2.4.1.5 Range
3.2.4.2 Data element 2
3.2.4.2.1 Name
3.2.4.2.2 Representation
3.2.4.2.3 Units/Format
3.2.4.2.4 Precision/Accuracy
3.2.4.2.5 Range
…..
3.2.4.q Data element q
3.2.4.q.1 Name
3.2.4.q.2 Representation
3.2.4.q.3 Units/Format
3.2.4.q.4 Precision/Accuracy
3.2.4.q.5 Range
3.3 Performance Requirements
3.4 Design Constraints
3.5 Software system attributes
3.6 Other requirements
24 v. 1.0 2006
Software Requirements Specification
3 Specific Requirements
3.1 External interface requirements
3.1.1 User interfaces
3.1.2 Hardware interfaces
3.1.3 Software interfaces
3.1.4 Communications interfaces
3.2 Functional requirements
3.2.1 User class 1
3.2.1.1 Feature 1.1
3.2.1.1.1 Introduction/Purpose of feature
3.2.1.1.2 Stimulus/Response sequence
3.2.1.1.3 Associated functional requirements
3.2.1.2 Feature 1.2
3.2.1.2.1 Introduction/Purpose of feature
3.2.1.2.2 Stimulus/Response sequence
3.2.1.2.3 Associated functional requirements
…..
3.2.1.m Feature 1.m
3.2.1.m.1 Introduction/Purpose of feature
3.2.1.m.2 Stimulus/Response sequence
3.2.1.m.3 Associated functional requirements
3.2.2 User class 2
.....
3.2.n User class n
.....
3.3 Performance Requirements
3.4 Design Constraints
3.5 Software system attributes
3.6 Other requirements
25 v. 1.0 2006