EUDoptimizer: Assisting End Users in Composing IF-THEN Rules Through Optimization

Nowadays, several interfaces for end-user development (EUD) empower end users to jointly program the behavior of their smart devices and online services, typically through trigger-action rules. Despite their popularity, such interfaces often expose too much functionality and force the user to search among a large number of supported technologies disposed of confused grid menus. This paper contributes to the EUD with the aim of interactively assisting end users in composing IF–THEN rules with an optimizer in the loop. The goal, in particular, is to automatically redesign the layout of the EUD interfaces to facilitate the users in defining triggers and actions. For this purpose, we define a predictive model to characterize the composition of trigger-action rules on the basis of their final functionality, we adopt different optimization algorithms to explore the design space, and c) we present EUDoptimizer, the integration of our approach in IFTTT, one of the most popular EUD interfaces. We demonstrate that good layout solutions can be obtained in a reasonable amount of time. Furthermore, an empirical evaluation with 12 end users shows evidence that EUDoptimizer reduces the efforts needed to compose trigger-action rules.

[1]  T. L. Ward,et al.  Solving Quadratic Assignment Problems by ‘Simulated Annealing’ , 1987 .

[2]  David Connolly An improved annealing scheme for the QAP , 1990 .

[3]  Amos Azaria,et al.  InstructableCrowd: Creating IF-THEN Rules via Conversations with the Crowd , 2016, CHI Extended Abstracts.

[4]  Antti Oulasvirta,et al.  Sketchplore: Sketch and Explore with a Layout Optimiser , 2016, Conference on Designing Interactive Systems.

[5]  Fulvio Corno,et al.  A High-Level Approach Towards End User Development in the IoT , 2017, CHI Extended Abstracts.

[6]  Dave Evans,et al.  How the Next Evolution of the Internet Is Changing Everything , 2011 .

[7]  Luca Maria Gambardella,et al.  Ant colony system: a cooperative learning approach to the traveling salesman problem , 1997, IEEE Trans. Evol. Comput..

[8]  Carmelo Ardito,et al.  Empowering End Users to Customize their Smart Environments , 2017, ACM Trans. Comput. Hum. Interact..

[9]  Krzysztof Z. Gajos,et al.  Improving the performance of motor-impaired users with automatically-generated, ability-based interfaces , 2008, CHI.

[10]  Singiresu S. Rao Engineering Optimization : Theory and Practice , 2010 .

[11]  Antti Oulasvirta,et al.  User Interface Design with Combinatorial Optimization , 2017, Computer.

[12]  Jiyun Lee,et al.  Trigger-Action Programming in the Wild: An Analysis of 200,000 IFTTT Recipes , 2016, CHI.

[13]  Seiji Yamada,et al.  Genetic algorithm can optimize hierarchical menus , 2008, CHI.

[14]  Shumin Zhai,et al.  The metropolis keyboard - an exploration of quantitative techniques for virtual keyboard design , 2000, UIST '00.

[15]  Per Ola Kristensson,et al.  Improving two-thumb text entry on touchscreen devices , 2013, CHI.

[16]  Carl Gutwin,et al.  A predictive model of menu performance , 2007, CHI.

[17]  Barbara Rita Barricelli,et al.  Designing for End-User Development in the Internet of Things , 2015, IS-EUD.

[18]  Fulvio Corno,et al.  A Semantic Web Approach to Simplifying Trigger-Action Programming in the IoT , 2017, Computer.

[19]  Antti Oulasvirta,et al.  MenuOptimizer: interactive optimization of menu systems , 2013, UIST.

[20]  Paulo Salem,et al.  User Interface Optimization using Genetic Programming with an Application to Landing Pages , 2017, PACMHCI.

[21]  R. Stephenson A and V , 1962, The British journal of ophthalmology.