ABSTRACT
Self-adaptive software systems are expected to deal with change during their execution with limited or no human interaction. Therefore a better understanding of change and how it could be managed is a crucial step for achieving self-adaptation. Most of the research in self-adaptive software systems is focused on managing change, which is critical for the system in terms of sustaining its efficiency and operation. The work in this paper takes new direction and introduces the idea of exploratory change, heavily used in many other disciplines to successfully achieve self-adaptation. It proposes a new classification model of change in self-adaptive software systems, which extends the existing taxonomies in the research literature with five new criteria: change motif, change trigger, change adoption, change frequency and change speed. The purpose of this classification model is to aid the distinction between three different approaches for self-adaptation: exploitative, exploratory and mixed approaches.
- Andersson, J., de Lemos, R., Malek, S., Weyns, D. Towards a classification of self-adaptive software system. Software Engineering for Self-Adaptive Systems, Springer, 2009.Google ScholarDigital Library
- Balogun, J., Hailey, V. H., Johnson, G., Scholes, K. Exploring Strategic Change. Prentice Hall, 3rd ed., 2008.Google Scholar
- Cawsey, T. F., Deszca, G. Toolkit for Organizational Change. Sage Publications Inc., 2007.Google Scholar
- De Wit, B. Strategy Synthesis: Resolving Strategy Paradoxes to Create Competitive Advantage. Cengage Learning Business Press, 3rd ed., 2010.Google Scholar
- Floch, J., Hallsteinsen, S., Stav, E., Eliassen, F., Lund, K., Gjorven, E. Using Architecture Models for Runtime Adaptability. IEEE Software, 2006. Google ScholarDigital Library
- Futuyma, D. J. Evolution. Sunderland, Massachusetts: Sinauer Associates Inc., 2005.Google Scholar
- Garlan, D., Cheng, S. W., Huang, A. C., Schmerl, B., Steenkiste, P. Rainbow: Architecture-Based Self Adaptation with Reusable Infrastructure. IEEE Computer, 2004. Google ScholarDigital Library
- Georgas, J. C., Taylor, R. N. Policy-Based Architectural Adaptation Management: Robotics Domain Case Studies. Software Engineering for Self-Adaptive Systems, Springer, 2009. Google ScholarDigital Library
- Laddaga, R. Self-adaptive software. Technical Report. 98-12. DARPA BAA, 1997.Google Scholar
- Luke, S. Essentials of Metaheuristics. Lulu.com, 2011.Google Scholar
- Masaaki, I. Kaizen: The Key to Japan's Competitive Success. McGraw-Hill, 1st ed., 1986.Google Scholar
- Mitchell, T. M. Machine Learning. McGraw-Hill, 1 ed., 1997. Google ScholarDigital Library
- Nadler, D., Tushman, M. Organizational frame bending: Principles for managing reorientation. Academy of Management Executive, 1989.Google ScholarCross Ref
- Salehie, M., Tahvildari, L. Self-Adaptive Software: Landscape and Research Challenges. ACM Transactions on Autonomous and Adaptive Systems, Vol. V, 2009. Google ScholarDigital Library
- Smith, M. F. Software Prototyping: Adoption, Practice and Management. McGraw-Hill, 1991. Google ScholarDigital Library
- Voas, J. M., McGraw, G. Software Fault Injection: Inoculating Programs Against Errors. John Wiley & Sons, 1998. Google ScholarDigital Library
- Williams, G. C. Sex and Evolution. Princeton (NJ): Princeton University Press, 1975.Google Scholar
Index Terms
- Managing change in self-adaptive software systems
Recommendations
A framework for evaluating quality-driven self-adaptive software systems
SEAMS '11: Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing SystemsOver the past decade the dynamic capabilities of self-adaptive software-intensive systems have proliferated and improved significantly. To advance the field of self-adaptive and self-managing systems further and to leverage the benefits of self-...
Ensuring model continuity when simulating self-adaptive software systems
MSCIAAS '16: Proceedings of the Modeling and Simulation of Complexity in Intelligent, Adaptive and Autonomous Systems 2016 (MSCIAAS 2016) and Space Simulation for Planetary Space Exploration (SPACE 2016)Self-adaptivity in software systems aims to balance the use of costly resources, i.e. of servers and energy, under given constraints such as Quality of Service (QoS) requirements. Simulation does not require risky testing in running systems and has less ...
Exploratory Self-Adaptation in Software Systems
SASO '11: Proceedings of the 2011 IEEE Fifth International Conference on Self-Adaptive and Self-Organizing SystemsThis paper applies the concept of exploratory change to self-adaptive software systems and proposes and briefly specifies a new paradigm for self-adaptation named exploratory self-adaptation. In exploratory self-adaptation exploratory changes are ...
Comments