Requirements management - the basis for projects and product developments

Requirements management - definition, methods and example.

 

 

Jochen Möller
Jochen Möller
27.10.2023

Author: Jochen Möller (Managing Director and CoFounder of EcholoN) - Creation: 27.10.2023, last change: 27.10.2023

Requirements management and its importance for project management and product development.

In this article we will explain what requirements management is, why it is needed and what methods and tools can be used to effectively elicit, document, analyse and manage requirements. We will also go into more detail about the different types of requirements and the process of requirements management.

What is requirements management?

Before going into more detail, it is important to define the term "requirements management". Requirements management refers to the process of identifying, capturing, documenting, analysing and managing new requirements for a project or product. It is about understanding stakeholder requirements, structuring them in a consistent way and ensuring that they are clearly defined and verifiable.

Definition: Requirement

A requirement defines a specific function, feature, performance or behaviour expected of a system. It is a formal statement or description that reflects the needs, expectations or technical specifications of a user or customer. Requirements specify what the system should do or what features it should have. They serve as the basis for the design, development and verification of the system. Requirements enable the goals of the system and the expectations of all parties involved to be understood and communicated. They can include both functional requirements (what the system should do) and non-functional requirements (how the system should be or behave). A good requirements definition is clear, understandable, unambiguous and quantifiable.

Regardless of the number of criteria required for a product, all should have the following characteristics:

Required

These criteria must be met in order to achieve your business or product goals.

Precise

The criteria are detailed and have a clear purpose.

Understandable

The criteria are clearly formulated and easy to understand.

Exact

The criteria accurately describe the challenge or need in question. It should precisely define the intended outcome without leaving room for interpretation.

Realisable

The requirement should be technically and practically feasible. It should be consistent with the existing resources, technologies and constraints of the project.

Verifiable

The criteria should be verifiable through user testing (acceptance testing, scenario-based testing, etc.) or other methods.

Practical example of a requirement:

Suppose a system needs to be able to send an email confirmation to the user for each completed order.

  • Required: Email confirmation is essential to provide the user with confirmation that the order has been successfully completed and to build trust.
  • Precise: The system must automatically send a personalised confirmation email to the user once an order has been successfully completed. The email should include the user's name, order number and a summary of the items ordered.
  • Understandable: The purpose of the request should be clear to all project stakeholders. The system must be able to automatically and reliably send a confirmation email to the user after an order has been completed.
  • Accurate: The confirmation email must be complete and accurate. It should display the relevant information in a clear and understandable way to allow the user to keep track of their order.
  • Feasible: The system should have the technical capabilities to automatically generate and send confirmation emails. Both the necessary data to create the email and the necessary interfaces to send the email must be available.
  • Verifiable: The implementation of the requirement can be verified through a test phase. This involves completing various orders and verifying that appropriate confirmation emails are automatically sent to the user. In addition, validation and acceptance tests can be conducted to ensure that the emails are generated and sent correctly and as expected.

Is requirements engineering needed and why?

Requirements engineering is crucial for the success of a project or product development. By systematically capturing, documenting and analysing requirements, risks can be minimised and problems can be identified at an early stage. It enables efficient planning, prioritisation and implementation of requirements, which in turn leads to customer satisfaction and successful projects.

The 9 most important benefits of requirements management are:

Effective requirements management offers a number of benefits for companies and projects:

  • Consistent and structured capture of requirements
  • Clear definition and verification of requirements
  • Efficient prioritisation of requirements
  • Early risk identification and risk minimisation
  • Improved planning and implementation of requirements
  • Minimisation of misunderstandings and misinterpretations
  • Improved collaboration with stakeholders
  • Optimisation of the development process
  • Increased customer satisfaction


Requirements management and its methods

  • Survey 1

    Requirements elicitation

    Requirements elicitation is the first step in requirements management and involves gathering information about stakeholder requirements. This can be done through interviews, workshops, questionnaires or other methods. The goal is to identify and understand all relevant requirements.

  • Documentation 2

    Requirements documentation

    After elicitation, the requirements must be documented. This can take the form of requirements specifications, user stories, requirements catalogues or other artefacts. The documentation ensures that all requirements are clearly and unambiguously recorded.

     

  • Analysis 3

    Requirements analysis

    The requirements analysis includes the evaluation and testing of the requirements for feasibility, comprehensibility and realisability. Potential risks are identified and decisions about feasibility are made.

     

  • Change 4

    Change management

    In change management, requirements changes are tracked, analysed and managed. Changes can occur throughout the project life cycle and need to be carefully reviewed, prioritised and implemented to minimise the impact on the project.

     

Comparison: classical requirements management vs agile requirements management

There are two basic approaches to requirements management: classical and agile. Classical requirements management follows a sequential and plan-driven approach, while agile requirements management is more flexible and responsive.

What are the responsibilities in requirements management?

Requirements management is an important task that can be taken on by different stakeholders and team members. Typically, the product owner or business analyst is responsible for requirements management. It is important that all stakeholders communicate well with each other and work together to define and implement the requirements.

Distinguishing between types of requirements

User requirements

User requirements refer to the needs and requirements of the end users of the product or system. These requirements are crucial for usability and customer satisfaction.

System requirements

System requirements are technical requirements that the product or system must meet. They include performance requirements, security requirements, compatibility requirements and other technical specifications.

Organisational requirements

Business requirements describe the goals and requirements of the company or organisation. They are usually overarching and influence the entire project planning and product development.

Requirements management process in 5 steps

1. capture requirements

The first step in requirements management is requirements gathering. This includes gathering information, conducting interviews and workshops, and involving stakeholders.

2. analyse requirements

After requirements have been captured, they need to be analysed and evaluated. This involves reviewing the requirements for feasibility, understandability and viability.

3. define requirements

In this step, the requirements are defined clearly and unambiguously. This includes writing requirements specifications, user stories or other documents. Once defined, the requirements must be captured in appropriate documents, e.g. a requirements specification or a requirements specification document.

4. prioritise requirements

Prioritising requirements is an important step to ensure that the most important requirements are implemented first. This can be done using criteria such as cost, benefit, risk or customer requirements.

5. create a plan for change

The final step in requirements management should be to create a plan for managing change. Changes can occur during the project life cycle and should be carefully analysed and implemented to minimise the impact on the project.

In conclusion: The basis for successful product and project realisation requires requirements management.

Requirements management is an essential part of project management and product development. It provides a structured and efficient method to capture, document, analyse and manage requirements. A systematic approach can minimise risks, identify problems early and maximise customer satisfaction. Therefore, requirements management is an essential success factor for the realisation of projects and the development of products.

What tools are there?

There are a variety of tools that can be used in requirements management to support the process of gathering, analysing, documenting and managing requirements. Here are some common tools:

Requirements management tools

These tools provide functionality to capture, document, manage and track requirements. Examples include IBM DOORS, Jama Software, HP ALM (Application Lifecycle Management) and Atlassian Jira.

Collaboration tools

These tools support collaboration and communication in teams to discuss, refine and validate requirements. Examples include Confluence, Microsoft Teams / SharePoint and Google Docs.

Prototyping tools

These tools enable the creation of interactive prototypes or mock-ups to visualise and validate requirements. Examples include Axure RP, Balsamiq and Adobe XD.

Diagramming tools

These tools enable the creation of diagrams such as use case diagrams, flowcharts and entity relationship diagrams to visualise and analyse requirements. Examples include Microsoft Visio, Lucidchart and draw.io.

Requirements traceability tools

These tools help ensure traceability of requirements throughout the development process. They allow requirements to be linked to other artefacts such as test cases, design documents and code. Examples include IBM Rational RequisitePro, Jama Software and Visure Requirements.

Agile tools

These tools are specifically designed for requirements management in agile development environments and offer features such as user story management, task tracking and collaboration. Examples include Atlassian Jira, Microsoft Azure DevOps and VersionOne.

Test management tools

These tools support the integration of requirements with the testing process and enable the traceability of test cases to requirements. Examples include HP ALM, IBM Rational Quality Manager and TestRail.

These tools offer different functions and are usually tailored to different use cases and organisational structures. When choosing a tool, it is important to consider the specific requirements of the project and the needs of the team.

Also perhaps of interest:

    Blog article: Project management simple and efficient