In this paper, we: (i) present the IoT-FED architectural
approach to enable the automated formation and enactment of ECs. IoT-FED exploits heterogeneous and independently developed things, IoT services, and applications which are modeled as Domain Objects (DOs), a service-based
formalism. Additionally, we (ii) discuss the prototype we developed and the experiments run in our IoT lab, for validation purposes
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Enacting Emergent Configurations in the IoT through Domain Objects
1. Distributed Adaptive Systems (DAS) Unit
Enacting Emergent Configurations in the IoT
through Domain Objects
Fahed Alkhabbas*, Martina De Sanctis#, Romina Spalazzese*,
Antonio Bucchiarone#, Paul Davidsson*, Annapaola Marconi#
Fondazione Bruno Kessler, Trento – Italy
bucchiarone@fbk.eu
# *
HANGZHOU, ZHEJIANG, CHINA - November 15, 2018
2. A. Bucchiarone IoT-FED @ ICSOC 2018 - 2
Introduction
Ø The Internet of Things (IoT) pervades more and more aspects of
our lives and often involves many types of smart connected
objects and devices.
Ø The IoT environment is dynamic and heterogeneous.
Ø Mobility of the users and devices.
[1] F. Alkhabbas, R. Spalazzese, and P. Davidsson. Architecting Emergent Configurations
in the Internet of Things. IEEE International Conference on Software Architecture (ICSA 2017) ,
pages 221–224. 2017.
Emergent Configuration (ECs) [1]
Set of things that connect and cooperate temporarily through their
functionalities, applications and services, to achieve a user goal.
3. A. Bucchiarone IoT-FED @ ICSOC 2018 - 3
IoT-FED
Ø IoT-FED: an approach for Forming and enacting Emergent
configuration through Domain Objects in the IoT.
Domain Objects: a service-based formalism used to
model things, IoT Services, and Applications.
IoT-FED: a Process and Architecture
realizing Emergent Configurations.
A prototype for validation purposes.
1
3
2
4. A. Bucchiarone IoT-FED @ ICSOC 2018 - 4
The Adjust Light Scenario
Adjust Light (AL) application:
Ø Each room (e.g., hotel, office rooms) is equipped with several
IoT things (e.g., light sensors, connected curtains and lights).
Ø Users requests as goal to increase/decrease the light level by
using an application running on their smartphone.
Ø “An Emergent Configuration of things (e.g., user’s smartphone,
a light sensor, connected curtain and light) is formed and
enacted to achieve the user goal”.
5. A. Bucchiarone IoT-FED @ ICSOC 2018 - 5
Research Challenges
Ø High heterogeneity of services/things dynamically available in
different and often unknown places (e.g., sensors, actuators, things
APIs).
Ø High complexity and variability of the system behavior.
Ø It is not feasible to define a priori all the possible combinations of
things to reach specific user goals (e.g., adjust light, adjust
temperature).
Ø Users can fully benefit from the IoT only when they can effortlessly
interact with the dynamically available things to satisfy their goals.
Ø Highly open and highly dynamic environment.
6. A. Bucchiarone IoT-FED @ ICSOC 2018 - 6
Assumptions
ECs are formed and enacted within well-defined
spatial boundaries (e.g., room, a building).
ECs achieve non-time critical user goals: formation
and enactment within the time scale of seconds.
ECs can be successfully formed and enacted:
adaptation is out of the scope of this paper.
7. A. Bucchiarone IoT-FED @ ICSOC 2018 - 7
IoT-FED
Ø IoT-FED: an approach for Forming and enacting Emergent
configuration through Domain Objects in the IoT.
Domain Objects: a service-based formalism used to model
things, IoT Services, and Applications.
IoT-FED: a Process and Architecture
realizing Emergent Configurations.
A prototype for validation purposes.
1
3
2
8. A. Bucchiarone IoT-FED @ ICSOC 2018 - 8
The Design for Adaptation Approach
Ø It is based on two distinct but correlated models – the Domain
model and the Domain Object model.
Ø It allows for the separation of concerns – application (the what)
vs. adaptation (the how) logic (design-time vs. runtime).
Ø It provides support for the runtime and automatic services
selection, composition and re-configuration.
A. Bucchiarone, M. De Sanctis, A. Marconi, M. Pistore, P. Traverso: Design for Adaptation of Distributed
Service-Based Systems. ICSOC 2015.
A. Bucchiarone, M. De Sanctis, A. Marconi, M. Pistore, P. Traverso: Incremental Composition for
Adaptive By-Design Service Based Systems. ICWS 2016.
9. A. Bucchiarone IoT-FED @ ICSOC 2018 - 9
Domain Objects
Ø A design for adaptation framework based on Domain Objects
supporting:
Ø the design, development and operation of systems operating in
highly dynamic environments;
Ø the application of advanced techniques for dynamic and
incremental service composition and re-configuration.
FRAGMENTSCORE PROCESS
I/O msg
Fragment1
Fragment2
Fragment3
Goal Goal
Goal
Goal
DP2 DP3 DP4
External Domain Knowledge
(required concepts / functionalities)
Internal Domain Knowledge
(own concept / functionalities)
DP1
10. A. Bucchiarone IoT-FED @ ICSOC 2018 - 10
Domain Objects
Ø A design for adaptation framework based on Domain Objects
supporting:
Ø the design, development and operation of systems operating in
highly dynamic environments;
Ø the application of advanced techniques for dynamic and
incremental service composition and re-configuration.
11. A. Bucchiarone IoT-FED @ ICSOC 2018 - 11
IoT-FED
Ø IoT-FED: an approach for Forming and enacting Emergent
configuration through Domain Objects in the IoT.
Domain Objects: a service-based formalism used to model
things, IoT Services, and Applications.
IoT-FED: a Process and Architecture
realizing Emergent Configurations.
A prototype for validation purposes.
1
3
2
12. A. Bucchiarone IoT-FED @ ICSOC 2018 - 12
IoT-FED Process
Ø The user expresses her/his goal via an application running on
one of the available smart device (e.g., her/his smartphone) in
a specific spatial boundaries.
Ø e.g., adjust light level in the Lara’s Office.
13. A. Bucchiarone IoT-FED @ ICSOC 2018 - 13
IoT-FED Process
Ø The core process of the Domain Object corresponding to the
specified goal type is loaded and its simulation starts.
14. A. Bucchiarone IoT-FED @ ICSOC 2018 - 14
IoT-FED Process
Ø The goal is achievable if all
abstract activities in the
core process can be refined
successfully.
Ø Composition of fragments
to refine an abstract
activity.
15. A. Bucchiarone IoT-FED @ ICSOC 2018 - 15
IoT-FED Process
Ø The formed EC can then be enacted by instantiating the Domain
Objects forming it.
16. A. Bucchiarone IoT-FED @ ICSOC 2018 - 16
IoT-FED Architecture
Ø Parsing the user goal and starting the EC formation.
Ø Loading the DO process corresponding to the specified goal type.
Ø Refinement of abstract activities in the loaded process using AI
planning techniques.
17. A. Bucchiarone IoT-FED @ ICSOC 2018 - 17
IoT-FED Architecture
Ø Managing available IoT things and DOs.
Ø Answering queries about available IoT things.
Ø Instantiating needed DOs and handling their co-relations.
18. A. Bucchiarone IoT-FED @ ICSOC 2018 - 18
IoT-FED Architecture
Ø Simulating, forming and enacting the EC.
Ø Injection of the plans received by the Planner in place of
abstract activities.
19. A. Bucchiarone IoT-FED @ ICSOC 2018 - 19
IoT-FED Architecture
Ø Maintaining the system knowledge.
Ø Retrieving data from the KB
Ø Parsing receiving context from the Execution Engine and
passing it to the KB (i.e., KB update).
20. A. Bucchiarone IoT-FED @ ICSOC 2018 - 20
IoT-FED Architecture
Ø Internal system knowledge
Ø Things states
Ø Device capabilities
Ø Domain object models
21. A. Bucchiarone IoT-FED @ ICSOC 2018 - 21
IoT-FED Architecture
Ø Management and Interaction with things through the
Amazon AWS-IoT platform.
22. A. Bucchiarone IoT-FED @ ICSOC 2018 - 22
IoT-FED
Ø IoT-FED: an approach for Forming and enacting Emergent
configuration through Domain Objects in the IoT.
Domain Objects: a service-based formalism used to model
things, IoT Services, and Applications.
IoT-FED: a Process and Architecture
realizing Emergent Configurations.
A prototype for validation purposes.
1
3
2
23. A. Bucchiarone IoT-FED @ ICSOC 2018 - 23
Adjust Light - Prototype
Prototype developed in the IoTaP lab:
http://iotap.mah.se/lab/
24. A. Bucchiarone IoT-FED @ ICSOC 2018 - 24
Preliminary Results - I
Frequency of the formed ECs after
100 runs of the AL-app.
AL-hotel room:
Ø 6 devices + user’s smartphone
Ø 14 different ECs in 100 runs
AL-hotel room
Ø EC1 = <Smartphone;DayLight;HS-422-ServoMotor; IkeaLamp>.
Ø It occurs 9 times over the 100 runs.
25. A. Bucchiarone IoT-FED @ ICSOC 2018 - 25
Preliminary Results - II
Frequency of the formed ECs after
100 runs of the AL-app.
AL-office room:
Ø 8 devices + user’s smartphone
Ø 32 different ECs in 100 runs
AL-office room
Ø EC2 = <Smartphone; LightMeter; HS-422-ServoMotor; PhilipsHueLight>.
Ø It occurs 5 times over the 100 runs.
26. A. Bucchiarone IoT-FED @ ICSOC 2018 - 26
Preliminary Results - II
ECs execution time.
Ø Average time (in secs) for forming and enacting ECs over the
100 runs of the AL app.
27. A. Bucchiarone IoT-FED @ ICSOC 2018 - 27
Conclusion
Ø IoT-FED: an architectural approach enabling the automated
and runtime formation and enactment of ECs in dynamic
environments.
Ø DO model and its technologies in the context of IoT.
Ø Process and Architecture of the IoT-FED approach.
Ø Prototype and initial experiments.
28. A. Bucchiarone IoT-FED @ ICSOC 2018 - 28
Future Work
• Adaptation
mechanisms and
strategies
proposed by
DOs.
Adaptation of ECs
at runtime
• Multiple and
competing ECs.
Case Studies
• Selection and
composition of
things based on
non-functional
aspects.
Non-Functional
29. Distributed Adaptive Systems (DAS) Unit
Enacting Emergent Configurations in the IoT
through Domain Objects
Fahed Alkhabbas*, Martina De Sanctis#, Romina Spalazzese*,
Antonio Bucchiarone#, Paul Davidsson*, Annapaola Marconi#
Fondazione Bruno Kessler, Trento – Italy
bucchiarone@fbk.eu
# *
HANGZHOU, ZHEJIANG, CHINA - November 15, 2018