Cybernetics and General Systems Theory (GST) Principles for Autonomic Computing Design

doubleperidotΤεχνίτη Νοημοσύνη και Ρομποτική

30 Νοε 2013 (πριν από 3 χρόνια και 8 μήνες)

276 εμφανίσεις

Cybernetics and General Systems Theory (GST) Principles for
Autonomic Computing Design
E. A. Stoyanov
University Of Stuttgart
Emil.Stoyanov@informatik-
uni-stuttgart.de
M. A. Wischy
Siemens CT, SE 2
Markus.Wischy@siemens.com
Prof. D. Roller
University of Stuttgart
Dieter.Roller@informatik.uni-
stuttgart.de
Abstract
The major characteristics of Open Systems are self-
adaptation and self-organization.This paper exposes
the potential usage of theories from this research field
applied to the design of software.We adapt principles
from General System Theory (GST),Cybernetics and
Information Theory as an approach to the design of
stable,adaptable and extensible software
architectures.
1. Introduction
The growing of IT systems and respectively the
needed human power for their management have lead
to the idea of autonomic computing.During the last
two years large efforts were spent for development of
architectures [5] to enable self-management in existing
and new systems,however few of them face the
fundamental problem of variety in software from its
roots – software evolution.This paper presents an
approach to complexity management which targets
directly the problem of stability and employs usage of
principles from theories of open systems and control
[3,6],information theory and software evolution [4].
We state that the process of software development has
characteristics,similar to the open systems'nature,
such as adaptation,homeostasis and goal-directedness
and show how the software architectures can profit
from exploiting the Cybernetic laws of Requisite
Variety (RV) and Requisite Knowledge (RK) in order
to reach higher stability.To achieve this we introduce
the abstractions of managed communication channel
and observable software variety and use themas a base
for definition of model and requirements for
development of autonomic applications.
2. Open Systems, Entropy and Software
Important standpoint in our research is the
similarity between the characteristics of nowadays
software systems and the open systems as viewed by
the General System Theory and Cybernetics – well
established and proved by the time concepts related to
understanding and control of biological and social
systems.
Open Systems IT Systems
Goals-directedness Business Requirements
Self-Adaptation Configuration, Update
Homeostasis Stability Assurance
Hierarchical stucture Hierarchical structure
Table 1.Open systems – Software systems
mapping
Table 1 shows the similarities between the complex
distributed software systems and the open systems with
their four important characteristics:homeostasis,goal-
directedness,self-adaptation and hierarchical
organization.While the open systems can keep
homeostasis alone, the software systems require human
intervention and care.To introduce homeostatic
software behaviour we take into consideration the
cybernetic requirements related to variety and system’s
entropy in open systems
3. Observable Variety
The general definition of variety is the number of
states a system may have in its state space.Examples
for variety in software systems are the communication
protocols and data-flow.We call the variety of that
type,which can be monitored,observable variety.It is
Proceedings of the Second International Conference on Autonomic Computing (ICAC’05)
0-7695-2276-9/05 $ 20.00 IEEE
a qualitative measure for the variety which a certain
system element may introduce in the process of
communication with other elements.It expresses the
exchanged variety in processes like client-server
interactions,event logging and component
deployment.A good example for specification of
observable variety is the Common Base Event Model
[1].
4. Requirements for Viable Software
The Viable Systems Model (VSM) [2] specifies the
requirements for adaptive and robust open systems.It
provides a recursive system organization with equal
functional groups on every level.VSM includes
requirements for variety,dynamics,and
communication.Homeostatic behavior is dependent on
the Requisite Variety which the communication
channels must have when they are connecting elements
functional groups and their belonging elements).For
this purpose is needed such a communication medium,
that can be observed and managed.
5. The Managed Communication Channel
We propose the notion of managed communication
channel which defines a safe way for establishment of
connections between communicating elements.
Figure 1. Structural diagram of Managed
Communication channel
It specifies communication endpoints’ handling and
provision of variety together with a channel manager
with main task verification of the requirement for
requisite variety.The communication endpoints
contain description of the transmitted variety (sent and
received).The manager applies a strategy for
verification of the requisite variety and notifies the
endpoints about the status and the abilities of the
communication channel (Figure 1).Depending on the
type of observed variety,(e.g.protocol or event),the
manager can implement different strategies for
requisite variety verification and select the most
appropriate one at the time of loop activation.For
example,a client component A requests remote service
method B using protocol SOAP version 1.2 but the
supported version on the server side is SOAP 1.1.The
manager notifies A that 1.1 is required before it has
performed the service execution.This prevents further
cascaded failure of components,that are dependent on
A.Optionally the channel managers can offer bridging
services (e.g.translation of protocols) to complete the
requisite variety,if direct communication is
impossible.
6. Conclusion
The application of VSM in software development
gives advantages comparing to standard specifications.
It provides common model for integrated management
of complex systems on different abstraction levels as
business process and runtime.Problems are discovered
before other dependent elements are affected.The
abstraction of observable variety and Managed
Communication Channel were defined as a first step to
complete the requirements for building viable software
systems.
7. References
[1] Common Base Event Specification,http://www-
106.ibm.com/developerworks/webservices/library/ws-
cbe/
[2] Herring,C.and S.Kaplan.The Viable System
Model for Software.in 4th World Multiconference on
Systemics, Cybernetics and Informatics (SCI'2000)
[3] Ludwig von Bertalanffy,General System Theory,
George Braziller, 1969
[4] M.M.Lehman,"Programs,Life Cycles,and Laws
of Software Evolution," Proceedings of the IEEE 68(9),
pp. 1060—1076, September 1980
[5]
M.Parashar,“AutoMate:Enabling Autonomic
Applications,” IBM Visit,Rutgers University,NJ,
USA, November 2003
[6] W.Ross Ashby,Introduction to Cybernetics,
Chapman & Hall, London, 1956
Proceedings of the Second International Conference on Autonomic Computing (ICAC’05)
0-7695-2276-9/05 $ 20.00 IEEE