10.3 Comments, Rationales, Problems, Stereotypes, Frames & Diagram Descriptions

Key Takeaways

  • SysML annotations provide structured mechanisms for attaching explanatory narrative, engineering trade justifications, and defect tracking to model elements using dog-eared note boxes connected by dashed anchor lines without arrowheads.

  • SysML standardizes two specialized comment stereotypes: «rationale» (capturing the justification, trade study, or rationale behind an architectural decision) and «problem» (recording an unresolved issue, anomaly, or modeling deficiency).

  • Stereotypes extend UML and SysML metaclasses to introduce domain-specific vocabulary and metadata, rendered using guillemets («stereotypeName») and carrying custom properties called tagged values.

  • Every SysML diagram has a frame whose heading reads diagramKind [modelElementType] modelElementName [diagramName]; its border can hold ports, activity parameters, gates, or constraint parameters.

  • A diagram description is a comment attached to the frame that records version, description, completion status, references, and any user-defined fields.

Last updated: September 2026

10.3 Comments, Rationales, Problems, Stereotypes, Frames & Diagram Descriptions

Quick Reference: SysML enriches systems models through cross-cutting metadata and structural framing constructs. Comments use dog-eared note boxes connected by dashed lines without arrowheads (anchor lines). SysML standardizes two specialized comment stereotypes: «rationale» (capturing architectural justification) and «problem» (flagging unresolved defects or design issues). Stereotypes extend UML metaclasses with domain-specific semantics and tagged values. Every SysML diagram is bounded by a Diagram Frame with a standardized header (kind [type] name [diagramName]), whose perimeter can host boundary ports, parameter nodes, and interaction gates.


Informational Annotations: Comments and Note Anchors

In systems engineering, visual diagrams must convey both formal structural/behavioral logic and the contextual rationale that led to specific engineering decisions. In SysML, informal or human-readable textual descriptions are incorporated using Comments.

The Comment Element

  • Graphical Notation: A rectangle with its upper-right corner folded over (a dog-eared note box).
  • Content: Unstructured text, rich prose, hyperlinks, or mathematical expressions describing an element or diagram.
  • Connection to Model Elements (The Anchor): A comment attaches to one or more annotated model elements using a dashed line without an arrowhead.

Exam Trap: On the certification exam, question distractors frequently refer to the comment connecting line as a "dependency line" or illustrate it with an open stick arrowhead. In standard SysML, the line connecting a comment to a model element is strictly an anchor line (annotatedElement reference in the metamodel) and must never have an arrowhead.

+-----------------------+
|       «block»         |
|   HydraulicPumpUnit   | - - - - - - - - - - - - - - +--------------------------+
+-----------------------+      (Dashed line,          | Standard SysML Comment:  |
| flowRate = 120 L/min  |       NO arrowhead)         | Operating envelope must  |
+-----------------------+                             | withstand 300 bar peak.  |
                                                      +--------------------------+

Specialized Comment Stereotypes: «rationale» and «problem»

SysML formally extends the basic UML Comment metaclass by providing two standardized, specialized stereotypes essential for systems engineering governance:

                          +-----------------------------+
                          |         UML Comment         |
                          +-----------------------------+
                                         ^
                                         |
                    +--------------------+--------------------+
                    | «stereotype»                            | «stereotype»
          +-------------------+                     +-------------------+
          |    «rationale»    |                     |     «problem»     |
          +-------------------+                     +-------------------+

1. The «rationale» Stereotype

  • Purpose: Documents the underlying engineering justification, trade study results, mathematical analysis, or regulatory compliance reasoning behind a modeling choice.
  • Visual Notation: A dog-eared note box displaying the stereotype keyword «rationale» at the top, followed by the explanatory justification text.
  • Common Engineering Applications:
    • Justifying why a redundant dual-bus architecture was selected over a single bus.
    • Referencing a trade study report ID that determined battery chemistry.
    • Recording safety factor margins required by aerospace regulatory baselines.
  • Attachment: SysML 1.2 says a rationale "can be attached to any model element including relationships," so it can sit on a «satisfy» dependency to cite the trade study behind a design decision.

2. The «problem» Stereotype

  • Purpose: Flags a known design defect, unresolved technical question, anomalous behavior, safety hazard, or open issue requiring engineering remediation.
  • Visual Notation: A dog-eared note box displaying the stereotype keyword «problem» at the top, followed by the issue description.
  • Common Engineering Applications:
    • Documenting that thermal dissipation exceeds enclosure limits during peak processing.
    • Flagging an unverified interface protocol between two vendor-supplied subsystems.
    • Recording an unresolved test failure pending root-cause investigation.

