<!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>
      <journal-title-group>
        <journal-title>Gothenburg (Sweden), October</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Supporting Participation in Smart Home Control: Beyond Trigger-Action Programming</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Daniela Fogli</string-name>
          <email>daniela.fogli@unibs.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Dipartimento di Ingegneria dell'Informazione</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Università degli Studi di Brescia</institution>
          ,
          <addr-line>Brescia</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2016</year>
      </pub-date>
      <volume>23</volume>
      <issue>2016</issue>
      <fpage>81</fpage>
      <lpage>85</lpage>
      <abstract>
        <p>The user interfaces proposed so far for smart home control are usually based on event-condition-action rules, which are created by means of “ifthen” instructions. This is a form of trigger-action programming that software developers consider suitable to pure end users. However, it has been observed that end users who are not knowledgeable in computer programming find this approach unnatural and difficult to learn. Therefore, even though they want to participate in smart home configuration and tailoring, they do not actually participate. This paper discusses this problem and presents a mobile app that aims at fostering participation of all family members in smart home control. Further issues related to user participation in this domain are finally explored.</p>
      </abstract>
      <kwd-group>
        <kwd>end-user development</kwd>
        <kwd>smart home</kwd>
        <kwd>trigger-action programming</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        The control and configuration of a smart home is often regarded as a difficult activity
