Guiding Architects in Selecting Architectural Evolution Alternatives

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6903)


Although there exist methods and tools to support architecture evolution, the derivation and evaluation of alternative evolution paths are realized manually. In this paper, we introduce an approach, where architecture specification is converted to a graph representation. Based on this representation, we automatically generate possible evolution paths, evaluate quality attributes for different architectural configurations, and optimize the selection of a particular path accordingly. We illustrate our approach by modeling the software architecture evolution of a crisis management system.


Quality Attribute Evolution Path Architectural Model Graph Transformation Resource Allocation Strategy 
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.
    Lehman, M., et al.: Metrics and laws of software evolution. In: METRICS, pp. 20–32 (1997)Google Scholar
  2. 2.
    Garlan, D., et al.: Evolution styles: Foundations and tool support for software architecture evolution. In: WICSA, pp. 131–140 (2009)Google Scholar
  3. 3.
    Kazman, R., et al.: The architecture tradeoff analysis method. In: ICECCS (1998)Google Scholar
  4. 4.
    Grunske, L.: Formalizing architectural refactorings as graph transformation systems. In: SNPD, pp. 324–329 (2005)Google Scholar
  5. 5.
    Wermelinger, M., Fiadeiro, J.L.: A graph transformation approach to software architecture reconfiguration. Sci. Comput. Program. 44, 133–155 (2002)CrossRefzbMATHGoogle Scholar
  6. 6.
    Dashofy, E., van der Hoek, A., Taylor, R.: A highly-extensible, xml-based architecture description language. In: WICSA, p. 103 (2001)Google Scholar
  7. 7.
    Dashofy, E., et al.: Archstudio 4: An architecture-based meta-modeling environment. In: ICSE, pp. 67–68 (2007)Google Scholar
  8. 8.
    Kienzle, J., Guelfi, N., Mustafiz, S.: Crisis management systems: A case study for aspect-oriented modeling. In: Katz, S., Mezini, M., Kienzle, J. (eds.) Transactions on Aspect-Oriented Software Development VII. LNCS, vol. 6210, pp. 1–22. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  9. 9.
    Ciraci, S., van den Broek, P., Aksit, M.: Framework for computer-aided evolution of object-oriented designs. In: COMPSAC, pp. 757–764 (2008)Google Scholar
  10. 10.
    Grassi, V., Mirandola, R., Sabetta, A.: An XML-based language to support performance and reliability modeling and analysis in software architectures. In: Reussner, R., Mayer, J., Stafford, J.A., Overhage, S., Becker, S., Schroeder, P.J. (eds.) QoSA 2005 and SOQUA 2005. LNCS, vol. 3712, pp. 71–87. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  11. 11.
  12. 12.
    Clarke, E.M., Emerson, E.A., Sistla, A.P.: Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM Trans. Program. Lang. Syst. 8(2), 244–263 (1986)CrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  1. 1.Pacific Northwest National LabRichlandUSA
  2. 2.Özyeğin UniversityİstanbulTurkey
  3. 3.University of TwenteEnschedeThe Netherlands

Personalised recommendations