Javascript must be enabled to continue!
Orchestrating the Internet of Things with Task-Oriented Programming
View through CrossRef
The development of reliable software for the internet of things (IoT) is difficult because IoT systems are dynamic, interactive, distributed, collaborative, multi-tiered, and multitasking in nature. The complexity is increased further by semantic friction that arises through different hardware and software characteristics between tiers. Many computers that operate in IoT systems are edge devices that interact with the environment using sensors and actuators. Edge devices are often powered by low-cost microcontrollers designed for embedded applications. They have little memory, unhurried processors, and are slow in communication but are also small and energy efficient. Task-oriented programming (TOP) can cope with the challenges of IoT programming. In TOP, the main building blocks are tasks, an abstract representation of work. During execution, the current value of the task is observable, and other tasks can act upon it. Collaboration patterns can be modelled by combining and transforming tasks into compound tasks. Programming edge devices benefits from TOP as well, but running such a system within the limitations of resource-constrained microcontrollers is not straightforward. This dissertation demonstrates how to include edge devices in TOP systems using domain-specific languages (DSLs). With these techniques, all tiers and their interoperation of an IoT system are specified in a single high-level source, language, paradigm, high abstraction level, and type system. First, I present advanced DSL embedding techniques. Then mTask is shown, a TOP DSL for IoT edge devices, embedded in iTask. Tasks are constructed and compiled at run time in order to allow tasks to be tailored to the current work requirements. The task is then sent to the device for interpretation. A device is programmed once with a lightweight domain-specific OS to be used in an mTask system. This OS executes tasks in an energy-efficient way and automates all communications and data sharing. All aspects of the mTask system are shown: example applications, language design, implementation details, integration with iTask, and green computing facilities such as automatic sleeping. Finally, tierless IoT programming is compared to traditional tiered programming. In tierless programming frameworks, the size of the code and the number of required programming languages is reduced significantly. By using a single paradigm and a system-wide type system, tierless programming reduces problems such as semantic friction; maintainability and robustness issues; and interoperation safety.
Title: Orchestrating the Internet of Things with Task-Oriented Programming
Description:
The development of reliable software for the internet of things (IoT) is difficult because IoT systems are dynamic, interactive, distributed, collaborative, multi-tiered, and multitasking in nature.
The complexity is increased further by semantic friction that arises through different hardware and software characteristics between tiers.
Many computers that operate in IoT systems are edge devices that interact with the environment using sensors and actuators.
Edge devices are often powered by low-cost microcontrollers designed for embedded applications.
They have little memory, unhurried processors, and are slow in communication but are also small and energy efficient.
Task-oriented programming (TOP) can cope with the challenges of IoT programming.
In TOP, the main building blocks are tasks, an abstract representation of work.
During execution, the current value of the task is observable, and other tasks can act upon it.
Collaboration patterns can be modelled by combining and transforming tasks into compound tasks.
Programming edge devices benefits from TOP as well, but running such a system within the limitations of resource-constrained microcontrollers is not straightforward.
This dissertation demonstrates how to include edge devices in TOP systems using domain-specific languages (DSLs).
With these techniques, all tiers and their interoperation of an IoT system are specified in a single high-level source, language, paradigm, high abstraction level, and type system.
First, I present advanced DSL embedding techniques.
Then mTask is shown, a TOP DSL for IoT edge devices, embedded in iTask.
Tasks are constructed and compiled at run time in order to allow tasks to be tailored to the current work requirements.
The task is then sent to the device for interpretation.
A device is programmed once with a lightweight domain-specific OS to be used in an mTask system.
This OS executes tasks in an energy-efficient way and automates all communications and data sharing.
All aspects of the mTask system are shown: example applications, language design, implementation details, integration with iTask, and green computing facilities such as automatic sleeping.
Finally, tierless IoT programming is compared to traditional tiered programming.
In tierless programming frameworks, the size of the code and the number of required programming languages is reduced significantly.
By using a single paradigm and a system-wide type system, tierless programming reduces problems such as semantic friction; maintainability and robustness issues; and interoperation safety.
Related Results
Programming model abstractions for optimizing I/O intensive applications
Programming model abstractions for optimizing I/O intensive applications
This thesis contributes from the perspective of task-based programming models to the efforts of optimizing I/O intensive applications. Throughout this thesis, we propose programmin...
The Geography of Cyberspace
The Geography of Cyberspace
The Virtual and the Physical
The structure of virtual space is a product of the Internet’s geography and technology. Debates around the nature of the virtual — culture, s...
Key Technologies of IoT Service Security and Privacy Protection
Key Technologies of IoT Service Security and Privacy Protection
The Internet of Things in the industrial industry has attracted widespread attention from the government, academia, and industry due to its huge application prospects. The core ide...
Internet addiction among school children in the Western Province of Sri Lanka: A cross sectional analytical study (Preprint)
Internet addiction among school children in the Western Province of Sri Lanka: A cross sectional analytical study (Preprint)
BACKGROUND
The internet is widely used across the world and in Sri Lanka for many purposes. Though essential for everyday life there are many negative aspec...
Introducing object-oriented programming into the computer science curriculum
Introducing object-oriented programming into the computer science curriculum
In recent years, object-oriented programming languages and object-oriented program design have become increasingly popular. Dialects of many popular programming languages are now a...
(originally published in October 1997)
(originally published in October 1997)
This paper is included in the First Monday Special Issue #3: Internet banking, e-money, and Internet gift economies, published in December 2005. Special Issue editor Mark A. Fox as...
[RETRACTED] Keanu Reeves CBD Gummies v1
[RETRACTED] Keanu Reeves CBD Gummies v1
[RETRACTED]Keanu Reeves CBD Gummies ==❱❱ Huge Discounts:[HURRY UP ] Absolute Keanu Reeves CBD Gummies (Available)Order Online Only!! ❰❰= https://www.facebook.com/Keanu-Reeves-CBD-G...
Boardroom diversity (task- and relation-oriented diversity) and financial stability: evidence from Chinese financial listed firms
Boardroom diversity (task- and relation-oriented diversity) and financial stability: evidence from Chinese financial listed firms
Purpose
This study aims to examine the impact of boardroom diversity on the financial stability of Chinese financial listed firms. Boardroom diversity is quantified in the followin...

