Automata-Based Approach to Manage Self-Adaptive Component-Based Architectures
- 1 January 2022
- journal article
- research article
- Published by IGI Global Scientific Publishing in International Journal of Software Innovation
- Vol. 10 (1) , 1-22
Abstract
Dynamic software architectures in changing environments need human supervision to continue operation in all conditions. These changes may come from the software architecture or its environment. Such software architecture is required to monitor itself and its environment, detect changes, decide how to react, and act to perform such changes. Enhancing the software architecture with the ability to self-adapt offers a very interesting way forward. This work presents an automata based approach to manage self-adaptive component-based architecture. This approach allows software architecture to adjust itself to changes during runtime and without stopping its execution. It helps the maintenance of the consistency and the coherence of software architecture before, during and after adaptation. The proposed approach is based mainly on the use of the meta-model, automata concept, XML language and UPPAAL model checking tool for the verification of the software consistency before enacting adaptation.Keywords
This publication has 27 references indexed in Scilit:
- Extending UPPAAL for the Modeling and Verification of Dynamic Real-Time SystemsLecture Notes in Computer Science, 2013
- Probabilistic Verification at Runtime for Self-Adaptive Systems2013
- FORMSACM Transactions on Autonomous and Adaptive Systems, 2012
- FPath and FScript: Language support for navigation and reliable reconfiguration of Fractal architecturesAnnals of Telecommunications, 2008
- Design Patterns for Decentralised Coordination in Self-organising Emergent SystemsLecture Notes in Computer Science, 2007
- Managing Dynamic Reconfiguration in Component-Based Systems2005
- The tool TINA – Construction of abstract state spaces for petri nets and time petri netsInternational Journal of Production Research, 2004
- An Open Component Model and Its Support in Java2004
- A classification and comparison framework for software architecture description languagesIEEE Transactions on Software Engineering, 2000
- Formalizing style to understand descriptions of software architectureACM Transactions on Software Engineering and Methodology, 1995