Semantic Non-Intrusiveness

Both «rationale» and «problem» elements are non-executable informational metadata. They do not alter the behavioral execution semantics, state transitions, or token flows of the annotated elements. However, they provide rigorous traceability for systems audits and design reviews.


Constraints vs. Comments

Modelers must distinguish between informal explanatory notes and formal mathematical Constraints:

FeatureSysML Comment / «rationale» / «problem»SysML Constraint ({...})
Metamodel BaseExtends CommentInstance of Constraint (evaluates a ValueSpecification)
Visual NotationDog-eared note box; dashed anchor without arrowheadText in braces {expression}, placed beside the constrained element or inside a note anchored to it
Execution SemanticsPurely informational narrative; does not evaluateFormal rule or invariant; evaluates to a boolean (true or false)
Violation ImpactHighlights concerns or context for human reviewConstitutes a formal invalidation of the system state or parameter limit
Typical Example«rationale» Weight limit chosen based on launch vehicle payload manifest.{totalMass <= 450.0 kg}

Stereotypes, Tagged Values, and SysML Profiles

SysML is itself a specialized profile of UML, created by defining stereotypes that adapt UML to systems engineering. Furthermore, systems engineering organizations routinely define their own custom Profiles to tailor SysML to specialized domains such as avionics, automotive safety (ISO 26262), medical devices, or defense systems.

1. Stereotypes

  • Definition: A stereotype is a model construct that extends an existing UML or SysML metaclass (such as Block, Property, Operation, or Comment), adding domain-specific semantics.
  • Visual Syntax: Rendered by placing the stereotype name enclosed within guillemets («stereotypeName») directly above or before the element's name.
  • Example: In SysML, «block» is a stereotype extending the UML Class metaclass; «itemFlow» extends UML InformationFlow.

2. Tagged Values (Stereotype Properties)

  • Definition: When a stereotype is defined, it can own attributes. When the stereotype is applied to a model element, these attributes are called Tagged Values.
  • Visual Syntax: Displayed in one of two standardized formats:
    1. Inside curly braces beneath or beside the element name: {tag1 = value1, tag2 = value2}.
    2. Inside a dedicated compartment within the element's rectangle. SysML 1.2 allows a compartment labeled with the stereotype name in guillemets (e.g., «spaceQualified») listing that stereotype's property values.
+-------------------------------------------------------+
|                      «block»                          |
|                «radiationHardened»                    |
|                  FlightTelemetryCPU                   |
|       {radTolerance = 100kRad, safetyClass = A}       |
+-------------------------------------------------------+
| properties                                            |
|   clockFrequency : Frequency = 400 MHz                |
+-------------------------------------------------------+

Diagram Frames and Boundary Syntax

Every SysML diagram is encapsulated within an outer rectangular border called the Diagram Frame. The frame defines the boundary of the diagram canvas and establishes the structural or behavioral scope of the view.

The Standard Diagram Header Syntax

In the upper-left corner of the frame, a distinct header box displays a strictly structured text string:

kind [type] name [diagramName]
  1. kind (Mandatory): A 2-to-3 letter lowercase mnemonic identifying the specific SysML diagram kind:
    • bdd (Block Definition Diagram)
    • ibd (Internal Block Diagram)
    • act (Activity Diagram)
    • stm (State Machine Diagram)
    • sd (Sequence Diagram)
    • req (Requirement Diagram)
    • uc (Use Case Diagram)
    • par (Parametric Diagram)
    • pkg (Package Diagram)
  2. [type] (included when needed to remove ambiguity): The metaclass of the model element that encloses and owns the diagram content, enclosed in square brackets (e.g., [Block], [Activity], [StateMachine], [Interaction], [Package]).
  3. name (always shown): The qualified or simple identifier of the specific model element owning the diagram (e.g., SpacecraftBus, ThermalControlActivity).
  4. [diagramName] (Optional): A descriptive user-assigned title for this specific graphical view, enclosed in square brackets (e.g., [Internal Power Routing], [Nominal Telemetry Sequence]).

Boundary Elements on Diagram Frames

