umlsysmlfortrak Project

TRAK SourceForge Projects

Definition

Implementation

TRAK Information

State Machine Diagram

Contents

Rationale and Underlying Metamodel

The OMG UML 2.5.1 specification, 14.1 states:

The StateMachines package defines a set of concepts that can be used for modeling discrete event-driven Behaviors using a finite state-machine formalism. In addition to expressing the Behavior of parts of a system ...

From the UML 2.5.1 specification, 14.2.3:

a StateMachine instance may execute a potentially complex sequence of Behaviors associated with the particular elements of the graphs that are being traversed (transition effects, state entry and state exit Behaviors, etc.)
Due to its event-driven nature, a StateMachine execution is either in transit or in state, alternating between the two. It is in transit when an event is dispatched that matches at least one of its associated Triggers. While in transit, it may execute a number of Behaviors associated with the paths it is taking.
NOTE. A StateMachine execution may be executing Behaviors even when it has settled in a stable state configuration, in cases where there are doActivity Behaviors associated with its active state configuration.
‘OMG Unified Modeling Language (OMG UML™). Version 2.5.1’, The Object Management Group, formal/2017-12-05, Dec. 2017. https://www.omg.org/spec/UML/2.5.1/PDF.

TRAK Resource elements (Job, Organisation, Physical, Role, Software and System) may have behaviour and hence may be related to a State:-

TRAK also has an Event element and hence can be connected using:

Potential triggers include behaviour (Function) and the exchange between 2 Resources (Resource Interaction):-

Note that there is a consistency check required if a State triggers a Function which then causes an Event then the same State must trigger the same Event. Similarly in the reverse direction.

Elements and Connectors (Triples)  - Linking State Machine Diagram with TRAK

Elements and Connectors (Triples) - Linking a State Machine Diagram with TRAK

In the TRAK metamodel Contract, Requirement and Standard may govern any Architecture Description Element hence also State and similarly in the reverse compliance or conformance direction using 'satisfies'. A Claim or Concern may be raised about any element and similarly an Argument in an assurance case may be linked to any element.

Elements and Connectors (Triples)  - Linking State Machine Diagram with TRAK Universal Elements

Elements and Connectors (Triples) - Linking State Machine Diagram with TRAK Universal Elements

Example State Machine Diagram

The following dummy State Machine Diagram was prepared using Sparx Systems Enterprise Architect.

A UML State Machine Diagram Annotated with TRAK Elements - Claim, Requirement, Resource (Job), Standard

A UML State Machine Diagram Annotated with TRAK Elements - Argument, Claim, Concern, Requirement, Resource (Job), Standard

Features

Bare Profile

The bare UML profiles provide a set of node and connector elements which allow the triples shown on the metamodel diagram above to be created.

UML

The TRAK (UML) profile from trakumlprofile provides Resource elements (Job, Organisation, Physical, Role, Software and System).

The UML-TRAK profile (this project) provides UseCase, applies to, defines collaborator as, extend, include, refines, specializes which inherit properties from the TRAK Architecture Description Element provided by the (TRAK) profile.

SysML

The SYSML-TRAK profile (this project) extends the TRAK_SYSML profile from trakumlprofile providing Resource elements (Job, Organisation, Physical, Role, Software and System) as SysML Block elements.

The SYSML-TRAK profile (this project) extends the TRAK-UML profile (this project) and provides UseCase, applies to, defines collaborator as, extend, include, refines, specializes.

MDG (Sparx Systems Enterprise Architect)

The MDG for Sparx EA uses the bare UML and SysML profiles and also other Sparx EA-only profiles that provide functionality and modify the user interface within Sparx EA.

Custom Toolbox Provides the Elements to Create UML State Machine Diagram

Custom Toolbox Provides the Elements to Create UML State Machine Diagram

The MDG for Sparx EA when loaded provides:-

Custom Traceability Panel Labels (Sparx Enterprise Architect) - Operating State Selected

Custom Traceability Panel Labels (Sparx Enterprise Architect) - Operating State Selected

Note that simply placing a State inside another State creates an invisible 'owns' relationship which isn't otherwise visible - hence the 'owned by' in the reverse direction. This is standard behaviour of the UML and the SysML.

The UML / SysML with TRAK is subject to the terms of open source license: (CC BY-SA 4.0) Creative Commons Attribution-ShareAlike 4.0 International license (version 4 ) at https://creativecommons.org/licenses/by-sa/4.0/.

Modification Date: 2025-10-23

Eclectica Systems Ltd