Requirements Life Cycle Management: Tools and Techniques
Kamaldeep Singh Sagar
Capturing requirements and managing them can be considered as the backbone of business analysis. Capturing irrelevant requirements or missing critical requirements may lead to the failure of a project or product. Poorly captured and managed requirements can also result in scope creep.
In recent years, several tools and techniques have evolved to enable business analysts to capture and manage requirements in a professional and systematic way.
As per BABOK V3.0, the Requirements Life Cycle Management knowledge area describes the tasks that business analysts perform in order to manage and maintain requirements and design information from inception to retirement. This Knowledge area includes the following tasks:
To ensure that the requirements and designs at various levels are aligned to one another, and the effects of change on one level with the others are managed properly.
To retain the accuracy of the requirement besides keeping them consistent throughout the entire requirements life cycle, and to support reuse of requirements in other solutions.
To order the requirements based on their relative importance after understanding which ones are critical and can lead to the satisfaction of the stakeholders.
Assess Requirements Changes
To evaluate the impact and effects of the proposed changes to the requirements and designs and whether they need any action.
To work with stakeholders and obtain consensus and approval of requirements and designs in order to proceed with the BA work or solution construction.
The above-mentioned tasks use different techniques for their accomplishment. Business Analysts use Business Rules Analysis, Functional Decomposition, Process Modelling and Scope Modelling techniques to trace requirements. Although some of these techniques are used to maintain requirements, Data modeling, Use Case Scenarios and User Stories techniques have proven useful in the efficient completion of this activity. Estimation, Financial Analysis, Interviews, and Workshops are the main techniques BAs use when it comes to prioritizing requirements. As for assessing requirements, techniques like Interface Analysis and Risk Analysis are also used besides other techniques. When it comes to approving requirements, Decision Analysis and Item Tracking techniques are widely used.
It is a proven fact that if the requirements are not well handled, the final product may get adversely affected. The Requirements Life Cycle comprises of a number of stages and can turn out to be a very complex process at certain times in view of the documentation involved and the changes it may need before finally being approved. The essence of the process depends on the approach one selects for the project, which can be Waterfall, Incremental, Agile, or others.
There are several tools available online that help in simplifying the entire process.
IBM Engineering Requirements Management DOORS Next
This software of IBM enables a business analyst to capture, trace, analyze and manage changes to requirements while maintaining compliance with regulations and standards (IBM.com), thus helping in better management of project scope and cost. It can be cloud-based or premise-based.
The Sparx Systems
Their sophisticated “Enterprise Architect” has sophisticated tools that enable requirements to be traced, maintained, and prioritized. Using UML Activity diagrams or BPMN diagrams, the requirements governance process could be modeled (sparxsystems.com).
This is a cloud-based software and is widely used in diverse industries. Being highly customizable, it offers bug tracking and managing option as well (reqtest.com).
This is a state-of-the-art Requirements Engineering tool specifically designed to provide integral support to the complete Requirement process including Requirements capture, analysis, specification, validation and verification, traceability, management, and reuse (visuresolutions.com).
Apart from the above, other tools like Xebrio, Jama Software, SpiraTeam by Inflectra, and IRIS Business Architect are some of the prominently used ones in the business analysis profession.
In a conventional requirements lifecycle scenario, most of the times the requirements are created at the beginning and are communicated and validated at the end. However, if a Business Analyst is in an Agile situation, the requirements of the process or product are denoted by functional deliverables that are formed, improvised, and reviewed in a circular procedure.
Therefore, the criticality of the requirements life cycle management knowledge area must be understood properly. Business Analysts should consider requirements as crucial and perform all related tasks very diligently. Most importantly, they should make the best of the tools and techniques available to understand the stakeholders’ roles and timely communicate all the business analysis information to them for consensus, and subsequently track the approvals.