Intent
Effective traceability needs a data model. If one is defined and enforced, this will result in a consistent, high-quality product description
Also Known as
- Relationship Model
- Entity-Relationship-Model (ER-Model)
Motivation
- Understand your development artifacts and their relationships
- Perform automated consistency checks
Applicability
Use the pattern when you are doing actual development work. You may omit it during the creative phase (e.g. brainstorming)
Structure
Define the item types that you anticipate and their relationship. Here is a simple example:

And here is another one for agile development:

Of course, you need a tool environment that allows you to develop your product using these artifacts. Ideally, such a tool environment also performs additional activites that are supported by the traceability between these artifacts (coverage checks, change propagation, impact analysis, etc.)
Consequences
The pattern has the following benefits and liabilities:
- Benefits:
- Clear understanding of the relationships between the artifacts
- Automatic checks possible
- Liabilities:
- Can feel constraining to the team, in particular for creative activities
- If not enforced, this can become an intangible mess. Not all tools enforce a data model
Implementation
The pattern can be realized with any modern requirements tool.
Related Patterns