Systems Modeling Language

Last updated
Sysml diagrams collage Sysml diagrams collage.jpg
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.

General-purpose modeling (GPM) is the systematic use of a general-purpose modeling language to represent the various facets of an object or a system. Examples of GPM languages are:

Systems engineering interdisciplinary field of engineering and engineering management that focuses on how to design and manage complex systems over their life cycles

Systems engineering is an interdisciplinary field of engineering and engineering management that focuses on how to design and manage complex systems over their life cycles. At its core, systems engineering utilizes systems thinking principles to organize this body of knowledge. The individual outcome of such efforts, an engineered system, can be defined as a combination of components that work in synergy to collectively perform a useful function.

Analysis is the process of breaking a complex topic or substance into smaller parts in order to gain a better understanding of it. The technique has been applied in the study of mathematics and logic since before Aristotle, though analysis as a formal concept is a relatively recent development.

Contents

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. The language's extensions were designed to support systems engineering activities.

Open source products include permission to use the source code, design documents, or content of the product. It most commonly refers to the open-source model, in which open-source software or other products are released under an open-source license as part of the open-source-software movement. Use of the term originated with software, but has expanded beyond the software sector to cover other open content and forms of open collaboration.

Unified Modeling Language general-purpose, developmental, modeling language in the field of software engineering

The Unified Modeling Language (UML) is a general-purpose, developmental, modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system.

A profile in the Unified Modeling Language (UML) provides a generic extension mechanism for customizing UML models for particular domains and platforms. Extension mechanisms allow refining standard semantics in strictly additive manner, preventing them from contradicting standard semantics.

Contrast with UML

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

Requirements engineering (RE) refers to the process of defining, documenting and maintaining requirements in the engineering design process. It is a common role in systems engineering and software engineering.

In software engineering, profiling is a form of dynamic program analysis that measures, for example, the space (memory) or time complexity of a program, the usage of particular instructions, or the frequency and duration of function calls. Most commonly, profiling information serves to aid program optimization.

Statistics Study of the collection, analysis, interpretation, and presentation of data

Statistics is the discipline that concerns the collection, organization, displaying, analysis, interpretation and presentation of data. In applying statistics to a scientific, industrial, or social problem, it is conventional to begin with a statistical population or a statistical model to be studied. Populations can be diverse groups of people or objects such as "all people living in a country" or "every atom composing a crystal". Statistics deals with every aspect of data, including the planning of data collection in terms of the design of surveys and experiments. See glossary of probability and statistics.

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]

Consider modeling an automotive system: with SysML one can use Requirement diagrams to efficiently capture functional, performance, and interface requirements, whereas with UML one is subject to the limitations of use case diagrams to define high-level functional requirements. Likewise, with SysML one 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.

Use case diagram UML use case diagram

A use case diagram at its simplest is a representation of a user's interaction with the system that shows the relationship between the user and the different use cases in which the user is involved. A use case diagram can identify the different types of users of a system and the different use cases and will often be accompanied by other types of diagrams as well. The use cases are represented by either circles or ellipses.

Acceleration Rate at which the magnitude and/or direction of velocity changes with time

In physics, acceleration is the rate of change of velocity of an object with respect to time. An object's acceleration is the net result of all forces acting on the object, as described by Newton's Second Law. The SI unit for acceleration is metre per second squared (m⋅s−2). Accelerations are vector quantities and add according to the parallelogram law. The vector of the net force acting on a body has the same direction as the vector of the body's acceleration, and its magnitude is proportional to the magnitude of the acceleration, with the object's mass as proportionality constant.

Curb weight or kerb weight is the total mass of a vehicle with standard equipment and all necessary operating consumables such as motor oil, transmission oil, coolant, air conditioning refrigerant, and sometimes a full tank of fuel, while not loaded with either passengers or cargo.

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.5, which was issued by the OMG in May 2017. [10] In addition, SysML was published by the International Organization for Standardization (ISO) in 2017 as a full International Standard (IS), ISO/IEC 19514:2017 (Information technology -- Object management group systems modeling language). [11]

The OMG has been working on the next generation of SysML and issued a Request for Proposals (RFP) for version 2 on December 8, 2017, following its open standardization process. [12] [13] The resulting specification, which will incorporate language enhancements from experience applying the language, will include a UML profile, a metamodel, and a mapping between the profile and metamodel. [12] A second RFP for a SysML v2 Application Programming Interface (API) and Services RFP was issued in June 2018. Its aim is to enhance the interoperability of model-based systems engineering tools.

Diagrams

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

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 [14] or SysML [15] 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.

See also

Related Research Articles

Object Management Group technology standards consortium

The Object Management Group (OMG) is a computer industry standards consortium. OMG Task Forces develop enterprise integration standards for a range of technologies.

The XML Metadata Interchange (XMI) is an Object Management Group (OMG) standard for exchanging metadata information via Extensible Markup Language (XML).

Meta-Object Facility

The Meta-Object Facility (MOF) is an Object Management Group (OMG) standard for model-driven engineering. Its purpose is to provide a type system for entities in the CORBA architecture and a set of interfaces through which those types can be created and manipulated. The official reference page may be found at OMG's website.

Model-driven architecture (MDA) is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. Model-driven architecture is a kind of domain engineering, and supports model-driven engineering of software systems. It was launched by the Object Management Group (OMG) in 2001.

Objecteering

