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

被引:17
作者
Ahmad, Aakash [1 ,2 ]
Jamshidi, Pooyan [1 ,2 ,3 ]
Pahl, Claus [1 ,2 ,3 ]
机构
[1] Dublin City Univ, Sch Comp, Dublin 9, Ireland
[2] Lero, Limerick, Ireland
[3] Irish Ctr Cloud Comp & Commerce IC4, Dublin, Ireland
基金
爱尔兰科学基金会;
关键词
software architecture; architecture-centric software evolution; architecture evolution reuse knowledge; systematic literature review; evidence-based study in software evolution; research synthesis; SOFTWARE ARCHITECTURE;
D O I
10.1002/smr.1643
中图分类号
TP31 [计算机软件];
学科分类号
081205 [计算机软件];
摘要
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 (C) 2014 John Wiley & Sons, Ltd.
引用
收藏
页码:654 / 691
页数:38
相关论文
共 47 条
[1]
Ahmad A, 2012, 10 INT WORKSH SYST S
[2]
Ahmad A, CLASSIFICATION COMP
[3]
Ahmad A, 2013, ACM SIGSOFT SOFTWARE, V38
[4]
Ahmad A, 2012, 7 WORKSH SHARING REU
[5]
[Anonymous], 2000, P C FUT SOFTW ENG
[6]
[Anonymous], 16 EUR C SOFTW MAINT
[7]
Babar MA, 2009, SOFTWARE ARCHITECTURE KNOWLEDGE MANAGEMENT: THEORY AND PRACTICE, P69, DOI 10.1007/978-3-642-02374-3_5
[8]
Toward open-world software: Issues and challenges [J].
Baresi, Luciano ;
Di Nitto, Ellsabetta ;
Ghezzi, Carlo .
COMPUTER, 2006, 39 (10) :36-+
[9]
Evolution styles: foundations and models for software architecture evolution [J].
Barnes, Jeffrey M. ;
Garlan, David ;
Schmerl, Bradley .
SOFTWARE AND SYSTEMS MODELING, 2014, 13 (02) :649-678
[10]
Barnes JM, 2013, 3 WORKSH DEV TOOLS P