Towards Verifying Correctness of Wireless Sensor Network Applications Using Insense and Spin

The design and implementation of wireless sensor network applications often require domain experts, who may lack expertise in software engineering, to produce resource-constrained, concurrent, real-time software without the support of high-level software engineering facilities. The Insense language aims to address this mismatch by allowing the complexities of synchronisation, memory management and event-driven programming to be borne by the language implementation rather than by the programmer. The main contribution of this paper is an initial step towards verifying the correctness of WSN applications with a focus on concurrency. We model part of the synchronisation mechanism of the Insense language implementation using Promela constructs and verify its correctness using Spin . We demonstrate how a previously published version of the mechanism is shown to be incorrect by Spin , and give complete verification results for the revised mechanism.

[1]  Robert P. Kurshan,et al.  A structural induction theorem for processes , 1989, PODC.

[2]  Gregorio Díaz,et al.  Model Checking Wireless Sensor Network Security Protocols: TinySec + LEAP , 2007 .

[3]  Ronald Morrison,et al.  A Composition-Based Approach to the Construction and Dynamic Reconfiguration of Wireless Sensor Network Applications , 2008, SC@ETAPS.

[4]  Ian F. Akyildiz,et al.  Wireless Sensor and Actor Networks , 2010 .

[5]  Fei Xie,et al.  Translation-based co-verification , 2005, Proceedings. Second ACM and IEEE International Conference on Formal Methods and Models for Co-Design, 2005. MEMOCODE '05..

[6]  Stephan Merz,et al.  Model Checking , 2000 .

[7]  Shin Nakajima,et al.  The SPIN Model Checker : Primer and Reference Manual , 2004 .

[8]  K. Pister,et al.  Wireless Inertial Sensors for Monitoring Animal Behavior , 2007, 2007 29th Annual International Conference of the IEEE Engineering in Medicine and Biology Society.

[9]  Adam Dunkels,et al.  Contiki - a lightweight and flexible operating system for tiny networked sensors , 2004, 29th Annual IEEE International Conference on Local Computer Networks.

[10]  David E. Culler,et al.  Software design patterns for TinyOS , 2007, TECS.

[11]  Krzysztof R. Apt,et al.  Limits for Automatic Verification of Finite-State Concurrent Systems , 1986, Inf. Process. Lett..

[12]  Matt Welsh,et al.  Deploying a wireless sensor network on an active volcano , 2006, IEEE Internet Computing.

[13]  Agathoniki Trigoni,et al.  Correlation-based data dissemination in traffic monitoring sensor networks , 2006, CoNEXT '06.

[14]  Thierry Coupaye,et al.  The FRACTAL component model and its support in Java , 2006, Softw. Pract. Exp..

[15]  Muffy Calder,et al.  Symmetry in temporal logic model checking , 2006, CSUR.

[16]  Edmund M. Clarke,et al.  Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic , 1981, Logic of Programs.

[17]  Arijit Khan,et al.  Undersea wireless sensor network for ocean pollution prevention , 2008, 2008 3rd International Conference on Communication Systems Software and Middleware and Workshops (COMSWARE '08).

[18]  David Gay,et al.  Software design patterns for TinyOS , 2005, LCTES '05.

[19]  Alastair F. Donaldson,et al.  A Computational Group Theoretic Symmetry Reduction Package for the Spin Model Checker , 2006, AMAST.

[20]  Paolo Ballarini,et al.  Model Checking Medium Access Control for Sensor Networks , 2006, Second International Symposium on Leveraging Applications of Formal Methods, Verification and Validation (isola 2006).

[21]  Dragan Bosnacki,et al.  Symmetric Spin , 2000, SPIN.

[22]  Ronald Morrison,et al.  A Component-Based Model and Language for Wireless Sensor Network Applications , 2008, 2008 32nd Annual IEEE International Computer Software and Applications Conference.

[23]  Muffy Calder,et al.  Non-commercial Research and Educational Use including without Limitation Use in Instruction at Your Institution, Sending It to Specific Colleagues That You Know, and Providing a Copy to Your Institution's Administrator. All Other Uses, Reproduction and Distribution, including without Limitation Comm , 2022 .

[24]  Ian F. Akyildiz,et al.  Wireless sensor networks: a survey , 2002, Comput. Networks.

[25]  Marta Z. Kwiatkowska,et al.  Probabilistic Model Checking of the IEEE 802.11 Wireless Local Area Network Protocol , 2002, PAPM-PROBMIV.

[26]  Thierry Coupaye,et al.  The FRACTAL component model and its support in Java: Experiences with Auto-adaptive and Reconfigurable Systems , 2006 .