SITE: The Simple Internet of Things Enabler For Smart Homes
This paper presents the Simple Internet of Things Enabler (SITE), a smart home solution that allows users to specify and centrally control IoT smart objects. Unlike most existing systems, SITE supports End-User Development. Hence, it defines a simple language for the specification of control rules for smart objects. It also provides a user interface to graphically illustrate data received from smart objects. To assess the usability of SITE, we conduct an empirical study involving 20 participants belonging to two user groups: users with technical training (IT users) and users without technical training (Non-IT users). We demonstrate that both user groups can satisfactorily build smart objects and define control rules in a smart home environment using SITE.
Today, the logic pertaining to the control of SOs in smart homes is programmed by highly technical divisions using programing languages that are not accessible to most end-users. The relatively recent perforation of technological devices into our daily lives has compelled users, including those who are not technically trained, to seek an active role in technical development. This allows them to design, configure, modify, or realize technologies that are better tuned to their individual needs. This phenomenon has been dubbed in the literature as End-User Development (EUD). EUD refers to a set of activities, techniques, and tools that allow end users to configure, modify and control software and hardware artifacts [8-10]. These artifacts should be fully “plug and play” . We propose a system that enables EUD for smart homes. Individuals after all personalize all aspects of their home, and therefore, it is valuable to equip them with the necessary tools to configure, modify, and control their smart home systems. Furthermore, the latter tools would allow them to adapt these systems as their needs or preferences change over time.
SITE interacts with two types of entities: users and SOs. We define a user as an individual that creates SOs using the GPTN, and configures a smart environment, sends commands to SOs and/or visualizes the information produced by SOs using the SITE CVC. To configure a smart environment, the user specifies what SITE CVC should do in response to the data received from the SOs’ sensors. For example, consider the following SO: an office chair equipped with a pressure sensor and a vibration actuator, both integrated into its seat cushion. The user can configure SITE CVC to send a command to the actuator to vibrate if the pressure is detected to be high (i.e. a person is sitting on the chair) for a couple of hours. The vibration would remind the seated person to take a walk. Fig. 1 shows the high-level use cases supported by SITE. In order to setup a smart environment, the user performs the following: 1) Build SOs using the GPTN and deploy them in the environment. 2) Use the SITE CVC to: a) Register the available SOs by supplying their names and IP addresses. b) Configure all or a subset of the registered SOs by defining rules to control them through the CVC. c) Visualize SO sensor information. There are a plethora of Fuzzy controller languages, however, these controllers are suitable for engineering applications and require technical experience . However, SITE supports users with no formal technical training. Therefore, we introduce SCL, a rule based language that allows users to define actions that are performed by actuators in response to sensor data or user commands. SCL will be described in Sections III-C-4 and III-C-5.
In this paper, we propose the SITE system that interacts with two types of entities: users and SOs. SITE allows the development of a smart environment using the GPTN to create SOs and SITE CVC to specify the SO control. The system supports users with varying levels of technology expertise. Hence, three modes of SO control rules specification are provided (Form-Based, Editor-Based and Advanced). The Form-Based and Editor-Based modes are SCL based and designed for novice and expert users. The Advanced mode allows more refined rule specification and is designed for technology savvy users with basic knowledge of fuzzy logic. An Empirical study was conducted to evaluate the usability of the SITE system. Twenty (IT and Non-IT) participants were directed to build SOs and interact with the SITE CVC. Although some differences in performance were observed across the groups, with the IT user group achieving a slightly smaller error score and higher time-efficiency, all users were able to complete the experimental tasks. Furthermore, both user groups expressed their satisfaction with the system. These encouraging results signify that Non-IT users might be interested in taking on the role of smart home system designer in addition to end-user.
 L. Atzori, A. Iera, and G. Morabito, “The internet of things: A survey,” Computer Networks, vol. 54, no. 15, pp. 2787-2805, 2010.
 D. Bandyopadhyay and J. Sen, “Internet of Things: Applications and Challenges in Technology and Standardization,” (in en), Wireless Personal Communications, vol. 58, no. 1, pp. 49-69, 2011/05// 2011.
 I. Bose and R. Pal, “Auto-ID: managing anything, anywhere, anytime in the supply chain,” (in en), Communications of the ACM, vol. 48, no. 8, pp. 100-106, 2005/08/01/ 2005.
 I. Peña-López, “ITU Internet report 2005: the internet of things,” 2005 2005.
 A. Zanella, N. Bui, A. Castellani, L. Vangelista, and M. Zorzi, “Internet of Things for Smart Cities,” IEEE Internet of Things Journal, vol. 1, no. 1, pp. 22-32, 2014/02// 2014.
 G. Fortino, A. Guerrieri, and W. Russo, “Agent-oriented smart objects development,” in Computer Supported Cooperative Work in Design (CSCWD), 2012 IEEE 16th International Conference on, 2012, pp. 907-912: IEEE.
 M. R. Alam, M. B. I. Reaz, and M. A. M. Ali, “A review of smart homes—past, present, and future,” Systems, Man, and Cybernetics, Part C: Applications and Reviews, IEEE Transactions on, vol. 42, no. 6, pp. 1190-1203, 2012.
 J. A. Macías, “Development of end-user-centered EUD software,” in Proceedings of the 13th International Conference on Interacción Persona-Ordenador, 2012, p. 24: ACM.
 H. Lieberman, F. Paternò, M. Klann, and V. Wulf, “End-user development: An emerging paradigm,” in End user development: Springer, 2006, pp. 1-8.
 R. Dautriche, C. Lenoir, A. Demeure, C. Gérard, J. Coutaz, and P. Reignier, “End-user-development for smart homes: relevance and challenges,” in Proceedings of the Workshop” EUD for Supporting Sustainability in Maker Communities”, 4th International Symposium on End-user Development (IS-EUD), 2013, p. 6.