单块微服务识别的代码矢量化和访问策略序列

Vasco Faria, António Rito Silva
{"title":"单块微服务识别的代码矢量化和访问策略序列","authors":"Vasco Faria, António Rito Silva","doi":"10.48550/arXiv.2212.11657","DOIUrl":null,"url":null,"abstract":"Migrating a monolith application into a microservices architecture can benefit from automation methods, which speed up the migration and improve the decomposition results. One of the current approaches that guide software architects on the migration is to group monolith domain entities into microservices, using the sequences of accesses of the monolith functionalities to the domain entities. In this paper, we enrich the sequence of accesses solution by applying code vectorization to the monolith, using the \\textit{Code2Vec} neural network model. We apply \\textit{Code2Vec} to vectorize the monolith functionalities. We propose two strategies to represent a functionality, one by aggregating its call graph methods vectors, and the other by extending the sequence of accesses approach with vectorization of the accessed entities. To evaluate these strategies, we compare the proposed strategies with the sequence of accesses strategy and an existing approach that uses class vectorization. We run all these strategies over a large set of codebases, and then compare the results of their decompositions in terms of cohesion, coupling, and complexity.","PeriodicalId":91383,"journal":{"name":"Proceedings of the ... International Conference on Web Information Systems Engineering. International Conference on Web Information Systems Engineering","volume":"39 1","pages":"19-33"},"PeriodicalIF":0.0000,"publicationDate":"2022-12-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":"{\"title\":\"Code Vectorization and Sequence of Accesses Strategies for Monolith Microservices Identification\",\"authors\":\"Vasco Faria, António Rito Silva\",\"doi\":\"10.48550/arXiv.2212.11657\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Migrating a monolith application into a microservices architecture can benefit from automation methods, which speed up the migration and improve the decomposition results. One of the current approaches that guide software architects on the migration is to group monolith domain entities into microservices, using the sequences of accesses of the monolith functionalities to the domain entities. In this paper, we enrich the sequence of accesses solution by applying code vectorization to the monolith, using the \\\\textit{Code2Vec} neural network model. We apply \\\\textit{Code2Vec} to vectorize the monolith functionalities. We propose two strategies to represent a functionality, one by aggregating its call graph methods vectors, and the other by extending the sequence of accesses approach with vectorization of the accessed entities. To evaluate these strategies, we compare the proposed strategies with the sequence of accesses strategy and an existing approach that uses class vectorization. We run all these strategies over a large set of codebases, and then compare the results of their decompositions in terms of cohesion, coupling, and complexity.\",\"PeriodicalId\":91383,\"journal\":{\"name\":\"Proceedings of the ... International Conference on Web Information Systems Engineering. International Conference on Web Information Systems Engineering\",\"volume\":\"39 1\",\"pages\":\"19-33\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2022-12-21\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"2\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the ... International Conference on Web Information Systems Engineering. International Conference on Web Information Systems Engineering\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.48550/arXiv.2212.11657\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the ... International Conference on Web Information Systems Engineering. International Conference on Web Information Systems Engineering","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.48550/arXiv.2212.11657","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2

摘要

将单个应用程序迁移到微服务体系结构中可以受益于自动化方法,它可以加快迁移速度并改善分解结果。指导软件架构师进行迁移的当前方法之一是使用对领域实体的整体功能访问序列,将整体领域实体分组为微服务。在本文中,我们利用\textit{Code2Vec}神经网络模型,将代码矢量化应用于整体,丰富了访问序列解。我们应用\textit{Code2Vec}对单体功能进行矢量化。我们提出了两种表示功能的策略,一种是通过聚合其调用图方法向量,另一种是通过对访问实体进行矢量化来扩展访问序列方法。为了评估这些策略,我们将所提出的策略与访问顺序策略和使用类向量化的现有方法进行了比较。我们在一大组代码库上运行所有这些策略,然后根据内聚、耦合和复杂性比较它们的分解结果。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Code Vectorization and Sequence of Accesses Strategies for Monolith Microservices Identification
Migrating a monolith application into a microservices architecture can benefit from automation methods, which speed up the migration and improve the decomposition results. One of the current approaches that guide software architects on the migration is to group monolith domain entities into microservices, using the sequences of accesses of the monolith functionalities to the domain entities. In this paper, we enrich the sequence of accesses solution by applying code vectorization to the monolith, using the \textit{Code2Vec} neural network model. We apply \textit{Code2Vec} to vectorize the monolith functionalities. We propose two strategies to represent a functionality, one by aggregating its call graph methods vectors, and the other by extending the sequence of accesses approach with vectorization of the accessed entities. To evaluate these strategies, we compare the proposed strategies with the sequence of accesses strategy and an existing approach that uses class vectorization. We run all these strategies over a large set of codebases, and then compare the results of their decompositions in terms of cohesion, coupling, and complexity.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信