Skip to content

Commit fae9530

Browse files
committed
refactor: Generalize SysML v2 requirements to focus on capabilities
Make requirements less prescriptive about document mappings and more focused on SysML v2 capabilities and diagram type support. Key Changes: - FR-20: Now 'Import SysML v2 Models' (preserve relationships/traceability) - FR-21: Now 'Support SysML v2 Diagram Types' (9 diagram types per OMG spec) * Requirements, Use Case, BDD, IBD, Parametric, Activity, Sequence, State Machine, Package diagrams - FR-22: Now 'Support SysML v2 File Formats' (.sysml, .kerml, .json, .sysmlv2) - FR-23: Now 'Render SysML v2 Diagrams' (embedded SVG/PNG/PDF images) - FR-24: Now 'Extract SysML v2 Element Properties' (requirements, use cases, blocks, interactions with all their properties) - FR-25: Now 'Deterministic SysML v2 Output' (byte-for-byte identical across formats) Rationale: - Remove prescriptive document mappings (Stakeholder/System Requirements, Architecture/Design) - Allow users flexibility to compose documentation using templates and manifests - Focus on SysML v2 standard compliance rather than specific SE artifacts - Emphasize complete diagram type coverage per OMG specification - Clarify file format support (added .sysmlv2) Documentation: - Updated REQUIREMENTS.md with generalized requirement text - Updated REQUIREMENTS_MATRIX.md with new capability descriptions - Refactored SYSML_V2_INTEGRATION.md to remove V-Model prescriptions - Updated RELEASE_CHECKLIST.md with detailed implementation tasks No changes to test structure (tests remain applicable to new requirements).
1 parent 31c7b17 commit fae9530

8 files changed

Lines changed: 420 additions & 251 deletions

File tree

.github/RELEASE_CHECKLIST.md

Lines changed: 39 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -152,26 +152,49 @@
152152
- [ ] Extract blocks, ports, properties
153153
- [ ] Extract relationships (composition, association, generalization)
154154
- [ ] Generate diagram images (SVG/PNG)
155-
- [ ] Implement Sequence Diagram importer (FR-23)
156-
- [ ] Map to System Architecture (behavioral view)
157-
- [ ] Map to Detailed Design (interaction specifications)
158-
- [ ] Extract lifelines and messages
159-
- [ ] Extract timing constraints
160-
- [ ] Generate sequence diagram images
161-
- [ ] Implement Traceability preservation (FR-24)
162-
- [ ] Extract trace links (satisfy, refine, derive, verify, realize)
163-
- [ ] Maintain bidirectional traceability
164-
- [ ] Generate traceability matrices
165-
- [ ] Format support verification (FR-25)
166-
- [ ] Verify .sysml parsing
167-
- [ ] Verify .kerml parsing
168-
- [ ] Verify .json parsing
169-
- [ ] Ensure equivalent models produce identical output
155+
#### SysML v2 Integration (FR-20, FR-21, FR-22, FR-23, FR-24, FR-25)
156+
- [ ] Implement SysML v2 parser infrastructure (FR-20)
157+
- [ ] Parse `.sysml` (textual) format (FR-22)
158+
- [ ] Parse `.kerml` (KerML) format (FR-22)
159+
- [ ] Parse `.json` (SysML v2 API) format (FR-22)
160+
- [ ] Parse `.sysmlv2` (alternative textual) format (FR-22)
161+
- [ ] Format auto-detection
162+
- [ ] Build internal model representation
163+
- [ ] Extract all model elements (requirements, use cases, blocks, interactions, states, activities, parameters, packages)
164+
- [ ] Preserve all traceability relationships (satisfy, refine, derive, verify, realize, compose, associate, generalize)
165+
- [ ] Implement diagram support (FR-21)
166+
- [ ] Requirements diagram rendering
167+
- [ ] Use Case diagram rendering
168+
- [ ] Block Definition diagram (BDD) rendering
169+
- [ ] Internal Block diagram (IBD) rendering
170+
- [ ] Parametric diagram rendering
171+
- [ ] Activity diagram rendering
172+
- [ ] Sequence diagram rendering
173+
- [ ] State Machine diagram rendering
174+
- [ ] Package diagram rendering
175+
- [ ] Implement diagram rendering engine (FR-23)
176+
- [ ] SVG generation (preferred)
177+
- [ ] PNG generation (fallback)
178+
- [ ] PDF embedding
179+
- [ ] Configurable sizing and resolution
180+
- [ ] Deterministic layout algorithms
181+
- [ ] Implement property extraction (FR-24)
182+
- [ ] Requirements properties (ID, text, verification method, traceability)
183+
- [ ] Use Case properties (actors, scenarios, conditions)
184+
- [ ] Block properties (ports, properties, constraints, operations)
185+
- [ ] Interaction properties (lifelines, messages, timing)
186+
- [ ] Tabular output formatters
187+
- [ ] Traceability matrix generation
188+
- [ ] Ensure deterministic output (FR-25)
189+
- [ ] Normalize diagram layouts
190+
- [ ] Stable element ordering
191+
- [ ] Remove timestamps
192+
- [ ] Cross-format equivalence
170193
- [ ] Remove `Skip` from all SysML tests (16 tests total)
171194
- [ ] `FR20_FR21_SysMLRequirementsUseCasesTests.cs` (7 tests)
172195
- [ ] `FR22_FR23_SysMLDiagramsTests.cs` (9 tests)
173196
- [ ] Create expected results for SysML v2 test fixtures
174-
- [ ] Verify SysML v2 deterministic output
197+
- [ ] Verify SysML v2 deterministic output across formats
175198

176199
#### Performance (NFR-03)
177200
- [ ] Test on Linux (primary)

0 commit comments

Comments
 (0)