论文标题

微量服务识别的整体发展历史:比较分析

Monolith Development History for Microservices Identification: a Comparative Analysis

论文作者

Lourenço, João, Silva, António Rito

论文摘要

最近的研究提出了关于对整体系统的候选微服务自动识别的不同方法,这些方法在单片表示,相似性标准和所使用的质量指标上有所不同。另一方面,它们通常在评估的代码库和分解数量中受到限制,并且方法之间几乎没有比较。考虑到基于代码库的演化分析,考虑软件工程的新兴趋势,我们比较了基于单片代码结构的表示形式,尤其是基于单层开发历史记录(文件更改和更改作者)的表示形式。从对28个代码库的总计468K分解的分析中,使用五个质量指标来评估模块化,每个功能的交易数量最小化以及团队和沟通的降低,我们得出结论,每个指标的最佳分解是通过结合访问序列和开发历史记录表示的数据来制造的。我们还发现,与许多作者的代码库的作者身份表示相比,与访问代码库的访问顺序相比,代码库的序列与作者的访问顺序相比,对于最小化每个功能的交易数量和减少团队的交易数量而言。

Recent research has proposed different approaches on the automated identification of candidate microservices on monolith systems, which vary on the monolith representation, similarity criteria, and quality metrics used. On the other hand, they are generally limited in the number of codebases and decompositions evaluated, and few comparisons between approaches exist. Considering the emerging trend in software engineering in techniques based on the analysis of codebases' evolution, we compare a representation based on the monolith code structure, in particular the sequences of accesses to domain entities, with representations based on the monolith development history (file changes and changes authorship). From the analysis on a total of 468k decompositions of 28 codebases, using five quality metrics that evaluate modularity, minimization of the number of transactions per functionality, and reduction of teams and communication, we conclude that the best decompositions on each metric were made by combining data from the sequences of accesses and the development history representations. We also found that the changes authorship representation of codebases with many authors achieves comparable or better results than the sequence of accesses representation of codebases with few authors with respect to minimization of the number of transactions per functionality and the reduction of teams.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源