External Interface Req
External Interface Req
External Interface Req
text in italics
1
2
IEEE Std. 830-1998, Recommended Practice for Software Requirements Specifications, Institute of
Electrical and Electronics Engineers, 345 East 47 th St. New York, NY, USA, 10017-2394.
ISO/IEC 12207, IEEE Std. 12207-2008, Systems and software engineering Software life cycle processes, 2nd
ed., Institute of Electrical and Electronics Engineers, 445 Hoes Lane, Piscataway, NJ, USA, 08854.
SSRS Page 2
Date
complete
d
Location of change
(e.g., page or figure #)
A
M
D
SSRS Page 3
Approved
by (initials)
Date
Approved
Page
1.1.INTRODUCTION................................................................................................................................................7
1.1 IDENTIFICATION........................................................................................................................................... 7
1.2 PURPOSE........................................................................................................................................................ 7
1.3 SCOPE............................................................................................................................................................. 7
1.4 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS.................................................................................7
1.5 REFERENCES................................................................................................................................................. 8
1.6 OVERVIEW AND RESTRICTIONS................................................................................................................ 8
2.OVERALLDESCRIPTION....................................................................................................................................9
2.1 PRODUCT PERSPECTIVE............................................................................................................................. 9
2.2 PRODUCT FUNCTIONS................................................................................................................................. 9
2.3 USER CHARACTERISTICS............................................................................................................................ 9
2.4 CONSTRAINTS.............................................................................................................................................. 9
2.5 ASSUMPTIONS AND DEPENDENCIES...................................................................................................... 10
2.6 SYSTEM LEVEL (NON-FUNCTIONAL) REQUIREMENTS........................................................................10
2.6.1Sitedependencies............................................................................................................................................10
2.6.2Safety,securityandprivacyrequirements......................................................................................................10
2.6.3Performancerequirements..............................................................................................................................10
2.6.4Systemandsoftwarequality...........................................................................................................................11
2.6.5Packaginganddeliveryrequirements.............................................................................................................11
2.6.6Personnelrelatedrequirements.......................................................................................................................11
2.6.7Trainingrelatedrequirements.........................................................................................................................12
2.6.8Logisticsrelatedrequirements........................................................................................................................12
2.6.9Otherrequirements..........................................................................................................................................12
2.6.10Precedenceandcriticalityofrequirements...................................................................................................12
3.SPECIFICREQUIREMENTS..............................................................................................................................13
3.1 EXTERNAL INTERFACE REQUIREMENTS...............................................................................................13
3.1.1HardwareInterfaces........................................................................................................................................13
3.1.2SoftwareInterfaces.........................................................................................................................................13
3.1.3UserInterfaces................................................................................................................................................13
3.1.4OtherCommunicationInterfaces....................................................................................................................13
3.2 SYSTEM FEATURES.................................................................................................................................... 16
3.2.1Systemfeature1:[insertfeaturenamehere]................................................................................................16
3.2.2Systemfeature2:[insertfeaturenamehere]................................................................................................17
3.2.3Systemfeature[m]:[insertfeaturenamehere]............................................................................................17
4.REQUIREMENTSTRACEABILITY.................................................................................................................19
5.APPENDIXA.[INSERTNAMEHERE]...........................................................................................................20
6.APPENDIXB.[INSERTNAMEHERE]............................................................................................................21
SSRS Page 4
1.
1. INTRODUCTION
This section the document should introduce the project, customer, audience, etc., without delving into too
much detail, because those details are provided in subsequent sections.
1.1
IDENTIFICATION
This paragraph shall contain a full identification of the system and the software to which this document
applies, including, as applicable, identification number(s), title(s), abbreviation(s), version number(s),
and release number(s).
The software system being considered for development is referred to as [ insert name and or id
number ]. The customer providing specifications for the system is [ insert name and contact
info ]. The ultimate customer, or end-user, of the system will be [insert name and contact info].
This is a [ new | redesign ] project effort, so the version under development is version [ insert
version and release number ].
1.2
PURPOSE
This paragraph shall contain a brief statement on the purpose of the system and software being
developed, and the intended audience for this document.
The purpose of the system under development is to [ insert your text here ]. While the system will
be used by [ insert intended users ], this document is intended to be read and understood by UICS
software designers and coders. [ Optional: The document will also be vetted or approved by
[ insert approval people ]].
1.3
SCOPE
This paragraph shall briefly summarize the history of system development, operation, and maintenance;
identify the project sponsor, acquirer, user, developer, and support agencies; identify current and planned
operating sites; and list other relevant documents.
This section shall list and define all special terms, acronyms and abbreviations used throughout this
document. A tabular form is preferable, but not mandatory.
Term or Acronym
Alpha test
Beta test
Final test
DFD
SDD
SRS
SSRS
Definition
Limited release(s) to selected, outside testers
Limited release(s) to cooperating customers wanting early access to developing systems
aka, Acceptance test, release of full functionality to customer for approval
Data Flow Diagram
Software Design Document, aka SDS, Software Design Specification
Software Requirements Specification
System and Software Requirements Specification
SSRS Page 5
1.5
REFERENCES
This section shall list full bibliographic citations of all documents referenced in this report. This section
shall also identify the source for all materials not available in printed form (e.g., web-based
information) and list the complete URL along with owner, author, posting date, and date last visited.
This paragraph shall describe the organization of this document and shall describe any security or
privacy considerations associated with its use.
This document is for limited release only to UI CS personnel working on the project and [ state
others who will receive the document ].
Section 2 of this document describes the system under development from a holistic point of view.
Functions, characteristics, constraints, assumptions, dependencies, and overall requirements are
defined from the system-level perspective.
Section 3 of this document describes the specific requirements of the system being developed.
Interfaces, features, and specific requirements are enumerated and described to a degree sufficient
for a knowledgeable designer or coder to begin crafting an architectural solution to the proposed
system.
Section 4 provides the requirements traceability information for the project. Each feature of the
system is indexed by the SSRS requirement number and linked to its SDD and test references.
Sections 5 and up are appendices including original information and communications used to
create this document.
SSRS Page 6
2.
OVERALL DESCRIPTION
This section of the document should describe the general factors that affect the product and its
requirements. This section does not state specific requirements. Instead, it provides the
background for those requirements, which are defined in detail in Section 3.
2.1 PRODUCT PERSPECTIVE
This subsection of the document should put the product into perspective with other related
products. If the product is independent and totally self-contained, it should be so stated here. If
the document denes a product that is a component of a larger system, then this subsection
should relate the requirements of that larger system to functionality of the software and should
identify interfaces between that system and the software. A block diagram showing the major
components of the larger system, interconnections, and external interfaces can be helpful.
[ insert your text here ]
2.2 PRODUCT FUNCTIONS
This subsection of the document should provide a summary of the major functions that the
software will perform. For the sake of clarity The functions should be organized in a way that
makes the list of functions understandable to the customer or to anyone else reading the
document for the first time. Textual or graphical methods can be used to show the different
functions and their relationships. Such a diagram is not intended to show a design of a product,
but simply shows the logical relationships among variables.
[ insert your text here ]
2.3 USER CHARACTERISTICS
This subsection of the document should describe those general characteristics of the intended
users of the product including educational level, experience, and technical expertise. It should
not be used to state specic requirements, but rather should provide the reasons why certain
specic requirements are later specied in Section 3 of this document.
[ insert your text here ]
2.4 CONSTRAINTS
This subsection of the document should provide a general description of any other items that will
limit the developers options. These include: a) Regulatory policies; b) Hardware limitations
(e.g., signal timing requirements); c) Interfaces to other applications; d) Parallel operation; e)
Audit functions; f) Control functions; g) Higher-order language requirements; h) Signal
handshake protocols; i) Reliability requirements; j) Criticality of the application; k) Safety and
security considerations.
[ insert your text here ]
2.5 ASSUMPTIONS AND DEPENDENCIES
This subsection of the document should list each of the factors that affect the requirements stated
in the document. These factors are not design constraints on the system and/or software but are,
rather, any changes to them that can affect the requirements in the document. For example, an
assumption may be that a specic operating system will be available on the hardware designated
for the software product. If, in fact, the operating system is not available, the document would
then have to change accordingly.
SSRS Page 7
SSRS Page 9
3.
SPECIFIC REQUIREMENTS
This section of the document should contain all of the software requirements to 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, every 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 into the system, every
output 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 document, all
requirements should be uniquely identifiable and careful attention should be given to organizing
the requirements to maximize readability.
3.1 EXTERNAL INTERFACE REQUIREMENTS
This subsection should be a detailed description of all inputs into and outputs from the software
system. It should complement the constraints and dependencies defined in earlier sections, but
not repeat that information. Hardware, software, user, and other communication interfaces need
to be specified. Use the four subsections listed below or the table on the next page, or some
combination of both.
SSRS Page 10
SSRS Page 11
Source/Destination
Hardware Interfaces
Description
Type/range
Dependencies
Formats
Name
Source/Destination
Software Interfaces
Description
Type/range
Dependencies
Formats
Name
Source/Destination
User Interfaces
Description
Type/range
Dependencies
Formats
Name
Source/Destination
Dependencies
Formats
SSRS Page 12
3.2.5.6.1
Functional requirement 1.[n]
[ insert your text here ]
SSRS Page 13
3.2.6.5.3
Functional requirement 2.[n]
[ insert your text here ]
3.2.7.5.3
Functional requirement [m.n]
[ insert your text here ]
SSRS Page 14
4.
REQUIREMENTS TRACEABILITY
This section shall contain traceability information from each system requirement in this specification to the system (or subsystem, if
applicable) requirements it addresses. A tabular form is preferred, but not mandatory.
Feature Name Req No.
Requirement Description
Priorit
y
SDD
Beta Release
Final Test
Alpha Release
Test Case(s) Test Res. Test Case(s) Test Res. Test Case(s) Test Res.
1.1
1.2
1.[n]
2.1
2.2
2.[n]
3.1
3.2
3.[n]
[m].1
[m].2
[m.n]
Priorities are: Mandatory, Low, High
SDD link is version and page number or function name.
Test cases and results are file names and Pass/Fail or % passing.
SSRS Page 15
5.
Include copies of specifications, mockups, prototypes, etc. supplied or derived from the customer.
Appendices are labeled A, B, n. Reference each appendix as appropriate in the text of the
document.
[ insert appendix A here ]
SSRS Page 16
6.
SSRS Page 17