In a previous post, we discussed the Lifecycle Modeling Language. This week we are going to take a look into the Systems Modeling Language (SysML). Most of you reading this are probably familiar with SysML. This is a perfect guide for those who might be familiar with SysML, but need a quick reference, or for those who are completely new to the language.
SysML is a “profile” of UML in other words, it extends UML. I’m not sure why they used the word “profile” to describe SysML. “Extensions” is a better word, because it’s really an extension of UML. They added some different diagrams to the set of UML and reused some UML diagrams to create SysML. SysML consists of a set of diagrams. There is no ontology explicitly stated at this time. They are currently working on an ontology, but unsure of the release date. Compliance with SysML requires that the subset of UML required for SysML is implemented, and that the SysML extensions to this subset are implemented. To be compliant you have to actually do all the things that they ask you to do.
Take a look at these SysML diagrams. The set of diagrams starts at the top, so you have different types: behavior, requirement, and structure. You can see which ones were inherited from UML. Sequence and state machine are from UML. They modified the activity diagram from UML. There are really only two completely new diagrams: the requirements diagram and the parametric diagram.
SysML is specified using a combination of UML modeling techniques and precise natural language to balance rigor and understandability. The OMG SysML Specification states that, “Use of more formal constraints and semantics may be applied in future versions to further increase the precision of the language.” SysML consists of nine (9) diagrams: Requirements, Use Case, Activity, Block Definition, Internal Block, Parametric, Sequence, State Machine, and Package.
SysML is used heavily in the systems engineering community. It definitely specifies the combination of techniques to give you a precise language, balance, and understandability. That is what we are always looking for in systems engineering. We are trying to put forth just enough rigor so there are constraints, but not too overly restrictive. There is always a balancing point with any language. There might be more formal constraints and semantics, which would include an ontology as well.
4 Pillars of SysML
Remember that a requirements diagram and a parametric diagram are both new diagrams and there are different types of behavior diagrams and structure diagrams. This is a good way to look at the while mechanism of SysML.