Research Topics

Active: 2014-2015

HomeRules Android appA considerable amount of research has been carried out towards enabling end users to customize their smart homes through trigger-action ("if... then...") programming. However, inhabitants of such smart environments keep having problems understanding, administering, troubleshooting, and deriving benefits from the technologies employed in their homes. By synthesizing a broad body of research on end-user development in smart homes with observations of commercial products and our own experiences, we provide a set of guidelines for designers of future interfaces and tools. Stemming from them, we introduce HomeRules, a mobile and tangible application for end-user programming in smart homes.

HomeRules was built by using a multi-step approach: first of all, we performed a small literature review thus identifying 47 papers related to trigger-action programming in the smart home. After that, we syntethized 10 guidelines that could be used to built similar applications. Based on that, a series of paper-based prototypes of trigger-action programming applications were realized and evaluated. Finally, stemming from those prototypes, the HomeRules Android application was realized and initially tested with a real-world smart home system.


The guidelines synthesize the findings that emerge from the literature review and aim at providing a clear guidance for designers and engineers interested in the creation of end-user programming tools for a smart home. They avoid giving any insight about rule clashing, conflicts or debugging. In writing such guidelines, we also consider our own previous experiences and some well-known commercial products that enable average users to engage in trigger-action programming with household devices, like IFTTT or the WigWag system.

A short version of such guidelines is:

  1. Use the ECA format for representing smart home rules, in a visual way.
  2. Avoid using natural language for rules creation.
  3. Provide a simple and clear visualization of existing rules.
  4. Provide both tangible and non-tangible interaction.
  5. Provide a step-by-step creation mechanism for first-time users.
  6. Handle time-related properties separately.
  7. Apply a mobile approach, targeting screens larger than 6".
  8. Adopt single touch (or click) interactions instead of more complex operations.
  9. Supplement the visual representation with other feedback mechanisms, like sound.
  10. Prefer testing "in the wild".

An extended and detailed version of such guidelines is available in the paper presented at the CHI 2015 conference (PDF version).

The HomeRules Prototypes

Based on the guidelines, we designed two paper prototypes for a tablet-based, end-user, and tangible programming interface for a smart home. The two prototypes mainly differ for the modality in which a rule can be composed: the former (below, on the left) uses single touch for rule composition, while the latter (below, on the right) employs drag-and-drop for the same operation.

Drag-and-drop paper prototypeSingle-touch paper prototype








Finally, after an evaluation and comparison with 6 participants, we designed and developed the Android-based version of HomeRules starting from the drag-and-drop interface. The HomeRules app allowed the composition of trigger-action rules in two ways: (i) by selecting home devices in the app (i.e., the normal mode), and (ii) by putting the app in a "learning" mode and acting on the environment to indicate which devices should be included in the rule (i.e., the tangible modality). The following video show the app in its tangible modality during a composition of a trigger-action rule in a smart home:


Read the full paper for more details:

 Additional resources

  • Videos of the HomeRules app
  • Master Thesis of Rosalba Castro, whom we thank for her work on this topic