From Model-Based Design to Formal Verification of Adaptive Embedded Systems

  • Rasmus Adler
  • Ina Schaefer
  • Tobias Schuele
  • Eric Vecchié
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4789)


Adaptation is important in dependable embedded systems to cope with changing environmental conditions. However, adaptation significantly complicates system design and poses new challenges to system correctness. We propose an integrated model-based development approach facilitating intuitive modelling as well as formal verification of dynamic adaptation behaviour. Our modelling concepts ease the specification of adaptation behaviour and improve the design of adaptive embedded systems by hiding the increased complexity from the developer. Based on a formal framework for representing adaptation behaviour, our approach allows to employ theorem proving, model checking as well as specialised verification techniques to prove properties characteristic for adaptive systems such as stability.


Model Check Embed System Adaptive System Reachable State Kripke Structure 
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.
    Adler, R., Förster, M., Trapp, M.: Determining configuration probabilities of safety-critical adaptive systems. In: UbiSafe 2007, IEEE Computer Society Press, Los Alamitos (2007)Google Scholar
  2. 2.
    Blech, J.O., Schaefer, I., Poetzsch-Heffter, A.: Translation validation for system abstractions. In: RV 2007, Vancouver, Canada (2007)Google Scholar
  3. 3.
    Bozga, M., Graf, S., Ober, I., Ober, I., Sifakis, J.: The IF toolset. In: Bernardo, M., Corradini, F. (eds.) Formal Methods for the Design of Real-Time Systems. LNCS, vol. 3185, pp. 237–267. Springer, Heidelberg (2004)Google Scholar
  4. 4.
    Bradbury, J.S., Cordy, J.R., Dingel, J., Wermelinger, M.: A survey of self-management in dynamic software architecture specifications. In: WOSS 2004, pp. 28–33. ACM Press, Newport Beach, USA (2004)CrossRefGoogle Scholar
  5. 5.
    Clarke, E.M., Grumberg, O., Long, D.E.: Model checking and abstraction. ACM Transactions on Programming Languages and Systems (TOPLAS) 16(5), 1512–1542 (1994)CrossRefGoogle Scholar
  6. 6.
    Clarke, E.M., Grumberg, O., Peled, D.A.: Model Checking. MIT, London, England (1999)Google Scholar
  7. 7.
    Dams, D., Gerth, R., Grumberg, O.: Abstract interpretation of reactive systems. ACM Trans. Program. Lang. Syst. 19(2), 253–291 (1997)CrossRefGoogle Scholar
  8. 8.
    Kulkarni, S.S., Biyani, K.N.: Correctness of component-based adaptation. In: Crnković, I., Stafford, J.A., Schmidt, H.W., Wallnau, K. (eds.) CBSE 2004. LNCS, vol. 3054, pp. 48–58. Springer, Heidelberg (2004)Google Scholar
  9. 9.
    Ledeczi, A., Maroti, M., Bakay, A., Karsai, G., Garrett, J., Thomason, C., Nordstrom, G., Sprinkle, J., Volgyesi, P.: The generic modeling environment. In: WISP 2001, Budapest, Hungary, IEEE Computer Society Press, Los Alamitos (2001)Google Scholar
  10. 10.
    Medvidovic, N., Taylor, R.N.: A classification and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering 26(1) (2000)Google Scholar
  11. 11.
    Michel, P.: Redesign and enhancement of the Katja system. Technical Report 354/06, University of Kaiserslautern (October 2006)Google Scholar
  12. 12.
    Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL. LNCS, vol. 2283. Springer, Heidelberg (2002)zbMATHGoogle Scholar
  13. 13.
    Niwiński, D.: Fixed points vs. infinite generation. In: LICS 1988, pp. 402–409. IEEE Computer Society Press, Washington, DC. (1988)Google Scholar
  14. 14.
    Rawashdeh, O.A., Lumpp Jr., J.E.: A technique for specifying dynamically reconfigurable embedded systems. In: IEEE Conference Aerospace, IEEE Computer Society Press, Los Alamitos (2005)Google Scholar
  15. 15.
    Schaefer, I., Poetzsch-Heffter, A.: Towards modular verification of stabilisation in self-adaptive embedded systems. In: Datta, A.K., Gradinariu, M. (eds.) SSS 2006. LNCS, vol. 4280, pp. 584–585. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  16. 16.
    Schaefer, I., Poetzsch-Heffter, A.: Using abstraction in modular verification of synchronous adaptive systems. In: Workshop on Trustworthy Software, Saarbrücken, Germany (2006)Google Scholar
  17. 17.
    Schinz, I., Toben, T., Mrugalla, Chr., Westphal, B.: The Rhapsody UML Verification Environment. In: SEFM, pp. 174–183 (2004)Google Scholar
  18. 18.
    Schneider, K.: Verification of Reactive Systems – Formal Methods and Algorithms. Texts in Theoretical Computer Science (EATCS Series). Springer, Heidelberg (2003)Google Scholar
  19. 19.
    Schneider, K., Schuele, T.: Averest: Specification, verification, and implementation of reactive systems. In: ACSD 2005, St. Malo, France (2005)Google Scholar
  20. 20.
    Schneider, K., Schuele, T., Trapp, M.: Verifying the adaptation behavior of embedded systems. In: SEAMS 2006, Shanghai, China, pp. 16–22. ACM Press, New York (2006)CrossRefGoogle Scholar
  21. 21.
    Trapp, M., Adler, R., Förster, M., Junger, J.: Runtime adaptation in safety-critical automotive systems. In: SE 2007, ACTA, Innsbruck, Austria (2007)Google Scholar
  22. 22.
    Xie, F., Levin, V., Kurshan, R.P., Browne, J.C.: Translating software designs for model checking. In: FASE, pp. 324–338 (2004)Google Scholar
  23. 23.
    Zhang, J., Cheng, B.H.C.: Specifying adaptation semantics. In: WADS 2005, pp. 1–7. ACM, St. Louis, USA (2005)CrossRefGoogle Scholar
  24. 24.
    Zhang, J., Cheng, B.H.C.: Model-based development of dynamically adaptive software. In: ICSE 2006, Shanghai, China, pp. 371–380. ACM Press, New York (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Rasmus Adler
    • 1
  • Ina Schaefer
    • 2
  • Tobias Schuele
    • 3
  • Eric Vecchié
    • 3
  1. 1.Fraunhofer Institute for Experimental Software Engineering (IESE), KaiserslauternGermany
  2. 2.Software Technology Group, Department of Computer Science, University of KaiserslauternGermany
  3. 3.Reactive Systems Group, Department of Computer Science, University of KaiserslauternGermany

Personalised recommendations