Mining Patterns from Change Logs to Support Reuse-Driven Evolution of Software Architectures  

在线阅读下载全文

作  者:Aakash Ahlnad Claus Pahl Ahmed B. Altamimi Abdulrahman Alreshidi 

机构地区:[1]College of Computer Science and Engineering, University of Ha'il, Ha'il 2440, Saudi Arabia [2]Faculty of Computer Science, Free University of Bozen-Bolzano, Bozen-Bolzano 39100, Italy

出  处:《Journal of Computer Science & Technology》2018年第6期1278-1306,共29页计算机科学技术学报(英文版)

摘  要:Modern software systems are subject to a continuous evolution under frequently varying requirements andchanges in systems' operational environments. Lehman's law of continuing change demands for long-living and continuouslyevolving software to prolong its productive life and economic value by accommodating changes in existing software. Reusableknowledge and practices have proven to be successful for continuous development and evolution of the software effectivelyand efficiently. However, challenges such as empirical acquisition and systematic application of the reusable knowledge andpractices must be addressed to enable or enhance software evolution. We investigate architecture change logs -- mininghistories of architecture-centric software evolution -- to discover change patterns that 1) support reusability of architecturalchanges and 2) enhance the efficiency of the architecture evolution process. We model architecture change logs as a graphand apply graph-based formalism (i.e., graph mining techniques) to discover software architecture change patterns. Wehave developed a prototype that enables tool-driven automation and user decision support during software evolution. Wehave used the ISO-IEC-9126 model to qualitatively evaluate the proposed solution. The evaluation results suggest that theproposed solution 1) enables the reusability of frequent architectural changes and 2) enhances the efficiency of architecture-centric software evolution process. The proposed solution promotes research efforts to exploit the history of architecturalchanges to empirically discover knowledge that can guide architecture-centric software evolution.

关 键 词:SOFTWARE architecture SOFTWARE maintenance and EVOLUTION EVOLUTION pattern REPOSITORY MINING 

分 类 号:TP[自动化与计算机技术]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象