<!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>A Roadmap and Some Directions Towards the Engineering of Interactive Systems Deployable in Safety Critical Contexts</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>David Navarre</string-name>
          <email>navarre@irit.fr</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Philippe Palanque</string-name>
          <email>palanque@irit.fr</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Célia Martinie</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Constraints from Safety Critical Context</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>ICS-IRIT, University of Toulouse</institution>
          ,
          <addr-line>118 Route de Narbonne, F-31062, Toulouse</addr-line>
          ,
          <country country="FR">France</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Technical University Eindhoven, Department of Industrial Design</institution>
          ,
          <addr-line>Eindhoven</addr-line>
          ,
          <country country="NL">Netherlands</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>This position paper presents how the engineering of interactive system may be impacted when these systems are designed to be deployed in safety critical contexts. These domains are specific as they are usually driven by constraining standards defining precisely best practices and mandatory processes to be applied. We thus discuss on how it is possible to take into account these constraints in real-life domains where critical and non-critical components may coexist. Engineering approaches in this context must jointly exploit formal description techniques (for the critical parts) and standard software production techniques (for the non-critical part). More precisely, we will show how Engineering Interactive Systems in these domains impact particularly design and development processes, systems architectural aspects and developers' tasks. In the next section, we present the constraints introduced by the safety critical context on development processes that embed certification activities as well as standards (with a focus on aviation industry). Other domain like space, nuclear or Air Traffic Management propose specific standards with stronger or softer constraints but the overall approach remains the same. The third section presents how software and (more globally) system architectures must encompass specificities of current interactive systems and how they are deeply impacted by their critical nature. The fourth section focuses on the human aspect highlighting the specific need for usable tools to support software and system engineers. Last section concludes the paper and provides directions for future work. When dealing with safety critical systems, it is important to notice that all components of the whole system do not have necessarily the same level of criticality, requiring to carefully identify each of them in the early stages of the development process. In this section we present how this identification of levels of criticality is performed and more precisely how it is handled in civil aviation.</p>
      </abstract>
      <kwd-group>
        <kwd>Engineering Interactive Systems</kwd>
        <kwd>Critical systems</kwd>
        <kwd>Formal Models</kwd>
        <kwd>Fault-Tolerance</kwd>
        <kwd>Development Assurance Levels</kwd>
        <kwd>Technology Readiness Levels</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <sec id="sec-1-1">
        <title>Development Assurance Level (DAL) identification</title>
        <p>
          In civil aviation, the criticality level of a system (or component) is classified by means of
five Development Assurance Levels (DAL), introduced in the DO-178C standard [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] for
software components and in the DO-254 standard [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] for electronic hardware components.
These levels are directly linked to failure condition categories defined by certification
authorities such as EASA (European Aviation Safety Agency) or FAA (Federal Aviation
Administration). Table 1 presents the five Development Assurance Levels associated with
their failure condition category and its description (summarized from the EASA CS-25
standard [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]). As presented in the first row of Table 1, a failure having catastrophic
consequences (failure condition column) must not occur more often than once per 109 hours
of functioning (failure rate column). Such software must be developed following DAL A
processes and methods as defined in DO-178C [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ].
        </p>
        <p>Development As- Failure
condisurance Level tion categories</p>
        <p>A
B
C
D
E</p>
        <p>Description of the failure Failure rate</p>
        <p>conditions (failures/hour)
Catastrophic cFraaisluhre conditions that may cause a 1E0x-t9re+mfealiylsiamfeprobable
Hazardous aoFbnaiilpliuetryrefoohframcsraeanwlcaetr,ogoeorpnreeergdaauttecivetsehetihmpelpaancet 1E0x-t7remely remote
Major iFmaipluacret tihsasnighnaizfiacradnotu,sbut has lesser 1R0e-m5ote
Minor iFmapilaucrtetihsannoMticaejoabrle, but has lesser 1P0ro-3bable</p>
        <p>No safety effect No impact on dependability Any range</p>
        <p>The main difference between critical and non-critical software is that a lot of
