Skip to main content

Model Checking Adaptive Software with Featured Transition Systems

  • Chapter
Assurances for Self-Adaptive Systems

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 7740))

Abstract

We propose to see adaptive systems as systems with highly dynamic features. We model as features both the reconfigurations of the system, but also the changes of the environment, such as failure modes. The resilience of the system can then be defined as the fact that the system can select an adequate reconfiguration for each possible change of the environment. We must take into account that reconfiguration is often a major undertaking for the system: it has a high cost and it might make functions of the system unavailable for some time. These constraints are domain-specific. In this paper, we therefore provide a modelling language to describe these aspects, and a property language to describe the requirements on the adaptive system. We design algorithms that determine how the system must reconfigure itself to satisfy its intended requirements.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Allen, R., Douence, R., Garlan, D.: Specifying and Analyzing Dynamic Software Architectures. In: Astesiano, E. (ed.) ETAPS 1998 and FASE 1998. LNCS, vol. 1382, pp. 21–37. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  2. Alur, R., Henzinger, T.A., Kupferman, O.: Alternating-time temporal logic. J. ACM 49(5), 672–713 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  3. Alur, R., Henzinger, T.A., Kupferman, O., Vardi, M.Y.: Alternating Refinement Relations. In: Sangiorgi, D., de Simone, R. (eds.) CONCUR 1998. LNCS, vol. 1466, pp. 163–178. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  4. Apel, S., Speidel, H., Wendler, P., von Rhein, A., Beyer, D.: Feature-interaction detection using feature-aware verification. In: Proceedings of ASE 2011, pp. 372–375. IEEE Computer Society (2011)

    Google Scholar 

  5. Arnold, A., Vincent, A., Walukiewicz, I.: Games for synthesis of controllers with partial observation. Theoretical Computer Science 303(1), 7–34 (2003)

    Article  MathSciNet  MATH  Google Scholar 

  6. Asirelli, P., ter Beek, M.H., Fantechi, A., Gnesi, S.: A Logical Framework to Deal with Variability. In: Méry, D., Merz, S. (eds.) IFM 2010. LNCS, vol. 6396, pp. 43–58. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  7. Asirelli, P., ter Beek, M.H., Fantechi, A., Gnesi, S.: Formal description of variability in product families. In: Proceedings of SPLC 2011, pp. 130–139. Springer (2011)

    Google Scholar 

  8. Bachmann, F., Goedicke, M., Leite, J., Nord, R.L., Pohl, K., Ramesh, B., Vilbig, A.: A Meta-model for Representing Variability in Product Family Development. In: van der Linden, F.J. (ed.) PFE 2003. LNCS, vol. 3014, pp. 66–80. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  9. Bresolin, D., Capiluppi, M.: A game-theoretic approach to fault diagnosis and identification of hybrid systems. Theoretical Computer Science (to appear, 2012)

    Google Scholar 

  10. Calder, M., Kolberg, M., Magill, E., Reiff-Marganiec, S.: Feature interaction: a critical review and considered forecast. Computer Networks 41(1), 115–141 (2003)

    Article  MATH  Google Scholar 

  11. Chatterjee, K., Doyen, L., Henzinger, T.: A survey of partial-observation stochastic parity games. In: Formal Methods in System Design, pp. 1–17 (2012)

    Google Scholar 

  12. Chen, W., Saif, M.: Observer-based fault diagnosis of satellite systems subject to time-varying thruster faults. Journal of Dynamic Systems, Measurement, and Control 129(3), 352–356 (2007)

    Article  Google Scholar 

  13. Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J., Andersson, J., Becker, B., Bencomo, N., Brun, Y., Cukic, B., Di Marzo Serugendo, G., Dustdar, S., Finkelstein, A., Gacek, C., Geihs, K., Grassi, V., Karsai, G., Kienle, H.M., Kramer, J., Litoiu, M., Malek, S., Mirandola, R., Müller, H.A., Park, S., Shaw, M., Tichy, M., Tivoli, M., Weyns, D., Whittle, J.: Software Engineering for Self-Adaptive Systems: A Research Roadmap. In: Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J. (eds.) Self-Adaptive Systems. LNCS, vol. 5525, pp. 1–26. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  14. Cieslak, R., Desclaux, C., Fawaz, A., Varaiya, P.: Supervisory control of discrete-event processes with partial observations. IEEE Transactions on Automatic Control 33(3), 249–260 (1988)

    Article  MATH  Google Scholar 

  15. Clarke, E.M., Emerson, E.A.: Design and Synthesis of Synchronization Skeletons using Branching-time Temporal Logic. In: Kozen, D. (ed.) Logic of Programs 1981. LNCS, vol. 131, pp. 52–71. Springer, Heidelberg (1982)

    Chapter  Google Scholar 

  16. Classen, A., Heymans, P., Schobbens, P.-Y., Legay, A.: Symbolic model checking of software product lines. In: Proceedings of ICSE 2011, pp. 321–330. ACM (2011)

    Google Scholar 

  17. Classen, A., Heymans, P., Schobbens, P.-Y., Legay, A., Raskin, J.-F.: Model checking lots of systems: efficient verification of temporal properties in software product lines. In: Proceedings of ICSE 2010, pp. 335–344. ACM, New York (2010)

    Google Scholar 

  18. Cordy, M., Classen, A., Heymans, P., Schobbens, P.-Y., Legay, A.: Managing evolution in software product lines: A model-checking perspective. In: Proceedings of VaMoS 2012, pp. 183–191. ACM (2012)

    Google Scholar 

  19. Cordy, M., Classen, A., Perrouin, G., Heymans, P., Schobbens, P.-Y., Legay, A.: Simulation-based abstractions for software product-line model checking. In: Proceedings of ICSE 2012. IEEE (2012)

    Google Scholar 

  20. Cordy, M., Schobbens, P.Y., Heymans, P., Legay, A.: Behavioural modelling and verification of real-time software product lines. In: Proceedings of the 16th International Software Product Line Conference, vol. 1, pp. 66–75. ACM (2012)

    Google Scholar 

  21. Cury, J., Krogh, B., Niinomi, T.: Synthesis of supervisory controllers for hybrid systems based on approximating automata. IEEE Transactions on Automatic Control 43(4), 564–568 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  22. Czarnecki, K., Antkiewicz, M.: Mapping Features to Models: A Template Approach Based on Superimposed Variants. In: Glück, R., Lowry, M. (eds.) GPCE 2005. LNCS, vol. 3676, pp. 422–437. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  23. Di Nitto, E., Ghezzi, C., Metzger, A., Papazoglou, M., Pohl, K.: A journey to highly dynamic, self-adaptive service-based applications. Automated Software Engineering 15(3), 313–341 (2008)

    Article  Google Scholar 

  24. Dobson, S., Denazis, S., Fernández, A., Gaïti, D., Gelenbe, E., Massacci, F., Nixon, P., Saffre, F., Schmidt, N., Zambonelli, F.: A survey of autonomic communications. ACM Trans. Auton. Adapt. Syst. 1(2), 223–259 (2006)

    Article  Google Scholar 

  25. Ebeling, C.E.: An introduction to reliability and maintainability engineering. McGraw-Hill (1997)

    Google Scholar 

  26. Fantechi, A., Gnesi, S.: Formal modeling for product families engineering. In: SPLC, pp. 193–202 (2008)

    Google Scholar 

  27. Filieri, A., Ghezzi, C., Tamburrelli, G.: Run-time efficient probabilistic model checking. In: Proceedings of ICSE 2011, pp. 341–350 (2011)

    Google Scholar 

  28. Filiot, E., Jin, N., Raskin, J.-F.: Antichains and compositional algorithms for ltl synthesis. Formal Methods in System Design 39, 261–296 (2011), doi:10.1007/s10703-011-0115-3

    Article  MATH  Google Scholar 

  29. Finkbeiner, B., Schewe, S.: Uniform distributed synthesis. In: Proceedings of 20th Annual IEEE Symposium on Logic in Computer Science, LICS 2005, pp. 321–330. IEEE (2005)

    Google Scholar 

  30. Fischbein, D., Uchitel, S., Braberman, V.: A foundation for behavioural conformance in software product line architectures. In: Proceedings of ROSATEA 2006, pp. 39–48. ACM Press (2006)

    Google Scholar 

  31. Francez, N., Forman, I.R.: Superimposition for Interacting Processes. In: Baeten, J.C.M., Klop, J.W. (eds.) CONCUR 1990. LNCS, vol. 458, pp. 230–245. Springer, Heidelberg (1990)

    Google Scholar 

  32. Giese, H., Cheng, B.H.C. (eds.): SEAMS 2011: Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. ACM, New York (2011)

    Google Scholar 

  33. Gomaa, H., Hussein, M.: Dynamic Software Reconfiguration in Software Product Families. In: van der Linden, F.J. (ed.) PFE 2003. LNCS, vol. 3014, pp. 435–444. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  34. Griffeth, N., Lin, Y.-J., et al.: Feature interactions in telecommunications and software systems (FIW, ICFI). IOS Press (1992-2012)

    Google Scholar 

  35. Gross, T., Sayama, H.: Adaptive Networks: Theory, Models and Applications. Understanding Complex Systems. Springer (2009)

    Google Scholar 

  36. Gruler, A., Leucker, M., Scheidemann, K.: Modeling and Model Checking Software Product Lines. In: Barthe, G., de Boer, F.S. (eds.) FMOODS 2008. LNCS, vol. 5051, pp. 113–131. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  37. Kalyon, G., Le Gall, T., Marchand, H., Massart, T.: Symbolic supervisory control of infinite transition systems under partial observation using abstract interpretation. In: Discrete Event Dynamic Systems, pp. 1–41 (2012)

    Google Scholar 

  38. Kramer, J., Magee, J.: Analysing dynamic change in software architectures: A case study. In: Proceedings of the International Conference on Configurable Distributed Systems, Proceedings of CDS 1998, pp. 91–100. IEEE Computer Society, Washington, DC (1998)

    Google Scholar 

  39. Kulkarni, S., Biyani, K.: 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)

    Chapter  Google Scholar 

  40. Li, H.C., Krishnamurthi, S., Fisler, K.: Interfaces for modular feature verification. In: Proceedings of ASE 2002, pp. 195–204 (2002)

    Google Scholar 

  41. Li, H.C., Krishnamurthi, S., Fisler, K.: Verifying cross-cutting features as open systems. In: SIGSOFT FSE, pp. 89–98 (2002)

    Google Scholar 

  42. Majumdar, R., Render, E., Tabuada, P.: Robust discrete synthesis against unspecified disturbances. In: Proceedings of the 14th International Conference on Hybrid Systems: Computation and Control, HSCC 2011, pp. 211–220. ACM, New York (2011)

    Google Scholar 

  43. Maler, O., Pnueli, A., Sifakis, J.: On the Synthesis of Discrete Controllers for Timed Systems. In: Mayr, E.W., Puech, C. (eds.) STACS 1995. LNCS, vol. 900, pp. 229–242. Springer, Heidelberg (1995)

    Chapter  Google Scholar 

  44. Paoli, A., Sartini, M., Lafortune, S.: Active fault tolerant control of discrete event systems using online diagnostics. Automatica 47(4), 639–649 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  45. Ragsdale, D., Carver Jr., C., Humphries, J., Pooch, U.: Adaptation techniques for intrusion detection and intrusion response systems. In: 2000 IEEE International Conference on Systems, Man, and Cybernetics, vol. 4, pp. 2344–2349. IEEE (2000)

    Google Scholar 

  46. Sampath, M., Sengupta, R., Lafortune, S., Sinnamohideen, K., Teneketzis, D.: Diagnosability of discrete event system. IEEE Transactions on Automatic Control 40(9), 1555–1575 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  47. Schobbens, P.-Y., Heymans, P., Trigaux, J.-C., Bontemps, Y.: Feature Diagrams: A Survey and A Formal Semantics. In: Proceedings of RE 2006, pp. 139–148 (2006)

    Google Scholar 

  48. Wong-Toi, H.: The synthesis of controllers for linear hybrid automata. In: Proceedings of the 36th IEEE Conference on Decision and Control, vol. 5, pp. 4607–4612. IEEE (1997)

    Google Scholar 

  49. Wong-Toi, H., Hoffmann, G.: The control of dense real-time discrete event systems. In: Proceedings of the 30th IEEE Conference on Decision and Control, pp. 1527–1528. IEEE (1991)

    Google Scholar 

  50. Zhang, J., Cheng, B.H.: Using temporal logic to specify adaptive program semantics. Journal of Systems and Software 79(10), 1361–1369 (2006)

    Article  Google Scholar 

  51. Zhang, J., Goldsby, H.J., Cheng, B.H.: Modular verification of dynamically adaptive systems. In: Proceedings of AOSD 2009, pp. 161–172. ACM, New York (2009)

    Google Scholar 

  52. Zhang, Q., Cheng, L., Boutaba, R.: Cloud computing: state-of-the-art and research challenges. Journal of Internet Services and Applications 1(1), 7–18 (2010)

    Article  Google Scholar 

  53. Zhong, C., DeLoach, S.A.: Runtime models for automatic reorganization of multi-robot systems. In: Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2011, pp. 20–29. ACM, New York (2011)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Cordy, M., Classen, A., Heymans, P., Legay, A., Schobbens, PY. (2013). Model Checking Adaptive Software with Featured Transition Systems. In: Cámara, J., de Lemos, R., Ghezzi, C., Lopes, A. (eds) Assurances for Self-Adaptive Systems. Lecture Notes in Computer Science, vol 7740. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-36249-1_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-36249-1_1

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-36248-4

  • Online ISBN: 978-3-642-36249-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics