promising, challenging and may be a real game
changer for the progress of the IoT domain.
The vision of IoT device ecosystems as open,
extensible and configurable infrastructures, managed
by end-users via tools available in their mobile
machines, is based on the prediction that IoT can
more rapidly enter daily life once the following
conditions are met:
• Smart infrastructures are integrated computing
systems of open federated ecosystems, beyond
existing monolithic installations of a single
manufacturer or contractor
• IoT technology becomes commodity hardware,
standalone or embedded in other equipment
• Modular IoT components become affordably
available with many varying market options
• Installations may require the help of
technicians, but overall should be easy for
consumers to handle the process themselves
• Configuring and creating automations is treated
as an assembly process managed and configured
directly by the end-users
8 CONCLUSIONS
The Internet of Things proliferates as a dynamic and
constantly evolving domain, constituting a primary
technological backbone of distributed computing
resources. Although small-scale IoT hardware
becomes rapidly available, the chances for open and
easier end-user development, enabling flexible
manipulation and composition of such cross-vendor
IoT resources, within varying hosting environments
and device ecosystems, are still very limited. The
present lack of user experiences for the IoT domain
is also attributed to the disruption of past research in
ubiquitous computing, which emphasized beyond
the desktop interactions.
The recent adoption of end-user programming
for smart IoT automations is better aligned to the
future trend for local control from a mobile device of
IoT functionality and resources through small-scale
automations. In this work, we focused on the
required testing instruments and we developed an
integrated toolset enabling end-users test and debug
automations in a protected simulated runtime.
We consider that more research work is needed
in the field of end-user tools, while part of our future
plans includes the design and development of: (a) an
explanation wizard that can meaningfully respond to
“why did this happen” for any event, and (b) a
reverse tracer for the simulated runtime, enabling to
roll back and forth in time, during debugging or
when testing of smart automations.
REFERENCES
Savidis, A. (2021). Back to the Internet of Things Future:
When Everybody Crafts Personal Smart Automations.
Keynote speech. IISA 2021 Conference.
DOI = http://dx.doi.org/10.13140/RG.2.2.20423.83365
Blockly (2021). Google Inc. A JavaScript library for
building visual programming editors. https://develo
pers.google.com/blockly Accessed online: 07/2021.
HomeKit (2021). A software framework to configure,
communicate with, and control smart-home
appliances using Apple devices. Apple Inc.
https://www.apple.com/shop/accessories/all/homekit
Accessed online: 07/2021
Wia (2021). A cloud platform that makes creating IoT
apps easier by linking IoT devices and external
services. https://www.wia.io/ Accessed: 07/2021
Embrio (2021). Visual, real-time, agent-based
programming for Arduino. https://www.embrio.io/
Accessed online: 07/2021
XOD (2021). An open-source visual programming
language for microcontrollers. https://xod.io/
Accessed online: 07/2021
Zenodys (2021). A fully visual IoT platform for Industry
https://www.zenodys.com/ Accessed online: 07/2021
IoTivity (2021). An open-source software framework
enabling seamless device-to-device connectivity to
address the emerging needs of the Internet of Things.
https://iotivity.org/ Accessed online: 07/2021
IoTivity Simulator (2021). Simulating devices which
communicate with IoTivity middleware.
https://wiki.iotivity.org/iotivity_tool_guide Accessed
online: 07/2021.
Danado, J., Paternò, F. (2015). A Mobile End-User
Development Environment for IoT Applications
Exploiting the Puzzle Metaphor. ERCIM News, Issue
101, http://ercim-news.ercim.eu/en101
Open Interconnect Consortium – OIC (2021). Standards
for the development of the Internet of Things.
https://openconnectivity.org Accessed online: 07/2021
Node-Red (2021). Low-level programming for even-driven
applications. https://nodered.org/ Accessed: 07/2021
Myers, B., Ko, A., Scaffidi, C., Oney, S., Yoon, Y.,
Chang, L. S-P., Kery, M.B., Jia-Jun, T. (2017).
Making End User Development More Natural. New
Perspectives in End-User Development 2017: 1-22,
DOI= https://doi.org/10.1007/978-3-319-60291-2_1
Dewan, P. (2010). A demonstration of the flexibility of
widget generation. In Proceedings EICS 2010, ACM,
315-320, DOI= DOI:10.1145/1822018.1822069
Savidis, A., Savaki, C. (2019). Complete Block-Level
Visual Debugger for Blockly. In Proceedings of
IHSED 2019, 286-292, DOI=https://doi.org/10.1007/
978-3-030-27928-8_43