QoS Contract-Aware Reconfiguration of Component Architectures Using E-Graphs

  • Gabriel Tamura
  • Rubby Casallas
  • Anthony Cleve
  • Laurence Duchien
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6921)


In this paper we focus on the formalization of component-based architecture self-reconfiguration as an action associated to quality-of-service (QoS) contracts violation. With this, we aim to develop on the vision of the component-based software engineering (CBSE) as a generator of software artifacts responsible for QoS contracts. This formalization, together with a definition of a QoS contract, forms the basis of the framework we propose to enable a system to preserve its QoS contracts. Our approach is built on a theory of extended graph (e-graph) rewriting as a formalism to represent QoS contracts, component-based architectural structures and architecture reconfiguration. We use a rule-based strategy for the extensible part of our framework. The reconfiguration rules are expressed as e-graph rewriting rules whose left and right hand sides can be used to encode design patterns for addressing QoS properties. These rules, given by a QoS property domain expert, are checked as safe, i.e., terminating and confluent, before its application by graph pattern-matching over the runtime representation of the system.


Context Condition Runtime System Component Architecture Service Level Objective Graph Morphism 
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.
    Bachmann, F., Bass, L., Buhman, C., Comella-Dorda, S., Long, F., Robert, J., Seacord, R., Wallnau, K.: Technical Concepts of Component-Based Software Engineering. Vol. 2. Technical Report CMU/SEI-2000-TR-008, CMU/SEI (2000)Google Scholar
  2. 2.
    Barbacci, M., Klein, M.H., Longstaff, T.A., Weinstock, C.B.: Quality attributes. Technical Report CMU/SEI-95-TR-021, CMU/SEI (1995)Google Scholar
  3. 3.
    Beugnard, A., Jézéquel, J.M., Plouzeau, N., Watkins, D.: Making components contract aware. IEEE Computer 32(7), 38–45 (1999)CrossRefGoogle Scholar
  4. 4.
    Bruneton, E., Coupaye, T., Leclercq, M., Quéma, V., Stefani, J.B.: The fractal component model and its support in java: Experiences with auto-adaptive and reconfigurable systems. Softw. Pract. & Exper. 36(11-12), 1257–1284 (2006)CrossRefGoogle Scholar
  5. 5.
    Cansado, A., Canal, C., Salaün, G., Cubo, J.: A formal framework for structural reconfiguration of components under behavioural adaptation. In: Procs. of the 6th Intl. Workshop FACS (2009); ENTCS 263(1), 95 – 110 (2010)Google Scholar
  6. 6.
    Chang, H., Collet, P.: Compositional patterns of non-functional properties for contract negotiation. JSW 2(2), 52–63 (2007)CrossRefGoogle Scholar
  7. 7.
    Chang, H., Collet, P.: Patterns for integrating and exploiting some non-functional properties in hierarchical software components. In: Procs. of the 14th IEEE Intl. Conference and Workshops on the ECBS 2007, pp. 83–92. IEEE CS, Los Alamitos (2007)Google Scholar
  8. 8.
    Cheng, B.H., Lemos, R., Giese, H., Inverardi, P., Magee, J., Andersson, J., Becker, B., Bencomo, N., Brun, Y., Cukic, B., 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.) Software Engineering for Self-Adaptive Systems. LNCS, vol. 5525, pp. 1–26. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  9. 9.
    Conan, D., Rouvoy, R., Seinturier, L.: Scalable processing of context information with COSMOS. In: Indulska, J., Raymond, K. (eds.) DAIS 2007. LNCS, vol. 4531, pp. 210–224. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  10. 10.
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Springer-Verlag New York, Inc., Heidelberg (2009)zbMATHGoogle Scholar
  11. 11.
    Ehrig, H., Ermel, C., Runge, O., Bucchiarone, A., Pelliccione, P.: Formal analysis and verification of self-healing systems. In: Rosenblum, D.S., Taentzer, G. (eds.) FASE 2010. LNCS, vol. 6013, pp. 139–153. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  12. 12.
    Hnětynka, P., Plášil, F.: Dynamic reconfiguration and access to services in hierarchical component models. In: Gorton, I., Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Ren, X.-M., Wallnau, K. (eds.) CBSE 2006. LNCS, vol. 4063, pp. 352–359. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  13. 13.
    Keller, A., Ludwig, H.: The wsla framework: Specifying and monitoring service level agreements for web services. J. Netw. Syst. Manage. 11(1), 57–81 (2003)CrossRefGoogle Scholar
  14. 14.
    Krakowiak, S.: Middleware architecture with patterns and frameworks (2009),
  15. 15.
    Ludwig, H., Keller, A., Dan, A., King, R.P., Franck, R.: Web Service Level Agreement (WSLA) Language Specification(2003), IBM Available Specification Google Scholar
  16. 16.
    Meyer, B.: Applying ”Design by Contract”. Computer 25(10), 40–51 (1992)CrossRefGoogle Scholar
  17. 17.
    Oreizy, P., Gorlick, M.M., Taylor, R.N., Heimbigner, D., Johnson, G., Medvidovic, N., Quilici, A., Rosenblum, D.S., Wolf, A.L.: An architecture-based approach to self-adaptive software. IEEE Intelligent Systems 14(3), 54–62 (1999)CrossRefGoogle Scholar
  18. 18.
    Paspallis, N., Rouvoy, R., Barone, P., Papadopoulos, G.A., Eliassen, F., Mamelli, A.: A pluggable and reconfigurable architecture for a context-aware enabling middleware system. In: Chung, S. (ed.) OTM 2008, Part I. LNCS, vol. 5331, pp. 553–570. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  19. 19.
    Ramachandran, J.: Designing Security Architecture Solutions. John Wiley & Sons, Inc., New York (2002)Google Scholar
  20. 20.
    Taylor, R.N., Medvidovic, N., Oreizy, P.: Architectural styles for runtime software adaptation. In: WICSA/ECSA 2009, pp. 171–180. IEEE, Los Alamitos (2009)Google Scholar
  21. 21.
    The OSGi Alliance: OSGi Service Platform Core Specification Release 4. Tech. rep., The OSGi Alliance (June 2009),, oSGi Available Specification
  22. 22.
    Tran, V.X., Tsuji, H.: A survey and analysis on semantics in qos for web services. In: Intl. Conf. on Advanced Information Networking and Apps., pp. 379–385 (2009)Google Scholar
  23. 23.
    Zeng, W., Zhuang, X., Lan, J.: Network friendly media security: Rationales, solutions, and open issues. In: Procs. of the 2004 Intl. Conf. on Image Processing (ICIP), pp. 565–568. IEEE, Los Alamitos (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Gabriel Tamura
    • 1
    • 2
  • Rubby Casallas
    • 1
  • Anthony Cleve
    • 2
  • Laurence Duchien
    • 2
  1. 1.TICSw GroupUniversity of Los AndesBogotáColombia
  2. 2.INRIA Lille-Nord Europe, LIFL CNRS UMR 8022University of Lille 1France

Personalised recommendations