scispace - formally typeset
Open AccessJournal ArticleDOI

Programming wireless sensor networks: Fundamental concepts and state of the art

Reads0
Chats0
TLDR
This article presents a taxonomy of WSN programming approaches that captures the fundamental differences among existing solutions, and uses the taxonomy to provide an exhaustive classification of existing approaches.
Abstract
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.

read more

Content maybe subject to copyright    Report

Citations
More filters
Journal ArticleDOI

Internet of Things in agriculture, recent advances and future challenges

TL;DR: A survey of recent IoT technologies, their current penetration in the agricultural sector, their potential value for future farmers and the challenges that IoT faces towards its propagation is presented.
Proceedings ArticleDOI

SDN-WISE: Design, prototyping and experimentation of a stateful SDN solution for WIreless SEnsor networks

TL;DR: SDN-WISE is stateful and pursues two objectives: to reduce the amount of information exchanged between sensor nodes and the SDN network controller, and to make sensor nodes programmable as finite state machines so enabling them to run operations that cannot be supported by stateless solutions.
Proceedings ArticleDOI

Developing IoT applications in the Fog: A Distributed Dataflow approach

TL;DR: This paper proposes a Distributed Dataflow (DDF) programming model for the IoT that utilises computing infrastructures across the Fog and the Cloud and demonstrates that this approach eases the development process and can be used to build a variety of IoT applications that work efficiently in the Fog.
Journal ArticleDOI

Enabling high-level application development for the Internet of Things

TL;DR: In this article, a development methodology that separates IoT application development into different concerns and provides a conceptual framework to develop an application, and a development framework that implements the development methodology to support actions of stakeholders.
References
More filters
Journal ArticleDOI

Environmental sensor networks

TL;DR: The developments in wireless network technology and miniaturization makes it possible to realistically monitor the natural environment and domain knowledge is an essential fourth component within the field of environmental sensor networks.
Proceedings Article

Programming sensor networks using abstract regions

TL;DR: The goal is to simplify application design by providing a set of programming primitives for sensor networks that abstract the details of low-level communication, data sharing, and collective operations, and the implementation of abstract regions in the TinyOS programming environment are presented.
Proceedings Article

The emergence of networking abstractions and techniques in TinyOS

TL;DR: The evolution of abstractions and techniques in TinyOS, a popular sensor network operating system, are studied and conclusions are drawn on the emerging abstractions as well as the novel constraints that have shaped them.
Proceedings ArticleDOI

Protothreads: simplifying event-driven programming of memory-constrained embedded systems

TL;DR: It is shown that protothreads significantly reduce the complexity of a number of widely used programs previously written with event-driven state machines, with a memory overhead of only two bytes per protothread.
Proceedings ArticleDOI

Hood: a neighborhood abstraction for sensor networks

TL;DR: This paper proposes a neighborhood programming abstraction for sensor networks, wherein a node can identify a subset of nodes around it by a variety of criteria and share state with those nodes.
Related Papers (5)