%%% $Id: relwork.tex,v 1.18 2004/12/30 18:03:50 schmidt Exp $

\section{Related Work}
\label{relwork}

Model-driven development (MDD) technologies are used in a variety of
contexts and domains.  For example, the OMG's Model Driven
Architecture (MDA)~\cite{Frankel:03} and Microsoft's Software
Factories~\cite{Greenfield:04} focus mainly on enterprise business
applications.  Other MDD technologies, such as Model-Integrated
Computing (MIC)~\cite{Janos:97}, focus on embedded systems.  More
recently, MDD technologies are aligning~\cite{MIC-PSIG} to add QoS
capabilities necessary to support DRE systems in domains ranging from
aerospace~\cite{LMCO:03} to telecommunications~\cite{Looking:03} and
industrial process control~\cite{Austria:03}.  This section describes
compares our research on MDD technologies with related work.

Our work on MDD technologies extends earlier work on
MIC~\cite{Janos:03,HarelGery:96,Lin:99,Gray:01} that focused on
modeling and synthesizing embedded software.  Examples of MIC
technology used today include GME~\cite{GME:01} and
Ptolemy~\cite{Lee:94} (used primarily in the real-time and embedded
domain) and MDA~\cite{MDA:01} based on UML~\cite{UML:01} and
XML~\cite{XML:00} (which have been used primarily in the business
domain).  Previous efforts using MIC technologies for QoS adaptation
have been applied to embedded systems comprising digital signal
processors or signal detection systems~\cite{Neema:02a,Sherif:03a},
which have a small number of fairly static QoS requirements.  In
contrast, our research on integrating CoSMIC and Cadena focuses on
enhancing and applying MIC technologies at a much broader level, {\em
i.e.}, modeling and controlling much larger scale DRE systems with
multi-dimensional simultaneous QoS requirements.

Other related MDD tools are the Virginia Embedded System Toolkit
(VEST)~\cite{VEST:03} and Automatic Integration of Reusable Embedded
Systems (AIRES)~\cite{AIRES:03}.  VEST is an embedded system
composition tool based on GME~\cite{GME:01} that (1) enables the
composition of reliable and configurable systems from COTS component
libraries and (2) checks whether certain real-time, memory, power, and
cost constraints of real-time and embedded applications are satisfied.
AIRES provides the means to map design time models of component
composition with real-time requirements to run-time models weaving
timing and scheduling attributes within the run-time models.  Although
VEST and AIRES provide modeling and analysis tools for real-time
scheduling and resource usage, they have not been applied to
QoS-enabled component middleware, which is characterized by complex
interactions between components, their containers and the provisioned
services, and across distributed components via real-time event
communication or request/response.  Moreover, our research on the
integration of CoSMIC and Cadena involves whole-system global analysis
of large-scale DRE system for end-to-end timing constraints, as well
as configuration and deployment.

Another project aimed at tool integration is the Open Tool Integration
Framework (OTIF)~\cite{OTIF}, which was developed by the Institute for
Software Integrated Systems (ISIS) at Vanderbilt University.  As
opposed to our approach -- where most features of Cadena and CoSMIC
were developed separately and with no initial idea of subsequent
integration -- OTIF explicitly provides a framework for integrating
tools developed as part of the DARPA MoBIES project~\cite{MoBIES}.
The MoBIES workflows are fairly complex and allow interoperations in
multiple directions among the tools.  These flows are not lossless in
most cases, however, so they were able to obtain seamless round-trip
interoperability in only one case, {\em i.e.}, between the {\em ESML}
and {\em OEP\_Configuration} formats, inside the ESML workflow.

OTIF provides a communication framework with facilities for storing
various versions of the same set of data written in different formats,
subscription/notify mechanism, and automatic triggering of
application-specific translators when certain data format are
submitted to the backplane (data repository).  OTIF requires, however,
that the actual (application-specific) semantic translators and the
(application-specific) tool adapters for actually performing the
communication and the translation be provided by the user.  Our work
with CoSMIC and Cadena helps improve upon earlier uses of OTIF by
selecting interchange formats and transformation semantics that can
accomplish more effective round-trip interoperability and lossless
communication between the two MDD development environments.
