Probabilistic Verification at Runtime for Self-Adaptive Systems
An effective design of effective and efficient self-adaptive systems may rely on several existing approaches. Software models and model checking techniques at run time represent one of them since they support automatic reasoning about such changes, detect harmful configurations, and potentially enable appropriate (self-)reactions. However, traditional model checking techniques and tools may not be applied as they are at run time, since they hardly meet the constraints imposed by on-the-fly analysis, in terms of execution time and memory occupation. For this reason, efficient run-time model checking represents a crucial research challenge.
This paper precisely addresses this issue and focuses on probabilistic run-time model checking in which reliability models are given in terms of Discrete Time Markov Chains which are verified at run-time against a set of requirements expressed as logical formulae. In particular, the paper discusses the use of probabilistic model checking at run-time for self-adaptive systems by surveying and comparing the existing approaches divided in two categories: state-elimination algorithms and algebra-based algorithms. The discussion is supported by a realistic example and by empirical experiments.
KeywordsExecution Time Model Check Transient State Design Time Atomic Proposition
Unable to display preview. Download preview PDF.
- 1.Andova, S., Hermanns, H., Katoen, J.P.: Discrete-time rewards model-checked. Formal Modeling and Analysis of Timed Systems, 88–104 (2004)Google Scholar
- 7.Calinescu, R., Grunske, L., Kwiatkowska, M., Mirandola, R., Tamburrelli, G.: Dynamic qos management and optimisation in service-based systems. IEEE Transactions on Software Engineering (99), 1 (2010)Google Scholar
- 9.Courcoubetis, C., Yannakakis, M.: The complexity of probabilistic verification. J. ACM 42(4) (1995)Google Scholar
- 10.Davis, T.A.: Direct methods for sparse linear systems. Society for Industrial Mathematics, vol. 2 (2006)Google Scholar
- 12.Filieri, A., Ghezzi, C., Tamburrelli, G.: Run-time efficient probabilistic model checking. In: 33rd International Conference on Software Engineering (ICSE 2011) (accepted for publication)Google Scholar
- 13.Antonio Filieri and Carlo Ghezzi. Further steps towards efficient runtime verification: Handling probabilistic cost models. In Formal Methods in Software Engineering: Rigorous and Agile Approaches (FormSERA), Zurich, 2012.Google Scholar
- 15.Grinstead, C.M., Snell, J.L.: Introduction to Probability. Amer Mathematical Society (1997)Google Scholar
- 17.Grunske, L.: Specification patterns for probabilistic quality properties. In: ICSE, pp. 31–40 (2008)Google Scholar
- 18.Hahn, E., Hermanns, H., Zhang, L.: Probabilistic reachability for parametric markov models. In: Model Checking Software, pp. 88–106 (2009)Google Scholar
- 20.Hopcroft, J.E., Motwani, R., Ullman, J.D.: Introduction to automata theory, languages, and computation. Addison-Wesley (2007)Google Scholar
- 24.Kramer, J., Magee, J.: Self-managed systems: An architectural challenge. In: Future of Software Engineering, FOSE 2007, pp. 259–268. IEEE (2007)Google Scholar
- 26.Kwiatkowska, M.Z., Parker, D., Qu, H.: Incremental quantitative verification for markov decision processes. In: DSN, pp. 359–370 (2011)Google Scholar
- 28.Quarteroni, A., Sacco, R., Saleri, F.: Numerical mathematics, vol. 37. Springer (2007)Google Scholar
- 30.Saad, Y.: Iterative methods for sparse linear systems. Society for Industrial Mathematics (2003)Google Scholar