Skip to content

Requirement Diagram

Requirement diagrams help you document and visualize system requirements, their relationships, and how they are satisfied by design elements. This is valuable for requirements traceability in engineering projects.

requirementDiagram
requirement UserAuthentication {
id: REQ-001
text: Users must authenticate before accessing the system
risk: high
verifymethod: test
}
element AuthService {
type: module
}
AuthService - satisfies -> UserAuthentication

Requirement diagrams have full IDE support:

  • Syntax highlighting - Color-coded requirements, elements, and relationships
  • Code completion - Suggestions for requirement types and verification methods
  • Refactoring - Rename requirements and elements across the diagram
  • Find usages - Track where requirements are referenced
  • Code Vision - See relationship counts at a glance
  • Navigation bar - Quick access to requirements in large documents
  • Code folding - Collapse requirement definitions
  • Formatting - Auto-format your diagram code
  • Inspections - Detect undefined references and missing properties

Requirement types:

  • requirement - Functional requirement
  • functionalRequirement - Functional requirement (explicit)
  • performanceRequirement - Performance constraint
  • interfaceRequirement - Interface specification
  • physicalRequirement - Physical constraint
  • designConstraint - Design limitation

Requirement properties:

requirementDiagram
requirement Example {
id: REQ-002
text: Description of the requirement
risk: low
verifymethod: analysis
}

Risk levels: low, medium, high

Verification methods: analysis, inspection, test, demonstration

Relationship types:

  • - satisfies -> - Element satisfies requirement
  • - traces -> - Requirement traces to another
  • - contains -> - Requirement contains sub-requirements
  • - derives -> - Requirement derives from another
  • - refines -> - Requirement refines another
  • - copies -> - Requirement copies another
  • - verifies -> - Element verifies requirement

For the complete syntax reference, see the Mermaid.js Requirement Diagram documentation.