Software requirements describe what a system should do, the services it provides, and the constraints on its operation. This lesson introduces the meaning of a requirement and the main activities used to discover, refine, document, validate, and manage requirements.
A requirement can represent a condition or capability needed by a user to solve a problem or achieve an objective. It can also be a condition or capability a system must meet to satisfy a contract, standard, specification, or other formally imposed document. A requirement may refer to the need itself or to its documented representation.
All flashcards
What is a software requirement?
A condition or capability needed to meet a user’s goal or a system obligation, or the documented representation of that need.
Requirements elicitation
Gathering and discovering requirements from stakeholders and other sources.
Requirements analysis
Clarifying and organizing requirements to reveal ambiguities, relationships, gaps, and conflicts.
Requirements traceability
Links between requirements and related artifacts or sources; forward links point to downstream artifacts, while backward links point to earlier sources.
Model-based systems engineering (MBSE)
The formalized use of modeling to support systems engineering activities such as requirements, design, analysis, verification, and validation.
Quiz questions
Which statement best describes a software requirement?Answer: A needed condition or capability, a system obligation, or the documented representation of such a need.
Which requirements activity gathers and discovers needs from stakeholders and other sources?Answer: Elicitation.
What is a primary purpose of requirements analysis?Answer: To clarify requirements and examine their relationships, ambiguities, gaps, and conflicts.
A team records agreed requirements in use cases and user stories. Which activity is it performing?Answer: Specification.
Which activity checks whether specified requirements are the right ones for meeting project objectives?Answer: Validation.