Brief Introduction to Requirements

Why analysis is important - The Rope Swing Parable

Mnemonic:

What is a Requirement?

It is a statement describing either
1) an aspect of what the proposed system must do,
or
2) a constraint on the system’s development.
In either case it must contribute in some way towards adequately solving the customer’s problem;
the set of requirements as a whole represents a negotiated agreement among the stakeholders.

The requirements document describes all requirements for a proposed system.

Students accustomed to poor requirements received in class assignments. Payroll example of vague requirements

Better Examples: Audio Tape Calculator  Distributed Hangman  Encounter Game     Real world example - Veterans Administration

SRS serves multiple audiences: How to express requirements? Inherent tension between writing for Customer and writing for Developers. Easy to read versus unambiguous, precise, well-defined.

Ambiguity of Natural Language Examples:

Notations


Types of Requirements
The author classifies requirements into Functional (including I/O), Quality, and Platform.
Requirements Exercise