Skip to content

Commit 9df7def

Browse files
author
Test User
committed
Diagrams added
1 parent badb19e commit 9df7def

20 files changed

+3857
-20
lines changed

specifications/Interfaces/CLI.md

Lines changed: 667 additions & 1 deletion
Large diffs are not rendered by default.

specifications/Interfaces/Interfaces.md

Lines changed: 74 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,78 @@
11
# Requirements
22

3+
```mermaid
4+
graph LR;
5+
%% REQVIRE-AUTOGENERATED-DIAGRAM
6+
%% Graph styling
7+
classDef userRequirement fill:#f9d6d6,stroke:#f55f5f,stroke-width:1px;
8+
classDef systemRequirement fill:#fce4e4,stroke:#e68a8a,stroke-width:1px;
9+
classDef verification fill:#d6f9d6,stroke:#5fd75f,stroke-width:1px;
10+
classDef default fill:#f5f5f5,stroke:#333333,stroke-width:1px;
11+
12+
1ac3e4fc194fd9d["CLI interface"];
13+
class 1ac3e4fc194fd9d userRequirement;
14+
click 1ac3e4fc194fd9d "Interfaces.md#cli-interface";
15+
e16108a30570f434["CLI Interface Structure"];
16+
class e16108a30570f434 systemRequirement;
17+
click e16108a30570f434 "CLI.md#cli-interface-structure";
18+
1ac3e4fc194fd9d -.->|deriveReqT| e16108a30570f434;
19+
adfe41db00d52285["Web Interface"];
20+
class adfe41db00d52285 userRequirement;
21+
click adfe41db00d52285 "Interfaces.md#web-interface";
22+
59093bf57f656ef3["HTML Export"];
23+
class 59093bf57f656ef3 systemRequirement;
24+
click 59093bf57f656ef3 "WebInterface.md#html-export";
25+
adfe41db00d52285 -.->|deriveReqT| 59093bf57f656ef3;
26+
ed77c8b81e72691f["Serve Command"];
27+
class ed77c8b81e72691f systemRequirement;
28+
click ed77c8b81e72691f "WebInterface.md#serve-command";
29+
adfe41db00d52285 -.->|deriveReqT| ed77c8b81e72691f;
30+
3f1b65e8cdc9ec2["Managing System Models"];
31+
class 3f1b65e8cdc9ec2 userRequirement;
32+
click 3f1b65e8cdc9ec2 "../UserStories.md#managing-system-models";
33+
3f1b65e8cdc9ec2 -.->|deriveReqT| 1ac3e4fc194fd9d;
34+
3f1b65e8cdc9ec2 -.->|deriveReqT| adfe41db00d52285;
35+
fc73aaf423ccdbca["Coexistence of Structured and Unstructured Documents"];
36+
class fc73aaf423ccdbca userRequirement;
37+
click fc73aaf423ccdbca "../System/ModelManagement.md#coexistence-of-structured-and-unstructured-documents";
38+
3f1b65e8cdc9ec2 -.->|deriveReqT| fc73aaf423ccdbca;
39+
6809edf871add06a["Default Requirement Type Assignment"];
40+
class 6809edf871add06a userRequirement;
41+
click 6809edf871add06a "../System/ModelManagement.md#default-requirement-type-assignment";
42+
3f1b65e8cdc9ec2 -.->|deriveReqT| 6809edf871add06a;
43+
dd224415c58ae90f["Efficient Processing"];
44+
class dd224415c58ae90f userRequirement;
45+
click dd224415c58ae90f "../System/ModelManagement.md#efficient-processing";
46+
3f1b65e8cdc9ec2 -.->|deriveReqT| dd224415c58ae90f;
47+
8653ca8c1766105d["Element Manipulation Operations"];
48+
class 8653ca8c1766105d userRequirement;
49+
click 8653ca8c1766105d "../System/ModelManagement.md#element-manipulation-operations";
50+
3f1b65e8cdc9ec2 -.->|deriveReqT| 8653ca8c1766105d;
51+
674b333d552bcab0["Git Repository as Project Root"];
52+
class 674b333d552bcab0 userRequirement;
53+
click 674b333d552bcab0 "../System/ModelManagement.md#git-repository-as-project-root";
54+
3f1b65e8cdc9ec2 -.->|deriveReqT| 674b333d552bcab0;
55+
c661b225443ae709["Relation Types and behaviors"];
56+
class c661b225443ae709 systemRequirement;
57+
click c661b225443ae709 "../System/ModelManagement.md#relation-types-and-behaviors";
58+
3f1b65e8cdc9ec2 -.->|deriveReqT| c661b225443ae709;
59+
1d5ad841d768c48["Template-Based Model Bootstrapping"];
60+
class 1d5ad841d768c48 userRequirement;
61+
click 1d5ad841d768c48 "../System/ModelManagement.md#template-based-model-bootstrapping";
62+
3f1b65e8cdc9ec2 -.->|deriveReqT| 1d5ad841d768c48;
63+
8621d0377762987f["Specification File Identification"];
64+
class 8621d0377762987f systemRequirement;
65+
click 8621d0377762987f "../System/StructureAndParsing.md#specification-file-identification";
66+
3f1b65e8cdc9ec2 -.->|deriveReqT| 8621d0377762987f;
67+
9da2c9df563c07bb["Structure and Addressing in Markdown Documents"];
68+
class 9da2c9df563c07bb systemRequirement;
69+
click 9da2c9df563c07bb "../System/StructureAndParsing.md#structure-and-addressing-in-markdown-documents";
70+
3f1b65e8cdc9ec2 -.->|deriveReqT| 9da2c9df563c07bb;
71+
8c8c33ba0c6249d1["AI-Assisted System Model Management"];
72+
class 8c8c33ba0c6249d1 userRequirement;
73+
click 8c8c33ba0c6249d1 "../UserStories.md#ai-assisted-system-model-management";
74+
3f1b65e8cdc9ec2 -.->|deriveReqT| 8c8c33ba0c6249d1;
75+
```
376
### CLI interface
477

