Systems modeling language

This is an old revision of this page, as edited by MME (talk | contribs) at 02:44, 5 July 2006 (Added refs for SysML-UML comparison and OMG SysML tools). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

The Systems Modeling Language (SysML), is a ___domain-specific modeling language for systems engineering. 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. 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 management; the latter can be used for performance analysis and quantitative analysis. As a result of these ehancements, 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 and gratuitous constructs, the overall language is smaller as measured 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 will support requirments 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.0's thirteen diagrams, and adds two diagrams (Requirements and Parametric diagrams) and Allocation Tables, which are dynamically derived from its diagrams. A table which compares SysML and UML 2.0 diagrams is available in the SysML FAQ.

The advantages of SysML over UML for systems engineering become more obvious if you consider a concrete example, such as 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 diagrams to define high-level functional requirements. Likewise, with SysML you can use Parametric diagrams to precisely define performance and mechanical constraints such as maximum acceleration, curb weight, air conditioning capacity, and interior cabin noise management. UML provides no straightforward mechanism to capture this essential performance and mechanical information.

As for the rest of the automotive system, SysML enhanced Activity and State Machine diagrams can be used to specify the embedded software control logic 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 has its origins 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 as part of the UML for Systems Engineering Request for Proposal (UML for SE RFP; OMG document ad/03-03-41) in March 2003.[2]

In mid-2003 the SysML Partners, an informal association of industry leaders and tool vendors[3] co-chaired by Sanford Friedenthal and Cris Kobryn, organized an open source specification project to develop the SysML in response to the "UML for Systems Engineering" RFP.[4] The SysML 1.0a open source specification was completed and submitted to the OMG in November 2005. After a series of competing specification proposals, a "SysML Merge Team" proposal was proposed to the OMG in April 2006. This proposal is now being finalized via the OMG adoption process.

OMG SysML

The OMG is adapting and adopting a version of SysML which it calls OMG SysML. Since the OMG adapted and voted upon a version of the SysML specification that included an open source license for distribution and use, OMG SysML is also subject to an open source license for distribution and use. The OMG SysML Specification v. 1.0 is a draft adopted specification[5], and is following the OMG technology adoption process to be finalized.

Tools

There are several modeling tool vendors who already offer SysML support, and are in the process of updating their tools to comply with the OMG SysML specfication. You can find list of tool vendors who support, or have announced support of, OMG SysML on the Official OMG SysML Website.

References

  1. ^ SysML Partners. "SysML FAQ". Retrieved 2006-07-02.
  2. ^ OMG SE DSIG. "UMLTM for Systems Engineering RFP". Retrieved 2006-06-29.
  3. ^ "SysML Partners". Retrieved 2006-06-29.
  4. ^ SysML Partners. "SysML FAQ". Retrieved 2006-06-29.
  5. ^ OMG document ptc/06-05-04