SEJan 15, 2014

Reflective and Refractive Variables: A Model for Effective and Maintainable Adaptive-and-Dependable Software

arXiv:1401.3614v1
Originality Synthesis-oriented
AI Analysis

This work addresses software maintainability and adaptability for developers in domains like robotics and RFID processing, but it appears incremental as it builds on existing concepts of variables and threads.

The paper tackles the challenge of expressing cross-layer optimization and sensor-actuator tasks in software by introducing reflective and refractive variables, resulting in a tool that simplifies complex operations in application layers like C, with examples including CPU usage monitoring and TCP rate adjustments.

We propose a simple and effective tool for the expression of tasks such as cross-layer optimization strategies or sensors-related applications. The approach is based on what we refer to as "reflective and refractive variables". Both types of variables are associated with external entities, e.g. sensors or actuators. A reflective variable is a volatile variable, that is, a variable that might be concurrently modified by multiple threads. A library of threads is made available, each of which interfaces a set of sensors and continuously update the value of a corresponding set of sensors. One such thread is "cpu", which exports the current level of usage of the local CPU as an integer between 0 and 100. This integer is reflected into the integer reflective variable cpu. A refractive variable is a reflective variable that can be modified. Each modification is caught and interpreted as a request to change the value of an actuator. For instance, setting variable "tcp_sendrate" would request a cross-layer adjustment to the thread interfacing the local TCP layer entity. This allows express in an easy way complex operations in the application layer of any programming language, e.g. plain old C. We describe our translator and the work we are carrying out within PATS to build simple and powerful libraries of scripts based on reflective and refractive variables, including robotics applications and RFID tags processing.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes