2019
Journal article  Open Access

Supporting end-user debugging of trigger-action rules for IoT applications

Manca M., Paternò F., Santoro C., Corcella L.

Internet of things  End user development  Education  Human Factors and Ergonomics  Debugging  Hardware and Architecture  Software  Trigger-Action Rules  Human-Computer Interaction  General Engineering 

End users need tools to enable them to control and personalise Internet of Things (IoT) applications, which may involve hundreds of interconnected objects. Trigger-action programming has shown to be a useful support for this purpose because it allows users to easily associate dynamic events with the activation of desired effects. End User Development (EUD) tools aim to allow even users without programming experience to define the behaviour of IoT applications. However, users may define rules triggering various actions that may be in conflict, or may specify rules that do not result in the intended behaviour. Although such situations can often occur, there seems to be a lack of tools able to help users understand whether the specified rules actually bring about the desired behaviour and, if not, the reasons why they fail. We present an original solution for filling this gap, which takes into account the specific aspects of trigger-action rules. We describe the design and implementation of this debugging support, and then discuss the results of a first user test.

Source: International journal of human-computer studies (Print) 123 (2019): 56–69. doi:10.1016/j.ijhcs.2018.11.005

Publisher: Academic Press,, San Diego , Regno Unito


Metrics



Back to previous page
BibTeX entry
@article{oai:it.cnr:prodotti:404663,
	title = {Supporting end-user debugging of trigger-action rules for IoT applications},
	author = {Manca M. and Paternò F. and Santoro C. and Corcella L.},
	publisher = {Academic Press,, San Diego , Regno Unito},
	doi = {10.1016/j.ijhcs.2018.11.005},
	journal = {International journal of human-computer studies (Print)},
	volume = {123},
	pages = {56–69},
	year = {2019}
}