<!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>CHESS: an open source methodology and toolset for the development of critical systems</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Silvia Mazzini</string-name>
          <email>silvia.mazzini@intecs.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>John Favaro</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Stefano Puri</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Laura Baracchi</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Intecs S.p.A. Pisa</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2016</year>
      </pub-date>
      <abstract>
        <p>This paper presents the CHESS open source methodology and toolset, aiming to improve MDE practices and technologies to better address safety, reliability, performance, robustness and other non-functional concerns, while guaranteeing correctness of component development and composition for critical embedded systems.</p>
      </abstract>
      <kwd-group>
        <kwd>Model-based</kwd>
        <kwd>component-based</kwd>
        <kwd>correctness-by-construction</kwd>
        <kwd>separation of concerns</kwd>
        <kwd>model transformation</kwd>
        <kwd>contract-based</kwd>
        <kwd>formal methods</kwd>
        <kwd>realtime analysis</kwd>
        <kwd>systems/software co-engineering</kwd>
        <kwd>open-source</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Page 59</p>
    </sec>
    <sec id="sec-2">
      <title>Introduction</title>
      <p>The speedup of technological progress and of time to market have caused all phases
of systems development to be compressed and accelerated. At the same time designing
and building complex systems involves many different roles and expertise (for
example, software, hardware and dependability engineering), with a consequent need for
systematic and disciplined development paradigms.</p>
      <p>A model driven engineering (MDE) approach is theoretically the ideal solution,
providing formal and semantically grounded support for the design of the system,
capable of capturing the overall characteristics as well as detailed properties of all its
composing parts.</p>
      <p>When designing software, MDE can exploit the unique opportunity that arises thanks
to the fact that software models are software themselves. This introduces the possibility
to generate a software product through a sequence of automated model transformations:
if the model in input provides all the required information and model transformations
are proved correct, the final software product is guaranteed to reflect the properties of
the model, thus implementing a correct-by-construction development process.</p>
      <p>Despite its theoretical credentials and academic acknowledgement, however,
