Systems Modeling Language

Sysml diagrams collage

The Systems Modeling Language (SysML)[1] is a general-purpose modeling language for systems engineering applications. It supports the specification, analysis, design, verification and validation of a broad range of systems and systems-of-systems.

SysML was originally developed by an open source specification project, and includes an open source license for distribution and use.[2] SysML is defined as an extension of a subset of the Unified Modeling Language (UML) using UML's profile mechanism.

Overview

SysML offers systems engineers several noteworthy improvements over UML, which tends to be software-centric. These improvements include the following:[2]

SysML reuses seven of UML 2's fourteen diagrams, and adds two diagrams (requirement and parametric diagrams) for a total of nine diagram types. SysML also supports allocation tables, a tabular format that can be dynamically derived from SysML allocation relationships. A table which compares SysML and UML 2 diagrams is available in the SysML FAQ.[4]

The advantages of SysML over UML for systems engineering become obvious if you consider a concrete example, like modeling an automotive system. With SysML you can use Requirement diagrams to efficiently capture functional, performance, and interface requirements, whereas with UML you are subject to the limitations of Use Case Diagram to define high-level functional requirements. Likewise, with SysML you can use Parametric diagrams to precisely define performance and quantitative constraints like maximum acceleration, minimum curb weight, and total air conditioning capacity. UML provides no straightforward mechanism to capture this sort of essential performance and quantitative information.

Concerning the rest of the automotive system, enhanced activity diagrams and state machine diagrams can be used to specify the embedded software control logic and information flows for the on-board automotive computers. Other SysML structural and behavioral diagrams can be used to model factories that build the automobiles, as well as the interfaces between the organizations that work in the factories.

History

The SysML initiative originated in a January 2001 decision by the International Council on Systems Engineering (INCOSE) Model Driven Systems Design workgroup to customize the UML for systems engineering applications. Following this decision, INCOSE and the Object Management Group (OMG), which maintains the UML specification, jointly chartered the OMG Systems Engineering Domain Special Interest Group (SE DSIG) in July 2001. The SE DSIG, with support from INCOSE and the ISO AP 233 workgroup, developed the requirements for the modeling language, which were subsequently issued by the OMG parting in the UML for Systems Engineering Request for Proposal (UML for SE RFP; OMG document ad/03-03-41) in March 2003.[5]

In 2003 Cris Kobryn and Sanford Friedenthal organized and co-chaired the SysML Partners, an informal association of industry leaders and tool vendors,[6] which initiated an open source specification project to develop the SysML in response to the UML for Systems Engineering RFP.[7] The original technical contributors and co-authors of the SysML 1.0a specification were Laurent Balmelli, Conrad Bock, Rick Steiner, Alan Moore and Roger Burkhart. The SysML Partners distributed their first open source SysML specification drafts in 2004, and submitted SysML 1.0a to the OMG for technology adoption in November 2005.

OMG SysML

After a series of competing SysML specification proposals, a SysML Merge Team was proposed to the OMG in April 2006.[8] This proposal was voted upon and adopted by the OMG in July 2006 as OMG SysML, to differentiate it from the original open source specification from which it was derived. Because OMG SysML is derived from open source SysML, it also includes an open source license for distribution and use.

The OMG SysML v. 1.0 specification was issued by the OMG as an Available Specification in September 2007.[9] The current version of OMG SysML is v1.4, which was issued by the OMG in September 2015.[10]


Diagrams

SysML includes 9 types of diagram, some of which are taken from UML.

Limitations and Criticisms

SysML takes time and effort to learn. It is intended to be a conventional language for conducting Model Based System Engineering but it has some important limitations that reduce its efficiency and limit its acceptance. This limited usage is, in itself, a limitation as the SysML language can be considered a hermetic language that non-initiated find sometimes difficult to exploit.

SysML has been criticized for being incomplete although there is little to stop a practitioner from adding their own content. In SysML, there is no provision for several diagrams and graphically-oriented tools that are commonly used in system engineering. Some of these diagrams can be built, for example, by extending the intended use of block definition diagrams but the results are not always adequate and often not in concordance with the rules of the SysML language. Missing elements include functional block diagram, N2 chart , House of Quality, Ishikawa diagram (fishbone), parameter diagram and others. The language is continually improving and other diagram types are being considered for addition in future updates, should they be deemed sufficiently useful for inclusion.

The diagrams generated by SysML are complicated and some are difficult to understand by people that are unfamiliar with the language. Some elements are slightly counter-intuitive and this could lead to confusion and errors. This is occasionally aggravated by SysML users believing SysML should be a widespread convention. This can be overcome by including explanatory notes and legends in SysML diagrams to ease their interpretation. As system-engineering diagrams are primarily intended for other members of an embedded team and people outside the team that, more often than not, are not system engineers and less likely to know SysML.

When drawn in a software tool, the diagrams that respect the rules of SysML often include redundant pieces of model information that can impair their interpretation.

Tools

There are several modeling tool vendors already offering SysML support, or are in the process of updating their tools to comply with the OMG SysML specification. Lists of tool vendors who support, or have announced support of, SysML or OMG SysML can be found on the SysML Forum[11] or SysML[12] websites, respectively.

Model Exchange

As an OMG UML 2.0 profile, SysML models are designed to be exchanged using the XML Metadata Interchange (XMI) standard. In addition, architectural alignment work is underway to support the ISO 10303 (also known as STEP, the Standard for the Exchange of Product model data) AP-233 standard for exchanging and sharing information between systems engineering software applications and tools.

List of SysML Tools

There are various SysML modeling tools. [note 1][13] The following software can be used with SysML:

See also

Further reading

References and notes

Notes

  1. SysML.Tools also has information about software to utilize SysML.

Citations

  1. Flexible Views for View-based Model-driven Development By Burger, Erik. KIT Scientific Publishing, Nov 14, 2014. Pg. 250.
  2. 1 2 SysML Forum. "SysML FAQ". Retrieved 2009-08-26.
  3. Embedded Systems Security. By David Kleidermacher, Mike Kleidermacher. Elsevier, 2012. Pg 180.
  4. "SysML Forum: SysML FAQ - What is SysML?, Why use SysML?, Who created SysML?". sysmlforum.com. Retrieved 2014-12-04.
  5. OMG SE DSIG. "UMLTM for Systems Engineering RFP". Retrieved 2006-06-29.
  6. "SysML Partners". Retrieved 2006-06-29.
  7. SysML Forum. "SysML FAQ". Archived from the original on 2006-07-16. Retrieved 2006-06-29.
  8. OMG document ad/06-03-01
  9. "SysML 1.0". omg.org. Retrieved 2014-12-04.
  10. "SysML". omg.org. Retrieved 2015-02-18.
  11. "SysML Forum: What is SysML? - What You Need to Know". sysmlforum.com. Retrieved 2014-12-04.
  12. "OMG SysML". omgsysml.org. Retrieved 2014-12-04.
  13. SysML.Tools: Free, Open Source & Commercial SysML Tools http://sysml.tools/
  14. Cameo Systems Modeler http://www.nomagic.com/products/cameo-systems-modeler.html
  15. SysML Modeling with Artisan Studio - Training Courses - Atego http://www.atego.com/services/training-course/sysml-modeling-with-artisan-studio/
  16. http://astah.net/editions/sysml
  17. Lattix Technology Modules http://lattix.com/technology-modules
  18. Innoslate https://www.innoslate.com/
  19. CORE http://www.vitechcorp.com/products/CORE.shtml
  20. GENESYS http://www.vitechcorp.com/products/GENESYS.shtml
  21. SysML Designer (Eclipse 3.8 version), Eclipse Plugins, Bundles and Products - Eclipse Marketplace http://marketplace.eclipse.org/content/sysml-designer-indigo-version
  22. ObeoNetwork, SysML-Designer. https://github.com/ObeoNetwork/SysML-Designer
  23. UML & SysML Toolset http://www.visual-paradigm.com/features/uml-and-sysml-modeling/
  24. SCADE System, Esterel Technologies http://www.esterel-technologies.com/products/scade-system/
  25. Topcased http://www.topcased.org/index.php?idd_projet_pere=20
  26. Capella https://www.polarsys.org/proposals/capella
This article is issued from Wikipedia - version of the 12/5/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.