Concepts: Types of RequirementsTraditionally, requirements are looked upon as statements of text fitting into one of the categories mentioned in Concepts: Requirements, and they are statements the system must conform to. To perform effective requirements management, we have learned that we have to extend what we maintain as requirements beyond that. We need to keep track of ambiguous "wishes" from our stakeholders to make sure we know how they are taken care of. The use-case model is an effective way of expressing detailed software requirements, therefore use cases need to be tracked and maintained as requirements. Test cases are ways of stating how we will verify what the system actually does, and therefore they should be tracked and maintained as requirements. We introduce the notion of requirements type to separate this different expressions of requirements. The larger and more intricate the system developed, the more expressions, or types of requirements appear and the greater the volume of requirements. Business rules and "vision" statements for a project lead to user needs, features and product requirements. Use cases or other forms of modeling drive design requirements decomposed to functional and non-functional software requirements represented in analysis and design models and diagrams. Test requirements derived from the above decompose to test procedures and other testing assets. |
|
|