Get access

Classification and comparison of architecture evolution reuse knowledge—a systematic review

Authors

  • Aakash Ahmad,

    1. School of Computing, Dublin City University, Dublin, Ireland
    2. Lero—the Irish Software Engineering Research Centre, Ireland
    Search for more papers by this author
  • Pooyan Jamshidi,

    Corresponding author
    1. School of Computing, Dublin City University, Dublin, Ireland
    2. Lero—the Irish Software Engineering Research Centre, Ireland
    3. Irish Centre for Cloud Computing and Commerce (IC4), Ireland
    Search for more papers by this author
  • Claus Pahl

    1. School of Computing, Dublin City University, Dublin, Ireland
    2. Lero—the Irish Software Engineering Research Centre, Ireland
    3. Irish Centre for Cloud Computing and Commerce (IC4), Ireland
    Search for more papers by this author

ABSTRACT

Context

Architecture-centric software evolution (ACSE) enables changes in system's structure and behaviour while maintaining a global view of the software to address evolution-centric trade-offs. The existing research and practices for ACSE primarily focus on design-time evolution and runtime adaptations to accommodate changing requirements in existing architectures.

Objectives

We aim to identify, taxonomically classify and systematically compare the existing research focused on enabling or enhancing change reuse to support ACSE.

Method

We conducted a systematic literature review of 32 qualitatively selected studies and taxonomically classified these studies based on solutions that enable (i) empirical acquisition and (ii) systematic application of architecture evolution reuse knowledge (AERK) to guide ACSE.

Results

We identified six distinct research themes that support acquisition and application of AERK. We investigated (i) how evolution reuse knowledge is defined, classified and represented in the existing research to support ACSE and (ii) what are the existing methods, techniques and solutions to support empirical acquisition and systematic application of AERK.

Conclusions

Change patterns (34% of selected studies) represent a predominant solution, followed by evolution styles (25%) and adaptation strategies and policies (22%) to enable application of reuse knowledge. Empirical methods for acquisition of reuse knowledge represent 19% including pattern discovery, configuration analysis, evolution and maintenance prediction techniques (approximately 6% each). A lack of focus on empirical acquisition of reuse knowledge suggests the need of solutions with architecture change mining as a complementary and integrated phase for architecture change execution. Copyright © 2014 John Wiley & Sons, Ltd.

Ancillary