SysML Overview

This section provides an overview of the Systems Modeling Language (SysML), the industry standard architecture modeling language for specifying large, complex systems. The overview includes a formal definition and information about SysML core concepts, origins, characteristics, enabling technologies, and variations.

Please contact us regarding any additions or corrections to be made to this page.

SysML Synopsis
The Systems Modeling Language (SysML) is a general-purpose architecture modeling language for Systems Engineering applications.
• SysML supports the specification, analysis, design, verification and validation of a broad range of systems and systems-of-systems. These systems may include hardware, software, information, processes, personnel, and facilities.
• SysML is a dialect of UML 2, and is defined as a UML 2 Profile. (A UML Profile is a UML dialect that customizes the language via three mechanisms: Stereotypes, Tagged Values, and Constraints.)
• SysML is an enabling technology for Model-Based Systems Engineering (MBSE).

The open source SysML specification is publicly available for download, and includes an open source license for distribution and use. The most recent revision of SysML adopted by the Object Management Group is OMG SysML v. 1.4. For more information about the most recent version of SysML see the SysML FAQ What is the current version of SysML?.

For more information about SysML's origin, usage, and diagram types
please see the following SysML FAQs: Who created SysML?, Why use SysML?, What are the SysML diagram types?
Language Classification:
Artificial Language Visual Modeling Language Visual Architecture Modeling Language UML SysML (UML Profile)
Core Concepts:
The expression the Four Pillars of SysML refers to the four essential diagrams of SysML: Requirement, Activity, Block, and Parametric diagrams. The expression was coined by Cris Kobryn, the chair of the SysML Partners open source specification project, when he observed that 80+% of the time that the SysML Partners discussed SysML language features they were discussing features in these four diagrams. He further noted that, from an artificial language design perspective, the Activity and Block diagram pillars were more important than the other two, since they were based on proven UML2 diagram techniques that already successfully integrated (allocated) behaviors (functions) to structures.
Diagram Types:
The SysML specification defines nine (9) diagram types, which are shown in the SysML Diagram Taxonomy figure below, and one tabular notation (Allocation tables). Of the nine diagram types, four diagram types are considered behavioral or dynamic (Activity, Sequence, State Machine, and Use Case), four diagram types are considered structural or static (Block Definition, Internal Block, Parametric, and Package) and the remaining diagram type is reserved for declaring requirements (Requirement).

Usage Note: Allocation tables are used for defining cross-cutting relationships between diagram types, and are useful to checking both semantic well-formedness rules and architectural integrity rules. A common example of a behavior-to-structure Allocation is the mapping of behavioral Activities in Activity diagrams to the structural Blocks in a Block Definition diagram via Activity Partitions (commonly referred to as "swim lanes"). A common example of a structure-to-structure Allocation is the mapping of Interface structures to the Block structures that realize or implement them.

SysML Diagram Taxonomy

SysML Diagram Taxonomy

Reproduced by Permission © 2003-2017 PivotPoint Technology Corp.

Language Origin:
The Systems Modeling Language (SysML) was created by the SysML Partners, an informal association of Systems Engineering experts and software modeling tool experts that was organized by Cris Kobryn in 2003 to create a profile (dialect) of the Unified Modeling Language (UML) that could be used for Systems Engineering applications.

Since Kobryn had previously successfully led the UML 1.x and UML 2.0 language design teams, David Oliver and Sanford Friedenthal of INCOSE asked Kobryn to lead their joint effort to respond to the Object Management Group's UML for Systems Engineering RFP issued in March 2003. As Chair of the SysML Partners Kobryn coined the language name "SysML" (short for "Systems Modeling Language"), designed the original SysML logo, and organized the SysML core language design team as an open source specification project.
For further details about the history of the SysML see the SysML Partners page on the web.
Current Specification:
Language Characteristics:
• General purpose?
• Graphic syntax?
• Precise executable semantics?
• Open standard?
• Supports Rigorous or Robust processes?
• Supports Agile or Lean processes?
• Tool support?
• Interoperable?
[Can be applied to any System or System-of-Systems]
[Visual notation similar to UML 2.]
/ [Incomplete, varies with implementation.]
[Can be adapted.]
[Can be adapted.]
[Extensive tool support by popular visual modeling tools.]
/ [Poor due to XMI shortcomings.]
Enabling Technologies:
UML 2: SysML is defined as a dialect (profile) of UML 2, the industry standard visual architecture modeling language for software-intensive systems.
Language Usages:
• Primary Users: Systems Engineers
• Other Users: Software Engineers, Electrical Engineers, Mechanical Engineers, …
Language Variations:
Tool Support:
See SysML.Tools for selected reviews of popular SysML-compliant visual modeling tools.

OMG SYSML, UML, and UNIFIED MODELING LANGUAGE are trademarks of the Object Management Group. All other product and service names mentioned are the trademarks of their respective companies.