Managing Dynamic Evolution of Architectural Types

  • Cristóbal Costa-Soria
  • Jennifer Pérez
  • José Angel Carsí
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5292)


Software systems evolvability is more and more required in current software developments, in order to provide systems with enough flexibility to adapt to future requirements. The evolvability in the field of Software Architecture can be classified into two kinds: dynamic reconfiguration or dynamic architectural type evolution. The former enables an architecture to change its configuration at run-time, by creating or destroying architectural element instances and their links dynamically. The latter enables an architecture to change entirely its specification at run-time, by introducing new architectural element types and connections or by modifying the type and the running instances of its architectural elements. This paper presents an approach to address how to dynamically evolve the architectural types of a system from a platform-independent view. This approach identifies the different concerns involved in the adaptation process by encapsulating them into aspects, and makes use of reflection mechanisms to perform the type updating process.


dynamic evolution run-time adaptation architectural types reflection software architectures AOSD 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Batista, T., Joolia, A., Coulson, G.: Managing Dynamic Reconfiguration in Component-Based Systems. In: Morrison, R., Oquendo, F. (eds.) EWSA 2005. LNCS, vol. 3527, pp. 1–17. Springer, Heidelberg (2005)Google Scholar
  2. 2.
    Bradbury, J.S., Cordy, J.R., Dingel, J., Wermelinger, M.: A Survey of Self-Management in Dynamic Software Architecture Specifications. In: Proc. of 1st ACM SIGSOFT Workshop on Self-Managed Systems (WOSS 2004), Newport Beach, California, pp. 28–33 (2004)Google Scholar
  3. 3.
    Buckley, J., Mens, T., Zenger, M., Rashid, A., Kniesel, G.: Towards a taxonomy of software change. Journal on Software Maintenance and Evolution 17(5) (2005)Google Scholar
  4. 4.
    Bures, T., Hnetynka, P., Plasil, F.: SOFA 2.0: Balancing Advanced Features in a Hierarchical Component Model. In: 4th Int. Conference on Software Engineering Research, Management and Applications (SERA 2006), Seattle, Washington, USA, pp. 40–48 (2006)Google Scholar
  5. 5.
    Chitchyan, R., Rashid, A., Sawyer, P., et al.: Report Synthesizing State-of-the-Art in Aspect-Oriented Requirements Engineering, Architectures and Design. Technical Report AOSD-Europe Deliverable D11, AOSD-Europe-ULANC-9. Lancaster Univ., UK (2005)Google Scholar
  6. 6.
    Costa, C., Ali, N., Pérez, J., Carsí, J.A., Ramos, I.: Dynamic Reconfiguration of Software Architectures through Aspects. In: Oquendo, F. (ed.) ECSA 2007. LNCS, vol. 4758, pp. 279–283. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  7. 7.
    Costa, C., Pérez, J., Carsí, J.A.: Dynamic Adaptation of Aspect-Oriented Components. In: Schmidt, H.W., Crnković, I., Heineman, G.T., Stafford, J.A. (eds.) CBSE 2007. LNCS, vol. 4608, pp. 49–65. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  8. 8.
    Cuesta, C.E., Fuente, P.d.l., Barrio-Solárzano, M.: Dynamic Coordination Architecture through the use of Reflection. In: Proc. of 2001 ACM Symposium on Applied Computing, Las Vegas, Nevada, United States, pp. 134–140 (2001)Google Scholar
  9. 9.
    Dashofy, E.M., van der Hoek, A., Taylor, R.N.: Towards Architecture-Based Self-Healing Systems. In: Proc. of 1st Workshop on Self-Healing Systems (WOSS 2002), Carolina (2002)Google Scholar
  10. 10.
    Garlan, D., Cheng, S., Huang, S., Schmerl, B., Steenkiste, P.: Rainbow: Architecture-Based Self-Adaptation with Reusable Infrastructure. Computer 37, 46–54 (2004)CrossRefGoogle Scholar
  11. 11.
    Hnetynka, P., Plásil, 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., Szyperski, C.A., Wallnau, K. (eds.) CBSE 2006. LNCS, vol. 4063, pp. 352–359. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  12. 12.
    McKinley, P.K., Sadjadi, S.M., Kasten, E.P., Cheng, B.H.C.: Composing Adaptive Software. Computer 37(7), 56–64 (2004)CrossRefGoogle Scholar
  13. 13.
    Morrison, R., Balasubramaniam, D., Kirby, G., et al.: A Framework for Supporting Dynamic Systems Co-Evolution. Autom. Software. Eng. 14(3), 261–292 (2007)CrossRefGoogle Scholar
  14. 14.
    OMG: Model Driven Architecture Guide,
  15. 15.
    Oreizy, P., Gorlick, M., Taylor, R.N., Heimbigner, D., Johnson, G., et al.: An Architecture-Based Approach to Self-Adaptive Software. IEEE Intelligent Systems 14, 54–62 (1999)CrossRefGoogle Scholar
  16. 16.
    Pérez, J.: PRISMA: Aspect-Oriented Software Architectures. PhD Thesis, Department of Information Systems and Computation, Polytechnic University of Valencia (2006)Google Scholar
  17. 17.
    Pérez, J., Ali, N., Carsí, J.A., Ramos, I.: Designing Software Architectures with an Aspect-Oriented Architecture Description Language. In: Gorton, I., Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Szyperski, C.A., Wallnau, K. (eds.) CBSE 2006. LNCS, vol. 4063, pp. 123–138. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  18. 18.
    Pérez, J., Ali, N., Carsí, J.A., Ramos, I.: Dynamic Evolution in Aspect-Oriented Architectural Models. In: Morrison, R., Oquendo, F. (eds.) EWSA 2005. LNCS, vol. 3527, pp. 59–76. Springer, Heidelberg (2005)Google Scholar
  19. 19.
    Pérez, J., Ali, N., Costa, C., Carsí, J.A., Ramos, I.: Executing Aspect-Oriented Component-Based Software Architectures on .NET Technology. In: Proc. of 3rd International Conference on .NET Technologies, Pilsen, Czech Republic, pp. 97–108 (2005)Google Scholar
  20. 20.
    Ramdane-Cherif, A., Lévy, N., Losavio, F.: Agent Paradigm for Adaptable Architecture. Journal of Object Technology 3(8), 169–182 (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Cristóbal Costa-Soria
    • 1
  • Jennifer Pérez
    • 2
  • José Angel Carsí
    • 1
  1. 1.ISSI, Dept. of Information Systems and ComputationUniversidad Politécnica de ValenciaValenciaSpain
  2. 2.Escuela Universitaria de InformáticaTechnical University of Madrid (UPM)MadridSpain

Personalised recommendations