GENA C. - Bando PRIN 2017 - Programmi di Rilevante Interesse Nazionale - Linea A - EMPATHY: Empowering People in Dealing with Internet of Things Ecosystems
Progetto The design and development of flexible software able to match the many possible users’ needs is still a difficult challenge. It is almost impossible to identify all the requirements at design time, and such requirements would not be definitive because user needs are likely to evolve over time, and designers should consider the wide variability of the possible contexts of use. Furthermore, the explosion of mobile and Internet of Things (IoT) technologies has made it possible for people to access their applications from a variety of contexts of use that differ in terms of available devices, things, and services. Thus, it is not possible to guarantee a complete fit between the initially designed system and actual user needs at any given time. As a result, it is important to design software through methods and tools able to dynamically and quickly responding to new requirements, and which are able to consider that the boundaries between design-time and run-time have become more and more blurred. Achieving this can increase the impact of software development companies since their applications can more easily penetrate many markets thanks to their ability to be customized directly by domain experts.
End-User Development (EUD) approaches can help to face this challenge by enabling people without programming knowledge to tailor software applications. Their backgrounds can differ, but such users share the need for software to flexibly support their tasks, which may vary rapidly, and some of them cannot even be anticipated at design time, but discovered only during actual use. In addition, current software development cycles and lack of domain knowledge by software developers are limitations to address requirements of different users. Thus, EUD can reduce time and costs needed for customizations and increase software quality by avoiding potential misunderstandings between final users and developers. The advantage for users is that applications flexibly meet their needs. The advantage for professional software developers is that their applications can have broader adoption, impact and diffusion.
This aspect is now more crucial than ever with IoT becoming a mature and widespread technology. The fundamental challenge is to empower end users to configure smart environments able to exploit up to hundreds or thousands of interconnected devices and objects, which will enable many possible interactions in a user’s surrounding. In this project, leaders in Human-Computer Interaction, well-known at international level, are willing to join their expertise and efforts to identify solutions to this challenge. The goal is to allow users to control smart IoT applications rather than being driven by them.
The EMPATHY research project aims at developing new concepts, languages, methods, and tools to support people in creating and tailoring IoT context-dependent interactive applications for their needs. In this perspective, the project will also address security and privacy concerns. It will also focus on how to support end user developers in easily identifying and fixing errors that they might have unintentionally introduced in their developed applications. The theoretical contribution of EMPATHY will guide the design of a platform able to support domain experts to tailor context-dependent IoT applications, in order to adapt applications for their activities in a productive way. We will also demonstrate how it can be deployed in various real-world settings.
The project will be developed along six Work Packages and provide these main results:
-) a set of abstractions, languages, and methods to support both domain experts and end users in creating and tailoring IoT context-dependent interactive applications for their needs through a meta-design approach;
-) a platform offering: 1) a tailoring environment for domain experts, which provides novel interaction metaphors and multimodal interfaces to specif