

浏览全部资源
扫码关注微信
1.安徽工业大学计算机科学与技术学院, 安徽马鞍山 243000
2.东南大学计算机科学与工程学院,江苏南京 210000
Received:26 July 2021,
Revised:2022-01-13,
Published:25 March 2023
移动端阅览
王桐,李必信,王东东.一种基于MAAT两步匹配的架构多层次变更检测方法[J].电子学报,2023,51(03):694-700.
WANG Tong,LI Bi-xin,WANG Dong-dong.A Software Architecture Multiple-Level Change Detection Method Based on Two-Step MAAT Matching[J].ACTA ELECTRONICA SINICA,2023,51(03):694-700.
王桐,李必信,王东东.一种基于MAAT两步匹配的架构多层次变更检测方法[J].电子学报,2023,51(03):694-700. DOI: 10.12263/DZXB.20210988.
WANG Tong,LI Bi-xin,WANG Dong-dong.A Software Architecture Multiple-Level Change Detection Method Based on Two-Step MAAT Matching[J].ACTA ELECTRONICA SINICA,2023,51(03):694-700. DOI: 10.12263/DZXB.20210988.
掌握软件架构的变更对软件的持续演进具有十分重要的作用,然而目前的变更检测方法主要关注于细粒度的代码变更,忽略了对架构层级的检测.为了检测架构层级的变更,本文提出一种基于MAAT(Multilevel Architecture Analysis Tree)两步匹配的架构多层次变更检测方法.该方法包括三个步骤,分别是:构造MAAT;基于两个MAAT实施两步匹配算法检测变更;对变更进行分类和聚类.基于以上算法,我们开发了工具ACAnalyzer.实验结果证明,ACAnalyzer具有较好的准确性和性能.
Understanding the change of software architecture plays an important role in the continuous evolution of software. However
the current change detection methods mainly focus on fine-grained code and ignore the architecture level. In order to detect the change of architecture level
we propose a software architecture multiple-level change detection method based on two-step MAAT (Multilevel Architecture Analysis Tree) matching. The method includes three steps. Firstly
we construct an MAAT for each program. Secondly
a two-step matching algorithm is implemented to detect changes based on the two MAATs. Finally
we classify and cluster these changes. Based on the above algorithm
we develop the tool ACAnalyzer. And experimental results prove that ACAnalyzer has good accuracy and performance.
WANG T , WANG D D , LI B X . A multilevel analysis method for architecture erosion [C]// Proceedings of the 31st International Conference on Software Engineering and Knowledge Engineering . Lisbon : KSI Research Inc and Knowledge Systems Institute Graduate School , 2019 : 443 - 448 .
SUN X B , ZHOU T C , WANG R C , et al . Experience report: Investigating bug fixes in machine learning frameworks/libraries [J]. Frontiers of Computer Science , 2021 , 15 ( 6 ): 1 - 16 .
王桐 , 廖力 , 李必信 . 一种基于演进原则度量的软件架构持续演进效果评估方法 [J]. 电子学报 , 2019 , 47 ( 7 ): 1475 - 1481 .
WANG T , LIAO L , LI B X . An approach to evaluate the sustainable evolution effect of software architecture based on the measurements of evolution principles [J]. Acta Electronica Sinica , 2019 , 47 ( 7 ): 1475 - 1481 . (in Chinese)
CANFORA G , CERULO L , DI PENTA M . Ldiff: An enhanced line differencing tool [C]// 2009 IEEE 31st International Conference on Software Engineering . Piscataway : IEEE , 2009 : 595 - 598 .
CANFORA G , CERULO L , PENTA M D . Identifying changed source code lines from version repositories [C]// Fourth International Workshop on Mining Software Repositories . Minneapolis : IEEE , 2007 : 14 - 14 .
AYINALA K T , CHENG K S , OH K , et al . Tool support for code change inspection with deep learning in evolving software [C]// 2020 IEEE International Conference on Electro Information Technology . Piscataway : IEEE , 2020 : 13 - 17 .
DOTZLER G , PHILIPPSEN M . Move-optimized source code tree differencing [C]// 2016 31st IEEE/ACM International Conference on Automated Software Engineering (ASE) . Piscataway : IEEE , 2016 : 660 - 671 .
FLURI B , WURSCH M , PINZGER M , et al . Change distilling: Tree differencing for fine-grained source code change extraction [J]. IEEE Transactions on Software Engineering , 2007 , 33 ( 11 ): 725 - 743 .
WANG T , ZHANG Y L , LI B X . Recover and Optimize Software Architecture based on Source code and Directory Hierarchies [C]// The 31st International Conference on Software Engineering and Knowledge Engineering . Lisbon : KSI Research Inc. and Knowledge Systems Institute Graduate School , 2019 : 469 - 472 .
FALLERI J R , MORANDAT F , BLANC X , et al . Fine-grained and accurate source code differencing [C]// Proceedings of the 29th ACM/IEEE International Conference On Automated Software Engineering . New York : ACM , 2014 : 313 - 324 .
MIRAKHORLI M , CLELAND-HUANG J . Detecting, tracing, and monitoring architectural tactics in code [J]. IEEE Transactions on Software Engineering , 2016 , 42 ( 3 ): 205 - 220 .
CHAWATHE S S , RAJARAMAN A , GARCIA-MOLINA H , et al . Change detection in hierarchically structured information [J]. ACM SIGMOD Record , 1996 , 25 ( 2 ): 493 - 504 .
HIGO Y , OHTANI A , KUSUMOTO S . Generating simpler AST edit scripts by considering copy-and-paste [C]// 2017 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE) . Piscataway : IEEE , 2017 : 532 - 542 .
FRICK V , GRASSAUER T , BECK F , et al . Generating accurate and compact edit scripts using tree differencing [C]// 2018 IEEE International Conference on Software Maintenance and Evolution . Piscataway : IEEE , 2018 : 264 - 274 .
0
Views
17
下载量
0
CSCD
Publicity Resources
Related Articles
Related Author
Related Institution
京公网安备11010802024621