Holarch

SysMLSystems Modeling Language A graphical modeling language for systems engineering, based on UML, with block, activity, state machine and parametric diagrams. v2 Projects

SysML v2 Basics

SysML v2 describes a system as a tree of named elements. You write the elements as text, and Holarch shows the same elements in views, tables and the rail pages.

Packages

A package groups elements, like a folder. Every element has one owner, so each element has a qualified name made of its owners' names: Vehicles::Car::battery. A package can import another package to use its names without the prefix.

package Vehicles { import ScalarValues::*; part def Car; }

Definitions and usages

A definition describes a kind of thing; a usage is one use of a definition inside another element. Most keywords come in both forms:

  • part def Battery; defines a kind of part. part battery : Battery; uses it.
  • port def PowerPort; and port powerOut : PowerPort;: connection points on a part.
  • attribute def and attribute mass : MassValue = 450 [kg];: values, with units.
  • action def and action drive;: behavior. state def and state on;: states.
  • requirement def and requirement: requirements. verification def and verification: how a requirement is checked.

: types a usage by a definition. :> specializes (a definition) or subsets (a usage); :>> redefines an inherited usage, for example to give it a value.

Structure

Usages nested in a part are its parts. connect a to b; joins two ports or parts; an interface is a typed connection between ports; flow carries an item from one port to another.

part def Powertrain { part engine : Engine { port shaft : TorquePort; } part gearbox : Gearbox { port input : TorquePort; } connect engine.shaft to gearbox.input; }

Behavior

Actions run in an order set by successions (first start then drive;), with forks, joins, decisions and loops. States change through transitions (transition first off accept powerOn then on;). A part performs an action and exhibits a state.

Requirements and verification

A requirement holds its text in doc and can state a require constraint that the model can check. satisfy says which part meets a requirement; a verification case verifys it. The Requirements, RVTMRequirements Verification Traceability Matrix A table of each requirement with how it is verified, the tests that verify it and their latest result. and Traceability Matrix pages show these relationships.

Comments and documentation

doc /* text */ documents its owner. comment about x /* text */ is a note in the model. Holarch's own discussion comments, labels, assignees and due dates are kept next to the model and are not written into the text.

The standard library

Names such as ScalarValues::Real, ISQ::MassValue and SI::kg come from the SysML v2 standard library that ships with Holarch. Standard Library lists its packages and definitions.

See also SysML v2 Projects, SysML v2 Text Editor and Supported SysML v2 Language.