Crucially, the border of a diagram frame is not merely a visual border—it serves as the interface boundary of the enclosing model element. Across different diagram kinds, the frame border hosts specific boundary elements:

  1. Internal Block Diagram (ibd): Boundary Ports
    • Small square port symbols drawn directly on the outer diagram frame represent ports belonging to the enclosing Block that owns the IBD.
    • Connectors inside the IBD attach to these boundary ports, routing internal signals from internal parts to external systems.
  2. Activity Diagram (act): Activity Parameter Nodes
    • Rectangles drawn directly on the diagram frame border represent input and output parameters of the enclosing Activity.
    • Object flow arrows inside the activity originate from or terminate at these boundary parameter nodes.
  3. Sequence Diagram (sd): Boundary Gates
    • Connection points placed on the frame border representing message endpoints that enter or exit the interaction from external contexts.
  4. Frame Anchors for Annotations
    • An entire diagram can be annotated by attaching a Comment, «rationale», or «problem» dog-eared note directly to the diagram frame border via a dashed anchor line.
  5. Other Border Elements
    • SysML 1.2 Annex A also lists entry and exit points on state machine frames and constraint parameters on constraint block frames.

Diagram Description and Diagram Usage

The MU100 coverage map names the diagram description alongside the header. SysML 1.2 Annex A defines it as a comment attached to the diagram frame (its Figure A.2 shows it at the top right of the frame) that can include:

FieldWhat it records
VersionThe version of the diagram
DescriptionWhat the diagram shows
Completion statusHow complete the modeler asserts the diagram is
ReferenceReferences to related information
User-defined fieldsAnything else the organization needs

The diagram description may also identify the view the diagram belongs to and the corresponding viewpoint (Section 1.2). Tools may present it in more detail.

SysML 1.2 also allows a diagram usage: a keyword such as «ContextDiagram» placed above the diagram kind in the heading to mark a specialized use of a diagram kind, for example a context diagram drawn as a uc, bdd, or ibd. Because a diagram is not a metaclass, this is a notation convention rather than a true stereotype.


Worked Real-World Example: Electric Vehicle Battery Management System (BMS)

Consider an Internal Block Diagram specifying the internal architecture of an EV Battery Pack:

  • Diagram Header: ibd [Block] BatteryPack [Internal Cell Balancing Architecture]
  • Boundary Ports on Frame:
    • pHighVoltage : HV_PowerPort positioned on the right vertical frame border.
    • pCAN : CAN_BusPort positioned on the bottom frame border.
  • Stereotyped Component: The internal controller part bmsCore : BMS_Controller is stereotyped with «automotiveSafety» displaying tagged values {ASIL = ASIL_D, maxFailureRate = 10FIT}.
  • Rationale Annotation: A dog-eared note labeled «rationale» is anchored via a dashed line to the cell balancing resistor circuit: "Passive cell balancing selected over active balancing based on trade study TS-BMS-04; satisfies volume, thermal envelope, and unit cost constraints."
  • Problem Annotation: A dog-eared note labeled «problem» is anchored via a dashed line to the temperature sensor array: "Thermistor ADC sampling experiences severe EMI noise when inverter draws >300A; filtering capacitor revision required in Rev C."

This single diagram combines structural framing, interface boundaries, domain metadata (stereotypes and tags), and formal engineering rationale and issue tracking.


Summary Comparison of SysML Annotations & Stereotype Constructs

ConstructVisual NotationMetamodel FoundationSemantic RoleTagged Values Supported?
CommentDog-eared note box; dashed anchor line without arrowheadsCommentPlain text narrative, descriptions, or general notes.No
«rationale»Dog-eared note with «rationale» at topStereotype extending CommentCaptures engineering justification, trade study results, and design decisions.Yes (if defined by profile)
«problem»Dog-eared note with «problem» at topStereotype extending CommentIdentifies defects, open questions, hazards, or technical debt.Yes (if defined by profile)
ConstraintText in braces {...}, beside the element or in an anchored noteConstraintFormal invariant condition that must evaluate to true/false.No
StereotypeGuillemets «stereotypeName» above elementExtends a UML Class or MetaclassExtends metamodel vocabulary for specific engineering domains.Yes (defines tagged values)
Tagged Value{tag = value} or dedicated compartmentProperty of a StereotypeHolds domain-specific metadata values assigned to an element.N/A (is the value)

Diagram Frame Elements Across SysML Diagram Kinds

