OCSMP Model Builder Intermediate study materials
OCSMP Model Builder Intermediate study resources

OCSMP Model Builder Intermediate: Behavior Modeling with the Full SysML Feature Set

OCSMP Model Builder Intermediate · Work through your exam, one topic at a time.

All guide sections

Behavior Modeling with the Full SysML Feature Set

Behavior modeling

The behavior domain tests precise activity, state machine, interaction, and use case modeling, including control and object flow semantics.

Core rules

  • Activities use actions, control flows, object flows, and pins. Initial/final nodes, decision/merge, fork/join, and partitions have specific semantics; do not use a decision node where a merge is required.
  • Object flows must be type-compatible with pins; a control flow carries no object. Probability can be attached to flows; «optional» parameters and streaming indicate optional or continuous data.
  • State machines use states with entry/exit/do behaviors and transitions of the form trigger [guard] / effect. Composite states and orthogonal regions model hierarchy and concurrency.
  • Interactions use lifelines, synchronous/asynchronous messages, replies, and combined fragments such as alt, opt, loop, par, and break. Gates connect messages to fragment boundaries.
  • Use cases connect actors to subjects; «include» points from base to included use case, and «extend» points from extension to base.

Worked example

For a BrakeController, model states Idle, Applying, and Released. Transition Idle -> Applying has trigger brakeCommand, guard speed > 0, and effect applyBrakes(). Applying -> Released has trigger releaseCommand and effect releaseBrakes(). The Applying state has entry / startTimer() and do / modulatePressure(). Reasoning: the trigger is the event that enables the transition; the guard is evaluated only after the trigger; the effect executes on the transition. Entry behavior runs on entering the state, and do behavior runs while the state is active. An activity model would be better if the behavior were a flow of actions without state-dependent transitions.

Traps

Mixing control and object flows; pins with wrong types or missing pins; overlapping guards on a decision; transitions with guards but no trigger where an event is required; using «include» and «extend» in the wrong direction; showing an interaction without lifelines typed by classifiers.