% $Id: relwork.tex,v 1.7 2006/01/04 19:35:52 dengg Exp $

\section{Related Work}
\label{sec:relwork}

Our work on MDD extends earlier work on Model-Integrated Computing
(MIC).  Examples of MIC technology used today include
GME~\cite{GME:01} and Ptolemy~\cite{Lee:01} (used primarily in
real-time and embedded domains) and Model Driven Architecture
(MDA)~\cite{MDA:01} based on UML and XML. Kennedy Carter's iUML
Product Suite~\cite{KC:04} supports the Executable UML process from
textual requirements management through modeling to complete target
code generation. The Rhapsody System Designer tool by I-Logix
(www.ilogix.com) is based on OMG's MDA and UML 2.0 specification,
and provides complete application generation from UML models, and
the generated application could be in multiple programming languages
including C/C++, Java or Ada, and multiple middleware platforms
including CORBA and COM. Both tools have proved many successes in
developing DRE systems. Unlike our approach, however, these MDD
tools are based on OMG's UML specification which is still in the
low-level solution space. In contrast, our work combines GME
metamodeling mechanisms and UML capability to model and synthesize
component middleware for configuring and deploying DRE systems,
which better unifies the problem space and solution space.

The {\em Embedded Systems Modeling Language} (ESML)~\cite{Karsai:02b}
was developed by ISIS at Vanderbilt University to provide a visual
metamodeling language that captures multiple views of embedded
systems, allowing a diagrammatic specification of complex models. The
modeling building blocks include software components, component
interactions, hardware configurations, and scheduling policies.  The
user-created models can be fed to analysis tools (such as AIRES, VEST,
and Cadena) to perform schedulability and event analysis. Using these
analyses, design decisions (such as component allocations to the
target execution platform) can be performed. Unlike PICML, ESML is
platform-specific since it is customized for the Boeing Bold Stroke
PRiSm QoS-enabled component model~\cite{Sharp:03,Wendy:03}.  ESML also
does not support nested assemblies and the allocation of components
are tied to processor boards, which is a proprietary feature of the
Bold Stroke component model.

Cadena~\cite{Hatcliff:03} is a MDD tool developed within Eclipse
Modeling Framework (EMF) for building component-based DRE systems,
with the goal of applying static analysis, model checking, and
lightweight formal methods to enhance these systems. Unlike our work
on CoSMIC, however, Cadena does not support activities such as
component packaging, generating deployment plan descriptors, and
hierarchical modeling of component assembly, thus it introduces
additional burden to DRE application developers to accomplish such
tasks. In our work, these aspects could be captured through PICML MDD
tool and then all the deployment and configuration work can be
automated using DAnCE. We are collaborating with the Cadena
researchers to create an integrated suite of MDD
tools~cite{Schmidt:04v}.

%%% Local Variables:
%%% mode: latex
%%% TeX-master: "isorc06-its"
%%% End:
