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

Aakash Ahmad, Pooyan Jamshidi, Claus Pahl · Journal of Software Evolution and Process · 2014

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 ondesign‐time evolutionandruntime adaptationsto accommodate changing requirements in existing architectures. Objectives We aim toidentify, taxonomicallyclassifyand systematicallycomparethe 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 acquisitionand (ii)systematic applicationof 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)howevolution reuse knowledge is defined, classified and represented in the existing research to support ACSE and (ii)whatare 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 byevolution styles(25%) andadaptation strategies and policies(22%) to enable application of reuse knowledge. Empirical methods for acquisition of reuse knowledge represent 19% includingpattern discovery,configuration analysis,evolution and maintenance predictiontechniques (approximately 6% each). A lack of focus on empirical acquisition of reuse knowledge suggests the need of solutions witharchitecture change miningas a complementary and integrated phase forarchitecture change execution. Copyright © 2014 John Wiley & Sons, Ltd.

Read the paper · More papers on PaperTik