\section{Related work} \label{related} The Dedal \cite{Dedal10} context is the development of software based components. The life cycle of the software is composed of three steps: specification, deployment and exploitation, which are closely linked in term of maintenance. Dedal is an ADL which aim to define independently specification, configuration and assembly of an architecture, in order to coordinate the evolution of different levels of an abstraction. Usually, only two of the three levels are taken into account in the definition of ADLs. Three dimensions so define the language: \begin{itemize} \item The abstract specification of an architecture: it is the description of all roles played by components that participate in the realization of the architecture. At this level, the authors focus on the definition of roles of components, connections between component interfaces and behaviour of the architecture. \item The concrete configuration of an architecture: this is to define the classes of components and connectors used to implement the architecture. \item The assembly of an architecture: this step describes all instances, components and connectors that make up the architecture. Here, the authors assign values or constraints to the components. \end{itemize} In the Cheddar context, our objective is the proposition of an architecture description language for real-time applications, in order to perform scheduling analysis. Although it is not the same context, the description of Cheddar ADL is based on the same logic: software component for abstract specification, hardware component for concrete specification and binding for assembly.\\ The Architecture Analysis \& Design Language (AADL) is a SAE standard (AS-5506), first published in 2004~\cite{Feiler03}. AADL targets the design, analysis and integration of distributed real-time systems. An AADL model describes a system as a hierarchy of components with their interfaces and their connections. It allows the modelling of the software components and their interactions, and also of the execution platform. Component categories are \emph{process}, \emph{data}, \emph{thread}, \emph{subprogram} for the software modelling, and \emph{processor}, \emph{memory}, \emph{bus} and \emph{device} for the entities of the execution platform. The deployment of a software application onto an execution platform is specified through \emph{binding} properties. The execution of a software task may be assigned to one or a set of components of the execution platform. The AADL standard includes a large set of properties to precisely model system characteristics. Moreover, new ones may be appended to extend the description with regard to the expected system analysis. The AADL language is not especially dedicated to analysis of real-time systems. It takes into account more components, and the concepts is not very adapted for a classical designer of real-time systems. This is actually a language too heavy, too wide and not especially dedicated to the schedulability analysis of real-time systems. Moreover, it is not very adapted for a regular user of real-time systems. By example, \emph{device} is an inappropriate term for a classic user of real-time systems, whose objective is the schedulability analysis. \\ Modelling and Analysis of Real-Time Embedded systems (MARTE) is a standard UML profile promoted by the Object Management Group \cite{marte_spec} \cite{uml_spec} \cite{omg_web}. The profile adds capabilities to UML for Model-Driven Development \cite{Schmidt06_ModelDrivenEngineering} of real-time systems. MARTE thus provides support to specify and to design such a system but also to annotate the model for different kinds of analysis. MARTE was designed to cover a large area of real-time systems, including avionic, automotive or software radio systems. For example, the profile was designed so that all AADL concepts can be modelled in MARTE (\cite{marte_spec}, Annex A, section 2.3). The profile was also designed to support tools dedicated to real-time system (e.g. modeller, code generator, functional analyser, simulator). Several real-time analysing tools have been developed using MARTE, such as: \cite{Peraldi08}, which presented the MARTE model elements associated with the time model package of MARTE, and illustrated their use on an automotive case study. For that, they extracted the physical timing information and used it to perform a schedulability analysis. The real-time profile of MARTE is dedicated to model and analyse real-time systems, by cons, MARTE's approach is not to create new analysis methods, but to support existing ones, as opposed to Cheddar ADL which offers possibilities to take into account new analytical techniques.\\ In the context of automotive application, \cite{Anssi10} investigate schedulability of real-time systems at earliest design phases. Their approach is based on the combination of two modelling languages for system design: EAST-ADL2, which addresses modelling and analysis needs of automotive electronic systems and the integration of an open source toolset for scheduling analysis, MAST \cite{harbour01} \cite{Mast}. On one hand, EAST-ADL2 is an architecture description language defined as a domain specific language for the development of automotive electronic systems. On the other hand, MARTE is known for its rich expressive power for the modelling of system real-time properties and constraints. Their methodology has the objective of completing EAST-ADL models with MARTE entities to enable scheduling analysis at the design level. MAST is used to perform schedulability analysis. Other works based on EAST-ADLs have been done: It is the case of \cite{Goknil13}, which combines TADL2, Timing Augmented Description Language v.2, EAST-ADL and UPPAAL \cite{Behrmann04} to perform scheduling analysis of real-time systems. We can note that, like AADL, EAST-ADL is not initially designed to perform schedulability analysis, and the diversity of languages that are associated do not facilitates neither automatic code generation, nor reactivity about the integration of new components.\\ To easily cover new real-time scheduling models and techniques, \cite{Ouhammou11} propose an ADL: MoSaRT. This approach may be used to extract the scheduling information from different design methodologies and ADL used for system design such as UML-MARTE or AADL. The extracted information is then modeled with MoSaRT. Thus, it fills the gap between the conception abstraction level and the analysis abstraction level by capturing information relevant for analysis. Yet, this language is not dedicated to analysis itself, but to model transformation between ADLs with different purposes. Cheddar ADL is, on its side, built from the analysis methods it supports.