GloMoSim: a library for parallel simulation of large-scale wireless networks
PADS '98 Proceedings of the twelfth workshop on Parallel and distributed simulation
IEEE Transactions on Software Engineering
System architecture directions for networked sensors
ASPLOS IX Proceedings of the ninth international conference on Architectural support for programming languages and operating systems
GHT: a geographic hash table for data-centric storage
WSNA '02 Proceedings of the 1st ACM international workshop on Wireless sensor networks and applications
Wireless sensor networks for habitat monitoring
WSNA '02 Proceedings of the 1st ACM international workshop on Wireless sensor networks and applications
A dual-space approach to tracking and sensor management in wireless sensor networks
WSNA '02 Proceedings of the 1st ACM international workshop on Wireless sensor networks and applications
Software Metrics: A Rigorous and Practical Approach
Software Metrics: A Rigorous and Practical Approach
The cougar approach to in-network query processing in sensor networks
ACM SIGMOD Record
Maté: a tiny virtual machine for sensor networks
Proceedings of the 10th international conference on Architectural support for programming languages and operating systems
Proceedings of the 10th international conference on Architectural support for programming languages and operating systems
Directed diffusion for wireless sensor networking
IEEE/ACM Transactions on Networking (TON)
A Network-Centric Approach to Embedded Software for Tiny Devices
EMSOFT '01 Proceedings of the First International Workshop on Embedded Software
Wireless sensor networks: a new regime for time synchronization
ACM SIGCOMM Computer Communication Review
The nesC language: A holistic approach to networked embedded systems
PLDI '03 Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation
Impala: a middleware system for managing autonomic, parallel sensor systems
Proceedings of the ninth ACM SIGPLAN symposium on Principles and practice of parallel programming
Sparse Power Efficient Topology for Wireless Networks
HICSS '02 Proceedings of the 35th Annual Hawaii International Conference on System Sciences (HICSS'02)-Volume 9 - Volume 9
The many faces of publish/subscribe
ACM Computing Surveys (CSUR)
MANTIS: system support for multimodAl NeTworks of in-situ sensors
WSNA '03 Proceedings of the 2nd ACM international conference on Wireless sensor networks and applications
Distributed localization in wireless sensor networks: a quantitative comparison
Computer Networks: The International Journal of Computer and Telecommunications Networking - Special issue: Wireless sensor networks
An adaptive energy-efficient MAC protocol for wireless sensor networks
Proceedings of the 1st international conference on Embedded networked sensor systems
Energy-efficient collision-free medium access control for wireless sensor networks
Proceedings of the 1st international conference on Embedded networked sensor systems
Spatial Programming Using Smart Messages: Design and Implementation
ICDCS '04 Proceedings of the 24th International Conference on Distributed Computing Systems (ICDCS'04)
EnviroTrack: Towards an Environmental Computing Paradigm for Distributed Sensor Networks
ICDCS '04 Proceedings of the 24th International Conference on Distributed Computing Systems (ICDCS'04)
Hood: a neighborhood abstraction for sensor networks
Proceedings of the 2nd international conference on Mobile systems, applications, and services
Electronic shepherd - a low-cost, low-bandwidth, wireless network system
Proceedings of the 2nd international conference on Mobile systems, applications, and services
A survey of MAC protocols for sensor networks
Wireless sensor networks
Computer
Sensor network-based countersniper system
SenSys '04 Proceedings of the 2nd international conference on Embedded networked sensor systems
Versatile low power media access for wireless sensor networks
SenSys '04 Proceedings of the 2nd international conference on Embedded networked sensor systems
Sensor Networks for Emergency Response: Challenges and Opportunities
IEEE Pervasive Computing
A line in the sand: a wireless sensor network for target detection, classification, and tracking
Computer Networks: The International Journal of Computer and Telecommunications Networking - Special issue: Military communications systems and technologies
Region streams: functional macroprogramming for sensor networks
DMSN '04 Proceeedings of the 1st international workshop on Data management for sensor networks: in conjunction with VLDB 2004
TinyDB: an acquisitional query processing system for sensor networks
ACM Transactions on Database Systems (TODS) - Special Issue: SIGMOD/PODS 2003
Design and implementation of a framework for efficient and programmable sensor networks
Proceedings of the 1st international conference on Mobile systems, applications and services
An entity maintenance and connection service for sensor networks
Proceedings of the 1st international conference on Mobile systems, applications and services
A dynamic operating system for sensor nodes
Proceedings of the 3rd international conference on Mobile systems, applications, and services
Rapid Development and Flexible Deployment of Adaptive Wireless Sensor Network Applications
ICDCS '05 Proceedings of the 25th IEEE International Conference on Distributed Computing Systems
EESR '05 Proceedings of the 2005 workshop on End-to-end, sense-and-respond systems, applications and services
Proceedings of the 3rd international conference on Embedded networked sensor systems
Algorithms for generic role assignment in wireless sensor networks
Proceedings of the 3rd international conference on Embedded networked sensor systems
SenSlide: a sensor network based landslide prediction system
Proceedings of the 3rd international conference on Embedded networked sensor systems
Nano-RK: An Energy-Aware Resource-Centric RTOS for Sensor Networks
RTSS '05 Proceedings of the 26th IEEE International Real-Time Systems Symposium
Middleware: Middleware Challenges and Approaches for Wireless Sensor Networks
IEEE Distributed Systems Online
Using virtual markets to program global behavior in sensor networks
Proceedings of the 11th workshop on ACM SIGOPS European workshop
Proceedings of the 4th international conference on Mobile systems, applications and services
snBench: programming and virtualization framework for distributed multitasking sensor networks
Proceedings of the 2nd international conference on Virtual execution environments
Programming wireless sensor networks with logical neighborhoods
InterSense '06 Proceedings of the first international conference on Integrated internet ad hoc and sensor networks
Building up to macroprogramming: an intermediate language for sensor networks
IPSN '05 Proceedings of the 4th international symposium on Information processing in sensor networks
XYZ: a motion-enabled, power aware sensor node platform for distributed sensor network applications
IPSN '05 Proceedings of the 4th international symposium on Information processing in sensor networks
A utility-based sensing and communication model for a glacial sensor network
AAMAS '06 Proceedings of the fifth international joint conference on Autonomous agents and multiagent systems
EnviroSuite: An environmentally immersive programming framework for sensor networks
ACM Transactions on Embedded Computing Systems (TECS)
Building virtual sensors and actuators over logical neighborhoods
Proceedings of the international workshop on Middleware for sensor networks
TeenyLIME: transiently shared tuple space middleware for wireless sensor networks
Proceedings of the international workshop on Middleware for sensor networks
A survey of middleware for sensor networks: state-of-the-art and future directions
Proceedings of the international workshop on Middleware for sensor networks
t-kernel: providing reliable OS support to wireless sensor networks
Proceedings of the 4th international conference on Embedded networked sensor systems
Protothreads: simplifying event-driven programming of memory-constrained embedded systems
Proceedings of the 4th international conference on Embedded networked sensor systems
RETOS: resilient, expandable, and threaded operating system for wireless sensor networks
Proceedings of the 6th international conference on Information processing in sensor networks
The regiment macroprogramming system
Proceedings of the 6th international conference on Information processing in sensor networks
Wireless sensor networks: A survey on the state of the art and the 802.15.4 and ZigBee standards
Computer Communications
NodeMD: diagnosing node-level faults in remote wireless sensor systems
Proceedings of the 5th international conference on Mobile systems, applications and services
Reliable and efficient programming abstractions for wireless sensor networks
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
The emergence of networking abstractions and techniques in TinyOS
NSDI'04 Proceedings of the 1st conference on Symposium on Networked Systems Design and Implementation - Volume 1
Programming sensor networks using abstract regions
NSDI'04 Proceedings of the 1st conference on Symposium on Networked Systems Design and Implementation - Volume 1
PERCOM '07 Proceedings of the Fifth IEEE International Conference on Pervasive Computing and Communications
Expressing Sensor Network Interaction Patterns Using Data-Driven Macroprogramming
PERCOMW '07 Proceedings of the Fifth IEEE International Conference on Pervasive Computing and Communications Workshops
A State-Based Programming Model and System for Wireless Sensor Networks
PERCOMW '07 Proceedings of the Fifth IEEE International Conference on Pervasive Computing and Communications Workshops
Fidelity and yield in a volcano monitoring sensor network
OSDI '06 Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation - Volume 7
SensorWare: Programming sensor networks beyond code update and querying
Pervasive and Mobile Computing
Programming Approaches and Challenges for Wireless Sensor Networks
ICSNC '07 Proceedings of the Second International Conference on Systems and Networks Communications
The design and implementation of a declarative sensor network system
Proceedings of the 5th international conference on Embedded networked sensor systems
Clairvoyant: a comprehensive source-level debugger for wireless sensor networks
Proceedings of the 5th international conference on Embedded networked sensor systems
A survey on analytic studies of Delay-Tolerant Mobile Sensor Networks: Research Articles
Wireless Communications & Mobile Computing - Wireless Ad Hoc and Sensor Networks
Programming models for sensor networks: A survey
ACM Transactions on Sensor Networks (TOSN)
The LiteOS Operating System: Towards Unix-Like Abstractions for Wireless Sensor Networks
IPSN '08 Proceedings of the 7th international conference on Information processing in sensor networks
An experiment with reflective middleware to support grid-based flood monitoring
Concurrency and Computation: Practice & Experience - UK e-Science All Hands Meeting 2006
Flask: staged functional programming for sensor networks
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
State-Centric Programming for Sensor-Actuator Network Systems
IEEE Pervasive Computing
Vineyard Computing: Sensor Networks in Agricultural Production
IEEE Pervasive Computing
MacroLab: a vector-based macroprogramming framework for cyber-physical systems
Proceedings of the 6th ACM conference on Embedded network sensor systems
Programming wireless sensor networks with the TeenyLime middleware
Proceedings of the ACM/IFIP/USENIX 2007 International Conference on Middleware
Monitoring heritage buildings with wireless sensor networks: The Torre Aquila deployment
IPSN '09 Proceedings of the 2009 International Conference on Information Processing in Sensor Networks
Efficient routing from multiple sources to multiple sinks in wireless sensor networks
EWSN'07 Proceedings of the 4th European conference on Wireless sensor networks
Fence monitoring: experimental evaluation of a use case for wireless sensor networks
EWSN'07 Proceedings of the 4th European conference on Wireless sensor networks
Passive inspection of sensor networks
DCOSS'07 Proceedings of the 3rd IEEE international conference on Distributed computing in sensor systems
Solving generic role assignment exactly
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
Logical neighborhoods: a programming abstraction for wireless sensor networks
DCOSS'06 Proceedings of the Second IEEE international conference on Distributed Computing in Sensor Systems
Y-Threads: supporting concurrency in wireless sensor networks
DCOSS'06 Proceedings of the Second IEEE international conference on Distributed Computing in Sensor Systems
Macro-programming wireless sensor networks using Kairos
DCOSS'05 Proceedings of the First IEEE international conference on Distributed Computing in Sensor Systems
Routing techniques in wireless sensor networks: a survey
IEEE Wireless Communications
IEEE Communications Magazine
MAC protocols for wireless sensor networks: a survey
IEEE Communications Magazine
Reprogramming wireless sensor networks: challenges and approaches
IEEE Network: The Magazine of Global Internetworking
Programming storage-centric sensor networks with Squirrel
Proceedings of the 9th ACM/IEEE International Conference on Information Processing in Sensor Networks
Software engineering and wireless sensor networks: happy marriage or consensual divorce?
Proceedings of the FSE/SDP workshop on Future of software engineering research
Middleware clocks for sensing the physical world
Proceedings of the 5th International Workshop on Middleware Tools, Services and Run-Time Support for Sensor Networks
Computers and Electronics in Agriculture
sMapReduce: a programming pattern for wireless sensor networks
Proceedings of the 2nd Workshop on Software Engineering for Sensor Network Applications
Firm firmware and apps for the internet of things
Proceedings of the 2nd Workshop on Software Engineering for Sensor Network Applications
Journal of Network and Computer Applications
A survey on service-oriented middleware for wireless sensor networks
Service Oriented Computing and Applications
Demo: Zoom: a multi-resolution tasking framework for crowdsourced geo-spatial sensing
Proceedings of the 9th ACM Conference on Embedded Networked Sensor Systems
Self-organizing virtual macro sensors
ACM Transactions on Autonomous and Adaptive Systems (TAAS) - Special section on formal methods in pervasive computing, pervasive adaptation, and self-adaptive systems: Models and algorithms
Location-aware event-driven query processing in sensor database management
Proceedings of the 6th ACM International Conference on Distributed Event-Based Systems
Towards business processes orchestrating the physical enterprise with wireless sensor networks
Proceedings of the 34th International Conference on Software Engineering
A survey of visual sensor network platforms
Multimedia Tools and Applications
REED: Flexible rule based programming of wireless sensor networks at runtime
Computer Networks: The International Journal of Computer and Telecommunications Networking
Process-based design and integration of wireless sensor network applications
BPM'12 Proceedings of the 10th international conference on Business Process Management
GPU-based simulation of wireless body sensor networks
Proceedings of the Winter Simulation Conference
MARINE: MiddlewAre for resource and mIssion-oriented sensor NEtworks
ACM SIGMOBILE Mobile Computing and Communications Review
CrimeSPOT: A language and runtime for developing active wireless sensor network applications
Science of Computer Programming
Scalaness/nesT: type specialized staged programming for sensor networks
Proceedings of the 12th international conference on Generative programming: concepts & experiences
Towards spatial macroprogramming for sensing and actuating robot swarms
Proceedings of the 11th ACM Conference on Embedded Networked Sensor Systems
A web-based interface for a system that designs sensor networks
HCI'13 Proceedings of the 15th international conference on Human-Computer Interaction: interaction modalities and techniques - Volume Part IV
Proceedings of the 5th Asia-Pacific Symposium on Internetware
A journey through SMScom: self-managing situational computing
Computer Science - Research and Development
An easy-to-use 3D visualization system for planning context-aware applications in smart buildings
Computer Standards & Interfaces
Mobile Information Systems - Internet of Things
Hi-index | 0.00 |
Wireless sensor networks (WSNs) are attracting great interest in a number of application domains concerned with monitoring and control of physical phenomena, as they enable dense and untethered deployments at low cost and with unprecedented flexibility. However, application development is still one of the main hurdles to a wide adoption of WSN technology. In current real-world WSN deployments, programming is typically carried out very close to the operating system, therefore requiring the programmer to focus on low-level system issues. This not only distracts the programmer from the application logic, but also requires a technical background rarely found among application domain experts. The need for appropriate high-level programming abstractions, capable of simplifying the programming chore without sacrificing efficiency, has long been recognized, and several solutions have hitherto been proposed, which differ along many dimensions. In this article, we survey the state of the art in programming approaches for WSNs. We begin by presenting a taxonomy of WSN applications, to identify the fundamental requirements programming platforms must deal with. Then, we introduce a taxonomy of WSN programming approaches that captures the fundamental differences among existing solutions, and constitutes the core contribution of this article. Our presentation style relies on concrete examples and code snippets taken from programming platforms representative of the taxonomy dimensions being discussed. We use the taxonomy to provide an exhaustive classification of existing approaches. Moreover, we also map existing approaches back to the application requirements, therefore providing not only a complete view of the state of the art, but also useful insights for selecting the programming abstraction most appropriate to the application at hand.