Reading

Sommerville, Chapter 4, Sections 4.4 to 4.6

Objectives

  1. Understand the contents, purpose, and use of a Requirements Specification Document.
  2. Use natural language, structured specifications, tabular formats, and graphical models to specify requirements.
  3. Assess the spectrum of Requirements Specifications tools, formality, and details to determine an appropriate approach for a given software project.
  4. Apply Requirements Validation tools to ensure that stated requirements are valid, consistent, complete, realistic, and verifiable.
  5. Devise Requirements Management processes to support identification, change, and traceability with appropriate tool support.

Notes

Read using the following as a guide:

  1. Understand the contents, purpose, and use of a Requirements Specification Document.
    • List typical contents of a requirements specification.
    • What groups use a requirements specification and for what purposes?
  2. Use natural language, structured specifications, tabular formats, and graphical models to specify requirements.
    • Review the examples of each that are provided in Sommerville.
  3. Assess the spectrum of Requirements Specifications tools, formality, and details to determine an appropriate approach for a given software project.
    • Outline how the level of detail and formality needed for a requirements specification are dependent upon the domain, type of software, who will develop it, size of the team, size of the system, contracts, and the software process being used.
  4. Apply Requirements Validation tools to ensure that stated requirements are valid, consistent, complete, realistic, and verifiable.
    • List the requirements validation tools discussed in Sommerville.
  5. Devise Requirements Management processes to support identification, change, and traceability with appropriate tool support.
    • List reasons why requirements for a software system can change.
    • Describe the concept of traceability.