industrial level tools may be inadequate or too expensive, and MDE is still often perceived
by the industry as an extra burden, so that, in our experience, more traditional
approaches are often pursued.</p>
      <p>
        With the CHESS methodology and supporting toolset (originally developed in the
CHESS project [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and then enhanced in the CONCERTO project [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] focusing on the
development of multi-core systems and on the extensions for a wider domain coverage)
we aimed to improve MDE practices and technologies to better address safety,
reliability, performance, robustness and other non-functional concerns, while guaranteeing
correctness of component development and composition for embedded systems.
      </p>
      <p>CHESS was developed as an open source project, mainly to improve its visibility,
usability and standardization. This approach is fundamental for enabling the most
fruitful collaboration between research and technology providers, allowing wide
exploitation of prototypes and thus an optimal basis for tool maturation. Moreover, in the area
of embedded critical systems targeted by CHESS, commercial off the shelf tools tend
to be extremely costly and somewhat rigid, whereas an open source technology has the
competitive advantage of its zero/low cost, while still supporting a feasible business
model, based on the providers’ offer of customizations, support, consulting and
training.
2</p>
    </sec>
    <sec id="sec-3">
      <title>The CHESS Component Model</title>
      <p>The CHESS methodology relies on the CHESS Component Model, which is built
around the concepts of components, containers and connectors. It supports the
separation of concerns principle, strictly separating the functional aspects of a component
from the non-functional ones.</p>
      <p>According to the CHESS Component Model, a component represents a purely
functional unit, whereas the non-functional aspects are in charge of the component’s
infrastructure and delegated to the container and connectors (Figure 1).</p>
      <p>
        The container [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] can be regarded as a wrapper enveloping the user’s component,
which is responsible for the realization of all non-functional properties that are specified
for the component that it embeds. The container also mediates the access of the
component to the executive services it needs from the execution platform. The connector
[
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] is responsible for the interaction between components; it allows to decouple
interaction concerns from functional concerns.
      </p>
      <p>From the interaction perspective, components are considered as black boxes that
expose only their provided and required interfaces. Non-functional attributes are specified
by decorating the component’s interfaces with non-functional properties; e.g. regarding
real-time concerns the activation pattern (e.g. sporadic or cyclic) can be specified for
each component’s provided operations.</p>
      <p>
        The declarative specification of non-functional attributes of a component, together
with its communication concerns, is used in CHESS for the automated generation of
the containers and connectors that embody the system’s infrastructure. In particular,
when a component is assigned to a processing unit, we can generate the container within
which the component is going to be deployed on the execution platform of the
processing unit. Indeed, the internal structure of containers depends on the non-functional
attributes required for the components they may embed. Deterministic rules need to
exist for containers to be automatically generated from the attributes set on the model.
For instance, for every computational model, execution platform pair, the set of
allowable containers realizing internal threads and its protected objects can be defined and
factored in a library of code archetypes, which can then be later used to simplifies
automatic code generation [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ].
      </p>
      <p>In principle, there is a default 1:1 correspondence between a component and its
container. However, if – e.g., for reasons of local optimization – selected operations of
distinct components should be allocated to the same thread, then multiple components
could be allocated to a single container.</p>
      <p>The key properties of the CHESS component model are compositionality and
composability. Compositionality is achieved when the properties of the system as a whole
can be determined as a function of the properties of the constituting components and
the execution environment. Composability, rather, is achieved when individual
components’ properties are preserved on component composition, deployment on target and
execution.</p>
      <p>
        Compositionality and composability are guaranteed in CHESS not only for
functional properties, but also for non-functional properties, such as real-time and
dependability. This way, the ambitious goal of composition with guarantees [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] is achieved,
implementing the correctness by construction [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] theory.
3
      </p>
    </sec>
    <sec id="sec-4">
      <title>The CHESS Design Flow</title>
      <p>Following the CHESS methodology, the user specifies the system’s components,
declaring their functional and non-functional properties, thus providing a Platform
Independent Model (PIM) to represent the solution to the problem, independent of any
specific implementation. Then the modeler complements the PIM with information on the
target platform and the deployment plan. By using a dedicate profile language, analysis
about failure propagation is performed at PIM level, for system, SW and platform
specification, to allow early dependability analysis.</p>
      <p>Automated model transformation produces a Platform Specific Model (PSM) from
the user PIM and platform specification; in particular the containers and connectors
entities are created in the PSM. The PSM is read-only: this way the implementation
product is guaranteed to be deterministic.</p>
      <p>Real-time analysis, such as schedulability analysis, end-to-end response time
analysis and analysis of different scheduling algorithms for multicore deployments, is
performed on the PSM, with back propagation of results to the PSM, PIM platform and
deployment models. The modeler can iterate these steps as many times as necessary
until satisfactory analysis results are obtained.</p>
      <p>At this point, the implementation is deployed to the HW, with run-time verification
support if needed. Run-time monitoring is activated to collect live data for run-time
monitoring analyses and back propagation of results.</p>
      <p>The CHESS methodology enables early verification, as possible inconsistencies and
integration issues will surface at the earliest stages of the process. It also supports
system-software co-engineering as a seamless process, by keeping traceability between
system level entities and requirements on one side and the corresponding software and
hardware level entities on the other side.
4</p>
    </sec>
    <sec id="sec-5">
      <title>Contract-based Modeling Extensions to CHESS</title>
      <p>
        Contract-based reasoning was first envisaged as an extension to CHESS in the ESA
funded FoReVer study [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] and further elaborated within the SafeCer project [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
Component properties are formalized in terms of contracts, composed of an assumption and
a guarantee models as formal properties, where the assumption is a constraint on the
component’s environment or usage, and the guarantee is a property that must be
satisfied by the component - provided that the environment satisfies the assumption.
      </p>
      <p>
        The CHESS extended methodology introduced stepwise refinement, where the
decomposition of a component is accompanied by the decomposition of its contracts, as
a central activity in the development process. Stepwise refinement is subject to formal
verification and is a key point in the overall verification process as in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ].
      </p>
      <p>
        Support for modeling contracts and for stepwise refinement is provided in the
extended CHESS toolset. Formal verification of the contract refinement is performed by
OCRA (Othello Contracts Refinement Analysis) [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] by Fondazione Bruno Kessler for
the verification of logic-based contracts refinement for embedded systems [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], which
is integrated in the CHESS extension.
      </p>
      <p>This extended methodology can be exploited at its best if a library of standard
qualified components with associated contracts is available. In the top-down modeling
process, a library of components represents a bottom-up driver to ensure convergence to a
feasible solution based on the reuse of possibly certified components.</p>
      <p>
        CHESS is currently the subject of extension and adaptation in the context of the
AMASS ECSEL project [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. The goal of AMASS [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] is to create an open tool
platform, ecosystem, and self-sustainable community for assurance and certification of
Cyber-Physical Systems for different domains of interest. In particular, the project will
investigate how the usage of CHESS, that is, its contract-based component model,
verification and code generation features, can enable architecture-driven assurance
support.
      </p>
    </sec>
    <sec id="sec-6">
      <title>The CHESS Toolset</title>
      <p>
        The CHESS toolset [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] provides an integrated framework to support the CHESS
methodology. It assists the modeler throughout the whole development process, following
the CHESS methodology, from the definition of requirements, to the modeling of the
system’s architecture, down to the software design and its deployment to hardware
components. It also offers support for the analysis of selected real-time and
dependability features (in particular, failure propagation and state-based) as well as code
generation functionality to automatically generate the infrastructure code needed to
implement the non-functional properties defined in the model. Generation of the
infrastructure code for Ada is currently supported; of course other target languages can be
addressed as well.
      </p>
      <p>
        The CHESS toolset was developed as a set of Eclipse plugins based on MDT
Papyrus (the Eclipse UML editor) and on the CHESS Modeling Language, which was
defined as an extension of the UML, SysML and MARTE modeling languages [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ].
      </p>
      <p>We decided to rely mainly on SysML for the modeling of requirements and for the
system level design, on UML for modeling software aspects of the system, and on
MARTE for describing the real-time aspects, staying as close as possible to the standard
modeling languages. In particular a profile has been defined on top of UML to model
failures definition and their intra/inter-components propagation, while SysML has been
extended to offer support for contract based design.</p>
      <p>MARTE has been used and extended to be able to model real-time properties for
component instance interfaces; indeed, MARTE support which allows to specify
realtime property for component’s operations exposed through ports (through the
RtSpecification entity), cannot be used at component instance level, which is the most
appropriate level where real-time properties must be provided (e.g. the periodic activation of
an operation can be different for two instances of the same component providing the
given operation).</p>
      <p>
        A specific profile was also developed for the avionics domain to allow modeling and
analysis of ARINC 653 architectures [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. This way the CHESS toolset provides an
open framework to accommodate the widest possible set of users from different
domains.
6
      </p>
    </sec>
    <sec id="sec-7">
      <title>The CHESS Open Source Project</title>
      <p>
        CHESS results are included in the PolarSys1 initiative, an industrial group for
promoting open source tools for embedded systems: the CHESS core technology is
available in PolarSys as open source project [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], and CHESS interfaces are published to
enable other platform and tool providers to develop additional features for integration
with CHESS and to exploit new CHESS functionalities as they become available. The
CHESS open source initiative has received valuable input from several academic
partners. Since the initial contribution provided by Intecs and University of Padua, new
      </p>
      <sec id="sec-7-1">
        <title>1 https://www.polarsys.org/</title>
        <p>contributors have joined the CHESS Polarsys project; in particular the Mälardalen
University and the University of Florence provided extensions for the modelling and
analysis of dependability properties of interest in their research. A proposal about extension
of the current support for contract based analysis is also currently under evaluation.</p>
        <p>Industrial parties have expressed interest in the CHESS project, also suggesting
desired improvements (e.g. C code generation support). Although usage of CHESS in the
industry is nascent, very positive results from case studies performed in several research
projects have demonstrated that the CHESS approach and toolset can offer valuable
support for the development of cyber-physical systems.</p>
        <p>The CHESS modelling environment is based upon the open source project Papyrus,
which is one of the most appreciated open source tools in the industry; in particular,
recently the Papyrus Industry Consortium2 has been created to support a model-based
engineering platform based on the domain specific and modeling capabilities of the
Eclipse Papyrus family of products. We think that having Papyrus as the baseline editor
can foster the interest around CHESS.</p>
        <p>
          Use of other open source resources has permitted us to make valuable extensions.
For example, real-time analysis is performed in the CHESS toolset thanks to its
integration with an extension to the MAST engine [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ], making it possible to perform
schedulability analysis and end-to-end response time analysis for multi-core
architectures. Another example is the dependability analysis support CHESS provides:
quantitative state based analysis is performed via integration with the DEEM server [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ] [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ]
(while qualitative dependability failure logic analysis to calculate system level failure
behavior given the failure behavior of the individual components established in
isolation [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ] is directly integrated in CHESS).
7
        </p>
      </sec>
    </sec>
    <sec id="sec-8">
      <title>Discussion and Conclusions</title>
      <p>The usage of the CHESS methodology and toolset has been experimented with in
the context of several research projects where use cases from different domains (e.g.
telecom, automotive, avionics, space, industrial automation and petroleum plants)
provided an interesting testbed for validation of the process and for providing domain
specific extensions to better accommodate specific needs and standards.</p>
      <p>In some occasions, when collaborating with industrial users to validate the tool, we
found that widely acknowledged commercial tools allow a higher degree of freedom to
the user and may be easier to use in a traditional development process, if compared to
the strictly disciplined and almost guided modeling process supported by CHESS. This
can be considered as a drawback, as it requires users to have a solid academic
background in modeling and imposes a slow learning curve at the beginning. However, the
higher level of freedom allowed by some commercial tools comes at the cost of
producing models for which feasibility analysis cannot always be performed in a sound
and deterministic manner.</p>
      <sec id="sec-8-1">
        <title>2 https://www.polarsys.org/ic/papyrus</title>
        <p>By following the systematic and rigorous design process prescribed by CHESS,
supported by its correct model transformations, the semantic meaning of each analysis
artefact and analysis operation is guaranteed to correspond to the semantic meaning of
the modelling artefact and decoration attribute in the user model. The user model is
therefore guaranteed, by construction, to be statically analyzable for feasibility.</p>
        <p>The CHESS methodology and toolset are in an advanced prototypical stage and may
need to be engineered, but we strongly believe that, being available as open source,
CHESS provides an important opportunity for the future of the development of
complex critical systems.
8</p>
      </sec>
    </sec>
    <sec id="sec-9">
      <title>Acknowledgements</title>
      <p>
        This work has been partially supported by the ARTEMIS-JU projects: CONCERTO
[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], CHESS [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and SafeCer [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], the ECSEL project AMASS [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] and by the ESA
funded project FoReVer [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
9
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>A.</given-names>
            <surname>Cicchetti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ciccozzi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Mazzini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Puri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Panunzio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Zovi</surname>
          </string-name>
          and
          <string-name>
            <given-names>T.</given-names>
            <surname>Vardanega</surname>
          </string-name>
          ,“
          <article-title>CHESS: A Model-Driven Engineering Tool Environment for Aiding the Development of Complex Industrial Systems”</article-title>
          ,
          <source>Proceedings of Automated Software Engineering</source>
          (ASE) International Conference, Essen,
          <year>July 2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2. CHESS PolarSys project, [Online], Available: https://www.polarsys.org/projects/polarsys.
          <source>chess [Accessed: July</source>
          <volume>15</volume>
          ,
          <year>2016</year>
          ].
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <article-title>3. CONCERTO project: “Guaranteed Component Assembly with Round Trip Analysis for Energy Efficient High-integrity Multi-core Systems”</article-title>
          ,
          <source>Artemis Call</source>
          <year>2012</year>
          333053, [Online], Available: http://www.concerto-project.
          <source>org/ [Accessed: July</source>
          <volume>15</volume>
          ,
          <year>2016</year>
          ] .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <article-title>4. CHESS project: “Composition with guarantees for high-integrity embedded software components assembly”</article-title>
          , [Online], Available: http://www.chess-project.
          <source>org/ [Accessed: July</source>
          <volume>15</volume>
          ,
          <year>2016</year>
          ].
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5. SafeCer project: “
          <article-title>Safety Certification of Software-Intensive Systems with Reusable Components”</article-title>
          , [Online], Available: http://safecer.eu/ [
          <source>Accessed: July</source>
          <volume>15</volume>
          ,
          <year>2016</year>
          ].
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6. FoReVer project: “
          <article-title>Functional Requirements and Verification Techniques for the Software Reference Architecture”, ESA funded project</article-title>
          , [Online], Available: https://esstatic.fbk.eu/projects/forever/ [
          <source>Accessed: July</source>
          <volume>15</volume>
          ,
          <year>2016</year>
          ]
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7. T. Vardanega, “
          <article-title>Property Preservation and Composition with Guarantees: From ASSERT to CHESS”</article-title>
          ,
          <source>in: Proc. of the 12th IEEE International Symposium on Object/Component/Service Oriented Real-Time Distributed Computing</source>
          ,
          <year>2009</year>
          ,
          <fpage>125</fpage>
          -
          <lpage>132</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>R.</given-names>
            <surname>Chapman</surname>
          </string-name>
          , “
          <article-title>Correctness by Construction: a Manifesto for High Integrity Software”</article-title>
          ,
          <source>Proceedings of the 10th Australian workshop on Safety critical systems and software -</source>
          Volume
          <volume>55</volume>
          ,
          <string-name>
            <surname>Pages</surname>
          </string-name>
          43-
          <fpage>46</fpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>L.</given-names>
            <surname>Baracchi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Mazzini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Garcia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Tonetta</surname>
          </string-name>
          , “
          <article-title>The FOREVER Methodology: a MBSE framework for Formal Verification”</article-title>
          ,
          <source>Proceedings of DASIA Conference</source>
          , Porto, May
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <article-title>AMASS project: “Architecture-driven, Multi-concern and Seamless Assurance and Certification of Cyber-Physical Systems”</article-title>
          , [Online], Available: http://www.amass-ecsel.
          <source>eu/ [Accessed: July</source>
          <volume>15</volume>
          ,
          <year>2016</year>
          ].
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>OCRA</surname>
          </string-name>
          <article-title>: “a command-line tool for the verification of logic-based contract refinement for embedded systems”</article-title>
          , [Online], Available: https://es-static.fbk.eu/tools/ocra/ [
          <source>Accessed: July</source>
          <volume>15</volume>
          ,
          <year>2016</year>
          ].
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Tonetta</surname>
          </string-name>
          , “
          <article-title>A Property-Based Proof System for Contract-Based Design”</article-title>
          .
          <source>EUROMICRO-SEAA</source>
          <year>2012</year>
          :
          <fpage>21</fpage>
          -
          <lpage>28</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <given-names>A.</given-names>
            <surname>Ruiz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Gallina</surname>
          </string-name>
          ,
          <string-name>
            <surname>J.L. de la Vara</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Mazzini</surname>
            and
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Espinoza</surname>
          </string-name>
          , “
          <article-title>AMASS: Architecturedriven, Multi-concern, Seamless, Reuse-Oriented Assurance and Certification of CPSs”</article-title>
          .
          <source>5th International Workshop on Next Generation of System Assurance Approaches for SafetyCritical Systems (SASSUR)</source>
          . SafeComp, International conference on computer safety, reliability and security, Trondheim,
          <year>September 2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>MAST</surname>
          </string-name>
          <article-title>: “Modeling and Analysis Suite for Real-Time Applications”</article-title>
          , [Online], Available: http://mast.unican.
          <source>es/ [Accessed: July</source>
          <volume>15</volume>
          ,
          <year>2016</year>
          ].
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>DEEM</surname>
          </string-name>
          <article-title>: “DEpendability Modeling and Evaluation of Multiple Phased Systems”</article-title>
          , [Online], Available: http://rcl.dsi.unifi.it/projects/tools [Accessed: July 15,
          <year>2016</year>
          ].
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <given-names>B.</given-names>
            <surname>Gallina</surname>
          </string-name>
          and E. Sefer, “
          <article-title>Towards Safety Risk Assessment of Socio-technical Systems via Failure Logic Analysis” submitted to RISK 2014</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>A.</given-names>
            <surname>Baldovin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Zovi</surname>
          </string-name>
          , G. Nelissen, S. Puri, “
          <source>The CONCERTO Methodology for ModelBased Development of Avionics Software” Chapter Reliable Software Technologies - AdaEurope 2015</source>
          Volume
          <volume>9111</volume>
          of the series Lecture Notes in Computer Science pp
          <fpage>131</fpage>
          -
          <lpage>145</lpage>
          ,
          <year>June 2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <article-title>“A Reusable Modular Toolchain for Automated Dependability Evaluation”</article-title>
          ,
          <source>Proceeding ValueTools '13 Proceedings of the 7th International Conference on Performance Evaluation Methodologies and Tools</source>
          pp
          <fpage>298</fpage>
          -
          <lpage>303</lpage>
          ,
          <year>December 2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19. “CHESSML profile”, [Online], Available: https://www.polarsys.org/chess/publis/CHESSMLprofile.pdf [
          <source>Accessed: July</source>
          <volume>15</volume>
          ,
          <year>2016</year>
          ].
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <given-names>N. R.</given-names>
            <surname>Mehta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Medvidovic</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Phadke</surname>
          </string-name>
          .
          <article-title>Towards a taxonomy of software connectors</article-title>
          .
          <source>In Pro. Of the 22nd International Conference on Software Engineering</source>
          , pages
          <fpage>178</fpage>
          -
          <lpage>187</lpage>
          ,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <given-names>M.</given-names>
            <surname>Bordin</surname>
          </string-name>
          and
          <string-name>
            <given-names>T.</given-names>
            <surname>Vardanega</surname>
          </string-name>
          .
          <article-title>Atomated model-based Generation of Ravenscar-Compliant Source Code</article-title>
          .
          <source>In Proc. If the 17th Euromicro Conference on Real-Time Systems</source>
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>