Advertisement

Towards Practical Runtime Verification and Validation of Self-Adaptive Software Systems

  • Gabriel Tamura
  • Norha M. Villegas
  • Hausi A. Müller
  • João Pedro Sousa
  • Basil Becker
  • Gabor Karsai
  • Serge Mankovskii
  • Mauro Pezzè
  • Wilhelm Schäfer
  • Ladan Tahvildari
  • Kenny Wong
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7475)

Abstract

Software validation and verification (V&V) ensures that software products satisfy user requirements and meet their expected quality attributes throughout their lifecycle. While high levels of adaptation and autonomy provide new ways for software systems to operate in highly dynamic environments, developing certifiable V&V methods for guaranteeing the achievement of self-adaptive software goals is one of the major challenges facing the entire research field. In this chapter we (i) analyze fundamental challenges and concerns for the development of V&V methods and techniques that provide certifiable trust in self-adaptive and self-managing systems; and (ii) present a proposal for including V&V operations explicitly in feedback loops for ensuring the achievement of software self-adaptation goals. Both of these contributions provide valuable starting points for V&V researchers to help advance this field.

Keywords

Model Check Target System Adaptation Mechanism Model Reference Adaptive Control Adaptation Property 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    IEEE: 1012-1998: IEEE Standard for Software Verification and Validation. Technical report, Institute of Electrical and Electronics Engineers (2005)Google Scholar
  2. 2.
    IEEE: Industry Implementation of International Standard ISO/IEC 12207:95, Standard for Information Technology-Software Life Cycle Processes. Technical report, IEEE (1996)Google Scholar
  3. 3.
    Bourque, P., Dupuis, R.: Guide to the Software Engineering Body of Knowledge (SWEBOK). IEEE Computer Society (2005)Google Scholar
  4. 4.
    Salehie, M., Tahvildari, L.: Self-Adaptive Software: Landscape and Research Challenges. ACM Transactions on Autonomous and Adaptive Systems 4, 14:1–14:42 (2009)Google Scholar
  5. 5.
    Villegas, N.M., Müller, H.A., Tamura, G., Duchien, L., Casallas, R.: A Framework for Evaluating Quality-Driven Self-Adaptive Software Systems. In: 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2011), pp. 80–89. ACM, New York (2011)Google Scholar
  6. 6.
    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)CrossRefGoogle Scholar
  7. 7.
    Schafer, W., Wehrheim, H.: The Challenges of Building Advanced Mechatronic Systems. In: 2007 Future of Software Engineering (FOSE 2007), pp. 72–84. IEEE Computer Society, Washington, DC (2007)CrossRefGoogle Scholar
  8. 8.
    Cornelissen, B., Zaidman, A., van Deursen, A., Moonen, L., Koschke, R.: A Systematic Survey of Program Comprehension through Dynamic Analysis. IEEE Transactions on Software Engineering (TSE) 35, 684–702 (2009)CrossRefGoogle Scholar
  9. 9.
    Hellerstein, J.L., Diao, Y., Parekh, S., Tilbury, D.M.: Feedback Control of Computing Systems. John Wiley & Sons (2004)Google Scholar
  10. 10.
    Dahm, W.J.A.: Technology Horizons a Vision for Air Force Science & Technology During 2010-2030. Technical report, U.S. Air Force (2010)Google Scholar
  11. 11.
    Villegas, N.M., Müller, H.A., Tamura, G.: Optimizing Run-Time SOA Governance through Context-Driven SLAs and Dynamic Monitoring. In: 2011 IEEE International Workshop on the Maintenance and Evolution of Service-Oriented and Cloud-Based Systems (MESOCA 2011), pp. 1–10. IEEE (2011)Google Scholar
  12. 12.
    Beisiegel, M., Blohm, H., Booz, D., Edwards, M., Hurley, O., et al.: Service Component Architecture, Assembly Model Specification. Specification Version 1.0, Open Service Oriented Architecture (OSOA) Collaboration (2007)Google Scholar
  13. 13.
    Thayer, R.H., Bailin, S.C., Dorfman, M.: Software Requirements Engineering, 2nd edn. IEEE Computer Society Press, Los Alamitos (1997)zbMATHGoogle Scholar
  14. 14.
    Dorfman, M.: System and Software Requirements Engineering, pp. 7–22. IEEE Computer Society Press Tutorial, IEEE Computer Society Press (1990)Google Scholar
  15. 15.
    Pezzè, M., Young, M.: Software Test and Analysis: Process, Principles and Techniques. John Wiley and Sons, Hoboken (2008)zbMATHGoogle Scholar
  16. 16.
    Gat, E.: Autonomy Software Verification and Validation might not be as Hard as it Seems (AeroConf 2004). In: 2004 IEEE Aerospace Conference, pp. 3123–3128 (2004)Google Scholar
  17. 17.
    Bucchiarone, A., Pelliccione, P., Vattani, C., Runge, O.: Self-Repairing Systems Modeling and Verification Using AGG. In: 8th IEEE/IFIP Joint Working International Conference on Software Architecture (WICSA) and 3rd European Conference on Software Engineering (ECSA), pp. 181–190. IEEE (2009)Google Scholar
  18. 18.
    Bose, P., Quilling, M.: Model-Based Analysis of Autonomous Self-Adaptive Cooperating Robots. In: 2nd IEEE International Conference on Self-Adaptive and Self-Organizing Systems (SASO 2008), pp. 57–63. IEEE Computer Society, Washington, DC (2008)CrossRefGoogle Scholar
  19. 19.
    Murray, R.M. (ed.): Control in an Information Rich World: Report of the Panel on Future Directions in Control, Dynamics, and Systems. Society for Industrial and Applied Mathematics, Philadelphia (2003)zbMATHGoogle Scholar
  20. 20.
    Baresi, L., Ghezzi, C.: The Disappearing Boundary between Development-time and Run-time. In: FSE/SDP Workshop on Future of Software Engineering Research (FoSER 2010), pp. 17–22. ACM, New York (2010)CrossRefGoogle Scholar
  21. 21.
    Aubin, J., Bayen, A., Saint-Pierre, P.: Viability Theory: New Directions. Springer, Heidelberg (2011)CrossRefzbMATHGoogle Scholar
  22. 22.
    Balasubramanian, S., Desmarais, R., Müller, H.A., Stege, U., Venkatesh, S.: Characterizing Problems for Realizing Policies in Self-Adaptive and Self-Managing Systems. In: 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2011), pp. 70–79. ACM, New York (2011)Google Scholar
  23. 23.
    Jacklin, S.A., Lowry, M.R., Schumann, J.M., Gupta, P.P., Bosworth, J.T., Zavala, E., Kelly, J.W.: Verification, Validation, and Certification Challenges for Adaptive Flight-Critical Control System Software. In: American Institute of Aeronautics and Astronautics AIAA Guidance Navigation and Control Conference and Exhibit. American Institute of Aeronautics and Astronautics, pp. 1–10 (2004)Google Scholar
  24. 24.
    Crum, V.W., Buffington, J.M., Tallant, G.S., Krogh, B., Plaisted, C., Prasanth, R., Bose, P., Johnson, T.: Verification & Validation of Intelligent and Adaptive Control Systems. In: IEEE Aerospace Conference (AeroConf. 2004), pp. 68–77. IEEE Computer Society (2004)Google Scholar
  25. 25.
    Villegas, N.M., Müller, H.A., Muñoz, J.C., Lau, A., Ng, J., Brealey, C.: A Dynamic Context Management Infrastructure for Supporting User-driven Web Integration in the Personal Web. In: 2011 Conference of the Center for Advanced Studies on Collaborative Research (CASCON 2011), pp. 200–214. IBM Corp, Markham (2011)Google Scholar
  26. 26.
    Murray, R.M., Ȧström, K.J., Boyd, S.P., Brockett, R.W., Stein, G.: Future Directions in Control in an Information Rich World. IEEE Control Systems 23, 20–33 (2003)CrossRefGoogle Scholar
  27. 27.
    Schumann, J., Gupta, P.: Bayesian Verification & Validation Tools for Adaptive Systems: Report on Principle of Operation and Prototypical Implementation of Bayesian Envelope Tool for Neural Networks. Technical report, National Aeronautics and Space Administration, NASA (2006)Google Scholar
  28. 28.
    Elkhodary, A., Esfahani, N., Malek, S.: FUSION: A Framework for Engineering Self-Tuning Self-Adaptive Software Systems. In: 18th ACM International Symposium on Foundations of Software Engineering, FSE 2010, pp. 7–16. ACM, (2010)Google Scholar
  29. 29.
    Kephart, J.O., Chess, D.M.: The Vision of Autonomic Computing. IEEE Computer 36(1), 41–50 (2003)CrossRefGoogle Scholar
  30. 30.
    Tamura, G., Casallas, R., Cleve, A., Duchien, L.: QoS Contract-Aware Reconfiguration of Component Architectures Using E-Graphs. In: Barbosa, L.S. (ed.) FACS 2010. LNCS, vol. 6921, pp. 34–52. Springer, Heidelberg (2010)Google Scholar
  31. 31.
    Dumont, G., Huzmezan, M.: Concepts, Methods and Techniques in Adaptive Control. In: 2002 IEEE American Control Conference (ACC 2002), Anchorage, AK, USA, vol. 2, pp. 1137–1150 (2002)Google Scholar
  32. 32.
    Epifani, I., Ghezzi, C., Mirandola, R., Tamburrelli, G.: Model Evolution by Run-Time Parameter Adaptation. In: 31st International Conference on Software Engineering (ICSE 2009), pp. 111–121. IEEE (2009)Google Scholar
  33. 33.
    Léger, M., Ledoux, T., Coupaye, T.: Reliable Dynamic Reconfigurations in a Reflective Component Model. In: Grunske, L., Reussner, R., Plasil, F. (eds.) CBSE 2010. LNCS, vol. 6092, pp. 74–92. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  34. 34.
    González, A., Piel, E., Gross, H.G.: A Model for the Measurement of the Runtime Testability of Component-Based Systems. In: 2009 International Conference on Software Testing Verification and Validation Workshops (ICSTW), pp. 19–28. IEEE (2009)Google Scholar
  35. 35.
    Bencomo, N., Blair, G., France, R., Muñoz, F., Jeanneret, C.: 4th International Workshop on Models@run.time. In: Ghosh, S. (ed.) MODELS 2009. LNCS, vol. 6002, pp. 119–123. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  36. 36.
    Sawyer, P., Bencomo, N., Whittle, J., Letier, E., Finkelstein, A.: Requirements-Aware Systems. A Research Agenda for RE For Self-Adaptive Systems. In: 18th International Requirements Engineering Conference (RE 2010), pp. 95–103. IEEE (2010)Google Scholar
  37. 37.
    Blair, G., Bencomo, N., France, R.: Models@run.time. IEEE Computer 42, 22–27 (2009)CrossRefGoogle Scholar
  38. 38.
    France, R., Rumpe, B.: Model-driven Development of Complex Software: A Research Roadmap. In: 2007 Future of Software Engineering (FOSE 2007). IEEE Computer Society (2007)Google Scholar
  39. 39.
    Müller, H.A., Kienle, H.M., Stege, U.: Autonomic Computing Now You See It, Now You Don’t. In: De Lucia, A., Ferrucci, F. (eds.) ISSSE 2006-2008. LNCS, vol. 5413, pp. 32–54. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  40. 40.
    Vogel, T., Neumann, S., Hildebrandt, S., Giese, H., Becker, B.: Incremental Model Synchronization for Efficient Run-Time Monitoring. In: Ghosh, S. (ed.) MODELS 2009. LNCS, vol. 6002, pp. 124–139. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  41. 41.
    Goldsby, H., Cheng, B., Zhang, J.: AMOEBA-RT: Run-Time Verification of Adaptive Software. In: Giese, H. (ed.) MODELS 2008. LNCS, vol. 5002, pp. 212–224. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  42. 42.
    Villegas, N.M., Müller, H.A.: Managing Dynamic Context to Optimize Smart Interactions and Services. In: Chignell, M., Cordy, J., Ng, J., Yesha, Y. (eds.) The Smart Internet. LNCS, vol. 6400, pp. 289–318. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  43. 43.
    Villegas, N.M., Müller, H.A.: Context-driven Adaptive Monitoring for Supporting SOA Governance. In: 4th International Workshop on a Research Agenda for Maintenance and Evolution of Service-Oriented Systems (MESOA 2010). CMU/SEI-2011-SR-008, Pittsburgh: Carnegie Mellon University (2011)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Gabriel Tamura
    • 1
    • 2
  • Norha M. Villegas
    • 3
    • 4
  • Hausi A. Müller
    • 3
  • João Pedro Sousa
    • 5
  • Basil Becker
    • 6
  • Gabor Karsai
    • 7
  • Serge Mankovskii
    • 8
  • Mauro Pezzè
    • 9
    • 10
  • Wilhelm Schäfer
    • 11
  • Ladan Tahvildari
    • 12
  • Kenny Wong
    • 13
  1. 1.University of Lille 1-LIFL-INRIAFrance
  2. 2.Los Andes University and Icesi UniversityColombia
  3. 3.University of VictoriaBritish ColumbiaCanada
  4. 4.Icesi UniversityColombia
  5. 5.George Mason UniversityUSA
  6. 6.Hasso Plattner Institute at the University of PotsdamGermany
  7. 7.Vanderbilt UniversityUSA
  8. 8.CA Inc.Canada
  9. 9.University of Milano BicoccaItaly
  10. 10.University of LuganoSwitzerland
  11. 11.University of PaderbornGermany
  12. 12.University of WaterlooCanada
  13. 13.University of AlbertaCanada

Personalised recommendations