Systems Modeling Language
The Systems Modeling Language (SysML) 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.1 SysML is defined as an extension of a subset of the Unified Modeling Language (UML) using UML's profile mechanism.
SysML offers systems engineers several noteworthy improvements over UML, which tends to be software-centric. These improvements include the following:1
- SysML's semantics are more flexible and expressive. SysML reduces UML's software-centric restrictions and adds two new diagram types, requirement and parametric diagrams. The former can be used for requirements engineering; the latter can be used for performance analysis and quantitative analysis. Consequent to these enhancements, SysML is able to model a wide range of systems, which may include hardware, software, information, processes, personnel, and facilities.
- SysML is a smaller language that is easier to learn and apply. Since SysML removes many of UML's software-centric constructs, the overall language measures smaller both in diagram types and total constructs.
- SysML allocation tables support common kinds of allocations. Whereas UML provides only limited support for tabular notations, SysML furnishes flexible allocation tables that support requirements allocation, functional allocation, and structural allocation. This capability facilitates automated verification and validation (V&V) and gap analysis.
- SysML model management constructs support models, views, and viewpoints. These constructs extend UML's capabilities and are architecturally aligned with IEEE-Std-1471-2000 (IEEE Recommended Practice for Architectural Description of Software Intensive Systems).
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.2
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.
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.3
In 2003 Cris Kobryn and Sanford Friedenthal organized and co-chaired the SysML Partners, an informal association of industry leaders and tool vendors,4 which initiated an open source specification project to develop the SysML in response to the UML for Systems Engineering RFP.5 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.
After a series of competing SysML specification proposals, a SysML Merge Team was proposed to the OMG in April 2006.6 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.
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 Forum9 or SysML10 websites, respectively.
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.
- Energy Systems Language
- Universal Systems Language
- IBM Rational Rhapsody
- Enterprise Architect
- Artisan Studio
- SysML Forum. "SysML FAQ". Retrieved 2009-08-26.
- SysML FAQ
- OMG SE DSIG. "UMLTM for Systems Engineering RFP". Retrieved 2006-06-29.
- "SysML Partners". Retrieved 2006-06-29.
- SysML Forum. "SysML FAQ". Archived from the original on 2006-07-16. Retrieved 2006-06-29.
- OMG document ad/06-03-01
- OMG document formal/07-09-01
- OMG document formal/2012-06-01
- SysML Forum
- OMG SysML
- Holt, Jon (2008). SysML for Systems Engineering. The Institution of Engineering and Technology. ISBN 978-0-86341-825-9.
- Weilkiens, Tim (2008). Systems Engineering with SysML/UML: Modeling, Analysis, Design. Morgan Kaufmann / The OMG Press. ISBN 0-12-374274-9.
- Friedenthal, Sanford (2008). A Practical Guide to SysML: The Systems Modeling Language. Morgan Kaufmann / The OMG Press. ISBN 978-0-12-378607-4.
- SysML Open Source Specification Project Provides information related to SysML open source specifications, FAQ, mailing lists, and open source licenses.
- OMG SysML Website Furnishes information related to the OMG SysML specification, SysML tutorial, papers, and tool vendor information.
- Using SoaML services architecture by Jim Amsden, a co-author of the OMG SoaML standard.
- Modeling with SoaML, the services-oriented architecture modeling language, a five-part series by Jim Amsden.
- SysML Forum A web community dedicated to SysML, contains information related to SysML modeling tools, training, tutorials, specifications, publications, mailing lists and blogs.
- TOPCASED Website Set of eclipse-based open source model editors, transformation and formal verification tools. Modeling languages include SysML. Development sponsored by European aerospace manufacturers.
- Visio Stencil and Template for SysML 1.0
- Article "EE Times article on SysML (May 8, 2006)"
- SE^2 MBSE Challenge team: Telescope Modeling
- SysML User Group on LinkedIn
- Paper System Modelling Language explained (PDF format)
- MBSE Blog
- Reference Card SysML (PDF)