Below is a basic checklist that can be used to determine whether a requirement is acceptable, needs to be modified or eliminated.
Checklist: Requirements Development Checklist
- Were the requirements documented?
- Was a requirements walkthrough held to validate the requirements?
- Was each requirement checked to see that it met all of the following?
- Necessary [trace to a user need]
- Concise [minimal]
- Feasible [attainable]
- Testable [measurable]
- Technology Independent [avoid “HOW to” statements unless they are real constraints on the design of the system]
- Unambiguous [Clear]
- Complete [function fully defined]
- Was a verification case for each requirement developed? [test, demonstration, analysis, inspection]
- Was each user need fully addressed by one or more system requirement(s)?
- Is the requirement set complete? Have the following types of requirements been defined?
- Enabling [training, operations & maintenance support, development, testing, production, deployment, disposal]
- Non-functional [reliability, availability, safety, and security].
- Were attributes [quality factors] assigned to each requirement [Priority, risk, cost, owner, date, and verification method]? Verification methods could include demonstration, analysis, test, and inspection.
- Were the requirements reviewed and approved by the stakeholders and was a baseline [reference point for future decisions] established?
- During this process step, were periodic reviews performed? Were the reviews done in accordance with the review plan documented in the System Engineering Plan (SEP)?
- Was there adequate configuration control of the requirement?
- Can each requirement be traced to upper level and mission level needs.
AcqLinks and References:
- Requirements Development Checklist
- DAU Systems Engineering Fundamentals Guide
- Space and Missile Systems Center (SMC) Systems Engineering Primer & Handbook
- NASA Systems Engineering Handbook (large 9M file)
- EIA-632 “Processes for Engineering a System” – 7 Jan 99