Program evolution: processes of software change
Program evolution: processes of software change
Uncertainty in computer application and its control through the engineering of software
Journal of Software Maintenance: Research and Practice
Communications of the ACM
Communications of the ACM
An architecture for software that adapts to changes in requirements
Journal of Systems and Software
Software's Future: Managing Evolution
IEEE Software
Guest Editor's Introduction: Creating Robust Software through Self-Adaptation
IEEE Intelligent Systems
Control Theory-Based Foundations of Self-Controlling Software
IEEE Intelligent Systems
A Model-Based Approach to Self-Adaptive Software
IEEE Intelligent Systems
An Architecture-Based Approach to Self-Adaptive Software
IEEE Intelligent Systems
The K-Component Architecture Meta-model for Self-Adaptive Software
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
A Principled Approach to Supporting Adaptation in Distributed Mobile Environments
PDSE '00 Proceedings of the International Symposium on Software Engineering for Parallel and Distributed Systems
Software Engineering: Report of a conference sponsored by the NATO Science Committee, Garmisch, Germany, 7-11 Oct. 1968, Brussels, Scientific Affairs Division, NATO
A Logical Treatment for the Emergence of Control in Complex Self-Organising Systems
Proceedings of the 2005 conference on Self-Organization and Autonomic Informatics (I)
Mind out of programmable matter: exploring unified models of emergent autonomy
WRAC'05 Proceedings of the Second international conference on Radical Agent Concepts: innovative Concepts for Autonomic and Agent-Based Systems
Genetically modified software: realizing viable autonomic agency
WRAC'05 Proceedings of the Second international conference on Radical Agent Concepts: innovative Concepts for Autonomic and Agent-Based Systems
Hi-index | 0.00 |
The development and application of software engineering practices over the last thirty years have undoubtedly resulted in the production of significantly improved software. However, the majority of modern software systems remain intrinsically fragile and highly vulnerable to environmental change and require continuing and problematic manual adaptation. In this paper and given the problems inherent in manual software adaptation, the authors argue that imbuing the software system with the ability to self-adapt offers a potentially profitable route forward. For support of this claim, the authors draw on the emerging discipline of self-adaptive software, which seeks to devolve some of the responsibility for maintenance activity to the software itself. Realizing such auto-adaptive capability proves to be a challenging problem. The authors contend that many of the themes, problems and goals currently identified in the field of self-adaptive software bear a striking resemblance to problems that have long formed the basis of enquiry in the well-established field of cybernetics. Classical cybernetics, drawing on mathematical models of the adaptive processes of biological organisms, seeks to identify the general principles of control and communication required for organisms to survive in a changing environment. Consequently, cybernetics appears to offer the potential to apply naturally developed adaptation strategies to software artifacts. Therefore, after discussing these theoretical foundations, this paper reports their practical application by presenting the initial findings from the development of an experimental, agent based, adaptive In-Vehicle Telematics System (IVTS) for use by the Emergency Services.