A Requirements engineer is anybody who works with the stakeholders to define, document, verify and validate requirements.
While this might sound similar to what a Business Analyst does, the Business Analyst also has other responsibilities in addition to requirements management while a Requirements Engineer is mainly focused on the stakeholders requirements.
But first of all, what is a requirement ?
A requirement is something that is needed or wanted.
Requirements can be conditions, features and functionalities and they are needed to solve a problem, respond to external forces such as a competitor product or fulfill some regulatory constraints.
Who is a Stakeholder ?
A stakeholder is anybody who has an interest in the organizational problem and its potential solution.
Stakeholders include the organization’s shareholders, customers, suppliers, and employees.
The Requirements engineer has to be able to identify the right stakeholders in order to elicit the right requirements and they can do this with the help of a stakeholders list.
What is a Stakeholders list ?
A stakeholder lists is used to help identify and analyze stakeholders and their attributes.
Some of the responsibilities that a requirements engineer might be tasked with includes the following:
- Requirements Elicitation : The Requirements Engineer needs to be able to understand the needs of the business to gather the right requirements.
Elicitation is the way in which information is derived from the stakeholders to discover the requirements for the solution.
Elicitation techniques include interviews, workshops, surveys, brain storming and focus groups.
2. Requirements documentation: Once the Requirements Engineer has gathered the requirements, then they have to create a requirements document to describe what is needed from the solution.
There are different types of requirements documents that a Requirements Engineer might need to create and they include Business Requirements Document, Functional Requirements Document, Product Requirements Document and Technical Requirements Document.
3. Requirements Analysis: The Requirements Engineer would then need to analyze the requirements to ensure that they are clear, complete, unambiguous, consistent and testable.
If the requirements do not fulfill these criteria, then the Requirements Engineer would take appropriate steps to make sure that they are. These steps might include gathering more requirements from the stakeholders.
4. Verify requirements: The next step is to verify the requirement to ensure that they have been defined correctly, meet quality standards and can be used to fulfill the need.
To verify the requirements, the stakeholders need to check the requirements documents to ensure that they are ready for validation.
Specification documents written by the Requirements Engineer has to be detailed and well written to ensure that all the stakeholders have a clear understanding of what is required and what we want to accomplish.
5. Validate requirements: The final step is to validate the requirements to ensure that all the requirements that have been created are in line with the business requirements and that they can fulfill the future state of the organization.