<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//TaxonX//DTD Taxonomic Treatment Publishing DTD v0 20100105//EN" "../../nlm/tax-treatment-NS0.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:tp="http://www.plazi.org/taxpub" article-type="research-article" dtd-version="3.0" xml:lang="en">
  <front>
    <journal-meta>
      <journal-id journal-id-type="publisher-id">109</journal-id>
      <journal-id journal-id-type="index">urn:lsid:arphahub.com:pub:3dc5f44e-8666-58db-bc76-a455210e8891</journal-id>
      <journal-title-group>
        <journal-title xml:lang="en">JUCS - Journal of Universal Computer Science</journal-title>
        <abbrev-journal-title xml:lang="en">jucs</abbrev-journal-title>
      </journal-title-group>
      <issn pub-type="ppub">0948-695X</issn>
      <issn pub-type="epub">0948-6968</issn>
      <publisher>
        <publisher-name>Journal of Universal Computer Science</publisher-name>
      </publisher>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.3897/jucs.70515</article-id>
      <article-id pub-id-type="publisher-id">70515</article-id>
      <article-categories>
        <subj-group subj-group-type="heading">
          <subject>Research Article</subject>
        </subj-group>
        <subj-group subj-group-type="scientific_subject">
          <subject>Topic D - Software</subject>
        </subj-group>
      </article-categories>
      <title-group>
        <article-title>Model-Driven Engineering for End-Users in the Loop in Smart Ambient Systems</article-title>
      </title-group>
      <contrib-group content-type="authors">
        <contrib contrib-type="author" corresp="no">
          <name name-style="western">
            <surname>Trouilhet</surname>
            <given-names>Sylvie</given-names>
          </name>
          <xref ref-type="aff" rid="A1">1</xref>
        </contrib>
        <contrib contrib-type="author" corresp="yes">
          <name name-style="western">
            <surname>Arcangeli</surname>
            <given-names>Jean-Paul</given-names>
          </name>
          <email xlink:type="simple">jean-paul.arcangeli@irit.fr</email>
          <uri content-type="orcid">https://orcid.org/0000-0002-0521-9082</uri>
          <xref ref-type="aff" rid="A1">1</xref>
        </contrib>
        <contrib contrib-type="author" corresp="no">
          <name name-style="western">
            <surname>Bruel</surname>
            <given-names>Jean-Michel</given-names>
          </name>
          <uri content-type="orcid">https://orcid.org/0000-0002-3653-0148</uri>
          <xref ref-type="aff" rid="A2">2</xref>
        </contrib>
        <contrib contrib-type="author" corresp="no">
          <name name-style="western">
            <surname>Koussaifi</surname>
            <given-names>Maroun</given-names>
          </name>
          <xref ref-type="aff" rid="A1">1</xref>
        </contrib>
      </contrib-group>
      <aff id="A1">
        <label>1</label>
        <addr-line content-type="verbatim">IRIT, University of Toulouse, UPS, Toulouse, France</addr-line>
        <institution>IRIT, University of Toulouse, UPS</institution>
        <addr-line content-type="city">Toulouse</addr-line>
        <country>France</country>
      </aff>
      <aff id="A2">
        <label>2</label>
        <addr-line content-type="verbatim">IRIT, University of Toulouse, UT2J, Toulouse, France</addr-line>
        <institution>IRIT, University of Toulouse, UT2J</institution>
        <addr-line content-type="city">Toulouse</addr-line>
        <country>France</country>
      </aff>
      <author-notes>
        <fn fn-type="corresp">
          <p>Corresponding author: Jean-Paul Arcangeli (<email xlink:type="simple">jean-paul.arcangeli@irit.fr</email>).</p>
        </fn>
        <fn fn-type="edited-by">
          <p>Academic editor: </p>
        </fn>
      </author-notes>
      <pub-date pub-type="collection">
        <year>2021</year>
      </pub-date>
      <pub-date pub-type="epub">
        <day>28</day>
        <month>07</month>
        <year>2021</year>
      </pub-date>
      <volume>27</volume>
      <issue>7</issue>
      <fpage>755</fpage>
      <lpage>773</lpage>
      <uri content-type="arpha" xlink:href="http://openbiodiv.net/E86E2979-03AB-577B-940F-D062A3EB72B7">E86E2979-03AB-577B-940F-D062A3EB72B7</uri>
      <history>
        <date date-type="received">
          <day>14</day>
          <month>05</month>
          <year>2020</year>
        </date>
        <date date-type="accepted">
          <day>26</day>
          <month>05</month>
          <year>2021</year>
        </date>
      </history>
      <permissions>
        <copyright-statement>Sylvie Trouilhet, Jean-Paul Arcangeli, Jean-Michel Bruel, Maroun Koussaifi</copyright-statement>
        <license license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by-nd/4.0/" xlink:type="simple">
          <license-p>This is an open access article distributed under the terms of the Creative Commons Attribution License (CC BY-ND 4.0). This license allows reusers to copy and distribute the material in any medium or format in unadapted form only, and only so long as attribution is given to the creator. The license allows for commercial use.</license-p>
        </license>
      </permissions>
      <abstract>
        <label>Abstract</label>
        <p>At the heart of cyber-physical and ambient systems, the user should permanently benefit from applications adapted to the situation and her/his needs. To do this, she/he must be able to configure her/his software environment and be supported as much as possible in that task. To this end, an intelligent “engine” assembles software components that are present in the ambient environment at the time and makes unanticipated applications emerge. The problem is to put the user “in the loop”, i.e., provide adapted and intelligible descriptions of the emerging applications, and present them so that the user can accept, modify or reject them. Besides, user feedback must be collected to feed the engine’s learning process. Our approach relies on Model-Driven Engineering (MDE). However, differently from the regular use of MDE tools and techniques by engineers to develop software and generate code, our focus is on end-users. Models of component assemblies are represented and made editable for them. Based on a metamodel that supports modeling and de- scription of component-based applications, a user interface provides multi-faceted representations of the emerging applications and captures user feedback. Our solution relies on several domain- specific languages and a transformation process, based on the established MDE tools (Gemoc studio, Eclipse Modeling Framework, EcoreTools, Sirius, Acceleo). It works in conjunction with the intelligent engine that builds the emerging applications and to which it provides learning data.</p>
      </abstract>
    </article-meta>
  </front>
</article>
