>
In this talk, we present the work we are conducting at INRIA Rhône-Alpes
> on the design of a component-based framework for the construction of
> autonomous systems.
>
> Modern distributed computing systems are becoming increasingly complex.
> A major trend currently is to build autonomous systems, i.e. systems
> that reconfigure themselves upon occurrence of events such as software
> and hardware faults, performance degradation, etc. Building autonomous
> systems requires both a software technology allowing the development of
> administrable systems and the ability to build control loops in charge
> of regulating and optimizing the behavior of the managed system.
>
> In this talk, we will mainly focus on the first requirement, i.e.
> providing a software technology for the development of administrable
> systems. We argue that better configurability can be reached through the
> use of component-based software frameworks. In particular, we present
> DREAM, a software framework for the construction of message-oriented
> middleware (MOMs).
>
> Several MOMs have been developed in the past ten years. The research
> work has primarily focused on the support of various non functional
> properties like message ordering, reliability, security, scalability,
> etc. Less emphasis has been placed on MOM configurability. From the
> functional point of view, existing MOMs implement a fixed programming
> interface (API) that provides a fixed subset of asynchronous
> communication models (publish/subscribe, event/reaction, message queues,
> etc.). From the non-functional point of view, existing MOMs often
> provide the same non-functional properties for all message exchanges,
> which reduces their performance.
>
> To overcome these limitations, we have developed DREAM (Dynamic
> REflective Asynchronous Middleware), a component framework for the
> construction of dynamically reconfigurable communication systems. The
> idea is to build a middleware as an assembly of interacting components,
> which can be statically or dynamically configured to meet different
> design requirements or environment constraints. DREAM provides a
> component library and a set of tools to build, configure and deploy
> middleware implementing various communication paradigms. DREAM defines
> abstractions and provides tools for controlling the use of resources
> (i.e. messages and activities) within the middleware. Moreover, it
> builds upon the Fractal component model, which provides support for
> hierarchical and dynamic composition. DREAM has been successfully used
> for building various forms of communication middleware:
> publish-subscribe (JMS), total order group communication protocols,
> probabilistic broadcast,asynchronous RPC, etc.
>