Behavioural Design of Sensor Network Applications using Activity-Driven States Amir Taherkordi, Frank Eliassen, and Einar Broch Johnsen Department of Informatics University of Oslo, Norway
Introduction Low cost design phase Fast optimization Abstract level Software design in WSNs require a dynamic design view Control flow, state transition, delayed states and transitions, etc. Previous works mainly focus on coarse-grain and network-level behaviuors E.g. Timed Automata, Timed Petri Net, StateCharts
Motivation Example – Health Care System Wearable location data propagation sensors are used After sending the location information, the sensor node waits for ACK In order to reduce the energy consumption of sensor nodes, listening window is used The sensor check patient’s temperature periodically
Motivation Example – patient tracking Step1: Check initial settings and default parameters Step2: Send Positioning packet, then wait for t0 ms Step3: Start listening to gate unit for ACK for t1 ms If ACK received, wait Ti ms, go to step2 If no ACK, listen to gate unit for t2 ms If no ACK, listen to gate unit for t3 ms If no ACK, go to step2 immediately At the same time, temperature sensor is polled evert t4 ms
Inability of existing models The following need to be abstracted: Scheduling Listening Order of activity Events States Transitions Timing constraints No existing model can abstract all these aspects in a single model while providing an easy approach to convert to actual programs
SENSEACT Overview An extension of finite automaton Activity-driven states (ActState) Current state Current activity Transition functions State variables Transition-level Global-level Time information
SENSEACT Definition
SENSEACT Extension Parallel transition Pull-based event Parametric repetition Push-based event
Implement Motivation Example
Convert to Programming Model ActStates Interface for lifecycle manageent (initiating, executing, terminating) Local state variables StayIn(Time duration) Transition Internal transition External transition
Evaluation Programming abstraction and runtime model Not considered in this work since it is dependent on platform Assessment of the model itself Focus on code generation Focus on low-level abstraction needs Focus on both
Conclusion The gap between the behavioural description of WSN software and the structural design models of typical programs is filled SENSEACT models timed activities, states, events and delayed transition in one single model SENSEACT model can be converted to a coarse-grained programming constructs easily, both at the node level and network level