Modeling and Analysis of Real Time and Embedded systems

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.

Description
The UML modeling language has been extended by the OMG consortium to support model-driven development of real-time and embedded application. This extension has been defined via a UML2 profile called MARTE (Modeling and Analysis of Real-Time and Embedded systems). It consists mainly of four parts:
 * a core framework defining the basic concepts required to support real-time and embedded domain.
 * a first specialization (refinement) of this core package to support pure modeling of applications (e.g. hardware and software platform modeling).
 * a second specialization (refinement) of this core package to support quantitative analysis of UML2 models, specially schedulability and performance analysis.
 * a last part gathering all the MARTE annexes such as the one defining a textual language for value specification within UML2 models, and the one conflating the standard MARTE model libraries dedicated to RT/E system modeling.

The MARTE specification is publicly available on the OMG web site. Currently, two open-source tools are available for system modeling using the MARTE profile: Modelio provides an open source modeling environment for designing high level UML models using the MARTE profile, and also provides guidelines on the utilization of MARTE profile; while an open-source implementation based on Eclipse of the MARTE profile is available in Papyrus UML. This latter is running within the Eclipse UML2 plug-in and within the open-source tool for UML2 Papyrus.

Core
The core part of MARTE is made of five chapters.
 * CoreElements;
 * Non-Functional Properties: This chapter specifies some notations to define various kinds of values related to physical quantities: time, mass, energy;
 * Time: This chapter defines a rich model of time that supports both the definition of physical and logical time properties;. It comes with a companion language called CCSL defined as an annex.
 * Generic Resource Modeling: This chapter offers extensions required to model a general platform for executing real-time embedded applications;
 * Allocation Modeling: Finally, this chapter defines a notion of allocation to allocate application elements onto the execution platforms. A specific attention has been given to maintain compatibility with SysML allocation mechanism.