Requirements Engineering
Reading
Sommerville, Chapter 4, Sections 4.4 to 4.6
Objectives
- Understand the contents, purpose, and use of a Requirements Specification Document.
- Use natural language, structured specifications, tabular formats, and graphical models to specify requirements.
- Assess the spectrum of Requirements Specifications tools, formality, and details to determine an appropriate approach for a given software project.
- Apply Requirements Validation tools to ensure that stated requirements are valid, consistent, complete, realistic, and verifiable.
- Devise Requirements Management processes to support identification, change, and traceability with appropriate tool support.
Notes
Read using the following as a guide:
- 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?
- Use natural language, structured specifications, tabular formats, and
graphical models to specify requirements.
- Review the examples of each that are provided in Sommerville.
- 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.
- Apply Requirements Validation tools to ensure that stated requirements are
valid, consistent, complete, realistic, and verifiable.
- List the requirements validation tools discussed in Sommerville.
- 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.