LOVER: Light-Weight fOrmal Verification of adaptivE Systems at Run Time

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7684)


Adaptive systems are able to modify their behaviors to respond to significant changes at run time such as component failures. In many cases, run-time adaptation is simply replacing a piece of system with a new one without interrupting the system operation. In terms of component-based systems, an adaptation may be defined as replacing a system component with a new version at run time. However, updating a system with new components requires the assurance that the new configuration will fully satisfy the expected requirements. Formal verification has been widely used to guarantee that a system specification satisfies a set of properties. However, applying verification techniques at run time for any potential change can be very expensive and sometimes unfeasible. In this paper, we present a methodology, called LOVER, for the lightweight verification of component-based adaptive systems. LOVER provides a new process model supported with formalisms, verification algorithms and tool to verify a significant subset of CTL properties.


Model Check Adaptive System Design Time Parsing Tree Atomic Proposition 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Smart Grids European Technology Platform,
  2. 2.
    Adler, R., Schaefer, I., Schuele, T., Vecchié, E.: From Model-Based Design to Formal Verification of Adaptive Embedded Systems. In: Butler, M., Hinchey, M.G., Larrondo-Petrie, M.M. (eds.) ICFEM 2007. LNCS, vol. 4789, pp. 76–95. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  3. 3.
    Baier, C., Katoen, J.-P.: Principles of Model Checking (Representation and Mind Series). The MIT Press (2008)Google Scholar
  4. 4.
    Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J. (eds.): Software Engineering for Self-Adaptive Systems. LNCS, vol. 5525. Springer, Heidelberg (2009)Google Scholar
  5. 5.
    Cimatti, A., Clarke, E., Giunchiglia, E., Giunchiglia, F., Pistore, M., Roveri, M., Sebastiani, R., Tacchella, A.: NuSMV 2: An OpenSource Tool for Symbolic Model Checking. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 359–364. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  6. 6.
    Cobleigh, J.M., Giannakopoulou, D., Păsăreanu, C.S.: Learning Assumptions for Compositional Verification. In: Garavel, H., Hatcliff, J. (eds.) TACAS 2003. LNCS, vol. 2619, pp. 331–346. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  7. 7.
    Falcone, Y., Jaber, M., Nguyen, T.-H., Bozga, M., Bensalem, S.: Runtime Verification of Component-Based Systems. In: Barthe, G., Pardo, A., Schneider, G. (eds.) SEFM 2011. LNCS, vol. 7041, pp. 204–220. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  8. 8.
    Ghezzi, C.: Engineering evolving and self-adaptive systems: An overview. In: Software and Systems Safety - Specification and Verification, pp. 88–102 (2011)Google Scholar
  9. 9.
    Giannakopoulou, D., Păsăreanu, C.S., Barringer, H.: Assumption generation for software component verification. In: Proceedings of the 17th IEEE International Conference on Automated Software Engineering, ASE 2002 (2002)Google Scholar
  10. 10.
    Gold, N., Mohan, A., Knight, C., Munro, M.: Understanding service-oriented software. IEEE Software 21(2), 71–77 (2004)CrossRefGoogle Scholar
  11. 11.
    Leucker, M., Schallhart, C.: A brief account of runtime verification. Journal of Logic and Algebraic Programming 78(5), 293–303 (2009)zbMATHCrossRefGoogle Scholar
  12. 12.
    Levis, P., Gay, D., Culler, D.: Active Sensor Networks. In: Proc. of the 2nd Symposium on Networked Systems Design & Implementation, vol. 2, pp. 343–356. USENIX Association (2005)Google Scholar
  13. 13.
    Pasareanu, C.S., Dwyer, M.B., Huth, M.: Assume-guarantee model checking of software: A comparative case study. In: Proceedings of the 5th and 6th International SPIN Workshops on Theoretical and Practical Aspects of SPIN Model Checking, pp. 168–183 (1999)Google Scholar
  14. 14.
    Roşu, G., Havelund, K.: Rewriting-based techniques for runtime verification. Automated Software Engg. 12(2), 151–197 (2005)CrossRefGoogle Scholar
  15. 15.
    Schaefer, I., Poetzsch-Heffter, A.: Model-based verification of adaptive embedded systems under environment constraints. SIGBED 6(3), 9:1–9:4 (2009)Google Scholar
  16. 16.
    Schneider, K., Schuele, T., Trapp, M.: Verifying the adaptation behavior of embedded systems. In: SEAMS 2006, pp. 16–22 (2006)Google Scholar
  17. 17.
    Xie, G., Dang, Z.: Ctl model-checking for systems with unspecified finite state components. In: SAVCBS (2004)Google Scholar
  18. 18.
    Xie, G., Dang, Z.: An Automata-Theoretic Approach for Model-Checking Systems with Unspecified Components. In: Grabowski, J., Nielsen, B. (eds.) FATES 2004. LNCS, vol. 3395, pp. 155–169. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  19. 19.
    Zhang, J., Cheng, B.H.C.: Model-based development of dynamically adaptive software. In: ICSE 2006, pp. 371–380. ACM, New York (2006)CrossRefGoogle Scholar
  20. 20.
    Zhang, J., Cheng, B.H.C.: Using temporal logic to specify adaptive program semantics. Journal of Systems and Software 79(10), 1361–1369 (2006)CrossRefGoogle Scholar
  21. 21.
    Zhang, J., Goldsby, H.J., Cheng, B.H.C.: Modular verification of dynamically adaptive systems. In: AOSD 2009, pp. 161–172. ACM, New York (2009)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  1. 1.Dipartimento di Elettronica e InformazionePolitecnico di MilanoMilanoItaly
  2. 2.Università dell’InsubriaVareseItaly

Personalised recommendations