verification activities must be satisfied with independence, thus leading to very expensive
software and system development. Identifying accurately the correct level of DAL is thus very
important in order to invest adequately development resources (not overspend on low
DAL systems and not underspend on critical software).</p>
        <p>
          ARINC specification 661 [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ] aims at providing a common ground for building
interactive software in the field of aeronautical industry. All interactive software in cockpits
(following ARINC 661 specification) is categorized as DAL C and thus can only be used for
the command and control of non-critical systems. On such systems, assuring that operators
will be able to perform their activities (even if the interactive system exhibits failures) is
an important issue to address. The zero-defect approaches (usually based on formal
approaches such as [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ]) try to guarantee that the interactive system will be defect free and if
it is a good mean for removing faults and bugs at development time, natural faults (such
as bit-flips due to radiations) are beyond their reach. Fault tolerance mechanisms are thus
to be added to guarantee that both input and output devices are not becoming single points
of failure, requiring to add redundancy, diversification and segregation of these
devices/software as proposed in [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] following ARINC 653 portion management standard
as in [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ].
        </p>
      </sec>
      <sec id="sec-1-2">
        <title>Certification</title>
        <p>
          As explained previously, the CS-25 standard [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] is the standard for certification
specification of the EASA for large aeroplanes. This document identifies requirements dedicated
to the cockpit in section 1302 called “Installed systems and equipment for use of the flight
crew”. Following this standard, the cockpit must allow the crew to safely perform all their
tasks and avoid error prone behaviors.
        </p>
        <p>
          However, during operations, some of the pilot tasks may involve several aircraft
systems with different DALs. For instance, after perceiving an alarm on the ECAM display
the pilot might decide to decrease flight level. In that case, he will successively use
information displayed by the Flight Warning System (DAL C) and trigger commands using the
Flight Control Unit (DAL A). In order to comply with CS 25 1302 it is thus important to
develop methods and tools capable of ensuring that goals can be reached and tasks can be
performed on systems of various DALs involving different techniques (formal and
nonformal) for their development as presented in [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ].
2.3
        </p>
      </sec>
      <sec id="sec-1-3">
        <title>Standards</title>
        <p>
          An important task in processes for critical systems is to ensure that high-level requirements
(HLR) have been explicitly (and in an exhaustive manner) gathered and described.
Beyond, the designs and developments must demonstrate that they take into account each of
these requirement and that such traceability is also part of the certification processes (e.g.
in Air Traffic Management [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]). Taking into account all HLR into development is an
objective and this is assessed by external bodies (for DAL A and DAL B software).
DO178C only identifies what must be done while annexes to that standard identify how thing
should/could be done. For instance, DO-333 annex [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] (page 101) states that high-level
requirements should be expressed in temporal logic (and more precisely Computational
Tree Logic [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]) while low-level requirements (LLR) should be expressed by state-based
description techniques. Compliance between these two representations must be done using
model-checking techniques [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ] (as illustrated by Fig. 1).
Dealing with interactive systems introduces specific HLRs that mix together a system
point of view (hardware and software) and an operation point of view (users’ tasks).
This would require the extension of such standards with the use of specific formal
description techniques covering both the system side and the operation side.
        </p>
        <p>
          Such approach has been proposed by [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ], highlighting (only for standard WIMP
interaction techniques), that a process should ensure completeness and consistency between a
mixed-criticality interactive application and users’ tasks to support design of multiple
DAL systems:
 Completeness: Aims at assessing if there is a system artifact dedicated to each
expected supported user tasks. For verification purpose, a focus must be put on having a
correspondence for each critical task.
 Consistency: As tasks may be critical, they should be performed using a critical part
of the application (higher DALs), while standard tasks may be performed without any
attention put on the criticality of the interactive software part they are performed with
(lower DALs).
3
        </p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>Architectures to deal with complexity</title>
      <p>The software architecture of an interactive critical system must be able to follow the
evolution of systems (input devices, output devices, interaction techniques…). Such an
everchanging context makes it very difficult to provide generic approaches to support design,
development and deployment. Designers need to go beyond the interactive application
design by providing new interaction techniques that encompass new input and output
deices which can be very cumbersome to design and evaluate. Developers of these systems
are repetitively facing the same issues of new devices integration, software redesign (due
to device drivers’ evolution) and above all poor reliability of the resulting system due to
the low level of maturity of the various components to integrate. Such constraints are even
stronger with high DAL critical components.</p>
      <p>
        As proposed in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], ensuring the modularity of the entire interactive system (including
hardware and software parts), leads to identify the building bricks that must be developed
for integrating new devices as well as the building bricks for merging information from
these devices in order to offer multimodal interactions to users. The proposed architecture
thus enables the separation of a complex system into several components that are then
easier to apprehend, allowing the separation of concerns and the locality of modification.
4
      </p>
    </sec>
    <sec id="sec-3">
      <title>Usable Tools to cope with complexity</title>
      <p>Providing support for process and architecture of complex interactive critical systems
requires the tools to cope with three challenges: they must be mature enough to support
industrial processes, they must support developers’ tasks, they must support models
engineering.
4.1</p>
      <sec id="sec-3-1">
        <title>Assessing the maturity of tools</title>
        <p>
          The Technology Readiness Levels (TRLs), defined in ISO 16290:2013 [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ] is a scale from
1 (Basic principles observed and reported) to 9 (Actual system “flight proven” through
successful mission operations) that defines conditions to be met to qualify the maturity of
an element within a system. Initially designed for space system hardware, it can be used
in many domains, including tool support.
        </p>
        <p>
          While industrial processes may require specific TRL for their tool support, it is
important to assess the maturity of proposed tools. However, in the field of interactive
software engineering, there is not any communication about the TRL of tools involved in
engineering interactive systems. We know for instance that PetShop [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ] has gone through
TRL3 (Analytical and experimental critical function and/or characteristic
proof-of-concept) at Airbus, but this did not lead to any publication or advertisement.
4.2
        </p>
      </sec>
      <sec id="sec-3-2">
        <title>Supporting models engineering</title>
        <p>Several tasks must be performed when producing models during the development of an
interactive system:
 When designing and developing interactive systems, the scope of the modeling
activities must be identified in order to determine which elements (related to the interactive
system to be developed) will be modeled and which types of models will be used. Then,
the user/engineer must analyze the extant system, as well as the needs and requirements
for the interactive system to be developed. After this analysis step, the production of
the models starts with the editing step. That step produces a first version of models.
 The verification step is then performed for checking the models in order to ensure that
they are complete and consistent.
 The validation step will then be initiated to check whether the model meets specified
needs and requirements.</p>
        <p>
          This editing-verification-validation loop will be performed again until the models are
complete, consistent and meet needs and requirements. When introducing several kinds of
models (e.g. task models and system models), the whole process thus must include the
cross validation of these models in order to check if they are complete and consistent.
While these steps are presented in an abstract way, the tools must be tuned for each
notation in order to best support models engineering. In [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] authors report how action theory
model can be used to design and evaluate modelling tools but only for notations based on
Petri nets.
4.3
        </p>
      </sec>
      <sec id="sec-3-3">
        <title>Supporting developer’s tasks</title>
        <p>
          In [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ], Brad A. Myers stated that “Programmers are Users Too…”, arguing that is it
necessary to promote specific design processes and evaluation method to developers.
        </p>
        <p>
          Such approach must be extended to modelling activities. For instance, applying (in that
context too) the seven stages of Norman action theory [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ] to modeling work highlights
specific activities to consider. The two main stages we are focusing on are:
 On the execution side, the activity of going from an intention to its actual transcription
into some model,
 On the evaluation side, the activity of perceiving model behavior and interpreting this
perception.
        </p>
        <p>One of the main advantages of this model is that it provides a generic framework for
investigating where the main difficulties can occur during system modeling which is a
highly demanding task on the engineer’s side. This framework thus provides design rules
for environments to support user's activities and reduce their difficulties.</p>
        <p>Norman action theory provides a generic framework for investigating where the main
difficulties can occur during system modeling activities performed by an engineer. Each
engineer task described in the previous section (editing, verification, validation and
crosstype validation of models) is a goal that must be accomplished during the development of
interactive systems. And for each of these goals, the seven stages of Norman action theory
can be used to analyze the low-level activities that the engineer will execute.
5</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Conclusion</title>
      <p>This position paper has advocated the fact engineering interactive system is far from