Objecteering is a UML and MDA CASE tool edited by Objecteering Software, a subsidiary of Softeam.

Object Process Methodology modelling language and methodology for capturing knowledge and designing systems

Object Process Methodology (OPM) is a conceptual modeling language and methodology for capturing knowledge and designing systems, specified as ISO/PAS 19450. Based on a minimal universal ontology of stateful objects and processes that transform them, OPM can be used to formally specify the function, structure, and behavior of artificial and natural systems in a large variety of domains.

A UML tool is a software application that supports some or all of the notation and semantics associated with the Unified Modeling Language (UML), which is the industry standard general-purpose modeling language for software engineering.

The Unified Profile for DoDAF/MODAF (UPDM) is the product of an Object Management Group (OMG) initiative to develop a modeling standard that supports both the USA Department of Defense Architecture Framework (DoDAF) and the UK Ministry of Defence Architecture Framework (MODAF). The current UPDM - the Unified Profile for DoDAF and MODAF was based on earlier work with the same acronym and a slightly different name - the UML Profile for DoDAF and MODAF.

MagicDraw

MagicDraw is a visual UML, SysML, BPMN, and UPDM modeling tool with team collaboration support. Designed for business analysts, software analysts, programmers, and QA engineers, this dynamic and versatile development tool facilitates analysis and design of object oriented (OO) systems and databases. It provides the code engineering mechanism, as well as database schema modeling, DDL generation and reverse engineering facilities.

Cris Kobryn (1952) is an American technologist, system architect and entrepreneur who specializes in advanced software and systems development.

Visual Paradigm software

Visual Paradigm (VP-UML) is a UML CASE Tool supporting UML 2, SysML and Business Process Modeling Notation (BPMN) from the Object Management Group (OMG). In addition to modeling support, it provides report generation and code engineering capabilities including code generation. It can reverse engineer diagrams from code, and provide round-trip engineering for various programming languages.

Knowledge Discovery Metamodel (KDM) is a publicly available specification from the Object Management Group (OMG). KDM is a common intermediate representation for existing software systems and their operating environments, that defines common metadata required for deep semantic integration of Application Lifecycle Management tools. KDM was designed as the OMG's foundation for software modernization, IT portfolio management and software assurance. KDM uses OMG's Meta-Object Facility to define an XMI interchange format between tools that work with existing software as well as an abstract interface (API) for the next-generation assurance and modernization tools. KDM standardizes existing approaches to knowledge discovery in software engineering artifacts, also known as software mining.

Modeling and Analysis of Real Time and Embedded systems also known as MARTE is the OMG standard for modeling real-time and embedded applications with UML2.

Papyrus (software) UML2 graphical editing tool based on Eclipse

Papyrus is an open-source UML 2 tool based on Eclipse and licensed under the EPL. It has been developed by the Laboratory of Model Driven Engineering for Embedded Systems (LISE) which is a part of the French Alternative Energies and Atomic Energy Commission (CEA-List).

SysML Partners is a consortium of software tool vendors and industry leaders organized in 2003 to create the Systems Modeling Language (SysML), a dialect of UML customized for systems engineering. The consortium was founded and organized by Cris Kobryn, who previously chaired the UML 1.1 and UML 2.0 specification teams, and Sandy Friedenthal, chair of the OMG Systems Engineering Special Interest Group. The SysML Partners defined SysML as an open source specification, and their specifications include an open source license for distribution and use.

EAST-ADL is an Architecture Description Language (ADL) for automotive embedded systems, developed in several European research projects. It is designed to complement AUTOSAR with descriptions at higher level of abstractions. Aspects covered by EAST-ADL include vehicle features, functions, requirements, variability, software components, hardware components and communication. Currently, it is maintained by the EAST-ADL Association in cooperation with the European FP7 MAENAD project.

Modelio

Modelio is an open-source UML tool developed by Modeliosoft, based in Paris, France. It supports the UML2 and BPMN standards.

Sparx Systems is an Australian software company founded by Geoffrey Sparks in 1996 in Creswick, Victoria in Australia, known for the development of the Unified Modeling Language tool Enterprise Architect.

Enterprise Architect (software) visual modeling and design tool based on the OMG UML

Sparx Systems Enterprise Architect is a visual modeling and design tool based on the OMG UML. The platform supports: the design and construction of software systems; modeling business processes; and modeling industry based domains. It is used by businesses and organizations to not only model the architecture of their systems, but to process the implementation of these models across the full application development life-cycle.

References

  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 2018-12-03.
  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. "UML 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 Archived 2008-12-01 at the Wayback Machine
  9. "SysML 1.0". omg.org. Retrieved 2014-12-04.
  10. "SysML". omg.org. Retrieved 2017-07-03.
  11. "ISO/IEC 19514:2017 - Information technology -- Object management group systems modeling language (OMG SysML)". www.iso.org. Retrieved 2017-12-29.
  12. 1 2 "sysml-roadmap:sysml_v2_requirements_review_page [OMG SysML Portal]". www.omgwiki.org. Retrieved 2017-12-29.
  13. http://themeforest.net/user/dan_fisher. "OMG Process Introduction | Object Management Group". www.omg.org. Retrieved 2017-12-29.
  14. "SysML Forum: What is SysML? - What You Need to Know". sysmlforum.com. Retrieved 2014-12-04.
  15. "OMG SysML". omgsysml.org. Retrieved 2014-12-04.

Further reading