Information Technology Reference
In-Depth Information
3. Callbacks, which are used for system, middleware and out-of-band application
adaption.
4. Delegates, which define the aspect-oriented weaving of the adaptive behaviour
into wrappers around application interfaces.
QuO provides an Aspect Specification Language (ASL), which is used to
define the monitoring or control behaviour and is compiled to produce a delegate ,
which acts as a proxy for calls to an object reference or a servent (the remote
object).
Figure 3.6 illustrates an example of QuO's ASL used to define two advices
that are to be applied for the method examples::bette::SlideShow::read .
Although delegates may be defined for other middleware environments, the
current implementation of the QuO toolkit is designed for the CORBA envi-
ronment and therefore the ASL advice is applied to a particular method in the
CORBA IDL, e. g. examples::bette::SlideShow::read in Figure 3.6.
The region statement in the ASL Figure 3.6 refers to a region defined in QuO's
Contract Definition Language (not shown), which defines the meaning of the term
'slow'. In this example, once the system reaches that state, the corresponding
advice is executed.
3.7.3
Reflection and AOP
A reflective system is a system that incorporates structures about itself. The sum
of these structures is called the self-representation of the system, which makes it
possible for the system to answer questions about itself and support actions on its
behalf [67].
In a language that supports reflection, each object is given a meta-object ,
which holds the reflective information available about the object [67]. Metaobject
protocols (MOP's) are interfaces, to the language that give users the ability to
incrementally modify the language's behaviour and implementation [58], typically
by using a set of classes and methods that allow a program to inspect and alter
the state of the application.
Reflection is a common way of developing adaptive software and Grace et al.
[43] have proposed combining the use of AOP and reflective middleware to imple-
ment dynamic adaptive systems to provide the following benefits:
• The ability to support fine-grained introspection and dynamic adaption of
aspects including the ability to adapt or re-order advice behaviour and re-
configure the joinpoint set thereby supporting self-adaption and system wide
validation of crosscutting concerns.
• The provision of multiple system viewpoints to support complex adaptions.
For example an MOP to manage component adaption, another to manage
crosscutting module adaption and another to manage resource usage adap-
tion.
Search WWH ::




Custom Search