Srijan : A Graphical Toolkit for WSN Application Development

Macroprogramming is an application development technique for wireless sensor networks (WSNs) where the developer specifies the behavior of the system, as opposed to that of the constituent nodes. Although several languages for macroprogramming have been proposed recently, the area of easy-to-use graphical tools for macroprogramming in real environments is still largely unexplored. In this paper, we present Srijan, a toolkit that enables application development for WSNs in a graphical manner using data-driven macroprogramming. It can be used in various stages of application development, viz. i) specification of application as a task graph using a graphical interface, ii) customization of the autogenerated source files with domain-specific imperative code, iii) specification of the target system structure, iv) compilation of the macroprogram into individual customized runtimes for each constituent node of the target system, and finally v) deployment of the auto generated node-level code in an over-the-air manner to the nodes in the target system. The current implementation of Srijan targets the recently released Sun SPOT sensor nodes, and is available for public download. Our experiments show that using toolkit can drastically reduce the time and effort involved in developing real-world WSN applications.

[1]  M. Welsh,et al.  Flask : A Language for Data-driven Sensor Network Programs , 2006 .

[2]  M. Welsh,et al.  The Regiment Macroprogramming System , 2007, 2007 6th International Symposium on Information Processing in Sensor Networks.

[3]  Edward A. Lee,et al.  Joint Modeling and Design of Wireless Networks and Sensor Node Software , 2006 .

[4]  Viktor K. Prasanna,et al.  A Compilation Framework for Macroprogramming Networked Sensors , 2007, DCOSS.

[5]  Viktor K. Prasanna,et al.  The Abstract Task Graph: a methodology for architecture-independent programming of networked sensor systems , 2005, EESR '05.

[6]  Lothar Thiele,et al.  Deployment support network a toolkit for the development of WSNs , 2007 .

[7]  Kamin Whitehouse,et al.  Semantic Streams: A Framework for Composable Semantic Interpretation of Sensor Data , 2006, EWSN.

[8]  Deborah Estrin,et al.  A sensor network application construction kit (SNACK) , 2004, SenSys '04.

[9]  Tarek F. Abdelzaher,et al.  EnviroSuite: An environmentally immersive programming framework for sensor networks , 2006, TECS.

[10]  Viktor K. Prasanna,et al.  Enabling Scoping in Sensor Network Macroprogramming ∗ , 2006 .

[11]  Gero Mühl,et al.  Rapid Prototyping for Pervasive Applications , 2007, IEEE Pervasive Computing.

[12]  Robbert van Renesse,et al.  JiST: an efficient approach to simulation using virtual machines , 2005, Softw. Pract. Exp..

[13]  Viktor K. Prasanna,et al.  System-level Support for Macroprogramming of Networked Sensing Applications , 2005, PSC.

[14]  Viktor K. Prasanna,et al.  Expressing Sensor Network Interaction Patterns Using Data-Driven Macroprogramming , 2007, Fifth Annual IEEE International Conference on Pervasive Computing and Communications Workshops (PerComW'07).

[15]  Ioannis Chatzigiannakis,et al.  jWebDust : A Java-Based Generic Application Environment for Wireless Sensor Networks , 2005, DCOSS.

[16]  Eric Bouillet,et al.  A Semantics-Based Middleware for Utilizing Heterogeneous Sensor Networks , 2007, DCOSS.

[17]  Murat Demirbas,et al.  Wireless Sensor Networks for Monitoring of Large Public Buildings , 2005 .

[18]  Bradford G. Nickerson,et al.  A User Friendly Toolkit for Building Robust Environmental Sensor Networks , 2007, Fifth Annual Conference on Communication Networks and Services Research (CNSR '07).

[19]  Siddharth Seth,et al.  A spreadsheet approach to programming and managing sensor networks , 2006, 2006 5th International Conference on Information Processing in Sensor Networks.