Sysand is in a testing-deployment and package-migration phase. See the migration guide.

MBSE Recursive Architecture Wave Pattern

published by hugoormo
Validated
sysand add hugoormo/mbse-recursive-architecture-wave-pattern 1.1.0
README Changelog Licenses 0 usages 3 versions Validation
Older version: You are viewing 1.1.0. The latest stable version is 1.1.1.

Recursive MBSE Architecture Weave Pattern

The Recursive MBSE Architecture Weave Pattern (RAWP) is a SysML v2 reference model for recursive decomposition, verification-driven design, and layered interaction modeling. It is intended as a reusable, machine-checkable baseline for model-based systems engineering projects.

Architecture Overview

The pattern is organized into five model levels:

  • Level -1 (Framework): reusable definitions, common value types, layered stack ports, verification intent categories, and cross-level modeling conventions.
  • Level 0 (Operational): operational context and top-level stakeholder concerns.
  • Level 1 (System of Interest): SoI requirements and architecture derived from operational needs.
  • Level 2 (Subsystems): decomposition of SoI responsibilities into subsystem-level structures.
  • Level 3 (Components): terminal component-level needs and implementations.

Each design level reuses the same model grammar:

  • *_Requirements.sysml: original need and derived need structure with explicit quality/budget allocation.
  • *_Configuration.sysml: blackbox/graybox/whitebox realization and bindings.
  • *_Behavior.sysml: behavior/actions that produce quality evidence values.
  • *_Taxonomy.sysml and/or *_Stakeholders*.sysml: domain vocabulary, interfaces, and concern framing.
  • VerificationCases_*.sysml: requirement-oriented verification usage.

Layered Stack Port Pattern

RAWP includes a layered interface pattern in the framework and applies it in the SoI:

  • MyFrameworkStackInterface::MyStackPort defines nested interaction layers (dataPacket, applicationProtocol, communicationProtocol, transportProtocol, dataLink, physical).
  • SoI stack interactions use direction-compatible endpoints with explicit flow declarations.
  • Conjugation is used intentionally where consumer-facing semantics must invert nested port directions.

Practitioner rule captured in the framework: choose one connector-facing abstraction layer per connector usage, and avoid unintentional mixed-layer declarations.

Modeling Intent

Key modeling decisions embedded in the SysML source:

  • Requirements duality: original requirement (_bb context) and derived requirement (_gb context).
  • Subject chain narrowing across levels (operationalContext -> systemOfInterest -> payloadBuilder -> component).
  • Budget/quality closure via structural bindings and constraints (no hidden hardcoded values).
  • Traceable rationale in model comments for allocations and trade-offs.

Validate The Model

From the repository root:

PowerShell -ExecutionPolicy RemoteSigned -File scripts/syside.ps1 check RecursiveArchitecturePattern

Expected outcome: exit code 0 and no syntax/semantic diagnostics.

Package Metadata

The package descriptor is:

  • .project.json (name, publisher, version, license, topics)

For this release line, the version is 1.1.0.

Repository Structure

RecursiveArchitecturePattern/
|-- Level -1 - Framework/
|-- Level 0 - Operational/
|-- Level 1 - SystemOfInterest/
|-- Level 2 - Subsystems/
|-- Level 3 - Components/
|-- Credits/
|-- CHANGELOG.md
|-- RECURSIVE_PATTERN_GUIDE.md
|-- VERIFICATION_REFERENCE_BASELINE.md
`-- VERIFICATION_BENCHMARK_MATRIX.md

Recommended Reading Order

  1. Start with Level -1 - Framework/Framework.sysml to understand shared definitions and stack port semantics.
  2. Read Level 0 - Operational/Operational_Requirements.sysml as the root need baseline.
  3. Follow recursion through L1, L2, and L3 requirements/configuration/behavior.
  4. Review verification usage files and baseline docs for validation intent.

Additional Documentation

  • RECURSIVE_PATTERN_GUIDE.md
  • VERIFICATION_REFERENCE_BASELINE.md
  • VERIFICATION_BENCHMARK_MATRIX.md
  • Credits/Credits.sysml