Impact Models for Architecture-Based Self-adaptive Systems
- 2 Citations
- 537 Downloads
Abstract
Self-adaptive systems have the ability to adapt their behavior to dynamic operation conditions. In reaction to changes in the environment, these systems determine the appropriate corrective actions based in part on information about which action will have the best impact on the system. Existing models used to describe the impact of adaptations are either unable to capture the underlying uncertainty and variability of such dynamic environments, or are not compositional and described at a level of abstraction too low to scale in terms of specification effort required for non-trivial systems. In this paper, we address these shortcomings by describing an approach to the specification of impact models based on architectural system descriptions, which at the same time allows us to represent both variability and uncertainty in the outcome of adaptations, hence improving the selection of the best corrective action. The core of our approach is an impact model language equipped with a formal semantics defined in terms of Discrete Time Markov Chains. To validate our approach, we show how employing our language can improve the accuracy of predictions used for decision-making in the Rainbow framework for architecture-based self-adaptation.
Keywords
Impact Model Self-adaptive Systems Discrete-time Markov Chain (DTMC) Rainbow Framework Domain Modeling EnvironmentReferences
- 1.Calinescu, R., Ghezzi, C., Kwiatkowska, M., Mirandola, R.: Self-adaptive software needs quantitative verification at runtime. Commun. ACM 55(9), 69–77 (2012)CrossRefGoogle Scholar
- 2.Calinescu, R., Kwiatkowska, M.Z.: Using quantitative analysis to implement autonomic IT systems. In: ICSE (2009)Google Scholar
- 3.Cheng, S., et al.: Evaluating the effectiveness of the rainbow self-adaptive system. In: SEAMS. IEEE (2009)Google Scholar
- 4.Cheng, S.-W., et al.: Using architectural style as a basis for system self-repair. In: WICSA. Kluwer, B.V. (2002)Google Scholar
- 5.Cheng, S.-W., Garlan, D.: Stitch: a language for architecture-based self-adaptation. J. Syst. Softw. 85(12), 2860–2875 (2012)CrossRefGoogle Scholar
- 6.Cheng, S.-W., Garlan, D., Schmerl, B.R.: Raide for engineering architecture-based self-adaptive systems. In: ICSE Companion. IEEE (2009)Google Scholar
- 7.Chiulli, R.: Quantitative Analysis: An Introduction. Automation and Production Systems. Taylor & Francis, London (1999)Google Scholar
- 8.Esfahani, N., Malek, S.: Uncertainty in self-adaptive software systems. In: de Lemos, R., Giese, H., Müller, H.A., Shaw, M. (eds.) Software Engineering for Self-Adaptive Systems. LNCS, vol. 7475, pp. 214–238. Springer, Heidelberg (2013)CrossRefGoogle Scholar
- 9.Filieri, A., Ghezzi, C., Leva, A., Maggio, M.: Self-adaptive software meets control theory: a preliminary approach supporting reliability requirements. In: ASE (2011)Google Scholar
- 10.Garlan, D., et al.: Acme: an architecture description interchange language. In: CASCON (1997)Google Scholar
- 11.Garlan, D., et al.: Rainbow: architecture-based self-adaptation with reusable infrastructure. IEEE Comput. 37(10), 46–54 (2004)CrossRefGoogle Scholar
- 12.Klein, C., et al.: Brownout: building more robust cloud applications. In: ICSE. ACM (2014)Google Scholar
- 13.Kwiatkowska, M., Norman, G., Parker, D.: PRISM 4.0: verification of probabilistic real-time systems. In: Gopalakrishnan, G., Qadeer, S. (eds.) CAV 2011. LNCS, vol. 6806, pp. 585–591. Springer, Heidelberg (2011)CrossRefGoogle Scholar
- 14.Leitner, P., Hummer, W., Dustdar, S.: Cost-based optimization of service compositions. IEEE Trans. Serv. Comput. 6(2), 239–251 (2013)CrossRefGoogle Scholar
- 15.Norris, J.R.: Markov Chains. Cambridge Series in Statistical and Probabilistic Mathematics. Cambridge University Press, Cambridge (1998)Google Scholar
- 16.OMG. Object Constraint Language V2.4 (2014). http://www.omg.org/spec/OCL/2.4
- 17.Rosa, L., Rodrigues, L., Lopes, A., Hiltunen, M.A., Schlichting, R.D.: Self-management of adaptable component-based applications. IEEE Trans. Software Eng. 39(3), 403–421 (2013)CrossRefGoogle Scholar
- 18.Sykes, D., et al.: Learning revised models for planning in adaptive systems. In: ICSE (2013)Google Scholar