Viable Software: the Intelligent Control Paradigm for Adaptable and Adaptive Architecture

Herring, Charles Edward (2002). Viable Software: the Intelligent Control Paradigm for Adaptable and Adaptive Architecture PhD Thesis, School of Information Technology and Electrical Engineering, The University of Queensland.

Attached Files (Some files may be inaccessible until you login with your UQ eSpace credentials)
Name Description MIMEType Size Downloads
n01front.pdf n01front.pdf application/pdf 275.28KB 4
n02whole.pdf n02whole.pdf application/pdf 3.55MB 5
Author Herring, Charles Edward
Thesis Title Viable Software: the Intelligent Control Paradigm for Adaptable and Adaptive Architecture
School, Centre or Institute School of Information Technology and Electrical Engineering
Institution The University of Queensland
Publication date 2002
Thesis type PhD Thesis
Supervisor Simon Kaplan
Subjects L
280302 Software Engineering
700199 Computer software and services not elsewhere classified
Abstract/Summary The Intelligent Control Paradigm for software architecture is the result of this work. The Viable Software Approach is developed as an instance of the paradigm. The approach uses the Viable System Model as the basis for software system architecture. The result is a model-based architecture and approach for developing software systems by piecemeal adaptation with the goal that they become adaptive systems at runtime. Software built in this manner is called Viable Software. Viable Software represents a unifying class of self-controlling software that is an “intelligent” control system. Cybernetics, Control Theory, and Complexity Theory are the background for this work, and aspects relevant to this work are presented. These results are related to software architecture and software engineering. Rationale for the selection of the Viable System Model as a basis for software systems is given. The Viable System Model is described. The model is restated as an Alexanderian “pattern language” to make it more accessible to software engineering. A Viable Software Approach is proposed and expressed in the form of a Product Line Architecture that arranges the Viable System Model, the Viable Software Architecture, a Viable Component Framework, and a Component Transfer Protocol into a system for generative programming. An important result is the formalisation of the pattern of the Viable System into the interface specifications of the Viable Component. Three case studies illustrate the approach. The first is an analysis and extension of the Groove collaboration system. This study shows how the approach is used to map an existing system into the Viable Software Architecture and add fuzzy-adaptive user interface controllers. The second study presents the design and detailed software construction of an adaptive camera controller as part of a smart environment. The final study shows how a Business-to-Business e-Commerce system can be evolved and an expert system-based controller developed to implement business contracts.
Keyword Software Architecture
Viable System Model
Intelligent Control
Adaptive Control
Adaptable Software

Citation counts: Google Scholar Search Google Scholar
Created: Fri, 21 Nov 2008, 20:40:30 EST