DYNAMICO: A Reference Model for Governing Control Objectives and Context Relevance in Self-Adaptive Software Systems

  • Norha M. Villegas
  • Gabriel Tamura
  • Hausi A. Müller
  • Laurence Duchien
  • Rubby Casallas

Abstract

Despite the valuable contributions on self-adaptation, most implemented approaches assume adaptation goals and monitoring infrastructures as non-mutable, thus constraining their applicability to systems whose context awareness is restricted to static monitors. Therefore, separation of concerns, dynamic monitoring, and runtime requirements variability are critical for satisfying system goals under highly changing environments. In this chapter we present DYNAMICO, a reference model for engineering adaptive software that helps guaranteeing the coherence of (i) adaptation mechanisms with respect to changes in adaptation goals; and (ii) monitoring mechanisms with respect to changes in both adaptation goals and adaptation mechanisms. DYNAMICO improves the engineering of self-adaptive systems by addressing (i) the management of adaptation properties and goals as control objectives; (ii) the separation of concerns among feedback loops required to address control objectives over time; and (iii) the management of dynamic context as an independent control function to preserve context-awareness in the adaptation mechanism.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Northrop, L., Feiler, P., Gabriel, R., Goodenough, J., Longstaff, T., Kazman, R., Klein, M., Schmidt, D., Sullivan, K., Wallnau, K.: Ultra-Large-Scale Systems the Software Challenge of the Future. Technical report, Carnegie Mellon University Software Engineering Institute (2006)Google Scholar
  2. 2.
    United States Air Force Chief Scientist (AF/ST): Technology Horizons a Vision for Air Force Science & Technology During 2010-2030. Technical report, U.S. Air Force (2010)Google Scholar
  3. 3.
    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
  4. 4.
    Truex, D.P., Baskerville, R., Klein, H.: Growing Systems in Emergent Organizations. Communications of the ACM 42(8), 117–123 (1999)CrossRefGoogle Scholar
  5. 5.
    Tran, V.X., Tsuji, H.: A Survey and Analysis on Semantics in QoS for Web Services. In: International Conference on Advanced Information Networking and Applications, pp. 379–385. IEEE (2009)Google Scholar
  6. 6.
    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
  7. 7.
    Oreizy, P., Medvidovic, N., Taylor, R.N.: Runtime Software Adaptation: Framework, Approaches, and Styles. In: 30th International Conference on Software Engineering (ICSE 2008), pp. 899–910 (2008)Google Scholar
  8. 8.
    Giese, H., Brun, Y., Serugendo, J.D.M., Gacek, C., Kienle, H., Müller, H., Pezzè, M., Shaw, M.: Engineering Self-Adaptive and Self-Managing Systems. LNCS 5527, 47–69. Springer (2009)Google 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.
    Müller, H.A., Kienle, H.M., Stege, U.: Autonomic Computing Now You See It, Now You Don’t—Design and Evolution of Autonomic Software Systems. In: De Lucia, A., Ferrucci, F. (eds.) ISSSE 2006-2008. LNCS, vol. 5413, pp. 32–54. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  11. 11.
    IBM Corporation: An Architectural Blueprint for Autonomic Computing. Technical report, IBM Corporation (2006)Google Scholar
  12. 12.
    Weyns, D., Malek, S., Andersson, J.: FORMS: a FOrmal Reference Model for Self-adaptation. In: 7th International Conference on Autonomic Computing, ICAC 2010, pp. 205–214. ACM, New York (2010)Google Scholar
  13. 13.
    Kramer, J., Magee, J.: Self-Managed Systems: an Architectural Challenge. In: 2007 Workshop on the Future of Software Engineering (FOSE 2007), pp. 259–268. IEEE Computer Society (2007)Google Scholar
  14. 14.
    Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley, Reading (2003)Google Scholar
  15. 15.
    Kephart, J.O., Chess, D.M.: The Vision of Autonomic Computing. Computer 36(1), 41–50 (2003)MathSciNetCrossRefGoogle Scholar
  16. 16.
    Papazoglou, M.P., Heuvel, W.J.: Service Oriented Architectures: Approaches, Technologies and Research Issues. The Very Large Databases (VLDB) Journal 16, 389–415 (2007)CrossRefGoogle Scholar
  17. 17.
    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
  18. 18.
    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
  19. 19.
    Lee, J.Y., Lee, J.W., Cheun, D.W., Kim, S.D.: A Quality Model for Evaluating Software-as-a-Service in Cloud Computing. In: 7th ACIS International Conference on Software Engineering Research, Management and Applications (SERA 2009), pp. 261–266. IEEE Computer Society, Washington, DC (2009)CrossRefGoogle Scholar
  20. 20.
    Müller, H., Pezzè, M., Shaw, M.: Visibility of Control in Adaptive Systems. In: 2nd International Workshop on Ultra-Large-Scale Software-Intensive Systems (ULSSIS 2008), pp. 23–26 (2008)Google Scholar
  21. 21.
    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, pp. 80–89. ACM, New York (2011)Google Scholar
  22. 22.
    Shaw, M.: Beyond Objects: A Software Design Paradigm Based on Process Control. ACM Software Engineering Notes 20(1), 27–38 (1995)CrossRefGoogle Scholar
  23. 23.
    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
  24. 24.
    Bianco, P., Lewis, G., Merson, P.: Service Level Agreements in Service-Oriented Architecture Environments. Technical Report CMU/SEI-2008-TN-021, CMU/SEI (2008)Google Scholar
  25. 25.
    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
  26. 26.
    Dumont, G., Huzmezan, M.: Concepts, Methods and Techniques in Adaptive Control. In: 2002 American Control Conference, vol. 2, pp. 1137–1150. IEEE (2002)Google Scholar
  27. 27.
    Narendra, K.S., Balakrishnan, J.: Adaptive Control Using Multiple Models. IEEE Transactions on Automatic Control 42, 171–187 (1997)MathSciNetCrossRefMATHGoogle Scholar
  28. 28.
    Garlan, D., Cheng, S.W., Schmerl, B.: Increasing System Dependability through Architecture-based Self-Repair. In: de Lemos, R., Gacek, C., Romanovsky, A. (eds.) Architecting Dependable Systems. LNCS, vol. 2677, pp. 61–89. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  29. 29.
    Parra, C., Blanc, X., Duchien, L.: Context Awareness for Dynamic Service-Oriented Product Lines. In: 13th Intentaional Software Product Line Conference (SPLC 2009), pp. 131–140 (2009)Google Scholar
  30. 30.
    Solomon, B., Ionescu, D., Litoiu, M., Mihaescu, M.: A Real-time Adaptive Control of Autonomic Computing Environments. In: 17th Annual International Conference hosted by the Centre for Advanced Studies Research, IBM Canada Software Laboratory (CASCON 2007), pp. 124–136 (2007)Google Scholar
  31. 31.
    Caprarescu, B.A., Petcu, D.: A Self-Organizing Feedback Loop for Autonomic Computing. Future Computing, Service Computation, Cognitive, Adaptive, Content, Patterns, Computation World, 126–131 (2009)Google Scholar
  32. 32.
    Gat, E.: Three-layer Architectures. MIT Press, Cambridge (1998)Google Scholar
  33. 33.
    Frîincu, M.E., Villegas, N.M., Petcu, D., Müller, H.A., Rouvoy, R.: Self-Healing Distributed Scheduling Platform. In: 11th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, CCGRID 2011, pp. 225–234. IEEE Computer Society, Washington, DC (2011)CrossRefGoogle Scholar
  34. 34.
    Weyns, D., Malek, S., Andersson, J.: On Decentralized Self-Adaptation: Lessons from the Trenches and Challenges for the Future. In: 2010 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2010), pp. 84–93. ACM, New York (2010)CrossRefGoogle Scholar
  35. 35.
    Vromant, P., Weyns, D., Malek, S., Andersson, J.: On Interacting Control Loops in Self-Adaptive Systems. In: 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS 2011), pp. 202–207. ACM, New York (2011)Google Scholar
  36. 36.
    Hebig, R., Giese, H., Becker, B.: Making control loops explicit when architecting self-adaptive systems. In: 2nd International Workshop on Self-Organizing Architectures, SOAR 2010, pp. 21–28. ACM, New York (2010)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Norha M. Villegas
    • 1
    • 4
  • Gabriel Tamura
    • 2
    • 3
    • 4
  • Hausi A. Müller
    • 1
  • Laurence Duchien
    • 2
  • Rubby Casallas
    • 3
  1. 1.University of VictoriaVictoriaCanada
  2. 2.INRIA - LIFL - University of Lille 1LilleFrance
  3. 3.University of Los AndesBogotáColombia
  4. 4.Icesi UniversityCaliColombia

Personalised recommendations