Universal Process Notation (UPN) process mining
X
Definition

Systems Modeling Language (SysML)

What is Systems Modeling Language (SysML)?

Systems Modeling Language (SysML) helps teams design, develop, test and deploy complex physical systems. The first implementation, SysML v1, was designed to extend the capabilities of Unified Modeling Language (UML) to design software systems.

SysML supports a model-based systems engineering (MBSE) approach to capture information in a system model. MBSE takes advantage of domain models to improve the flow of information using various tools involved in different aspects of complex systems.

This approach contrasts with traditional document-based approaches to systems engineering. Previously, teams collaborated using spreadsheets, informal diagrams and text documents. The MBSE approach, when combined with SysML, results in more precise, consistent and complete information about a system. This significantly reduces errors, improves product quality and reduces development costs and schedules.

How does SysML work?

SysML brings consistency to the information flowing across multiple interconnected diagrams organized into a hierarchy. Information can be mapped using nine different diagrams in SysML v1 and 14 diagrams in SysML v2. In both cases, a top-level system diagram is connected to three main categories of diagrams underneath, which, in turn, are linked to various subcategories. This helps simplify discussions and collaboration with users that might have different expertise or workflows.

The three main categories of SysML diagrams are the following.

1. Requirements diagram

A requirements diagram represents system requirements. This helps users understand the scope of a system, specify relevant stakeholders and connect requirements to various components or system elements.

2. Structure diagrams

Structure diagrams are the logical and physical properties of a system. These can surface information about the composition of system components and their relationship to each other. They can also describe the packages and dependencies. Structure diagram subcategories include the following:

  • Block definition diagrams show the relationships among controls, data and interfaces and can be nested together into larger blocks.
  • Internal block diagrams illustrate the internal parts of blocks and could include components, ports, connectors and properties that can be connected to interfaces or simulated.
  • Package diagrams demonstrate the relationships among models, views, libraries and frameworks.
  • Parametric diagrams show the mathematical rules that represent how changes in one block should flow to others.

3. Behavior diagrams

Behavior diagrams represent how a system is expected to behave. Subcategories of behavioral diagrams include the following:

  • Activities diagrams describe the flow of actions within a system.
  • State machine diagrams characterize the expected state of the system in response to various events.
  • Sequence diagrams represent the flow of interactions in a system.
  • Use case diagrams illustrate intended interactions with users or other systems.

SysML v2 update

A recent update, SysML v2, builds on the core framework with support for Kernel Modeling Language (KerML) and a new application programming interface (API) to increase automation and collaboration across different stakeholders and tools. The new API and associated set of services make it easier to navigate, query and update the model. The API also improves interoperability with other tools and software applications throughout the systems development lifecycle.

Sanford FriedenthalSanford Friedenthal

"A SysML v2 model coupled with the API provides a standard interface to enable interoperability with other models and tools and facilitates collaboration among the engineering design team," said Sanford "Sandy" Friedenthal, Object Management Group (OMG) Systems Modeling Community (SMC) co-chair.

The systems model can serve as a hub to integrate many other sources of engineering data that span the system lifecycle. SysML v2 improves workflows across different types of tools involved in product design and development in the following ways:

  • Requirements management tools and repositories can provide more fine-grained traceability among requirements, system design elements, verification cases and analysis cases.
  • Hardware and software design models and tools can work with the system components specified in the system model.
  • Specialty tools to analyze performance, physical properties, reliability, safety and security can interoperate with other tools more efficiently.
  • Testing tools can streamline the process of specifying and executing detailed product verification processes.
  • Product lifecycle management tools can streamline configuration management across many modeling artifacts and tools.
  • Product line engineering tools can more easily manage product families and their variability across various design configurations.
SysML v2 capabilities
This chart highlights some of the capabilities of the SysML v2 language.

KerML improves integration

KerML provides a framework to formally define syntax (representation) and semantics (meaning) across different tools and workflows. It also makes creating complementary textual and graphical representations of the underlying model easier. This facilitates improved system understanding by the development team and other system stakeholders.

Ed SeidewitzEd Seidewitz

SysML extends KerML syntax and tailors the corresponding semantics. The notations most modelers use are specific to SysML, which are largely independent of KerML, aside from a common expression language, said Ed Seidewitz, OMG SMC co-chair. This separation is said to provide a common kernel that can be used as a foundation for future modeling languages that could interoperate with SysML, such as a possible successor to UML. KerML also provides a framework for file-based interchange of complex models as an interrelated set of modeling projects. This approach is consistent with the types of API that are currently used to manage models in a repository.

SysML vs. UML

SysML was introduced as a profile of UML that was already being used to design complex software systems. SysML v1 was initially a profile of UML and added additional modeling capabilities for systems engineering. Many basic modeling capabilities, such as activity and state modeling, were pulled directly from a subset of UML called UML for SysML.

Seidewitz said that, between 2007 and 2022, it became increasingly difficult to adapt software-oriented UML to provide all the capabilities systems engineers wanted it to have to support MBSE.

As a result, SysML v2 is no longer based on UML. In some ways, KerML takes the place of UML in the new version. However, it is not expected that KerML will generally be visible to SysML v2 users.

It's important to note that this new kernel modeling capability is not intended to replace full UML for software systems modeling. Although there is some overlap between the language capabilities needed for software system modeling and general systems modeling, SysML v2 is, by intent, tailored to the needs of the systems engineering community, which might not always be consistent with the preferences of the software engineering community, Seidewitz said. UML should, therefore, continue to have value as a software system modeling language, even after the release of SysML v2.

At the same time, there has only been a minor technical update to UML since 2013. There have been discussions about developing a successor to UML for software systems modeling that would also be based on KerML, so UML could share common modeling capabilities with SysML, while still being tailored to the software engineering community.

"In particular, this would nicely allow for integrated modeling of software architectures as part of an overall systems modeling effort," Seidewitz said.

Systems modeling and business process modeling do have some similarities. However, Seidewitz said SysML v2 is probably not the best language for business process modeling. At the same time, SysML modeling practices are used in the context of systems and software processes and management.

History of SysML

SysML v1 was formally adopted in 2007 and has been used by systems development organizations from many industries, including aerospace, defense, automotive and biomedical. Since then, Friedenthal said, much has been learned by applying MBSE with SysML.

The beta version of SysML v2 was approved in mid-2023 and is expected to be finalized in the second half of 2024. Tool vendors have announced plans to support SysML v2.

SysML v2 addresses some of the limitations of the first version and is more precise, expressive and interoperable than SysML v1. It also adds the following capabilities:

  • It adds KerML.
  • There is a new system modeling API.
  • It makes it easier to model increasingly complex systems using deeply nested hierarchies of structure, behavior, requirements and cross-cutting relationships.
  • It lets developers specify analysis and verification cases.

The future of SysML

SysML was designed to allow further language extensions. Seidewitz expects various disciplines to specify new extensions that are more powerful than current UML profiling mechanisms. Examples include the Software Engineering Institute's work to extend SAE Architecture Analysis and Design Language and OMG's Unified Architecture Framework for a planned UAF v2.

OMG is considering modularizing the specification of various modeling practices across KerML and SysML so they can be used to construct new languages tailored to different specific domains and methods more easily. This could complement the existing OMG Essence standard that provides a kernel to define practices that can be combined into processes and methods. Down the road, KerML is being explored to support a possible successor to UML.

This was last updated in November 2023

Next Steps

Universal Process Notation (UPN)

Continue Reading About Systems Modeling Language (SysML)

Dig Deeper on IT applications, infrastructure and operations