Elements
graph TD;
%% REQVIRE-AUTOGENERATED-DIAGRAM
%% Graph styling
classDef userRequirement fill:#D1C4E9,stroke:#7E57C2,stroke-width:2px;
classDef systemRequirement fill:#E1D8EE,stroke:#673AB7,stroke-width:1.5px;
classDef verification fill:#DCEDC8,stroke:#4CAF50,stroke-width:2px;
classDef folder fill:#FAFAFA,stroke:#9E9E9E,stroke-width:3px;
classDef file fill:#FFF8E1,stroke:#FFCA28,stroke-width:2px;
classDef default fill:#F5F5F5,stroke:#424242,stroke-width:1.5px;
subgraph 6c93988fc728d1f8["📁 requirements/Functional/Core/Verifications"]
subgraph 622a654342e7abad["📄 AttachmentsVerifications.md"]
3758f5f1c504cd42["Attachments Change Impact Verification"];
class 3758f5f1c504cd42 verification;
click 3758f5f1c504cd42 "../Core/Verifications/AttachmentsVerifications.html#attachments-change-impact-verification";
end
end
subgraph e57e8ed6cc4cc063["📁 requirements/Functional/Processing"]
subgraph 743a852fd07358e8["📄 ChangeImpact.md"]
a27cb4ff2637ed4a["Change Impact Detection"];
class a27cb4ff2637ed4a systemRequirement;
click a27cb4ff2637ed4a "ChangeImpact.html#change-impact-detection";
1868da177a2e8ffd["Requirements Change Propagation
📎 ChangePropagation.md"];
class 1868da177a2e8ffd systemRequirement;
click 1868da177a2e8ffd "ChangeImpact.html#requirements-change-propagation";
27ee21b54c142739["Structural Change Analyzer"];
class 27ee21b54c142739 systemRequirement;
click 27ee21b54c142739 "ChangeImpact.html#structural-change-analyzer";
end
end
subgraph 11bcfbac66c238f6["📁 requirements/Functional/Processing/Verifications"]
subgraph de803263fbe70715["📄 ChangeImpactVerifications.md"]
dc9eb3da0c5e0ed0["Change Impact Detection Test"];
class dc9eb3da0c5e0ed0 verification;
click dc9eb3da0c5e0ed0 "Verifications/ChangeImpactVerifications.html#change-impact-detection-test";
b5f861c2be8eddab["Change Impact Relations Test"];
class b5f861c2be8eddab verification;
click b5f861c2be8eddab "Verifications/ChangeImpactVerifications.html#change-impact-relations-test";
1b778e17c237657e["Change Impact Smart Filtering Test"];
class 1b778e17c237657e verification;
click 1b778e17c237657e "Verifications/ChangeImpactVerifications.html#change-impact-smart-filtering-test";
d7a45cebd272c16["Element Content Extraction Test"];
class d7a45cebd272c16 verification;
click d7a45cebd272c16 "Verifications/ChangeImpactVerifications.html#element-content-extraction-test";
end
end
a27cb4ff2637ed4a -.->|deriveReqT| 1868da177a2e8ffd;
a27cb4ff2637ed4a -.->|deriveReqT| 27ee21b54c142739;
4391424e97bc407a["change_impact.rs"];
class 4391424e97bc407a default;
click 4391424e97bc407a "../../../core/src/change_impact.rs";
a27cb4ff2637ed4a -->|satisfiedBy| 4391424e97bc407a;
a27cb4ff2637ed4a -.->|verifiedBy| 3758f5f1c504cd42;
1868da177a2e8ffd -->|satisfiedBy| 4391424e97bc407a;
1868da177a2e8ffd -.->|verifiedBy| dc9eb3da0c5e0ed0;
1868da177a2e8ffd -.->|verifiedBy| b5f861c2be8eddab;
1868da177a2e8ffd -.->|verifiedBy| 1b778e17c237657e;
1868da177a2e8ffd -.->|verifiedBy| d7a45cebd272c16;
27ee21b54c142739 -->|satisfiedBy| 4391424e97bc407a;
4225cde0908b7474["test.sh"];
class 4225cde0908b7474 default;
click 4225cde0908b7474 "../../../tests/test-change-impact-attachments/test.sh";
3758f5f1c504cd42 -->|satisfiedBy| 4225cde0908b7474;
c2377a15dab54ba5["test.sh"];
class c2377a15dab54ba5 default;
click c2377a15dab54ba5 "../../../tests/test-change-impact-detection/test.sh";
dc9eb3da0c5e0ed0 -->|satisfiedBy| c2377a15dab54ba5;
4e0ed6253b039034["test.sh"];
class 4e0ed6253b039034 default;
click 4e0ed6253b039034 "../../../tests/test-change-impact-element-relocation/test.sh";
dc9eb3da0c5e0ed0 -->|satisfiedBy| 4e0ed6253b039034;
b5f861c2be8eddab -->|satisfiedBy| c2377a15dab54ba5;
c22a6530fecc52ed["test.sh"];
class c22a6530fecc52ed default;
click c22a6530fecc52ed "../../../tests/test-change-impact-smart-filtering/test.sh";
1b778e17c237657e -->|satisfiedBy| c22a6530fecc52ed;
dd7cc79a76771691["test.sh"];
class dd7cc79a76771691 default;
click dd7cc79a76771691 "../../../tests/test-element-content-extraction/test.sh";
d7a45cebd272c16 -->|satisfiedBy| dd7cc79a76771691;
Change Impact Detection
The system shall detect, analyze, and report changes to model elements between versions by comparing element content hashes, tracking relocations, and propagating impact through relationships.
Details
Change impact detection encompasses:
- Detection: Identify what changed (content, additions, removals, relocations)
- Propagation: Determine how changes flow through model relationships
- Reporting: Present change analysis results to users
Refinement Element Changes:
- Refinement element content changes (hash changes) shall propagate change impact through the model via their attachment relationships
- Attachment identifier location changes (moved/renamed Refinement elements) shall be reported but do NOT propagate impact (same behavior as relation relocations)
Metadata
Relations
Requirements Change Propagation
When a requirement is changed, the system shall propagate the change through related requirements, verification artifacts, and design elements according to relation type definitions and propagation rules.
Metadata
Attachments
Relations
Structural Change Analyzer
The system shall implement a model change analyzer that identifies structural modifications between model versions, determines affected elements through relationship traversal, and categorizes impacts according to change propagation rules.
Metadata
Relations