arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2311.04643cs.SE
收藏

基于信息融合的软件架构恢复

Software Architecture Recovery with Information Fusion

Yiran Zhang, Zhengzi Xu, Chengwei Liu, Hongxu Chen, Jianwen Sun, Dong Qiu, Yang Liu

AI总结:

针对软件架构恢复中信息来源单一、利用粒度粗的问题,提出全自动 SARIF 方法,融合依赖、代码文本和文件夹结构并自适应加权,在九个项目上较九种现有最佳技术平均准确率提升36.1%。

摘要:

理解架构对于有效维护和管理大型软件系统至关重要。然而,随着软件系统随时间不断演化,其架构不可避免地会发生变化。为了跟上这些变化,架构师需要跟踪实现层面的变更,并相应地更新架构文档,这一过程既耗时又容易出错。因此,人们提出了许多自动化架构恢复技术来简化这一过程。尽管已有研究致力于提高架构恢复的准确性,但现有解决方案仍存在两个局限。首先,它们大多只使用一种或两种类型的信息进行恢复,忽视了其他信息源的潜在价值。其次,它们倾向于以粗粒度方式使用信息,忽略了其中的重要细节。为解决这些局限,我们提出了 SARIF,这是一种全自动架构恢复技术,融合了依赖关系、代码文本和文件夹结构三类综合信息。SARIF 通过深入分析每类信息的细节,并根据其相关性和质量进行自适应融合,从而能够更准确地恢复架构。为评估 SARIF,我们收集了六个具有已发布真实架构的项目,以及三个由工业合作方标注的开源项目。我们使用三种常用的架构相似性指标和两个新指标,将 SARIF 与九种最先进技术进行了比较。实验结果表明,SARIF 的准确性平均比以往技术中的最佳者高 36.1%。通过提供全面的架构,SARIF 可以帮助用户有效理解系统,并减少获取真实架构所需的人工工作量。

英文摘要:

Understanding the architecture is vital for effectively maintaining and managing large software systems. However, as software systems evolve over time, their architectures inevitably change. To keep up with the change, architects need to track the implementation-level changes and update the architectural documentation accordingly, which is time-consuming and error-prone. Therefore, many automatic architecture recovery techniques have been proposed to ease this process. Despite efforts have been made to improve the accuracy of architecture recovery, existing solutions still suffer from two limitations. First, most of them only use one or two type of information for the recovery, ignoring the potential usefulness of other sources. Second, they tend to use the information in a coarse-grained manner, overlooking important details within it. To address these limitations, we propose SARIF, a fully automated architecture recovery technique, which incorporates three types of comprehensive information, including dependencies, code text and folder structure. SARIF can recover architecture more accurately by thoroughly analyzing the details of each type of information and adaptively fusing them based on their relevance and quality. To evaluate SARIF, we collected six projects with published ground-truth architectures and three open-source projects labeled by our industrial collaborators. We compared SARIF with nine state-of-the-art techniques using three commonly-used architecture similarity metrics and two new metrics. The experimental results show that SARIF is 36.1% more accurate than the best of the previous techniques on average. By providing comprehensive architecture, SARIF can help users understand systems effectively and reduce the manual effort of obtaining ground-truth architectures.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