ukuFlow is a workflow engine for wireless sensor networks and energy-efficient networked embedded devices. With ukuFlow, developers model the application logic using processes, or workflows, as programming abstraction. This macroprogramming approach enables domain experts to focus on the application logic, hiding away low-level system issues.
The main goal of ukuFlow is to provide a system that runs entirely in-network. Users first define their process logic using a process editor in an IDE. An off-network converter maps the logic to a compact format, which is uploaded to the network via a serial connection to a sensor node. From there on, the ukuFlow engine takes over by instantiating and running the workflow as specified, with no need for a back-end controlling the execution.
ukuFlow adopts a standard notation called Business Process Model and Notation (BPMN) v2.0, which we extend with a set of abstractions for its suitability to sensor networks. Processes are modeled with the help of an IDE, particularly an open-source Eclipse plug-in enhanced with our toolchain to convert and deploy process into a running sensor network. Want to find out more? Take a look at our current poster (image to the right).
ukuFlow is written in the C programming language. It is implemented using Contiki, therefore it runs on a variety of platforms. We do focus, however, on the MSP430-line of sensor nodes like the TelosB and the Z1.
Availability
ukuFlow is available under a BSD license.Downloads
The system is split in two parts: the runtime for the sensor network, and the Eclipse Plug-in. The system runtime is available via a public repository at Google Code. The Plug-in can be obtained from here. Or you can obtain a copy on request via email to guerrero@dvs...Source Code Documentation
We strive to include as much source code (doxygen) documentation as possible. Our nightly builds update all the html files, which can be accessed here.Publications
Workflow Support for Low-Power Wireless Sensor and Actuator Networks (PhD Thesis) Pablo Ezequiel Guerrero Technische Universität Darmstadt, Darmstadt, Germany, TU Prints, October 2014 [PDF] [BibTeX] |
BPMN2uku - An Eclipse Plugin for Generating ukuFlow’s Code from Business Process Model Notation (BSc. Thesis) Dang Quoc Hien. Technische Universität Darmstadt, November 2012 [PDF] [BibTeX] |
Distributed Network Structuring with Scopes Daniel Jacobi, Pablo E. Guerrero, Ilia Petrov, Alejandro Buchmann October 2009 [PDF] [BibTeX] |
Design und Implementierung von Scopes für Contiki (BSc. Thesis) Steffen Kilb. Technische Universität Darmstadt, 2009. German. [BibTeX] |
Structuring Sensor Networks with Scopes Daniel Jacobi, Pablo E. Guerrero, Ilia Petrov, Alejandro Buchmann 3rd IEEE European Conference on Smart Sensing and Context (EuroSSC), IEEE Communications Society, Zurich, Switzerland, October 2008 [PDF] [BibTeX] |
Workflow Support for Wireless Sensor and Actor Networks Pablo Guerrero, Daniel Jacobi, Alejandro Buchmann 4th International Workshop on Data Management for Sensor Networks, Vienna, Austria, September 2007 [Conference] [PDF] [BibTeX] |
Scoping für Drahtlose Sensornetze Jan Steffan, Ludger Fiege, Mariano Cilia, Alejandro Buchmann GI-Fachgespraech Sensornetze, Zürich, Switzerland, Springer, March 2005 [Conference] [PDF] [BibTeX] |
Engineering Event-based Systems with Scopes Ludger Fiege, Mira Mezini, Gero Mühl, Alejandro P. Buchmann Proceedings of the European Conference on Object-Oriented Programming (ECOOP'02), LNCS 2374, Malaga, Spain, Springer-Verlag, June 2002 [Conference] [PDF] [Slides] [BibTeX] |
Progress Reports:
A Workflow Approach for Low Power Wireless Sensor and Actor Networks (Extended Abstract) Pablo Guerrero Joint Workshop of the German Research Training Groups in Computer Science, Schloss Dagstuhl, Germany, June 2011 [Summer School] [Proceedings] |
Using Workflows as Programming Abstraction for Wireless Sensor and Actor Network Applications (Extended
Abstract) Pablo Guerrero Summer School on Cooperative Monitoring in Robot and Sensor Networks, Schloss Ebernburg, Germany, August 2008 [Summer School] [PDF] [Proceedings] |
The Name
ukuFlow is a compound name, coming from uku ('U'uku is hawaiian for tiny) and flow (from work-flow).
Last updated 22-2-2012