J. Indulska and K. Raymond (Eds.): DAIS 2007, LNCS 4531, pp. 48–61, 2007.
© IFIP International Federation for Information Processing 2007
Observability and Controllability of Wireless Software
Components
Fabien Romeo, Franck Barbier, and Jean-Michel Bruel
LIUPPA, Université de Pau et des Pays de l'Adour
Av. de l’Université, B.P. 1155, F-64013 PAU - France
fabien.romeo@univ-pau.fr, franck.barbier@franckbarbier.com,
jean-michel.bruel@univ-pau.fr
Abstract. Software components embedded in wireless devices are subject to
behavior which cannot be fully and realistically predicted. This calls for a
runtime management infrastructure that is able to observe and control the com-
ponents’ states and to make their behaviors explicit, tangible and under-
standable, in any case and at any time. In this paper, we propose a framework
for remotely administrating the functional behavior of software components
deployed on wireless nodes. This framework is based on components which are
locally managed by internal managers on the wireless side. The controllable
nature of components relies on executable UML models that persist at runtime.
On the administration side, models are replicated and synchronized with the
models that constitute the inner workings of the wireless components.
1 Introduction
Component-based development is a challenging topic in the area of ubiquitous sys-
tems. More particularly, this is illustrated by research on specialized component
models (e.g., pect [1], koala [2], pecos [3], beanome [4] or frogi [5]) which them-
selves may support composition techniques that are specific to ubiquitous systems.
Many studies have shown that embedded system developers expect better analysis
supports of software behavior. Better testability and debuggability are among these
major requirements [6, 7]. Component-based development may be seen as a break-
through with respect to this topic. Indeed, building software by means of components
enables the identification and the setup of deployment properties. As for the
compositions of components, they may express links which may reflect wireless
infrastructures in a structured and logical way. If one has at one’s disposal an
appropriate formalism to design the inside of components (implementation) and the
outside (interfaces and their dependencies embodying compositions), runtime
management may benefit from this formalism. More specifically, this concerns the
executable component/composition behavior models that result from using this
formalism. Therefore, models act as tracking and monitoring supports.
In the area of ubiquitous systems, mastering deployment conditions includes
overcoming some stumbling blocks. Instable communication connections that may be
broken, damaged modes are frequent, runtime environments/infrastructures are mobile