Lecture Notes in Computer Science, 2002, Volume 2425/2002, 799-804, DOI: 10.1007/3-540-46102-7_29

Reflective Analysis and Design for Adapting Object Run-Time Behavior

Walter Cazzola, Ahmed Ghoneim and Gunter Saake

View Related Documents

Abstract

Today, complex information systems need a simple way for changing the object behavior according with changes that occur in its running environment. We present a reflective architecture which provides the abilityt to change object behavior at run-time by using designtime information. By integrating reflection with design patterns we get a flexible and easilyad aptable architecture. A reflective approach that describes object model, scenarios and statecharts helps to dynamically adapt the software system to environmental changes. The object model, system scenario and manyot her design information are reified by special meta-objects, named evolutionary meta-objects. Evolutionary metaobjects deal with two types of run-time evolution. Structural evolution is carried out by causal connection between evolutionary meta-objects and its referents through changing the structure of these referents by adding or removing objects or relations. Behavioral evolution allows the system to dynamically adapt its behavior to environment changes by itself. Evolutionary meta-objects react to environment changes for adapting the information they have reified and steering the system evolution. They provide a natural liaison between design information and the system based on such information. This paper describes how this liaison can be built and how it can be used for adapting a running system to environment changes.

Keywords  Reflection - Meta-Objects - Design Pattern - UML - Software Evolution

Fulltext Preview

Image of the first page of the fulltext document