578
The system shall provide command line interface (CLI) to faciliate model management.
@@ -42,4 +115,4 @@ This determinism ensures that:
42115

43116
#### Relations
44117
* derivedFrom: [Managing System Models](../UserStories.md#managing-system-models)
45-
---
118+
---

specifications/Interfaces/WebInterface.md

Lines changed: 189 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,193 @@
11
# Requirements
22

3+
```mermaid
4+
graph LR;
5+
%% REQVIRE-AUTOGENERATED-DIAGRAM
6+
%% Graph styling
7+
classDef userRequirement fill:#f9d6d6,stroke:#f55f5f,stroke-width:1px;
8+
classDef systemRequirement fill:#fce4e4,stroke:#e68a8a,stroke-width:1px;
9+
classDef verification fill:#d6f9d6,stroke:#5fd75f,stroke-width:1px;
10+
classDef default fill:#f5f5f5,stroke:#333333,stroke-width:1px;
11+
12+
59093bf57f656ef3["HTML Export"];
13+
class 59093bf57f656ef3 systemRequirement;
14+
click 59093bf57f656ef3 "WebInterface.md#html-export";
15+
b07859a209e66b4b["Model-Centric View Generation"];
16+
class b07859a209e66b4b systemRequirement;
17+
click b07859a209e66b4b "WebInterface.md#model-centric-view-generation";
18+
59093bf57f656ef3 -.->|deriveReqT| b07859a209e66b4b;
19+
db6fe291d67a0271["Whole Model Diagram Generation"];
20+
class db6fe291d67a0271 systemRequirement;
21+
click db6fe291d67a0271 "WebInterface.md#whole-model-diagram-generation";
22+
59093bf57f656ef3 -.->|deriveReqT| db6fe291d67a0271;
23+
80defdd4cbc7ee18["cli.rs"];
24+
class 80defdd4cbc7ee18 default;
25+
click 80defdd4cbc7ee18 "../../cli/src/cli.rs";
26+
59093bf57f656ef3 -->|satisfiedBy| 80defdd4cbc7ee18;
27+
d0e6cc47b904faa5["html.rs"];
28+
class d0e6cc47b904faa5 default;
29+
click d0e6cc47b904faa5 "../../core/src/html.rs";
30+
59093bf57f656ef3 -->|satisfiedBy| d0e6cc47b904faa5;
31+
c3d63c5d4133e346["html_export.rs"];
32+
class c3d63c5d4133e346 default;
33+
click c3d63c5d4133e346 "../../core/src/html_export.rs";
34+
59093bf57f656ef3 -->|satisfiedBy| c3d63c5d4133e346;
35+
1a173441705701a0["index_generator.rs"];
36+
class 1a173441705701a0 default;
37+
click 1a173441705701a0 "../../core/src/index_generator.rs";
38+
59093bf57f656ef3 -->|satisfiedBy| 1a173441705701a0;
39+
3a807a8535fb41fa["base.html"];
40+
class 3a807a8535fb41fa default;
41+
click 3a807a8535fb41fa "../../core/templates/base.html";
42+
59093bf57f656ef3 -->|satisfiedBy| 3a807a8535fb41fa;
43+
c196fa9b3e2c2258["model.html"];
44+
class c196fa9b3e2c2258 default;
45+
click c196fa9b3e2c2258 "../../core/templates/model.html";
46+
59093bf57f656ef3 -->|satisfiedBy| c196fa9b3e2c2258;
47+
7ff28ff401dbaef7["CLI Help Structure Verification"];
48+
class 7ff28ff401dbaef7 verification;
49+
click 7ff28ff401dbaef7 "CLI.md#cli-help-structure-verification";
50+
59093bf57f656ef3 -.->|verifiedBy| 7ff28ff401dbaef7;
51+
73fc82b744d6851c["HTML Export Verification"];
52+
class 73fc82b744d6851c verification;
53+
click 73fc82b744d6851c "WebInterface.md#html-export-verification";
54+
59093bf57f656ef3 -.->|verifiedBy| 73fc82b744d6851c;
55+
8899a52ea9866d8b["test.sh"];
56+
class 8899a52ea9866d8b default;
57+
click 8899a52ea9866d8b "../../tests/test-html-export/test.sh";
58+
73fc82b744d6851c -->|satisfiedBy| 8899a52ea9866d8b;
59+
345c82cd34408acb["export.rs"];
60+
class 345c82cd34408acb default;
61+
click 345c82cd34408acb "../../core/src/export.rs";
62+
b07859a209e66b4b -->|satisfiedBy| 345c82cd34408acb;
63+
ee222ed1a55fa477["report_model.rs"];
64+
class ee222ed1a55fa477 default;
65+
click ee222ed1a55fa477 "../../core/src/report_model.rs";
66+
b07859a209e66b4b -->|satisfiedBy| ee222ed1a55fa477;
67+
ed77c8b81e72691f["Serve Command"];
68+
class ed77c8b81e72691f systemRequirement;
69+
click ed77c8b81e72691f "WebInterface.md#serve-command";
70+
80defdd4cbc7ee18["cli.rs"];
71+
class 80defdd4cbc7ee18 default;
72+
click 80defdd4cbc7ee18 "../../cli/src/cli.rs";
73+
ed77c8b81e72691f -->|satisfiedBy| 80defdd4cbc7ee18;
74+
e313808f7a755f6["serve.rs"];
75+
class e313808f7a755f6 default;
76+
click e313808f7a755f6 "../../cli/src/serve.rs";
77+
ed77c8b81e72691f -->|satisfiedBy| e313808f7a755f6;
78+
8f321516e91a74d6["Validate Command"];
79+
class 8f321516e91a74d6 systemRequirement;
80+
click 8f321516e91a74d6 "CLI.md#validate-command";
81+
ed77c8b81e72691f -.->|trace| 8f321516e91a74d6;
82+
c9349ff6d96c56d7["Serve Command Verification"];
83+
class c9349ff6d96c56d7 verification;
84+
click c9349ff6d96c56d7 "WebInterface.md#serve-command-verification";
85+
ed77c8b81e72691f -.->|verifiedBy| c9349ff6d96c56d7;
86+
dd6732f292fab4eb["test.sh"];
87+
class dd6732f292fab4eb default;
88+
click dd6732f292fab4eb "../../tests/test-serve-command/test.sh";
89+
c9349ff6d96c56d7 -->|satisfiedBy| dd6732f292fab4eb;
90+
dad7eeb932afdb92["diagrams.rs"];
91+
class dad7eeb932afdb92 default;
92+
click dad7eeb932afdb92 "../../core/src/diagrams.rs";
93+
db6fe291d67a0271 -->|satisfiedBy| dad7eeb932afdb92;
94+
345c82cd34408acb["export.rs"];
95+
class 345c82cd34408acb default;
96+
click 345c82cd34408acb "../../core/src/export.rs";
97+
db6fe291d67a0271 -->|satisfiedBy| 345c82cd34408acb;
98+
e16108a30570f434["CLI Interface Structure"];
99+
class e16108a30570f434 systemRequirement;
100+
click e16108a30570f434 "CLI.md#cli-interface-structure";
101+
7b6287a68f3ac83f["CLI Change Impact Report Command"];
102+
class 7b6287a68f3ac83f systemRequirement;
103+
click 7b6287a68f3ac83f "CLI.md#cli-change-impact-report-command";
104+
e16108a30570f434 -.->|deriveReqT| 7b6287a68f3ac83f;
105+
c9d3c9fb2d43619b["CLI Containment Command"];
106+
class c9d3c9fb2d43619b systemRequirement;
107+
click c9d3c9fb2d43619b "CLI.md#cli-containment-command";
108+
e16108a30570f434 -.->|deriveReqT| c9d3c9fb2d43619b;
109+
892e19ec234ec4d8["CLI Generate Diagrams Flag"];
110+
class 892e19ec234ec4d8 systemRequirement;
111+
click 892e19ec234ec4d8 "CLI.md#cli-generate-diagrams-flag";
112+
e16108a30570f434 -.->|deriveReqT| 892e19ec234ec4d8;
113+
7faaae7c608ed9f2["CLI Lint Command"];
114+
class 7faaae7c608ed9f2 systemRequirement;
115+
click 7faaae7c608ed9f2 "CLI.md#cli-lint-command";
116+
e16108a30570f434 -.->|deriveReqT| 7faaae7c608ed9f2;
117+
b3bb7792bbc95f02["CLI Remove Diagrams Flag"];
118+
class b3bb7792bbc95f02 systemRequirement;
119+
click b3bb7792bbc95f02 "CLI.md#cli-remove-diagrams-flag";
120+
e16108a30570f434 -.->|deriveReqT| b3bb7792bbc95f02;
121+
3814555dac6871e9["CLI Rename Element Command"];
122+
class 3814555dac6871e9 systemRequirement;
123+
click 3814555dac6871e9 "CLI.md#cli-rename-element-command";
124+
e16108a30570f434 -.->|deriveReqT| 3814555dac6871e9;
125+
e342a2a82ef67934["CLI Search Command"];
126+
class e342a2a82ef67934 systemRequirement;
127+
click e342a2a82ef67934 "CLI.md#cli-search-command";
128+
e16108a30570f434 -.->|deriveReqT| e342a2a82ef67934;
129+
e21c06baba741337["Format Command"];
130+
class e21c06baba741337 systemRequirement;
131+
click e21c06baba741337 "CLI.md#format-command";
132+
e16108a30570f434 -.->|deriveReqT| e21c06baba741337;
133+
4fd92091a4cfac13["Subdirectory Processing Option"];
134+
class 4fd92091a4cfac13 systemRequirement;
135+
click 4fd92091a4cfac13 "CLI.md#subdirectory-processing-option";
136+
e16108a30570f434 -.->|deriveReqT| 4fd92091a4cfac13;
137+
e16108a30570f434 -.->|deriveReqT| 8f321516e91a74d6;
138+
e16108a30570f434 -.->|deriveReqT| 59093bf57f656ef3;
139+
ec8a8cc688b1d9d9["Integrated Validation"];
140+
class ec8a8cc688b1d9d9 systemRequirement;
141+
click ec8a8cc688b1d9d9 "../System/Validation.md#integrated-validation";
142+
e16108a30570f434 -.->|deriveReqT| ec8a8cc688b1d9d9;
143+
80defdd4cbc7ee18["cli.rs"];
144+
class 80defdd4cbc7ee18 default;
145+
click 80defdd4cbc7ee18 "../../cli/src/cli.rs";
146+
e16108a30570f434 -->|satisfiedBy| 80defdd4cbc7ee18;
147+
adfe41db00d52285["Web Interface"];
148+
class adfe41db00d52285 userRequirement;
149+
click adfe41db00d52285 "Interfaces.md#web-interface";
150+
adfe41db00d52285 -.->|deriveReqT| 59093bf57f656ef3;
151+
adfe41db00d52285 -.->|deriveReqT| ed77c8b81e72691f;
152+
71adfd59da9ff84f["Complete Model Structure Visualization"];
153+
class 71adfd59da9ff84f userRequirement;
154+
click 71adfd59da9ff84f "../System/DiagramGeneration.md#complete-model-structure-visualization";
155+
71adfd59da9ff84f -.->|deriveReqT| b07859a209e66b4b;
156+
c57d76a5aa346a53["Model Visualization and Exploration"];
157+
class c57d76a5aa346a53 userRequirement;
158+
click c57d76a5aa346a53 "../System/DiagramGeneration.md#model-visualization-and-exploration";
159+
ccf73e5865717df6["CLI Model Diagram Command"];
160+
class ccf73e5865717df6 systemRequirement;
161+
click ccf73e5865717df6 "CLI.md#cli-model-diagram-command";
162+
c57d76a5aa346a53 -.->|deriveReqT| ccf73e5865717df6;
163+
c57d76a5aa346a53 -.->|deriveReqT| b07859a209e66b4b;
164+
1c6b7180f4e0214a["Model Reports"];
165+
class 1c6b7180f4e0214a userRequirement;
166+
click 1c6b7180f4e0214a "../System/Reporting.md#model-reports";
167+
1c6b7180f4e0214a -.->|deriveReqT| 59093bf57f656ef3;
168+
1c6b7180f4e0214a -.->|deriveReqT| 71adfd59da9ff84f;
169+
5be870a7fe3078ce["Interactive Mermaid Diagrams"];
170+
class 5be870a7fe3078ce userRequirement;
171+
click 5be870a7fe3078ce "../System/DiagramGeneration.md#interactive-mermaid-diagrams";
172+
1c6b7180f4e0214a -.->|deriveReqT| 5be870a7fe3078ce;
173+
1c6b7180f4e0214a -.->|deriveReqT| c57d76a5aa346a53;
174+
99d6386e6ce8f5f9["Model Structure and Summaries"];
175+
class 99d6386e6ce8f5f9 userRequirement;
176+
click 99d6386e6ce8f5f9 "../System/Reporting.md#model-structure-and-summaries";
177+
1c6b7180f4e0214a -.->|deriveReqT| 99d6386e6ce8f5f9;
178+
9c9b9aa3155688f3["Provide Validation Reports"];
179+
class 9c9b9aa3155688f3 userRequirement;
180+
click 9c9b9aa3155688f3 "../System/Reporting.md#provide-validation-reports";
181+
1c6b7180f4e0214a -.->|deriveReqT| 9c9b9aa3155688f3;
182+
a7bb3c1af2e2d306["Verification Coverage Report"];
183+
class a7bb3c1af2e2d306 userRequirement;
184+
click a7bb3c1af2e2d306 "../System/Reporting.md#verification-coverage-report";
185+
1c6b7180f4e0214a -.->|deriveReqT| a7bb3c1af2e2d306;
186+
59725c25046f87ea["Model Export"];
187+
class 59725c25046f87ea userRequirement;
188+
click 59725c25046f87ea "../UserStories.md#model-export";
189+
59725c25046f87ea -.->|deriveReqT| 59093bf57f656ef3;
190+
```
3191
### HTML Export
4192

5193
The system SHALL generate comprehensive HTML documentation with all model artifacts by creating a temporary working copy, generating all reports in that copy, and exporting to the output directory.
@@ -217,4 +405,4 @@ The system SHALL provide a serve command that exports comprehensive HTML documen
217405
* satisfiedBy: [cli.rs](../../cli/src/cli.rs)
218406
* satisfiedBy: [serve.rs](../../cli/src/serve.rs)
219407
* verifiedBy: [Serve Command Verification](#serve-command-verification)
220-
---
408+
---

0 commit comments

Comments
 (0)