Design and Implementation of Dynamically Evolving Ensembles with the Helena Framework
Annabelle Klarl, Rolf Hennicker · 2014
Ensembles are collections of autonomic entities which collaborate to perform certain tasks. They show typically a complex dynamic behavior which is difficult to implement with state of the art development techniques. In this paper, we present a systematic methodology for the design and implementation of ensemble-based systems which goes beyond component-based development. A conceptual key point of our approach (elaborated in [1]) is that components can adopt different roles and that they can participate (under certain roles) in several, possibly concurrently running ensembles. In this paper, we present a novel developer framework that extends the component-based approach by explicitly taking into account roles and ensembles. The framework implementation follows rigorous rules formalized in terms of ensemble-structures and ensemble automata. Its application is demonstrated by a peer-2-peer file system network.