Requirements Diagram. The Visualization of Requirements with Their Dependencies.
What does a requirements diagram show, why is it important, and what are the benefits of requirements diagrams?
Additional model elements like other diagrams or stakeholders with interest relationships increase the overall depth of understanding about the inter-relationships.
A requirement does not just consist of one title, it also contains all the information and the relationships within the context.
When test cases are displayed with their verify relationships it is easy to recognise if there are already test cases present for those specific requirements.
Why Are Requirements Important?
Requirements are of vital importance for the development of systems. This is because stakeholders pursue certain goals, and they expect something very simple from a system to be developed: it should help them achieve their goals. To be able to do this, the system must have certain characteristics from a stakeholder’s point of view. However, goals are too rough to derive specific characteristics of a system from – this purpose is fulfilled by requirements. Requirements concretize goals by describing in detail which capabilities or properties a system must have in order to satisfy all stakeholders. The decisive factor here is that the requirements of the system to be developed are formulated as completely, correctly and precisely as possible in order to provide optimum support for the other development disciplines and activities in the life cycle of the system.
In addition, disciplines such as systems architecture, design, implementation and testing are highly dependent from the requirements elicited as well as from their quality. The relevance of the requirements even goes beyond develpoment; activities like risk analysis, effort estimation maintenance and decomissioning are also based on the system requirements.
What Is a Requirements Diagram?
The difference between textual elicitation of requirements and requirements diagrams is that diagrams allow for a significantly more structured and comprehensible way of illustrating requirements. Instead of compiling long and arduous lists, requirements engineers are able to model all relevant requirements in a way that is easily accessible for all project contributors. What is more, not only requirements are part of a requirements diagram, but also relationships to other elements. The example above shows a requirements diagram for an irrigation plant.
Apart from the requirement Module Irrigation Control System we see various subordinate requirements marked by a contain relationship. There are also two derived requirements connected to the original requirement by a derive relationship, as well as stakeholders, test cases and refinements in form of a block diagram.
What Are the Advantages of Requirements Diagrams?
The growing complexity of processes and operations makes it increasingly hard to understand their interconnections based on textual requirements. In contrast, requirements diagrams make all relationships between the different aspects of systems development transparent and accessible in a single diagram.
How To Work with Requirements Diagrams in Practice
Learn more about requirements modeling
with objectiF RPM or objectiF RM »
Requirements diagrams allow for a high quality of your requirements:
They make requirements comprehensible.
They provide an easy overview of your system.
They ensure traceability of product development.
Relationships between Requirements and Model Elements
Following types of relationships between requirements and model elements can be modeled inside a requirements diagram:
- Dependency relationship, for cases in which a requirement is dependent (with regards to its content) on another requirement.
- Satisfy relationship, for cases in which a requirement is satisfied by a design element.
- Derive requirement relationship, for cases in which a requirement is derived from another requirement.
- Note relationship, for cases in which a note provides additional explanations inside a diagram.
- Needs relationship, for cases in which a stakeholder or a persona requires the realization of a requirement.
- Refine relationship, for cases in which a requirement is detailed by additional elements
- Contains relationship, for cases in which a requirement is contained in another requirement.
- Verify relationship, for cases in which a test case aims to verify a requirement.
- Interest relationship, for cases in which a stakeholder or a persona is interested in the realization of a requirement.
- Copy relationship, which describes the relationship between a requirement and its copy.
The quality of your requirements is of vital importance for your product development process. This is why the entire knowledge about the requirements needs to be made available to the entire team. The best way to do this is a powerful tool that helps to create a common understanding of a project and facilitates communication, laying the basis for high-quality products.