Automated adaptations to dynamic software architectures by using autonomous agents

  • Authors:
  • Wenpin Jiao;Hong Mei

  • Affiliations:
  • Institute of Software, School of Electronics Engineering and Computer Science, Peking University, Beijing 100871, China;Institute of Software, School of Electronics Engineering and Computer Science, Peking University, Beijing 100871, China

  • Venue:
  • Engineering Applications of Artificial Intelligence
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software architectures should always reflect the architectural changes occurring in software systems. In this paper, dynamic software architectures are studied from a new perspective. Software architectures are considered as goals or objectives that software systems are pursuing instead of constraints over systems. The architectural goals are decomposed into two categories of sub-goals, i.e., structural goals and interaction behavioral goals. For defining the architectural goals of software systems, the notation of architectural reference model is introduced. The architectural reference model is composed of components and connectors involved in software architectures and constraints over software architectures. For reasoning about the result of changes rigorously and automatically, software architectures and changes to software architectures are described in a uniform formalism and the results of changes can directly be derived from the compositions of software architectures and changes. For implementing the adaptations of software systems, an autonomous agent-based approach is adopted, in which autonomous agents are used to plan the achievement of architectural goals and cascade reactions caused by changes via using architectural style-specific knowledge and behavior rules defined for agents.