Software systems are becoming inexorably more open, distributed, pervasive, mobile and
connected. This thesis addresses the problem of how to build adaptive software systems.
These systems need to reliably achieve system-level goals in volatile environments, where
the system itself may be built from components of uncertain behaviour, and where the
requirements for the software system may be changing. This thesis adopts the systemtheoretic
concept of ontogenic adaptation from biology, and applies it to software
architecture. Ontogenic adaptation is the ability of an individual system to maintain its
organisational integrity by reconfiguring and regulating itself. A number of approaches to
adaptive software architecture have been recently proposed that, to varying degrees, enable
limited adaptive behaviour and reconfiguration, but none possess all the properties needed
for ontogenic adaptation. We introduce a meta-model and framework called Role Oriented
Adaptive Design (ROAD) that is consistent with the concept of maintaining organisational
integrity through ontogenic adaptation.
The ROAD meta-model defines software applications as networks of functional roles
which are executed by players (objects, components, services, agents, people, or rolecomposites).
These flexible organisational structures are adaptive because the relationships
(contracts) between roles, and the bindings between roles and players, can be regulated and
reconfigured at run-time. Such flexible organisational role-structures are encapsulated into
composites each with its own organiser. Because self-managed composites are themselves
role-players, these composites can be distributed and recursively composed. The organisers
of the composites form a management system over which requirements and performance
data pass. Rather than being monolithic constructions, ROAD software applications are
dynamic, self-managed compositions of loosely-coupled, and potentially, distributed
entities.
The concepts in the ROAD meta-model have been implemented in a programming
framework which can be extended by the application programmer to create adaptive
applications. Central to this framework are dynamic contracts. These contracts define the
role structure, control interactions between the role instances, and measure the performance
of those interactions. Adaptivity is achieved by monitoring and manipulating these
contracts, along with the role-player bindings. Contracts have been implemented using the
mechanism of �association aspects�.
The applicability of the ROAD framework to the domain of Service-Oriented
Computing is demonstrated. The framework is further evaluated in terms of its ability to
express the concept of ontogenic adaptation and also in terms of the overhead its runtime
infrastructure imposes on interactions.
Identifer | oai:union.ndltd.org:ADTP/216626 |
Date | January 2006 |
Creators | Colman, Alan Wesley, n/a |
Publisher | Swinburne University of Technology. |
Source Sets | Australiasian Digital Theses Program |
Language | English |
Detected Language | English |
Rights | http://www.swin.edu.au/), Copyright Alan Wesley Colman |
Page generated in 0.0012 seconds