<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Towards Integration of Modeling Methods for Cyber-Physical Systems</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Ivan Ruchkin Institute for Software Research Carnegie Mellon University Pittsburgh</institution>
          ,
          <addr-line>PA 15213</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>-Safety-critical Cyber-Physical Systems (CPS) are growing increasingly more distributed, autonomous, and embedded in our society. CPS engineering relies on modeling methods from different fields. Such methods are difficult to combine due to their complexity and heterogeneity. Inconsistencies between models and analyses can lead to implicit design errors, which lead to critical CPS failures. Existing approaches to CPS model integration fall short in terms of their flexibility, effectiveness, and formal guarantees. To overcome these limitations and achieve better integration, I propose an integration approach based on architectural views and analysis contracts. To enable my approach I develop a model-view consistency support framework, an analysis contracts framework, and a verification method for multi-model integration properties. I claim that my approach is feasible, more effective, and more cost-efficient than the existing ones. I plan to validate my claims on realistic industrial academic case studies of CPS modeling.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>I. PROBLEM: MODELING METHODS INTEGRATION</title>
      <p>
        Modern software systems are growing increasingly more
distributed, autonomous, and embedded in physical world.
Such systems are important in science and technology because
they offer socioeconomic benefits beyond classic embedded
systems. For instance, self-driving cars promise dramatic
reductions in the accident rate [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. I will call systems with these
characteristics Cyber-Physical Systems (CPS) because they
are software-controlled and interact with complex physical
world, although other names such as autonomous robotics and
mechatronics are often used to describe such systems as well.
      </p>
      <p>
        Safety-critical CPS are difficult but important to engineer
correctly. To tackle complex analog and digital processes, CPS
design and quality assurance rely on model-driven engineering
from various engineering fields, such as artificial intelligence,
control theory, and mechatronics. This diversity of methods
leads to complex and heterogeneous engineering processes that
are hard to combine for one system’s design. For example, at
least six distinct models of computation may need to co-exist
in a single system model [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>
        Ad hoc integration between diverse modeling methods may
lead to miscommunication and inconsistencies, which turn
into design errors and ultimately system failures [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. I will
refer to such critical lack of integration as the Problem of
      </p>
      <sec id="sec-1-1">
        <title>Modeling Methods Integration (MMI). Although partial solu</title>
        <p>
          tions to the MMI problem exist, CPS community has not yet
developed general, effective, and practical ways to integrate
CPS modeling and design methods [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. As a result,
safetycritical CPS are prone to implicit errors that take a substantial
amount of time, effort, and funds to discover and fix. For
example, in the General Motors ignition switch recall case it
took years to discover an unexpected interaction between the
mechanical and electrical designs of the ignition switch that
lead to failures, loss of lives, and expensive recalls [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ].
        </p>
        <p>
          Some aspects of the integration problem have been
successfully addressed in related research (see next section for
details). However, several important integration issues have
not yet been adequately addressed. One of them is the
informality of relations between models and their
integrationlevel representations (such as views). This relationship may
be straightforward to establish and maintain for
componentbased models such as Simulink1 and Verilog2. However, some
CPS models do not have syntactic support for component, or
their components are significantly different from the traditional
object-oriented modularization. For example, it is difficult
to componentize hybrid programs [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] which formally are
sequences of non-deterministic discrete jumps and continuous
evolutions. One way to deal with the absence of model
structure is to rely on the engineer’s judgment and insight
to maintain the relationship to a view. However, this is
effortintensive and error-prone.
        </p>
        <p>
          Another aspect of the problem is that system designs
undergo constant change. It is increasingly common to use
automated tools and algorithms to analyze models and derive their
updated versions. I call such tools and algorithms analyses.
Analyses are based on theories from specific engineering and
scientific domains. For example, in the domain of processor
scheduling one finds thread-to-processor allocation via
binpacking and processor frequency scaling [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] to derive an
optimal architecture of a real-time system. Some analyses change
models: frequency scaling adjusts the frequency property of
processor components. For such analyses, it is impractical to
re-establish consistency after every change: for every change
many global properties may need to be re-verified before
another change is executed. Besides, analyses often make
implicit assumptions about the system or its environment, and
it is important to verify these assumptions.
        </p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>1mathworks.com/products/simulink 2verilog.com</title>
      <p>
        Finally, some multi-model consistency properties and an- with universal semantics that would hopefully serve as a lingua
alytic assumptions need to be expressed not only in terms franca of all CPS modeling methods. Such solutions often lead
of architectural elements (like components and connectors), to complex descriptions and an state space explosion, thus
but also in domain-specific terms that are not defined in not scaling properly for large systems. The second way is to
the architecture. Often such terms are too semantically low- preserve the diversity and heterogeneity of models through
level, and fully defining them in architectural views would be model integration. I will review several such frameworks in
impractical because one would have to “import” the full se- the remainder of this section.
mantics of the model, thus defeating the purpose of integration Software and systems engineering have a long heritage in
abstractions. As the next section describes, current integration compositional methods, some of which are being adapted to
approaches lack a way to express model-specific terms without CPS. One strand of research uses component contracts for
fully bringing the model semantics to the architectural level. composition [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]: each component has an interface with a
II. RELATED WORK formal contract. This approach works well for distributed
development of systems, but is often not appropriate for
cross
      </p>
      <p>
        CPS engineering combines various modeling methods to cutting qualities like safety and security, since these qualities
address systemic properties like safety, stability, schedulability, would need to be propagated to almost every component
inefficiency, security, and others. A modeling method is a cohe- terface, leading to scalability issues. Another way to compose
sive set of formalisms, algorithms, and processes to represent, system parts is by unifying components through their behavior
design, and analyze a system towards satisfaction of certain relations [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. This is practical when behaviors are known and
properties. Much recent work on CPS modeling has focused can be easily specified, which, however, is not always the case
on formalisms and models. The related work can be split into for complex systems. My work takes the ideas of
contracttwo categories: individual CPS modeling methods that I build based reasoning to a novel level of model-based analyses.
upon and try to incorporate into my approach, and CPS model Ptolemy II [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] is an environment for simulation of diverse
integration approaches that can be seen as alternative solutions models of computation like state machines, timed automata,
to the MMI problem. and differential equations. Unfortunately, simulation does not
A. Modeling Methods for Cyber-Physical Systems provide strong theoretical guarantees like verification would,
and not every CPS model has an explicit computation model.
      </p>
      <p>
        OpenMETA [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] is a platform based on formal logical
semantic integration through metamodels. Despite its strong
theoretical guarantees there is little guidance for models that
do not have explicit metamodels. Another limitation is that
metamodel integration does not directly support verification
of changes to models. My research overcomes the limitations
of these platforms.
      </p>
      <p>
        A promising set of architectural approaches to the MMI
problem focuses on choosing appropriate views for each CPS
formalism using annotated graphs as an underlying formalism
[
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. Flexibility of graph annotations enables customization for
each model and a variety of possible consistency verification
methods [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. However, the architectural approach currently
has several limitations. First, model-view relations are
informal and require substantial manual effort to create and update
throughout the engineering process. Another limitation is that
consistency is fragile due to frequent algorithmic changes to
models. Finally, consistency properties have limited
expressiveness confined solely to the architectural level, incapable
of expressing richer properties.
      </p>
      <p>
        Modeling methods for CPS differ depending on the
scientific field from which they originate. Since CPS engineering
revolves around the boundary between discrete digital and
continuous physical worlds, one of the most important
characteristics of modeling methods is their treatment of potentially
continuous phenomena, such as time and space. At one end
of this spectrum are classic software engineering models
like statecharts and process algebras [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. These have support
for composability and automated verification. However, their
treatment of continuous phenomena is often too limited for
CPS.
      </p>
      <p>
        At the other end of the spectrum are models that include
continuities, like differential and difference equations [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] and
engineering tools like Simulink [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Although these models
are well-suited for traditional control settings, it is
increasingly difficult to apply such models to complex autonomous
systems. For instance, it is challenging to analyze behavioral
planning in signal-flow control models. The field of hybrid
systems aims to reconcile discrete and continuous system
dynamics. A common model is a hybrid automaton [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] that
combines continuous evolutions along differential equations
with discrete state jumps. Although this field has enjoyed
success in symbolic and numeric computation for analysis of
hybrid models, these models are notoriously complex, have
limited scalability, and lack typical modularity mechanisms
[
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], which makes them difficult to combine with common
software and systems engineering methods.
      </p>
    </sec>
    <sec id="sec-3">
      <title>III. PROPOSED SOLUTION: MULTI-LEVEL ARCHITECTURAL AND ANALYTIC APPROACH</title>
      <sec id="sec-3-1">
        <title>B. Integration Approaches</title>
        <p>Currently there are two major ways of addressing the MMI
problem. One is to create a single language or formal system
My research aims to improve the state-of-the-art in CPS
modeling method integration by employing a multi-level
approach to the MMI problem. One abstraction is architectural
views that represent model aspects that are relevant for
integration. The other level is the analysis level that considers
algorithms that change models and infer information from
them. Combining these two levels leads to a holistic and
effective treatment of CPS modeling integration issues.</p>
        <p>The overall scheme of my approach is shown in Fig. 1.
Consider two heterogeneous models to be integrated. The
models are not completely independent, and there exists some
relationship between them (the cloud). However, this
relationship is often too complex to express or verify directly.
Instead, I create architectural view abstractions with
integrationrelevant information for each model. The views need to be
general enough to accommodate different formalisms and CPS
application domains.</p>
        <p>
          To support systematic change of models I introduce analyses
as part of the conceptual framework. Analyses read and change
views, which propagate the changes to models. Analyses often
make assumptions that must be satisfied for the analysis to
be correct. For instance, frequency scaling is only
applicable if the system is deadline-monotonic [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]. If an analysis’
assumptions are not satisfied, this analysis may produce an
incorrect result, and therefore should not be executed. Since
some analyses modify the same set of views, input-output
dependencies arise and have to be properly resolved.
        </p>
      </sec>
      <sec id="sec-3-2">
        <title>A. View Level</title>
        <p>
          The view level is used to mediate complex interaction
between analyses and models. A key to this mediation is
creating and maintaining two kinds of relations: view-view
and model-view. The former is more straightforward because
views are specified in architecture description languages that
have generally homogeneous structure of components and
connectors. Therefore this relationship can be maintained
using a number of well-established techniques such as model
transformation [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ] or synchronization [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ].
        </p>
        <p>Model-view relations, on the other hand, require a more
special link between architectural descriptions and potentially less
structured models. I employ partial transformations and
annotations to overcome this problem. Mechanisms to establish
and update model-view relations have to be customized to the
particular formalism in order to be effective. I take advantage
of the flexibility of architectural styles – custom vocabularies
of architectural elements – to support customization and tailor
transformation algorithms.</p>
        <p>
          Another function of the view level is establishing
consistency between models through their views. This is done
using consistency rules, which take form of constraints over
multiple views and can be verified with constraint solving,
for example SMT [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]. Properties that contain model-specific
terms (e.g., the current charge of a battery cell) require more
sophisticated verification methods such as model checking or
theorem proving.
        </p>
      </sec>
      <sec id="sec-3-3">
        <title>B. Analysis Level</title>
        <p>The analysis level automates sound execution of
modelbased analyses, which depends on sound ordering and
satisfaction of assumptions and guarantees. To facilitate soundness
checking I designed the language of analysis contracts. Every
analysis is accompanied by its contract C that specifies inputs
I, outputs O, assumptions A, and guarantees G of the analysis,
in short C (I; O; A; G).</p>
        <p>Sound analysis ordering is one where all analyses go in
order of their dependencies. For example, if analysis A1
depends on analysis A2, then A2 should be executed before
A1. A sound sequence of analyses is built by creating an
analysis dependency graph and selecting any topological ordering
that ends with the desired analysis. The only exception for
this method is when there are cyclical dependencies, which
requires more sophisticated methods of dependency resolution.</p>
        <p>To summarize, my approach promises more effective and
less expensive CPS modeling method integration. The next
section presents preliminary evidence to supports that claim.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>IV. PRELIMINARY WORK Here I describe two significant results: architectural views for hybrid programs and the analysis contracts framework.</title>
      <sec id="sec-4-1">
        <title>A. Architectural View for Hybrid Programs</title>
        <p>
          The hybrid program (HP) modeling and proving method,
based on hybrid programs and differential dynamic logic (dL)
[
          <xref ref-type="bibr" rid="ref6">6</xref>
          ], is particularly difficult to integrate with other modeling
methods, in part due to HP expressiveness and lack of
language support for modularity. Each hybrid program contains
fragments of various concerns that are highly intertwined
with each other, leading to poor modularity and possibility
of compositional errors [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ].
        </p>
        <p>To incorporate hybrid programs into my approach, I defined
how architectural elements can be transformed into hybrid
programs. That enabled high-level design and reasoning about
HPs and at the same time eliminated manual effort of
modelview consistency maintenance. A foundational abstraction
for HP is an architectural view that contains actors HPA,
composers CPR, and connectors HPC . I defined an algorithm
to transform a view into a single HP via transformation
functions of CPR and HPC . Given a view, it is possible to
reuse its parts and express its properties in dL, thus the level
of abstraction is elevated to components and systems from
individual statements. I have also defined an analysis to check
whether a view has a proper compositional structure, e.g.,
whether an actor violates the laws of causality by manipulating
variables of another actor outside existing connectors.</p>
        <p>
          This work on architectural abstractions for hybrid programs,
implemented as a plugin to AcmeStudio [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ], demonstrated
feasibility and auxiliary benefits of automated support for
model-view relationships.
        </p>
      </sec>
      <sec id="sec-4-2">
        <title>B. Analysis Contracts Framework</title>
        <p>
          This work investigated theoretical and practical aspects of
using analysis contracts for integration [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]. Theoretical goals
were designing a syntax and semantics for contracts and
creating algorithms that ensure sound execution of analyses.
Practical goals included application for existing domains beyond
the original thread scheduling and creation of an extensible
framework for analysis execution and contract verification.
        </p>
        <p>
          To reach the theoretical goal I defined the syntax of
analysis contracts and described their semantics over verification
domains – collections of sets and functions that describe the
essential elements of a technical domain. Towards the practical
goal I designed and implemented the ACTIVE tool [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ] 3 that
supports execution of analyses in the OSATE2 architectural
environment 4 for AADL.
        </p>
        <p>
          This research showed that analysis contracts are suitable
for detection and prevention of integration errors in several
domains: threads scheduling, battery scheduling [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], sensor
trustworthiness, reliability, and control [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ]. This work
demonstrated the improvements in effectiveness and cost-efficiency
in my approach to CPS modeling method integration.
        </p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>V. EXPECTED CONTRIBUTIONS</title>
      <p>If successful, the proposed research will make the following
contributions to the theory of model-driven engineering and
cyber-physical systems:</p>
      <p>A formal description of the model-view consistency
mechanism and algorithms for its continuous update.
A language for analysis contract specification and
algorithms to support sound execution of analyses. These
algorithms include resolution of analytic data dependencies
and analysis contract verification.</p>
      <p>A language for expressing model-specific consistency
properties and analytic assumptions.</p>
      <p>If successful, the proposed research will make the following
contributions to the practice of model-driven engineering and
cyber-physical systems:</p>
      <p>Implementation of the model-view formalism for Acme
in the AcmeStudio architectural environment.</p>
      <p>Implementation of the analysis contracts approach for
AADL in the OSATE2 architectural environment.</p>
    </sec>
    <sec id="sec-6">
      <title>3Available at github.com/bisc/active 4wiki.sei.cmu.edu/aadl/index.php/Osate 2</title>
      <p>Implementation of the property language for AADL in
the OSATE2 architectural environment.</p>
      <p>A case study of integrating modeling methods in a
realistic industrial or academic CPS project.</p>
      <p>Depending on the available time and resources, a number
of optional contributions can be made:</p>
      <p>A library of reusable CPS analyses, their contracts, and
view consistency rules;
An instantiation of the model-view mechanism for
another representative CPS formalism like mechanical 3D
CAD models or Simulink;
Theoretical analysis of the property specification method
in terms of its expressiveness and soundness.</p>
      <p>VI. PLAN FOR THESIS EVALUATION AND VALIDATION
Below I make research claims about feasibility, correctness,
effectiveness, and generality of my approach to CPS modeling
method integration.</p>
      <p>Feasibility: it is be possible to implement my approach in
a tool environment that integrates CPS models. I.e., the tool
should be capable of integrating representative CPS models
and integration abstractions by specifying and verifying
integration consistency. I plan to validate feasibility by
implementing the approach in a software tool.</p>
      <p>Correctness: verification procedures for the analysis
contracts and integration properties are sound. That requires
demonstrating that the algorithms theoretically achieve their
goals of detecting and preventing inconsistencies in models.</p>
      <p>Effectiveness: my approach semi-automatically detects and
prevents modeling method integration errors that would
otherwise be missed. I plan to validate effectiveness of the approach
by applying it to collections of models for several systems and
showing that it can detect errors that would otherwise have not
been made explicit.</p>
      <p>Generality: my approach applies to a broad range of CPS
modeling methods. I will validate this claim by demonstrating
the applicability of my approach to several representative CPS
modeling methods.</p>
      <p>
        Since a significant part of this thesis research is applied, it is
critically important to evaluate these claims on practical
cyberphysical systems and projects. Therefore, I plan to combine
several validation methods. First, I check feasibility of my
constructs and approach by implementing prototypes of
suggested tools. I selected AcmeStudio and OSATE2 because the
former already served as a platform for multi-view CPS model
consistency research [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], and the latter supports multiple
architectural CPS analyses based on AADL. Second, I plan
to evaluate effectiveness and generality of my research on
realistic industrial or academic projects (examples are below)
by taking them as case studies and applying my approach
to integrate modeling methods. In addition to the first two
approaches, I will use theoretical validation to investigate
formal guarantees of my research in a form of theorems.
      </p>
      <p>Finding appropriate CPS case studies can be challenging.
To simplify the search I establish the following criteria for the
desired case study projects:
Heterogeneity: the project has at least two heterogeneous
models or informal representations that are not integrated.
Applicability: the system should have or have a possibility
of having discrepancies between models or
representations that would lead to critical design errors.</p>
      <p>Realism: a project is intended for practical use in industry
or academia.</p>
      <p>Scale: the project should involve at least three engineers.
Timing: the scope of the system can be adjusted so that
validation does not take longer than one person-year.</p>
      <p>
        Currently the candidate systems for conducting an
integration case study are: the NASA Europa spacecraft, 5 the Andy
Lunar Rover,6 the SMACCMPilot quadrotor, 7 the STARMAC
quadrotor, 8 and the Toyota powertrain [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ].
      </p>
    </sec>
    <sec id="sec-7">
      <title>VII. CURRENT STATUS</title>
      <p>Most of the fundamental research towards my dissertation
has been completed, but several theoretical and practical
aspects remain. The tasks are summarized in Tab. I, with the
required work estimated to be completed in 11–16 months.
The next steps in my research focus on finalizing the design
of the multi-model property language and conducting a case
study of model integration.</p>
      <p>Task
Contract framework design
Contract framework implementation
Model-view mechanism design
Model-view mechanism
implementation
Multi-model property language design
Multi-model property verification
implementation
Case study search
Case study execution
Thesis writing
Thesis defense
(Optional) Theoretical evaluation of
model-view mechanism
(Optional) Another instantiation of
model-view mechanism
(Optional) Contract &amp; property library
Total without optional
Total with optional</p>
      <p>Months left
0
0.5
0.5
1
50%
50%</p>
    </sec>
    <sec id="sec-8">
      <title>ACKNOWLEDGEMENTS</title>
      <p>I thank my advisor David Garlan for his guidance and
support, and my collaborators Dionisio De Niz, Sagar Chaki,
Bradley Schmerl, Ashwini Rao, and others for contributing to
this research. This work is supported by the National Science
Foundation under Grant CNS-0834701, by the National
Security Agency, and by the Department of Defense under Contract
No. FA8721-05-C-0003 with Carnegie Mellon University for
the operation of the Software Engineering Institute, a federally
funded research and development center.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Paul</given-names>
            <surname>Gao</surname>
          </string-name>
          , Russel Hensley, and Andreas Zielke, “
          <article-title>A road map to the future for the auto industry,” McKinsey Quarterly</article-title>
          , Oct.
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>P.</given-names>
            <surname>Derler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. A.</given-names>
            <surname>Lee</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A. L.</given-names>
            <surname>Sangiovanni-Vincentelli</surname>
          </string-name>
          , “
          <article-title>Addressing Modeling Challenges in Cyber-Physical Systems</article-title>
          ,” University of California, Berkeley, Tech. Rep. UCB/EECS-2011-17, Mar.
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>J.</given-names>
            <surname>Sztipanovits</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Koutsoukos</surname>
          </string-name>
          , G. Karsai,
          <string-name>
            <given-names>N.</given-names>
            <surname>Kottenstette</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Antsaklis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Gupta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Goodwine</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Baras</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Wang</surname>
          </string-name>
          , “
          <article-title>Toward a Science of Cyber-Physical System Integration,”</article-title>
          <source>Proceedings of the IEEE</source>
          , vol.
          <volume>100</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>29</fpage>
          -
          <lpage>44</lpage>
          , Jan.
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>M.</given-names>
            <surname>Wolf</surname>
          </string-name>
          and E. Feron, “
          <string-name>
            <surname>What Don'T We Know About CPS Architectures</surname>
          </string-name>
          <article-title>?</article-title>
          ”
          <source>in Proceedings of the 52Nd Annual Design Automation Conference</source>
          , ser.
          <source>DAC '15</source>
          . New York, NY, USA: ACM,
          <year>2015</year>
          , pp.
          <volume>80</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>80</lpage>
          :
          <fpage>4</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Anton</given-names>
            <surname>Valukas</surname>
          </string-name>
          , “Report to Board of Directors of General Motors Company Regarding Ignition Switch Recalls,” Jenner &amp; Block, Tech. Rep., May
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>A.</given-names>
            <surname>Platzer</surname>
          </string-name>
          , “
          <article-title>Differential Dynamic Logic for Hybrid Systems</article-title>
          ,
          <source>” Journal of Automated Reasoning</source>
          , vol.
          <volume>41</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>143</fpage>
          -
          <lpage>189</lpage>
          , Aug.
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>I.</given-names>
            <surname>Ruchkin</surname>
          </string-name>
          , D. De Niz,
          <string-name>
            <given-names>S.</given-names>
            <surname>Chaki</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Garlan</surname>
          </string-name>
          , “
          <article-title>Contract-based Integration of Cyber-physical Analyses,”</article-title>
          <source>in Proceedings of the 14th International Conference on Embedded Software, ser. EMSOFT '14</source>
          . New York, NY, USA: ACM,
          <year>2014</year>
          , pp.
          <volume>23</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>23</lpage>
          :
          <fpage>10</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>J.</given-names>
            <surname>Magee</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Kramer</surname>
          </string-name>
          , Concurrency: State Models &amp;
          <article-title>Java Programs</article-title>
          . Wiley, Apr.
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>J.</given-names>
            <surname>Dabney</surname>
          </string-name>
          and
          <string-name>
            <given-names>T. L.</given-names>
            <surname>Harman</surname>
          </string-name>
          ,
          <source>Mastering SIMULINK 2</source>
          . Upper Saddle River,
          <string-name>
            <given-names>N.J.: Prentice</given-names>
            <surname>Hall</surname>
          </string-name>
          ,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>R.</given-names>
            <surname>Alur</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. A.</given-names>
            <surname>Henzinger</surname>
          </string-name>
          , and H. Wong-toi,
          <source>“Symbolic Analysis of Hybrid Systems</source>
          ,”
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>I.</given-names>
            <surname>Ruchkin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Schmerl</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Garlan</surname>
          </string-name>
          , “
          <article-title>Architectural Abstractions for Hybrid Programs</article-title>
          ,”
          <source>in Proceedings of the 18th International ACM SIGSOFT Symposium on Component-Based Software Engineering</source>
          , ser.
          <source>CBSE '15</source>
          . New York, NY, USA: ACM,
          <year>2015</year>
          , pp.
          <fpage>65</fpage>
          -
          <lpage>74</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>A.</given-names>
            <surname>Sangiovanni-Vincentelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Damm</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Passerone</surname>
          </string-name>
          , “Taming Dr. Frankenstein:
          <article-title>Contract-Based Design for Cyber-Physical Systems*</article-title>
          ,”
          <source>European Journal of Control</source>
          , vol.
          <volume>18</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>217</fpage>
          -
          <lpage>238</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>A.</given-names>
            <surname>Rajhans</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Bhave</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            <surname>Ruchkin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Krogh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Garlan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Platzer</surname>
          </string-name>
          , and
          <string-name>
            <given-names>B.</given-names>
            <surname>Schmerl</surname>
          </string-name>
          , “
          <article-title>Supporting Heterogeneity in Cyber-Physical Systems Architectures,”</article-title>
          <source>IEEE Transactions on Automatic Control</source>
          , vol.
          <volume>59</volume>
          , no.
          <issue>12</issue>
          , pp.
          <fpage>3178</fpage>
          -
          <lpage>3193</lpage>
          , Dec.
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>C.</given-names>
            <surname>Ptolemaeus</surname>
          </string-name>
          , System Design, Modeling, and
          <article-title>Simulation using Ptolemy Ii</article-title>
          . Ptolemy.org, Sep.
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>J.</given-names>
            <surname>Sztipanovits</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Bapty</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Neema</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Howard</surname>
          </string-name>
          , and
          <string-name>
            <given-names>E</given-names>
            .
            <surname>Jackson</surname>
          </string-name>
          , “
          <article-title>OpenMETA: A Model and Component-Based Design Tool Chain for Cyber-Physical Systems,” in From Programs to Systems The Systems Perspective in Computing (FPS</article-title>
          <year>2014</year>
          ). Grenoble, France: Springer, Apr.
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>P.</given-names>
            <surname>Fradet</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Mtayer</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Prin</surname>
          </string-name>
          , “
          <article-title>Consistency Checking for Multiple View Software Architectures,”</article-title>
          <source>Software Engineering ESEC/FSE 99</source>
          , vol.
          <volume>1687</volume>
          , pp.
          <fpage>410</fpage>
          -
          <lpage>428</lpage>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>A.</given-names>
            <surname>Bhave</surname>
          </string-name>
          ,
          <article-title>“Multi-View Consistency in Architectures for Cyber-Physical Systems,”</article-title>
          <source>Ph.D. dissertation</source>
          , Carnegie Mellon University, Dec.
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>J. d.</given-names>
            <surname>Lara</surname>
          </string-name>
          and
          <string-name>
            <given-names>H.</given-names>
            <surname>Vangheluwe</surname>
          </string-name>
          , “
          <article-title>AToM3: A Tool for Multi-formalism and Meta-modelling,”</article-title>
          <source>in Proceedings of the 5th International Conference on Fundamental Approaches</source>
          to Software Engineering, ser.
          <source>FASE '02</source>
          . London, UK, UK: Springer-Verlag,
          <year>2002</year>
          , pp.
          <fpage>174</fpage>
          -
          <lpage>188</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <surname>Istvn</surname>
            <given-names>Rth</given-names>
          </string-name>
          , Andrs krs, and Dniel Varr, “
          <article-title>Synchronization of abstract and concrete syntax in domain-specific modeling languages</article-title>
          ,
          <source>” Software and Systems Modeling</source>
          , vol.
          <volume>9</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>453</fpage>
          -
          <lpage>471</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>B.</given-names>
            <surname>Schmerl</surname>
          </string-name>
          and
          <string-name>
            <given-names>D.</given-names>
            <surname>Garlan</surname>
          </string-name>
          , “AcmeStudio: Supporting
          <string-name>
            <surname>Style-Centered Architecture</surname>
            <given-names>Development</given-names>
          </string-name>
          ,”
          <source>in Proceedings of the 26th International Conference on Software Engineering</source>
          , ser.
          <source>ICSE '04</source>
          . Washington, DC, USA: IEEE Computer Society,
          <year>2004</year>
          , pp.
          <fpage>704</fpage>
          -
          <lpage>705</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>I.</given-names>
            <surname>Ruchkin</surname>
          </string-name>
          , D. De Niz,
          <string-name>
            <given-names>S.</given-names>
            <surname>Chaki</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Garlan</surname>
          </string-name>
          , “
          <article-title>ACTIVE: A Tool for Integrating Analysis Contracts,” in The 5th Analytic Virtual Integration of Cyber-Physical Systems Workshop</article-title>
          , Rome, Italy, Dec.
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>I.</given-names>
            <surname>Ruchkin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Rao</surname>
          </string-name>
          ,
          <string-name>
            <surname>D. De Niz</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Chaki</surname>
            , and
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Garlan</surname>
          </string-name>
          , “
          <article-title>Eliminating Inter-Domain Vulnerabilities in Cyber-Physical Systems: An Analysis Contracts Approach</article-title>
          ,”
          <year>2015</year>
          ,
          <article-title>submitted for publication.</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>X.</given-names>
            <surname>Jin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. V.</given-names>
            <surname>Deshmukh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Kapinski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Ueda</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>Butts</surname>
          </string-name>
          , “Powertrain Control Verification Benchmark,”
          <source>in Proceedings of the 17th International Conference on Hybrid Systems: Computation and Control</source>
          , ser.
          <source>HSCC '14</source>
          . New York, NY, USA: ACM,
          <year>2014</year>
          , pp.
          <fpage>253</fpage>
          -
          <lpage>262</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>