Common Requirements Activities
From Requirements Management School
There is a set of requirements activities that can be undertaken for every project that will break down the process into manageable pieces.
The activities are iterative and therefore it will in most cases take more than one iteration to achieve a sufficiently robust outcome. The whole process is usually referred to as Requirements Engineering.
Requirements engineering has two segments that run concurrently - these are:
- Requirements Development
- Requirements Management
Requirements Development
- Requirements Elicitation – This stage is all about capturing the data needed in order to be able to interpret a set of requirements. There are many techniques available for use during this stage and the most appropriate ones should be chosen in order to identify the following information:
- full scope of the project;
- who all the stakeholders are;
- what the goals of the project are; and
- what tasks the system must perform.
- Requirements Analysis – This process involves reviewing all of the data gathered at the elicitation stage. It is often necessary at this stage to get back to the stakeholders in order to further clarify their needs/positions. Negotiation is often significant at this stage as there will be a certain amount of conflict between different stakeholder’s priorities and needs, it is imperative to resolve these prior to moving on.
- Requirements Specification – This is the translation of all the data gathering and interpretation of data into a coherent requirements document that identifies all the Business Requirements; User Requirements; Functional Requirements; and Non-Functional Requirements. This document is likely to include any relevant models as well.
- Requirements Validation – This stage requires that all the requirements identified in the document are accurately reflect all the stakeholders negotiated needs and that the resulting system models are an accurate reflection of the system to be implemented. The knowledge of all the stakeholders is used to verify the document and any resulting issues are documented, clarified, negotiated until all conflicts are eradicated and a complete, consistent and unambiguous Requirements Document is produced.
At first glance Requirements Development may seem to be a highly complex process. But it scales with the size of the project involved - so when used on a small project there are likely to be less stakeholders involved and therefore less negotiation and therefore less iterations of the process required.
Requirements Management
Requirements Management is the second part of Requirements Engineering, and is in essence the control function.
It is defined in detail in the next section: Requirements Management.

