• Sep
  • Home
  • Sep
  • People
  • Sep
  • Projects
  • Sep
  • Software
  • Sep
  • Publications
  • Sep
  • Awards
  • Sep
  • Reach
  • Sep
Tutorial: Programming WSNs

Programming Wireless Sensor Networks Beyond Operating Systems:
From Theory to Practice

Luca Mottola (Swedish Insitute of Computer Science) and Gian Pietro Picco (University of Trento)

Tutorial during CPSWEEK 2010


A typical WSN device
A typical WSN device.
Wireless Sensor Networks (WSNs) are a key component of Cyber Physical Systems. However, ease of programming is also acknowledged among the major barriers to the adoption of WSNs. For instance, market research firm ONWorld indicates ease of programming as the one factor that may hamper an expected tenfold increase in global market for WSNs by 2011. The CONET research roadmap, based on a public survey among experts in the field, places programming abstractions and middleware among the most important research topics. The estimated horizon to solve the corresponding challenges, according to the roadmap, lies between 5 and 10 years.

The current practice in WSN programming largely revolves around low-level programming frameworks, usually at the level of the operating system. This provided support to deploy the first prototypical systems. However, this practice is not sustainable in the long term, and is certainly not applicable when WSNs become part of a complex system such as a cyber physical one. Researchers are addressing this issue with several higher-level programming solutions, which greatly differ in the way they let developers describe the system behavior. However, a well-established characterization of available approaches is missing. It is thus difficult for researchers and students to orient themselves in the field, and for end-users to identify the solutions appropriate to their needs.

The tutorial during EWSN09
The tutorial during EWSN09
In this tutorial, we build upon our recently published work on the analysis of state-of-the-art WSN programming. We illustrate a thorough classification of available solutions, complemented by direct, practical experience of the technology at hand. We begin with a characterization of WSN applications, to identify the fundamental requirements programming platforms must deal with. This is followed by the core of the tutorial, a taxonomy of WSN programming solutions providing a foundation to classify, compare, and evaluate existing approaches. Throughout the tutorial, we interleave live demonstrations of WSN systems with the presentation of the main tutorial material, to provide attendees with the opportunity to see the technology in action. Our tutorial is aimed at students starting off in the field of WSN programming, and at researchers willing to gain deeper insights in the field. Practitioners can also benefit from the systematic overview on the topic.

We have been successfully presenting our tutorial in several major venues in the field, including the 6th European Conference on Wireless Sensor Networks (EWSN) in 2009, the 7th ACM/USENIX International Middleware Conference in 2008, and several summer schools. Overall, more than 100 persons already attended, and we look forward to presenting our tutorial during CPSWEEK 2010 in Stockholm!

Presenter Bios

Luca Mottola is a post-doctoral researcher at the Swedish Institute of Computer Science (SICS). Previously, he has been a post-doctoral researcher at the Bruno Kessler Foundation, Trento (Italy) and at the University of Trento (Italy), and a research scholar at the University of Southern California (USC, USA). He completed his Ph.D. at Politecnico di Milano (Italy) in 2008 with a thesis on WSN programming. His Ph.D. work, which was extensively published at major WSN and closely related conferences, was awarded the EWSN/CONET Best Ph.D. Thesis Award in 2009. Luca Mottola's software systems are used in real-world deployments, e.g., as described in a recent IPSN/SPOTS paper for which he received, along with co-authors, the Best Paper Award at ACM/IEEE IPSN in 2009. His extensive expertise in building WSN software is also demonstrated by the Best Demonstration Award received at ACM SenSys in 2007, along with G.P. Picco. His research interests include programming abstractions and distributed computing on sensor networks, and verification of distributed software architectures.

Gian Pietro Picco is an Associate Professor at the Dipartimento di Ingegneria e Scienza dell'Informazione of the University of Trento, Italy. Previously, he has been on the faculty of Washington University in St. Louis, MO, USA (1998-1999) and Politecnico di Milano, Italy (1999-2006). The goal of his current research is to support the development of modern distributed systems through the investigation of appropriate programming abstractions, along with communication protocols to efficiently support them. His group was a key partner in the EU RUNES IP project, and he is currently the Scientific Director of TRITon, a project funded by the local government where WSNs are applied to the monitoring and control of road tunnels. He has extensive expertise in giving tutorials at conferences, as he gave the tutorial "Understanding Code Mobility", largely based on his Ph.D. thesis, at ECOOP, Autonomous Agents, ESEC/FSE, MobiCom, Mobile Agents, and ICSE. In addition, he has been a speaker at a number of summer schools on various topics. In 2007, he was awarded at the Int. Conf. on Software Engineering the Most Influential Paper Award from ICSE97.