27th August 2014. My presentation at SEAA 2014 (http://esd.scienze.univr.it/dsd-seaa-2014) about our a study on model-driven engineering approaches for engineering Wireless Sensor Networks (WSNs).
Accompanying paper: http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=6928805
Abstract:
Model-Driven Engineering (MDE) can be considered as the right tool to reduce the complexity of Wireless Sensor Network (WSN) development through its principles of abstraction, separation of concerns, reuse and automation. In this paper we present the results of a systematic mapping study we performed for providing an organized view of existing MDE approaches for designing WSNs.
A total number of 780 studies were analysed; among them, we selected 16 papers as primary studies relevant for review. We setup a comparison framework for these studies, and classified them based on a set of common parameters. The main objective of our research is to give an overview about the state-of-the-art of MDE approaches dedicated to WSN design, and finally, discuss emerging challenges that have to be considered in future MDE approaches for engineering WSNs.
3. Wireless sensor networks (WSNs)
WSNs consist of spatially distributed sensors that cooperate to
accomplish some tasks.
Sensors are:
– small
– battery-powered
– with limited processing power
– with limited memory
They can be easily deployed to monitor different environmental
parameters such as temperature, movement, sound and pollution.
4. WSN applications
Sensors can be distributed on roads, vehicles, hospitals, buildings,
people and enable different applications such as:
• environmental monitoring
• medical services
• battlefield operations
• crisis response
• disaster relief
5. Some WSN issues
The unique characteristics of WSNs introduce additional issues in
different fields, such as
• programming
• security
• software engineering
From the SESENA 2013 CfP:
“the development of WSN software is still carried out in a rather
primitive fashion, by building software directly atop the operating
system and by relying on an individuals hard-earned programming
skills”
read as: ABSTRACTION NEEDED
6. Model-Driven Engineering (MDE)
MDE shifts the focus of software development from coding to
modeling
modeling
In MDE, domain-specific modeling languages can be used to build a
model of the system:
1. by focussing on some selected aspects of the system
2. to perform some types of analysis
3. to generate some types of artifact
http://mdse-book.com
8. The study
to better understand how MDE techniques are used for
designing and analysing WSNs
systematic mapping study that surveys and classifies state-of-
the-art MDE approaches for engineering a WSN
• comparison framework for past and future MDE
approaches for WSNs
• systematic overview of current MDE approaches for
engineering WSNs
• discussion of emerging research challenges for future
MDE approaches for WSNs
GOAL
INSTRUM
ENT
OUTPUTS
9. Related work
This study is the first investigation into the usage of MDE for
modeling, analysing, and developing WSNs
In [2] and [3], the focus is on approaches for programming wireless
sensor networks, rather than on how to model them
A survey about modeling techniques for WSNs is also presented in
[4]. However:
– our investigation is specifically tailored to MDE approaches (rather
than model-based ones),
– our study is systematic*, rather than an informal exploration
We follow the guidelines of Kitchenham et al. [5]
11. Research questions
What are the existing MDE approaches for modeling,
RQ1analysing and developing WSNs?
How to compare existing MDE approaches for
RQ2modeling analysing and developing WSNs?
RQ1 focusses on approaches that
– are based on a modeling language for WSNs
– manipulate in some way the WSN models
RQ2 explores how the previously selected MDE approaches compare
w.r.t. a common comparison framework
12. Approaches selection
780 documents
16 primary studies1
selection criteria
1 A summary of the selected articles is available here: http://goo.gl/eCxw2
13. Selection criteria
Inclusion criteria
Exclusion criteria
1. Any article declaring that its main
contribution is the definition of a
new MDE approach for WSNs
2. Any article that have been
published in or after 2007
3. Any article that have been
published in English
1. Articles that have been extended by
another article that have been
previously considered in our survey
2. Articles that do not present any
specific approach in details
3. Articles with incomplete information
about our comparison framework
4. Articles that are an editorial,
abstract, position paper, short paper,
tool paper, poster summary, keynote,
opinion, tutorial, introduction to
conference proceedings, workshop
summary, panel summary
5. Articles that are not peer reviewed
14. The comparison framework
3 clusters representing the main viewpoints from which an MDE
approach can be analysed
The features are orthogonal to the scope and applicability of each
approach
MDE approach
for WSNs
Modeling language
features
Goals
Technological
aspects
15. Comparing language features (1)
MDE approach
for WSNs
Modeling language
features
Goals
Technological
aspects
Modeling
language
Structure
VS
behaviour
Computation
scope [2]
Mobility[2]
DSML = Domain-specific
GENERIC = generic
Structure, behaviour,
both
S = static
MN = mobile nodes
MS = mobile sinks
N = node-level
G = group-level
NET = network-level
16. Comparing language features (2)
MDE approach
for WSNs
Modeling language
features
Goals
Technological
aspects
Abstraction
level[2]
Physical
deployment
Power
consumption
Location
awareness
A = application
S = system service
OS = operating system
MAC = media access
H = hardware
true/false
true/false
true/false
17. Comparing goals
MDE approach
for WSNs
Modeling language
features
Goals
Technological
aspects
Overall goal
Analysis
type
CO = code generation
AN = analysis
T = test cases generation
D = documentation
Target
language
PE = performance
FT = fault tolerance
PO = power consumption
SEC = security
C++, NesC, Java, etc.
18. Comparing technological aspects
MDE approach
for WSNs
Modeling language
features
Goals
Technological
aspects
Used
technologies
Concrete
syntax
Extensibility
Eclipse
Stand-alone application
etc,
GRAPH = graphical
TEXT = textual
MIX = both of them
L = extensible language
F = extensible framework
NO = no extensibility
20. Modeling languages features (1)
Modeling language
12
2
2
14
12
10
8
6
4
2
0
New DSL
Simulink
UML
Structure VS behaviour
4
7
5
8
7
6
5
4
3
2
1
0
Structure
Behaviour
Both
12
Mobility
1
0
3
14
12
10
8
6
4
2
0
Static
Mobile Synk
Mobile Nodes
No info
8
Computation scope
5
One approach supports
N,G,NET at the same time
2
2
9
8
7
6
5
4
3
2
1
0
Node-level
Group-level
Network-level
No info
21. Modeling languages features (2)
Abstraction level
Physical deployment
6
9
1
7
6
5
4
3
2
1
10
8
6
4
2
0
Yes
No
No info
Power consumption
6
9
1
10
9
8
7
6
5
4
3
2
1
0
Yes
No
No info
Localization awareness
3
12
1
14
12
10
8
6
4
2
0
Yes
No
No info
1
5
1
3
6
0
Application
System
Service
Operating
System
MAC
Hardware
All of them do
code generation
22. Goals
13
13
Many approaches support both
analysis and code generation
No approach supports only
documentation
3
3
14
12
10
8
6
4
2
0
Analysis
Code
Generation
Test Case
Generation
Documentation
Goals
10
5
2
1
3
Performance
Power
Consumption
Security
Fault
tolerance
No analysis
12
10
8
6
4
2
0
Analysis Type
7
3
1
2
3
8
7
6
5
4
3
2
1
0
Nes C
Ansi C
Java
Not
Specified
No code
generation
Target Language
25. Identified challenges (1)
Standard language for WSNs
Many approaches propose their own ad-hoc modeling language for
representing a WSN
à Researchers should avoid this proliferation of different modeling
languages in favor of an extensible standard language for WSNs
Separation of concerns
Almost all studied approaches are built on a single monolithic modeling
language comprising all the concepts to model the WSN
à Researchers should focus on a better separation of concerns when
dealing with WSNs
26. Identified challenges (2)
Support for mobility
Almost all the presented approaches do not provide means for modeling
nodes mobility
à Researchers should support this increasingly relevant aspect of WSNs
Mask complexity
Many approaches mix together notions and concepts coming from both
MDE and WSN communities
à MDE researchers should take care in masking the complexity of the
used MDE techniques to WSN engineers
27. How to proceed*?
Research community around MDE for WSNs
à helps in reasoning on the standard language for WSNs
- for example see what
did for real-time distributed systems
à better communication with practitioners and nodes vendors
à solving real problems
Support multiple views
– for example, see the ISO/IEC/IEEE 42010:2011, Systems and software
engineering — Architecture description standard [5]
Support for mobility
- with run-time support
* Disclaimer: this slide is heavily based on our experience in the domain of software architecture modeling.
30. References
[1] Doddapaneni, Ever, Malavolta, Mostarda, Muccini (2012). A Model-Driven
Engineering Framework for Architecting and Analysing Wireless Sensor Networks. In
Proceedings of the 3rd ICSE Workshop on Software Engineering for Sensor Network
Applications (SESENA 2012), Zurich, Switzerland, pp. 1-7.
[2] L. Mottola and G. P. Picco, “Programming wireless sensor networks: Fundamental
concepts and state of the art,” ACM Comput. Surv., vol. 43, pp. 19:1–19:51, Apr. 2011.
[3] R. Sugihara and R. K. Gupta, “Programming models for sensor networks: A survey,”
ACM Trans. Sen. Netw., vol. 4, no. 2, pp. 8:1–8:29, Apr. 2008. [Online]. Available: http://
doi.acm.org/10.1145/ 1340771.1340774
[4] J.K.Jacoub,R.Liscano,andJ.S.Bradbury ,“A survey of modeling techniques for wireless
sensor networks,” in Proc. of the 5th International Conference on Sensor Technologies
and Applications (SENSORCOMM 2011), Aug. 2011, pp. 103–109.
[5] ISO/IEC/IEEE42010, Systems and software engineering — Architecture description,
ISO, December 2011.
31. Ivano Malavolta |
Gran Sasso Science Institute
+ 39 380 70 21 600
iivanoo
ivano.malavolta@gssi.infn.it
www.ivanomalavolta.com
Contact