Oct 15, 2025

SysML v2 vs SysML v1.6: What Changes for Systems Engineers?

SysML v2 vs SysML v1.6: What Changes for Systems Engineers?

TL;DR: SysML v2 brings a rigorous, less ambiguous metamodel; a first-class textual notation; improved modularity and reuse; better version control & CI/CD ergonomics; and clearer semantics for interfaces, behavior, and allocation. If you're hitting traceability and maintainability limits in v1.6, or you want model diffs, code review, and test automation in Git, planning a phased migration to v2 pays off.

Why SysML v2 exists

Systems increasingly span hardware, software, and safety requirements with deep integration to test benches and code. SysML v1.6 (diagram-first) became hard to scale for:

  • Ambiguities across tools/vendors that made models brittle to share.
  • Version control friction—binary diagrams diff poorly; code review is guesswork.
  • Reuse & modularity limits—copy/paste anti-patterns and heavyweight profiles.
  • Traceability drift—requirements → design → test links break or go stale.

SysML v2 addresses these pain points with a cleaner metamodel, textual notation as a first-class citizen, and stronger semantics for composing, reusing, and verifying models.

The major differences at a glance

AreaSysML v1.6SysML v2Real-world impact
NotationDiagram-centric; limited text supportTextual + diagram with a precise underlying metamodelHuman-reviewable diffs; CI-friendly; easier automation
SemanticsSome ambiguities and vendor variationMore rigorous, consistent semanticsFewer surprises moving models between tools
Modularity/ReuseProfiles/stereotypes heavy; reuse can be clunkyLibrary + package mechanisms designed for reuseCleaner product line engineering; less duplication
Interfaces/PortsVaries by tool; implicit in diagramsExplicit interfaces & contractsClearer integration with software APIs and test rigs
BehaviorMixed notations; uneven tool fidelityMore consistent behavioral modelingBetter simulation and verification pipelines
Version controlBinary diagrams; weak diffs/reviewsText-first; works with Git/PRsProper code review and approvals for models
AutomationScripting is vendor-specificText + APIs for automationGenerate artifacts, check constraints in CI
TraceabilityManual updates; fragile linksTyped links & queries across artifactsReliable digital thread & evidence packages

Bottom line: v2 is built for modern engineering workflows—Git, CI, automation, reproducible builds, and auditable evidence.

What the textual notation feels like

Below is a compact, illustrative example to show how a component, its interface, and a requirement can be expressed in a textual-first workflow. Focus on the structure and intent:

package cubesat.power {
  part def Battery {
    attr capacity_Wh: Real;
    attr mass_kg: Real;
  }

  interface def PowerBus {
    attr voltage_V: Real;
    attr max_current_A: Real;
  }

  part def EPS {
    port bus: PowerBus;
    part battery: Battery;
  }

  requirement def R_PWR_001 {
    text "The EPS shall provide 28V ±1V on the main power bus.";
    verify by test Test_BusVoltage;
  }
}

What this buys you

  • Diff and review like code (PRs).
  • Generate docs/diagrams from source.
  • Write tests/queries that check the model in CI.

In Dalus, you can keep models textual, run Python action nodes against live model data, and view pass/fail status for linked requirements and tests.

Migration: pragmatic paths from v1.6 to v2

You don't have to "big bang" the switch. Successful teams typically:

1. Define scope & priorities

Choose 1–2 product areas where v1.6 pain is acute (e.g., power subsystem, comms). Identify must-keep artifacts and stakeholders.

2. Stand up a v2 workspace

Establish conventions: naming, packages, libraries, requirement styles, test linkage.

3. Migrate selectively

  • Recreate core structures in v2 (components, interfaces) using libraries.
  • Translate requirements with stable IDs; maintain cross-references.
  • Keep non-critical legacy diagrams as images or doc artifacts.

4. Automate checks early

Add CI jobs that run model queries, verify constraints, and produce evidence bundles (PDF/HTML) per release.

5. Parallel validation

For one increment, keep v1.6 + v2 in sync for a bounded scope; compare outputs and stakeholder reviews.

6. Decommission gracefully

Freeze v1.6 for the migrated scope. Document the cutover and archive.

Tip: Don't aim for diagram parity. Aim for semantics parity—interfaces, constraints, and requirements that downstream teams rely on.

Evidence, compliance, and the digital thread

Safety and certification flows (e.g., IEC 61508, DO‑178C/DO‑254, ISO 26262) demand traceable, reproducible evidence. SysML v2's textual, queryable models let you:

  • Bind hazards → requirements → design → tests → results with typed links.
  • Snap a versioned evidence package for audits.
  • Re-run verification scripts to prove reproducibility.

Dalus couples v2 models with:

  • Requirements status: Incomplete, In Progress, Complete, Failed based on live checks.
  • Python-in-the-loop action nodes for simulations and data transforms.
  • Git-native workflows for reviews, approvals, and baselines.

When should you switch?

  • You struggle to diff/review models or enforce approvals.
  • Reuse is blocked by profile complexity; product lines feel copy-pasted.
  • Traceability breaks under change; audits are painful.
  • You need automation: generate docs, run checks, integrate tests in CI.
  • You're starting a new program with a long runway (best time to adopt v2).

If you're stable on v1.6 and rarely touch models, the ROI may be lower. For most teams with active development and compliance duties, v2 is compelling.

FAQ

Is SysML v2 backward compatible?

Not directly at the file level. Treat migration as modeling translation: rebuild the essential structures and relationships in v2 using libraries and scripts where available.

Can we convert diagrams automatically?

Some structure can be semi-automated, but diagram semantics rarely map 1:1. Prioritize interfaces, requirements, and allocations over cosmetic parity.

Will we lose our v1.6 evidence?

No, archive it as historical artifacts and reference it from your v2 trace. New evidence should be generated from the v2 source going forward.

A lightweight migration checklist

  • Choose pilot scope with clear pain points
  • Define naming/package/libraries conventions
  • Recreate core structure + interfaces in v2
  • Import requirements with stable IDs
  • Set up CI checks, queries, and evidence export
  • Run parallel validation for one increment
  • Freeze v1.6 for the migrated scope
  • Document cutover & lessons learned

Call to action

Ready to try a textual-first SysML v2 workflow? Spin up a Dalus demo with a preloaded model and see:

  • Textual editing + diagrams generated from source
  • Requirement status rollups
  • Python action nodes verifying constraints
  • One-click evidence bundle export

Book a 30‑minute walkthrough to see how Dalus can transform your systems engineering workflow.