being a mature domain. This is due to the intrinsic nature of these systems that are directly
handled by human beings but also due to the fact that their deployment to critical contexts
is more and more of importance.</p>
      <p>Some work has been proposed over the years by different research groups of different
origins but integration is still needed so that engineers of such systems have processes,
notations, languages and tools adapted to their work.</p>
      <p>Lastly, interactive systems are currently of very low quality and exhibit defects and
failure at a very high rate. This is due to the fact that interaction techniques and interaction
technologies are a constant moving target trying to support better users, their needs and
their experience. In the future, interactive systems engineering should thus progress at a
higher pace than interaction technologies in order, first to catch up will current gap and
second to have interactive systems engineers adequately equipped for future challenges.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1. ARINC 661-
          <article-title>6 specification: Cockpit Display System Interfaces To User Systems, Prepared by AIRLINES ELECTRONIC ENGINEERING COMMITTEE, Published by AERONAUTICAL RADIO, INC</article-title>
          , sept,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Barboni</surname>
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Conversy</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Navarre</surname>
            <given-names>D.</given-names>
          </string-name>
          , Palanque P.
          <article-title>Model-Based Engineering of Widgets, User Applications and Servers Compliant with ARINC 661 Specification</article-title>
          . DSV-IS
          <year>2006</year>
          , LNCS, Springer Verlag,
          <fpage>25</fpage>
          -
          <lpage>38</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Clarke</surname>
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grumberg</surname>
            <given-names>O.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Peled P. Model</surname>
            <given-names>Checking</given-names>
          </string-name>
          , The MIT Press, Cambridge, Massachusetts,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Cronel</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dumas</surname>
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Palanque</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Canny</surname>
            <given-names>A.</given-names>
          </string-name>
          (
          <year>2019</year>
          )
          <article-title>MIODMIT: A Generic Architecture for Dynamic Multimodal Interactive Systems</article-title>
          . In: Bogdan C.,
          <string-name>
            <surname>Kuusinen</surname>
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lárusdóttir</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Palanque</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Winckler</surname>
            <given-names>M</given-names>
          </string-name>
          .
          <article-title>(eds) Human-Centered Software Engineering</article-title>
          .
          <source>HCSE 2018. Lecture Notes in Computer Science</source>
          , vol
          <volume>11262</volume>
          . Springer, Cham
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5. CS-25 - Amendment 17 -
          <string-name>
            <given-names>Certification</given-names>
            <surname>Specifications</surname>
          </string-name>
          and
          <article-title>Acceptable Means of Compliance for Large Aeroplanes</article-title>
          . EASA,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6. DO-178C / ED-12C,
          <article-title>Software Considerations in Airborne Systems and Equipment Certification, published by RTCA</article-title>
          and EUROCAE,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7. DO-254/ED-80.
          <article-title>Design Assurance Guidance for Airborne Electronic Hardware, published by RTCA</article-title>
          and EUROCAE,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8. DO-333
          <string-name>
            <surname>Formal Methods</surname>
          </string-name>
          <article-title>Supplement to DO-178C and DO-278A, published by RTCA</article-title>
          and
          <source>EUROCAE December 13</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <article-title>9. ESARR 6. EUROCONTROL Safety Regulatory Requirement</article-title>
          .
          <source>Software in ATM Systems. Edition 1</source>
          .0. http://www.eurocontrol.int/src/public/standard_page/esarr6.html (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Emerson</surname>
            <given-names>E.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Srinivasan</surname>
            <given-names>J</given-names>
          </string-name>
          .
          <article-title>Branching Time Temporal Logic</article-title>
          , in LNCS 354 p.
          <fpage>122</fpage>
          -
          <lpage>172</lpage>
          , Springer-Verlag
          <year>1988</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Fayollas</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martinie</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Navarre</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Palanque</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <year>2016</year>
          .
          <article-title>Engineering mixed-criticality interactive applications</article-title>
          .
          <source>In Proceedings of the 8th ACM SIGCHI Symposium on Engineering Interactive Computing Systems (EICS '16)</source>
          . ACM, New York, NY, USA,
          <fpage>108</fpage>
          -
          <lpage>119</lpage>
          . DOI: https://doi.org/10.1145/2933242.2933258
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Fayollas</surname>
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fabre</surname>
            <given-names>J-C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Palanque</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cronel</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Navarre</surname>
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Deleris</surname>
            <given-names>Y. A</given-names>
          </string-name>
          <string-name>
            <surname>Software-Implemented</surname>
          </string-name>
          Fault
          <article-title>-Tolerance Approach for Control and Display Systems in Avionics</article-title>
          .
          <source>IEEE Pacific Rim Dependable Computing conference</source>
          <year>2014</year>
          :
          <fpage>21</fpage>
          -
          <lpage>30</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Fayollas</surname>
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fabre</surname>
            <given-names>J-C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Navarre</surname>
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Palanque</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Deleris</surname>
          </string-name>
          .
          <article-title>Fault-Tolerant Interactive Cockpits for Critical Applications: Overall Approach</article-title>
          .
          <source>SERENE</source>
          <year>2012</year>
          : LNCS, Springer Verlag,
          <fpage>32</fpage>
          -
          <lpage>46</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Fayollas</surname>
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martinie</surname>
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Palanque</surname>
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barboni</surname>
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fahssi</surname>
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hamon</surname>
            <given-names>A.</given-names>
          </string-name>
          <article-title>Exploiting Action Theory as a Framework for Analysis and Design of Formal Methods Approaches: Application to the CIRCUS Integrated Development Environment</article-title>
          .
          <source>Handbook of Formal Methods in HumanComputer Interaction</source>
          <year>2017</year>
          :
          <fpage>465</fpage>
          -
          <lpage>504</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15. ISO/IEC IS 16290:
          <year>2013</year>
          :
          <article-title>Space Systems - Definition of the Technology Readiness Levels (TRLs) and their criteria of assessment</article-title>
          . International Organization for Standardization, Geneva, Switzerland,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Morris</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Huang</surname>
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Paepcke</surname>
            <given-names>A.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Winograd</surname>
            <given-names>T. Cooperative</given-names>
          </string-name>
          <string-name>
            <surname>Gestures</surname>
          </string-name>
          <article-title>: Multi-user Gestural Interactions for Colocated Groupware</article-title>
          .
          <source>ACM CHI Conf.</source>
          ,
          <year>2006</year>
          .
          <fpage>1201</fpage>
          -
          <lpage>1210</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Myers</surname>
            ,
            <given-names>B. A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ko</surname>
            ,
            <given-names>A. J.</given-names>
          </string-name>
          , LaToza, T. D. and
          <string-name>
            <surname>Yoon</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          <article-title>"Programmers Are Users Too: HumanCentered Methods for Improving Programming Tools,"</article-title>
          IEEE Computer, Special issue on UI Design,
          <volume>49</volume>
          , issue 7,
          <string-name>
            <surname>July</surname>
          </string-name>
          ,
          <year>2016</year>
          , pp.
          <fpage>44</fpage>
          -
          <lpage>52</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Norman</surname>
            ,
            <given-names>D. A.</given-names>
          </string-name>
          (
          <year>2013</year>
          ).
          <article-title>The design of everyday things: Revised and expanded edition</article-title>
          .
          <source>Basic books.</source>
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Sy</surname>
            ,
            <given-names>O</given-names>
          </string-name>
          , Bastide,
          <string-name>
            <surname>R</surname>
          </string-name>
          , Palanque,
          <string-name>
            <surname>P</surname>
          </string-name>
          , Le,
          <string-name>
            <surname>D-H</surname>
          </string-name>
          , Navarre,
          <string-name>
            <surname>D. “</surname>
          </string-name>
          <article-title>PetShop: a CASE Tool for the Petri Net Based Specification</article-title>
          and
          <source>Prototyping of CORBA Systems.” In 20th International Conference on Applications and Theory of Petri Nets, ICATPN'99</source>
          ,
          <string-name>
            <surname>Williamsburg</surname>
            ,
            <given-names>VA</given-names>
          </string-name>
          , USA.
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>