that should be carried out by some expert in software and hardware technology [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
Demeure and colleagues discussed this problem through a field study they conducted
with the participation of ten households using different home automation systems for
a long period of time. In all households, there was always only one member of the
family (called “guru” in the study) in charge of installing, configuring and managing
the smart home. This family member was always a male adult, knowledgeable in
computer programming [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Other family members would like to participate in the
creation of new home behaviors, but they had to delegate this task to the guru. Indeed,
given the user interfaces and the computer-oriented languages available in the home
automation systems, they were not capable of participating at all.
      </p>
      <p>
        This issue has been investigated in literature works and commercial products
through some analyses of user interfaces of systems for smart home control [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ][
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
From these analyses, it emerged that the event-condition-action (ECA) rule-based
paradigm is the most used in such user interfaces. These interfaces allow users to
carry out a form of trigger-action (“if, then”) programming [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], where users are
driven through the interface in setting up the “if” and “then” parts of a rule. The “if”
part usually includes an event triggering the rule and some (optional) conditions;
      </p>
      <p>whilst, the “then” part encompasses a list of actions to be activated on some devices
available in the house.</p>
      <p>
        In this position paper, a different user interface for the creation of ECA rules is
discussed. It is aimed at supporting users to perform this activity in an unwitting manner
[
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], actually going beyond trigger-action programming. The first version of an iOS
app, called ImAtHome, developed over the Apple HomeKit framework, is presented
in the following to show this user interface.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>From “want to” to “being able to” participate</title>
      <p>
        The user interfaces proposed so far for smart home configuration and adaptation to
the inhabitants’ needs pay attention to facilitating the creation of “if-then” instructions
by end users, according to a computer-oriented approach to End-User Programming
(EUP) [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] and End-User Development (EUD) [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. However, this perspective forces
users to think in terms of “if-then” constructs and, often, also of AND/OR logic
propositions, whenever complex antecedent and consequent parts must be created. As a
consequence, end users who do not completely understand these technical aspects
may consider rule creation as too difficult for their knowledge and skills, and do not
participate in the shaping of their home behavior, even when they would like to.
      </p>
      <p>
        In general, EUP and EUD often encompass special-purpose languages to carry out
the programming activity and cope with software engineering issues [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. In this way,
research scholars in EUP and EUD neglect that, nowadays, most end users would like
to carry out their usual activities in an easier and more efficient manner, possibly with
the help of software tools, but without the need of acquiring any new skills to use
them, which requires time and learning efforts.
      </p>
      <p>There are situations where end users are interested in participating in system
development, but they are not able to participate. This is not the case of content creation
in wikis, app installation on personal smartphones, and sharing videos on dedicated
platforms. All these activities have been made natural to users by means of user
interfaces and interaction metaphors that are well integrated both with existing software
environments and with users’ expertise.</p>
      <p>Following these considerations, the interaction metaphor here proposed for the
creation of smart home behaviors is centered on two tasks, namely the definition of
scenes followed by the definition of rules starting from available scenes. Scenes are
sets of device actions, while rules make the house able of activating itself some given
scenes. The metaphor also encompasses a guided but easy way of defining events and
conditions for triggering rules. These ideas have been implemented in ImAtHome, an
iOS mobile application. The iOS guidelines for application development have been
followed by making all activities similar to the usual activities users can perform in
iPhone apps, and terms such as “if”, “then” or “do” never appear in ImAtHome. The
goal is making all users able to participate in smart home configuration and control by
unwittingly perform trigger-action programming.
Proc. of Fourth International Workshop on Cultures of Participation in the Digital Age - CoPDA 2016
Gothenburg (Sweden), October 23, 2016 (published at http://ceur-ws.org).</p>
      <p>Copyright © 2016 for the individual papers by the papers' authors. Copying permitted for private and academic purposes.
This volume is published and copyrighted by its editors.</p>
    </sec>
    <sec id="sec-3">
      <title>ImAtHome: Beyond Trigger-Action Programming</title>
      <p>HomeKit is a framework made available in iOS for communicating with and
controlling connected home automation accessories. It is mainly a communication protocol
that supports the integration and interoperability of different kinds of accessories.
Several companies are developing accessories (conditioners, thermostats, light bulbs,
etc.) compatible with HomeKit. As a consequence, several dedicated apps are being
developed to control such devices. The advantages given by the compatibility with
HomeKit are that accessories can be controlled through Siri and may be included in
the creation of a scene. However, the main drawback is that each accessory keeps on
being controlled only by its corresponding app. ImAtHome exploits the common
communication protocol for interacting with many kinds of accessories or
combinations of them, by proposing itself as a hub for controlling one’s own smart home: all
compatible accessories are made available on the smartphone in a unique app, with
the same interaction style and the possibility to work in combination one another.</p>
      <p>The app includes three sections, as one can observe in the bottom tab bar of Figure
1(a). In the first section, entitled “My home”, the user can access or define a home
and its rooms, as well as all the accessories associated with each room. Accessories
are automatically recognized by the app through HomeKit, and the user may bind
them to rooms by means of OCR technology.</p>
      <p>The second section, “Scenes”, presents a default list of void scenes available in the
HomeKit database, that is “Good morning”, “I’m leaving”, “I’m home” and “Good
night”. The user may complete them or create a new one. To create a new scene, the
user gives it a name and defines a sequence of actions, by setting the characteristics of
the accessories involved in each action. When the new scene is saved, the user can
manually activate it with a tap.</p>
      <p>The third section (“Rules”) is that devoted to the creation of ECA rules. When the
user decides to create a new rule, the screenshot in Figure 1(b) is shown. Here the
message at the top tells the user to choose among three options to trigger his/her
scenes by “Time”, “Position” or “Another accessory”. Then a screen appears where
the user may define the details of an event related to the chosen option, defines
additional conditions, and selects one or more (pre-defined or user-defined) scenes that
must be activated. Note that the three options mentioned above correspond to the
three conditional relationships for triggering scenes, which are supported in HomeKit.
Selecting one of them allows defining the “event” part of an ECA rule. However,
differently from the interaction with other tools, here the user does not need to know
that the “if” part of an “if-then” construct is under creation. Then, by defining the
additional conditions and selecting the scenes to activate, the users actually creates the
condition part and action part of an ECA rule respectively. The user can do it without
being aware that he/she is actually creating an ECA rule or, in other terms, that he/she
is performing trigger-action programming. Moreover, differently from other user
interfaces for ECA rule definition, ImAtHome requires to define action sets (scenes)
first, and then relate them to events and conditions. This allows users to activate
scenes manually if needed and use them in several different rules.
Proc. of Fourth International Workshop on Cultures of Participation in the Digital Age - CoPDA 2016
Gothenburg (Sweden), October 23, 2016 (published at http://ceur-ws.org).</p>
      <p>Copyright © 2016 for the individual papers by the papers' authors. Copying permitted for private and academic purposes.
This volume is published and copyrighted by its editors.</p>
      <p>(a)</p>
      <p>
        (b)
The app ImAtHome has been presented to illustrate an example of EUP/EUD
technique for smart home control that is as much as possible integrated with iOS
interaction style. A user test was carried out to evaluate the usability of the application. We
involved 14 participants (6 females) of different ages, education degrees and
professional backgrounds, and asked them to perform five tasks of increasing complexity
using the iPhone simulator and the HomeKit Accessory Simulator. All users, without
any previous training, were able to use ImAtHome efficiently and effectively (the
reader could find in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] some details about the results of this experimentation).
      </p>
      <p>
        However, the tradeoff existing between usability and powerfulness of this app
should be evaluated and addressed. Other applications, such as Tasker
(http://tasker.dinglisch.net/), support more complex configuration activities, which are
however possible only by software programmers and not by pure end users. A “rich
ecology of participation” [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] should be conceived for smart home control, by allowing
users with different levels of expertise to contribute in different ways and at their own
pace. This issue is not addressed in existing applications yet; in general, the multiple
Proc. of Fourth International Workshop on Cultures of Participation in the Digital Age - CoPDA 2016
Gothenburg (Sweden), October 23, 2016 (published at http://ceur-ws.org).
      </p>
      <p>Copyright © 2016 for the individual papers by the papers' authors. Copying permitted for private and academic purposes.
This volume is published and copyrighted by its editors.</p>
      <p>user control of a smart home is not supported in current solutions. Indeed, this would
open up other problems to be solved. For instance, a variety of social mechanisms,
from collaboration to competition, from delegation to reciprocity, should be
implemented to stimulate participation. Furthermore, the simultaneous intervention in scene
activation or rule creation would require studying mechanisms for solving
incoherencies and conflicts.</p>
      <p>Acknowledgments. The author wishes to thank Matteo Peroni and Claudia Stefini for
the development of the app presented in the paper.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Cabitza</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fogli</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lanzilotti</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Piccinno</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Rule-based Tools for the Configuration of Ambient Intelligence Systems: a Comparative User Study</article-title>
          .
          <source>Multimedia Tools And Applications</source>
          (
          <year>2016</year>
          ) DOI:
          <fpage>10</fpage>
          .1007/s11042-016-3511-2
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Costabile</surname>
            ,
            <given-names>M. F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mussio</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parasiliti</surname>
            <given-names>Provenza</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            ,
            <surname>Piccinno</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          :
          <article-title>End users as unwitting software developers</article-title>
          .
          <source>In: Proceedings of the 4th international workshop on End-user software engineering (WEUSE '08)</source>
          . ACM, New York, NY, USA,
          <fpage>6</fpage>
          -
          <lpage>10</lpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Demeure</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Caffiau</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Elias</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roux</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Building and Using Home Automation Systems: A Field Study</article-title>
          . In: Díaz,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Pipek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            ,
            <surname>Ardito</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Jensen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Aedo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            ,
            <surname>Boden</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . (eds.)
          <article-title>End-User Development</article-title>
          .
          <source>LNCS</source>
          , vol.
          <volume>9083</volume>
          , Springer International Publishing,
          <volume>125</volume>
          -
          <fpage>140</fpage>
          (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Fischer</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          :
          <article-title>Understanding, fostering, and supporting cultures of participation</article-title>
          .
          <source>Interactions</source>
          ,
          <volume>18</volume>
          (
          <issue>3</issue>
          ),
          <fpage>42</fpage>
          -
          <lpage>53</lpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Fogli</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lanzilotti</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Piccinno</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>End-User Development Tools for the Smart Home: A Systematic Literature Review</article-title>
          . In: N. Streitz and P. Markopoulos (Eds.):
          <source>DAPI</source>
          <year>2016</year>
          , LNCS 9749, Springer International Publishing Switzerland,
          <fpage>69</fpage>
          -
          <lpage>79</lpage>
          (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Fogli</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Peroni</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stefini</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Smart Home Control through Unwitting Trigger-Action Programming</article-title>
          .
          <source>In: Proceedings of Distributed Multimedia Systems (DMS</source>
          <year>2016</year>
          ), Salerno, Italy (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Ko</surname>
            ,
            <given-names>A.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Abraham</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Beckwith</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Blackwell</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Burnett</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Erwig</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scaffidi</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lawrance</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lieberman</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Myers</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosson</surname>
            ,
            <given-names>M.B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rothermel</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shaw</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wiedenbeck</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>The State of the Art in End-User Software Engineering</article-title>
          .
          <source>ACM Comput. Surv</source>
          .
          <volume>43</volume>
          (
          <issue>3</issue>
          ),
          <fpage>1</fpage>
          -
          <lpage>44</lpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Lieberman</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Paternò</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wulf</surname>
          </string-name>
          , V. (eds.):
          <article-title>End-User Development</article-title>
          . Springer, Dordrecht, The Netherlands (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Myers</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ko</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>The Past, Present and Future of Programming in HCI</article-title>
          . Institute for Software Research, Paper 782. http://repository.cmu.edu/isr/782 (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Ur</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McManus</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          , Pak Yong Ho,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Littman</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.L.</surname>
          </string-name>
          :
          <article-title>Practical trigger-action programming in the smart home</article-title>
          .
          <source>In: SIGCHI Conference on Human Factors in Computing Systems</source>
          , ACM, New York, NY, USA,
          <fpage>803</fpage>
          -
          <lpage>812</lpage>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>