using roles to design dynamic adaptations of ccm component-based applications
Roles have been used as abstractions for the design of modular applications. Some works claim that such abstractions are especially useful in the design of dynamic adaptations. In this work, we put this idea to the test by extending a standardized component model to support the concept of dynamically applied roles. Then, we used this role model to design unanticipated support for communication synchronization, distributed debugging and passive replication, which were dynamically introduced into a component-based application. As result, we show that roles have proven an efficient abstraction for proper separation of concerns between the application and all different adaptations applied.
dynamic adaptation ccm dynamic roles programming abstractions roles and protocols adaptive middleware corba