SysML Language Basics
TRANSCRIPT
Achillis Inc.
A Strategic Resource for the Digital Transformation Leader
www.achillis.com
© Achillis Inc., 2017 – 2023 – SysML Language Basics – TRANSCRIPT
Table of Contents
LANGUAGE BASICS ............................................................................................................................................. 3
THE ANATOMY OF SYSML .................................................................................................................................. 3
THE FOUR PILLARS OF SYSML ............................................................................................................................. 3
PILLAR #1: REQUIREMENTS ................................................................................................................................ 3
PILLAR #2: STRUCTURE ....................................................................................................................................... 3
PILLAR #3: BEHAVIOR ......................................................................................................................................... 4
PILLAR #4: PARAMETRIC ..................................................................................................................................... 4
STRUCTURE ........................................................................................................................................................ 4
STRUCTURE DIAGRAMS...................................................................................................................................... 4
BEHAVIOR .......................................................................................................................................................... 5
BEHAVIOR DIAGRAMS ........................................................................................................................................ 5
DIAGRAM TYPES ................................................................................................................................................. 5
DIAGRAM FRAME ILLUSTRATED ......................................................................................................................... 6
ORGANIZING YOUR SYSML MODEL WITH PACKAGES ........................................................................................ 6
PACKAGE DIAGRAMS ......................................................................................................................................... 6
SYSML RELATIONSHIPS....................................................................................................................................... 7
MODELING PACKAGE DEPENDENCIES ................................................................................................................ 7
MODELING PACKAGE DEPENDENCIES ................................................................................................................ 7
VIEWS & VIEWPOINTS CONCEPTS & DEFINITIONS ............................................................................................. 8
VIEW & VIEWPOINT EXAMPLE ........................................................................................................................... 8
END OF MODULE ................................................................................................................................................ 8
© Achillis Inc., 2017 – 2023 – SysML Language Basics – TRANSCRIPT
Language Basics
In this module, we will cover the basics of SysML before we start getting deeper into each of its
different aspects.
We will cover the basic building blocks of the language and we will explain two of the organizational
constructs of the language:
SysML Packages that you will utilize to organize your SysML model.
And Views & Viewpoints that enable you to define views relevant to various stakeholders in the
enterprise.
The Anatomy of SysML
It is first important to understand the overall anatomy of the language.
There is a lot to learn with SysML and MBSE. Some of you might find the content in this course
overwhelming, but with enough time, practice, and good resources, you will be able to reach a level
of proficiency that is adequate for working in demanding research and development environments.
The end of this video will provide additional learning resources that will be critical to your learning.
The Four Pillars of SysML
SysML makes use of four basic diagram kinds (its “four pillars”): Requirements, Structure, Behavior
and Parametric.
Pillar #1: Requirements
You model requirements in Requirements Diagrams to capture requirement hierarchies, including
their derivation, refinement, satisfaction, and verification. You also specify the traceability from the
requirements to downstream analysis and design models, and also test cases and any other models
at any various levels of abstraction.
Pillar #2: Structure
Structure, modeled with Block Definition Diagrams (BDD): Defines the system hierarchy and
component classifications; and Internal Block Diagrams (IBD), which model the internal system
structure using parts, ports, and connectors.
© Achillis Inc., 2017 – 2023 – SysML Language Basics – TRANSCRIPT
Pillar #3: Behavior
The third pillar is Behavior, modeled with: Use Case Diagrams, which provide a high-level description
of the system functionality.
Activity Diagrams, which represent the flow of data and control between activities; Sequence
Diagrams, which model the interactions between collaborating parts of the system.
And State Machine diagrams, which model the state transitions and actions resulting from system
events.
Pillar #4: Parametric
Parametric Diagrams model parametric relationships that represent constraints on system parameter
values (system dynamics, performance, reliability, and so on.)
Structure
Structural modeling in SysML defines the static and structural constructs which include:
Blocks to provide the fundamental capability for:
• Describing system decomposition and interconnection
• Defining different types of system properties including value properties with optional units of
measure.
Constraint Blocks to define how blocks are extended to be used on parametric diagrams. Parametric
diagrams model a network of constraints on system properties to support engineering analysis, such
as performance, reliability, and mass properties analysis.
Ports and Flows define how blocks and parts interact through ports and how items flow across
connectors.
Structure Diagrams
Block Definition Diagram: Defines features of blocks and relationships between blocks such as
associations, generalizations, and dependencies. It captures the definition of blocks in terms of
properties and operations, and relationships such as a system hierarchy or a system classification
tree.
Internal Block Diagram: Captures the internal structure of a block in terms of properties and
connectors between properties
Package Diagram: Organize the model by partitioning model elements into packageable elements
and establishing dependencies between the packages and/or model elements within the package.
© Achillis Inc., 2017 – 2023 – SysML Language Basics – TRANSCRIPT
Behavior
Behavior describes the performance of a set of actions over some period of time that may generate
and respond to occurrences of events, including accessing and changing the state of blocks. It’s the
externally visible dynamics of a block in terms of its interactions with other blocks and its
environment.
While structural diagrams cover the who and what of the model, in a static fashion, behavioral
diagrams cover the dynamics and the moving parts. They describe how the resources modeled in the
structural diagrams interact in a dynamic way.
A use cases specify some behavior that a subject can perform in collaboration with one or more
Actors. Use Cases define the offered Behaviors of the subject without reference to its internal
structure.
Activities specify the sequencing of subordinate units using a control and data flow model to describe
an overall flow of execution of a Block’s unit of behavior.
Sequence describes the sequence of event occurrences as different parts of the system interact in
collaboration to fulfill a block’s unit of behavior.
State Machine describes the state changes of a block or part, in terms of state changes and
transitions, in response to events that affect its behavior.
The starting point in defining model behavior consists of assigning responsibilities to blocks that are
defined in the structural model.
Behavior Diagrams
Use Case diagrams: Model user-system interactions, define behavior, requirements & constraints in
the form of scenarios.
Activity diagrams model basic program flow to capture the decision points and actions within any
generalized process.
Sequence diagrams focus on the message interchange between a number of blocks and parts.
State Machine diagrams are essential to understanding the instant-to-instant condition or "run state"
of a model when it executes.
Diagram Types
Please note the abbreviations used for each diagram type.
© Achillis Inc., 2017 – 2023 – SysML Language Basics – TRANSCRIPT
These abbreviations are always used part of the label of a SysML diagram—more on that later.
Diagram Frame Illustrated
Each SysML diagram is required to have a rectangular frame enclosing:
A content area
A header label consisting of:
Diagram kind (act, bdd, ibd, sd, pkg, par, req, stm, uc).
The model element type that the frame represents (activity, block, interaction, etc.)
The Model element name.
Diagram name
The frame can designate a model element as the default namespace for all elements in the frame.
A diagram description note could optionally be attached to the frame, as shown in this illustration.
Organizing your SysML Model with Packages
A package is a general-purpose mechanism for organizing elements into groups, establishing
ownership of elements, and providing a unique namespace for referencing elements.
When a package is deleted all of its contained elements, including nested packages, are removed
with it.
Package Diagrams
Packages relate to one another either through specialized dependency relationships such as “Access”
or “Import”.
Packages are modeled on a package diagram to …
• Identify the dependencies between parts of a system.
• Identify the partitioning of systems into subsystems.
• Identify phases in a development project.
• Isolate abstraction layers or viewpoints on a system.
• Organize architectural descriptions.
© Achillis Inc., 2017 – 2023 – SysML Language Basics – TRANSCRIPT
SysML Relationships
Before we look at an example of Package diagrams, we must introduce the notion of Relationships in
SysML.
There are three broad categories of relationships in SysML: associations (structural relationships),
dependencies, and generalizations.
Learning SysML properly requires that you get used to the terminology for relating elements in a
model.
Use the term “relationship” when referring to any type of relationship in the most general sense.
An “association” is a structural relationship that is represented with a straight line. In SysML, this is
referred to as a “reference association”—you will hear modelers use “association” and “reference
association” interchangeably.
A “dependency” is a non-structural relationship that implies that the semantics of the clients are not
complete without the suppliers. A dependency is always represented with a dashed line terminated
with an arrow pointing to the supplier side: In the example shown, the Trade Analysis package
depends on its supplier, the Graphs model library.
A generalization relates a specific element to a more general element: in the example, a
reconnaissance airplane is a type of airplane—looking from the reconnaissance airplane side, you can
refer to this relationship as “specialization”, so generalization and specialization refer to the same
relationship, but it depends on which side of the relationship you are looking at.
SysML relationships will be covered in full detail in the structural modeling module of this course.
Modeling Package Dependencies
This example of Package diagram illustrates the «access» and «import» dependencies between
packages.
The words in guillemets are stereotypes, which are used to specialize the dependency in its usage
context.
«access»: All classifiers in the source package can access all public classifiers in the target package.
Modeling Package Dependencies
«import»: A package import is a relationship that allows the use of unqualified names to refer to
package members from other namespaces.
© Achillis Inc., 2017 – 2023 – SysML Language Basics – TRANSCRIPT
Views & Viewpoints Concepts & Definitions
A «viewpoint» is a specification of rules for constructing a «view» to address a set of stakeholder
concerns.
A «view» represents the system from this viewpoint, is modeled with a Package and is said to
«conform» to a viewpoint.
The bolded words enclosed in guillemets are stereotypes. These provide an additional dimension of
classification for elements in your SysML model.
View & Viewpoint Example
Every stakeholder has a viewpoint which represent relevant aspects of the system that are important
to them.
Those aspects are represented in a specific view, which is a stereotyped package that contains only
what is relevant to that stakeholder.
In the example here, one of the viewpoints, the Operational viewpoint, shows the five properties of
that viewpoint—SysML requires them to be in tagged values.
End of Module
This completes the SysML language basics lesson.
Please check with the lesson descriptions for exercises and additional materials.
© Achillis Inc., 2017 – 2023 – SysML Language Basics – TRANSCRIPT