Diagram KindKind MnemonicTypical Enclosing Context MetaclassBoundary Elements Hosted on Frame BorderPrimary System Scope
Block Definition Diagrambdd[Package], [Block], [ConstraintBlock]Package containment anchors, comment anchorsElement definitions, generalizations, associations.
Internal Block Diagramibd[Block]Boundary Ports of the enclosing blockInternal part interconnection and flow routing.
Activity Diagramact[Activity]Activity Parameter Nodes (inputs/outputs)Procedural algorithmic workflows and token flow.
State Machine Diagramstm[StateMachine]Entry/Exit connection points, comment anchorsEvent-driven reactive modal behavior.
Sequence Diagramsd[Interaction]Gates (message end points on the frame)Chronological message passing across lifelines.
Parametric Diagrampar[Block], [ConstraintBlock]Constraint parameters, bound value propertiesMathematical equations and performance trade-offs.
Package Diagrampkg[Package], [Model]Comment anchorsModel organization, namespaces, and views.
Requirement Diagramreq[Package], [Requirement]Comment anchorsRequirements and their relationships.
Use Case Diagramuc[Package]Comment anchorsActors, use cases, and subjects.

Exam Pitfalls & Misconceptions

ConceptCorrect SysML RuleCommon Exam Trap / Distractor
Comment Anchor LinesConnecting line must be a dashed line with NO arrowhead.Drawing an arrowhead (solid or open) on a comment connection line.
Rationale & Problem Metaclass«rationale» and «problem» are stereotypes extending UML Comment.Believing they are structural blocks, associations, or specialized requirements.
Constraint vs AnnotationConstraints evaluate formal expressions to boolean values; comments are informational text.Treating a constraint as a comment, or assuming comments are evaluated by analysis engines.
Frame Context MetaclassThe [type] field in the frame header must match the metaclass of the owning element.Mismatching the context element (e.g., writing act [Block] VehicleControl instead of act [Activity] VehicleControl).
Boundary Port OwnershipPorts drawn on an ibd frame border belong to the enclosing Block, not to internal parts.Assuming frame boundary ports are internal parts or external environment actors.
Stereotype GuillemetsStereotypes are displayed using guillemets («...»), not square brackets or parentheses.Writing [stereotype] or {stereotype} instead of «stereotype».
Loading diagram...
SysML Diagram Frame with Boundary Features, Stereotypes, Rationales & Problems
Test Your Knowledge

A model reviewer is examining an architecture diagram and spots a dog-eared note box labeled with the keyword «problem» attached to a part property. According to the SysML metamodel, what kind of construct is «problem», and what notation must connect it to the part?

A

It is a specialized Requirement connected by a dashed arrow with an open stick arrowhead labeled «satisfy»

B

It is an asynchronous Signal event connected by a solid arrow with an open stick arrowhead

C

It is a ConstraintBlock connected by an internal binding connector with no arrowheads

D

It is a stereotype extending the UML Comment metaclass, connected by a dashed line with no arrowhead

Test Your Knowledge

On an Internal Block Diagram (ibd) enclosed within a frame labeled 'ibd [Block] PropulsionSystem [Fuel Routing]', a port symbol is positioned directly on the perimeter border of the outer diagram frame. To which element does this boundary port belong?

A

To the enclosing block PropulsionSystem that owns the diagram

B

To the internal fuel pump part property positioned closest to the frame border

C

To an external actor outside the model repository namespace

D

To the top-level Package containing the PropulsionSystem block

Test Your Knowledge

An engineering organization introduces a custom stereotype named «flightCritical» that defines an integer attribute safetyLevel. A systems engineer applies this stereotype to a block and assigns the value 4. How are the stereotype and its tagged value displayed on the block?

A

The block name is written in italics, with the text (safetyLevel = 4) placed in the operations compartment

B

The keyword «flightCritical» appears above or before the block name, and the tagged value appears in curly braces such as {safetyLevel = 4} or in a dedicated tagged value compartment

C

The block is converted into an activity partition labeled flightCritical:safetyLevel=4

D

The block is enclosed in a sequence diagram ref fragment labeled [safetyLevel=4]

Test Your Knowledge

According to SysML 1.2 Annex A, what is a diagram description?

A

The optional bracketed diagram name at the end of the frame heading

B

A «rationale» comment that must justify every element shown on the diagram

C

A comment attached to the diagram frame that can record version, description, completion status, references, and user-defined fields

D

The model element type written in brackets in the frame heading

Sections you finish are checked off in the contents.