Lecture Notes for CS 325

Requirements Specification, 29 January 2001


  1. requirements specification

    1. analysis produces knowledge, specification structures knowledge

    2. shape up form and content of information received from analysis

      1. content involves completeness, consistency

      2. form involves presentation

    3. analysis and specification overlap and influence one another

    4. the analyist as go-between for client and developers

  2. srd characteristics

    1. a large and varied audience for a srd

    2. external (client) and internal (developer) characteristics

    3. external

      1. correct with respect to client's understanding

      2. complete with respect to client's desires

      3. the client's order by importance

      4. verifiable for the client

    4. internal

      1. unambiguous

      2. consistent

      3. modifiable

      4. traceable

      5. verifiable the developers

  3. srd components

    1. function, performance, constraints, interfaces

    2. functional requirements

      1. input-output relations

      2. including abnormal situations and responses to them

    3. performance requirements

      1. static or dynamic requirements

      2. static (capability or capacity) requirements on existence

      3. dynamic requirements on operational behavior

      4. specify measurable performance requirements

    4. design constraints

      1. usually not directly specified; secondary affects

      2. standards from the fda or nasa

      3. hardware constraints for power, space, environment and so on

      4. unusual or severe requirements for reliability or fault tolerance

      5. security

      6. external interfaces with the user, hardware and software

  4. specification languages

    1. specifications must be expressed, requiring some kind of language

    2. structured engilsh

      1. natural language

      2. imprecise, ambiguous, verbose

      3. semi-natural languages for semantics, xml for syntax

    3. regular expressions

      1. good for describing sequences of things

      2. atoms, composition, alternation, repetition

    4. decision tables, good for boolean condition-action pairs

    5. finite state automata, good for event-response descriptions

  5. srd structure

    1. srd standards

    2. document structure influenced by context, other parties

    3. introduction

    4. specific requirements

    5. external interfaces

    6. functional behavior organized by function, object, state, or pov

    7. system characteristics, including performance


This page last modified on 29 January 2001.