About Us


  Process Models

  SE Resources


  Contact us

Breaking News!

A new blog ... visit OnCenter, Roger Pressman's running commentary on the world at large

A new edition ... the 6th edition of Software Engineering is available now

A first novel ... Roger Pressman's first novel is a technothriller -- The Aymara Bridge

A new training curriculum! RSP&A has partnered with QAI to develop a comprehensive Internet-based software engineering curriculum.

A redesigned Web site ... we've done a major redesign and added many new features

Adaptable Process Model
Document Templates:
Software Requirements Specification

IMPORTANT NOTICE: The complete Adaptable Process Model (APM) is provided for informational purposes and for assessment by potential users. The APM is copyrighted material and may not be downloaded, copied, or extracted for use in actual project work. The full hypertext (html) version of the APM may be licensed for use and customization within your organization. Contact R.S. Pressman & Associates, Inc. for complete licensing information.


1.0 Introduction

This section provides an overview of the entire requirement document. This document describes all data, functional and behavioral requirements for software.

     1.1 Goals and objectives

    Overall goals and software objectives are described.

     1.2 Statement of scope

    A description of the software is presented. Major inputs, processing functionality and outputs are described without regard to implementation detail.

     1.3 Software context

    The software is placed in a business or product line context. Strategic issues relevant to context are discussed. The intent is for the reader to understand the 'big picture'.

     1.4 Major constraints

    Any business or product line constraints that will impact the manner in which the software is to be specified, designed, implemented or tested are noted here.


2.0 Usage scenario

This section provides a usage scenario for the software. It organized information collected during requirements elicitation into use-cases.

     2.1 User profiles

    The profiles of all user categories are described here.

     2.2 Use-cases

    All use-cases for the software are presented.

     2.3 Special usage considerations

    Special requirements associated with the use of the software are presented.


3.0 Data Model and Description

This section describes information domain for the software

     3.1 Data Description

    Data objects that will be managed/manipulated by the software are described in this section.

     3.1.1 Data objects

    Data objects and their major attributes are described.

     3.1.2 Relationships

    Relationships among data objects are described using an ERD- like form. No attempt is made to provide detail at this stage.

     3.1.3 Complete data model

    An ERD for the software is developed

     3.1.4 Data dictionary

    A reference to the data dictionary is provided. The dictionary is maintained in electronic form.


4.0 Functional Model and Description

A description of each major software function, along with data flow or class hierarchy (OO) is presented.

     4.1 Description for Function n

    A detailed description of each software function is presented. Section 4.1 is repeated for each of n functions.

       4.1.1 Processing narrative (PSPEC) for function n

      A processing narrative for function n is presented.

       4.1.2 Function n flow diagram

      A diagram showing the flow of information through the function and the transformation it undergoes is presented.

       4.1.3 Function n interface description

      A detailed description of the input and output interfaces for the function is presented.

       4.1.4 Function n transforms

      A detailed description for each transform (subfunction) for function n is presented. Section 4.1.4 is repeated for each of k transforms.
 Transform k description (processing narrative, PSPEC)
 Transform k interface description
 Transform k lower level flow diagrams
 Transform k interface description

       4.1.5 Performance Issues

      Special performance required for the subsystem is specified.

       4.1.6 Design Constraints

      Any design constraints that will impact the subsystem are noted.

     4.2 Software Interface Description

    The software interface(s)to the outside world is(are) described.

       4.2.1 External machine interfaces

      Interfaces to other machines (computers or devices) are described.

       4.2.2 External system interfaces

      Interfaces to other systems, products or networks are described.

       4.2.3 Human interface

      An overview of any human interfaces to be designed for the software is presented.

     4.3 Control flow description

    The control flow for the system is presented with reference to Section 5.0 of this document.


5.0 Behavioral Model and Description

A description of the behavior of the software is presented.

     5.1 Description for software behavior

    A detailed description of major events and states is presented in this section.

       5.1.1 Events

      A listing of events (control, items) that will cause behavioral change within the system is presented.

       5.1.2 States

      A listing of states (modes of behavior) that will result as a consequence of events is presented.

     5.2 State Transition Diagrams

    Depict the overall behavior of the system.

     5.3 Control specification (CSPEC)

    Depict the manner in which control is managed by the software.


6.0 Restrictions, Limitations, and Constraints

Special issues which impact the specification, design, or implementation of the software are noted here.


7.0 Validation Criteria

The approach to software validation is described.

     7.1 Classes of tests

    The types of tests to be conducted are specified, including as much detail as is possible at this stage. Emphasis here is on black- box testing.

     7.2 Expected software response

    The expected results from testing are specified.

     7.3 Performance bounds

    Special performance requirements are specified.


8.0 Appendices

Presents information that supplements the Requirements Specification

    8.1 System traceability matrix

    A matrix that traces stated software requirements back to the system specification.

     8.2 Product Strategies

    If the specification is developed for a product, a description of relevant product strategy is presented here.

     8.3 Analysis metrics to be used

    A description of all analysis metrics to be used during the analysis activity is noted here.

    8.4 Supplementary information (as required)

Return to APM Documents

Site search! We've added links to a search engine that will enable you to search our entire site for information you need. Enter the appropriate word or phrase below.


Home About us Products Product Models SE Resources Commentary Contact us

Web site and all contents R.S. Pressman & Associates, Inc. 2001 - 2006, All rights reserved.
Free website templates