• 文献检索
  • 文档翻译
  • 深度研究
  • 学术资讯
  • Suppr Zotero 插件Zotero 插件
  • 邀请有礼
  • 套餐&价格
  • 历史记录
应用&插件
Suppr Zotero 插件Zotero 插件浏览器插件Mac 客户端Windows 客户端微信小程序
定价
高级版会员购买积分包购买API积分包
服务
文献检索文档翻译深度研究API 文档MCP 服务
关于我们
关于 Suppr公司介绍联系我们用户协议隐私条款
关注我们

Suppr 超能文献

核心技术专利:CN118964589B侵权必究
粤ICP备2023148730 号-1Suppr @ 2026

文献检索

告别复杂PubMed语法,用中文像聊天一样搜索,搜遍4000万医学文献。AI智能推荐,让科研检索更轻松。

立即免费搜索

文件翻译

保留排版,准确专业,支持PDF/Word/PPT等文件格式,支持 12+语言互译。

免费翻译文档

深度研究

AI帮你快速写综述,25分钟生成高质量综述,智能提取关键信息,辅助科研写作。

立即免费体验

SEMGROMI——一种使用用户故事语义相似度来识别微服务的语义分组算法。

SEMGROMI-a semantic grouping algorithm to identifying microservices using semantic similarity of user stories.

作者信息

Vera-Rivera Fredy H, Puerto Cuadros Eduard Gilberto, Perez Boris, Astudillo Hernán, Gaona Carlos

机构信息

Grupo de Investigación GIA, Universidad Francisco de Paula Santander, Cúcuta, Norte de Santander, Colombia.

Departamento de Informática, Universidad Técnica Federico Santa María, Santiago, Santiago, Chile.

出版信息

PeerJ Comput Sci. 2023 May 12;9:e1380. doi: 10.7717/peerj-cs.1380. eCollection 2023.

DOI:10.7717/peerj-cs.1380
PMID:37346649
原文链接:https://pmc.ncbi.nlm.nih.gov/articles/PMC10280387/
Abstract

Microservices is an architectural style for service-oriented distributed computing, and is being widely adopted in several domains, including autonomous vehicles, sensor networks, IoT systems, energy systems, telecommunications networks and telemedicine systems. When migrating a monolithic system to a microservices architecture, one of the key design problems is the "microservice granularity definition", ., deciding how many microservices are needed and allocating computations among them. This article describes a semantic grouping algorithm (SEMGROMI), a technique that takes user stories, a well-known functional requirements specification technique, and identifies number and scope of candidate microservices using semantic similarity of the user stories' textual description, while optimizing for low coupling, high cohesion, and high semantic similarity. Using the technique in four validation projects (two state-of-the-art projects and two industry projects), the proposed technique was compared with domain-driven design (DDD), the most frequent method used to identify microservices, and with a genetic algorithm previously proposed as part of the Microservices Backlog model. We found that SEMGROMI yields decompositions of user stories to microservices with high cohesion (from the semantic point of view) and low coupling, the complexity was reduced, also the communication between microservices and the estimated development time was decreased. Therefore, SEMGROMI is a viable option for the design and evaluation of microservices-based applications. The proposed semantic similarity-based technique (SEMGROMI) is part of the Microservices Backlog model, which allows to evaluate candidate microservices graphically and based on metrics to make design-time decisions about the architecture of the microservices-based application.

摘要

微服务是一种面向服务的分布式计算的架构风格,正在多个领域中广泛应用,包括自动驾驶车辆、传感器网络、物联网系统、能源系统、电信网络和远程医疗系统。当将单体系统迁移至微服务架构时,关键设计问题之一是“微服务粒度定义”,即确定需要多少个微服务 并在它们之间分配计算任务。本文描述了一种语义分组算法(SEMGROMI),该技术采用用户故事(一种广为人知的功能需求规范技术),并利用用户故事文本描述的语义相似性来识别候选微服务的数量和范围,同时针对低耦合、高内聚和高语义相似性进行优化。在四个验证项目(两个先进项目和两个行业项目)中使用该技术,将所提出的技术与领域驱动设计(DDD)(用于识别微服务的最常用方法)以及先前作为微服务待办事项模型一部分提出的遗传算法进行比较。我们发现,SEMGROMI 能够将用户故事分解为具有高内聚性(从语义角度)和低耦合性的微服务,降低了复杂性,减少了微服务之间的通信,也缩短了估计的开发时间。因此,SEMGROMI 是基于微服务的应用程序设计和评估的可行选择。所提出的基于语义相似性的技术(SEMGROMI)是微服务待办事项模型的一部分,该模型允许以图形方式并基于指标评估候选微服务,以便在设计时对基于微服务的应用程序架构做出决策。

https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/e39e85730cad/peerj-cs-09-1380-g006.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/e673b141c3e0/peerj-cs-09-1380-g001.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/a2eaf013db9b/peerj-cs-09-1380-g002.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/c3907854ed32/peerj-cs-09-1380-g003.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/e03c9ed01d7d/peerj-cs-09-1380-g004.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/f13685cdbd59/peerj-cs-09-1380-g005.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/e39e85730cad/peerj-cs-09-1380-g006.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/e673b141c3e0/peerj-cs-09-1380-g001.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/a2eaf013db9b/peerj-cs-09-1380-g002.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/c3907854ed32/peerj-cs-09-1380-g003.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/e03c9ed01d7d/peerj-cs-09-1380-g004.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/f13685cdbd59/peerj-cs-09-1380-g005.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/140a/10280387/e39e85730cad/peerj-cs-09-1380-g006.jpg

相似文献

1
SEMGROMI-a semantic grouping algorithm to identifying microservices using semantic similarity of user stories.SEMGROMI——一种使用用户故事语义相似度来识别微服务的语义分组算法。
PeerJ Comput Sci. 2023 May 12;9:e1380. doi: 10.7717/peerj-cs.1380. eCollection 2023.
2
Defining and measuring microservice granularity-a literature overview.定义和衡量微服务粒度——文献综述
PeerJ Comput Sci. 2021 Sep 8;7:e695. doi: 10.7717/peerj-cs.695. eCollection 2021.
3
DNS/DANE Collision-Based Distributed and Dynamic Authentication for Microservices in IoT .物联网中基于DNS/DANE冲突的微服务分布式动态认证
Sensors (Basel). 2019 Jul 26;19(15):3292. doi: 10.3390/s19153292.
4
Relevant Cybersecurity Aspects of IoT Microservices Architectures Deployed over Next-Generation Mobile Networks.物联网微服务架构在下一代移动网络上部署的相关网络安全方面。
Sensors (Basel). 2022 Dec 24;23(1):189. doi: 10.3390/s23010189.
5
Fuzzy-Based Microservice Resource Management Platform for Edge Computing in the Internet of Things.基于模糊算法的物联网边缘计算微服务资源管理平台
Sensors (Basel). 2021 May 31;21(11):3800. doi: 10.3390/s21113800.
6
Modeling Performance of Microservices Systems with Growth Theory.用增长理论对微服务系统的性能进行建模。
Empir Softw Eng. 2022;27(2):39. doi: 10.1007/s10664-021-10088-0. Epub 2022 Jan 11.
7
Comparison of Representative Microservices Technologies in Terms of Performance for Use for Projects Based on Sensor Networks.基于传感器网络的项目中,针对性能方面对有代表性的微服务技术进行比较。
Sensors (Basel). 2022 Oct 13;22(20):7759. doi: 10.3390/s22207759.
8
Design Methodology of Microservices to Support Predictive Analytics for IoT Applications.面向物联网应用预测分析的微服务设计方法。
Sensors (Basel). 2018 Dec 2;18(12):4226. doi: 10.3390/s18124226.
9
Enhancing Microservices Security with Token-Based Access Control Method.基于令牌的访问控制方法增强微服务安全性。
Sensors (Basel). 2023 Mar 22;23(6):3363. doi: 10.3390/s23063363.
10
IRRISENS: An IoT Platform Based on Microservices Applied in Commercial-Scale Crops Working in a Multi-Cloud Environment.IRRISENS:一个基于微服务的物联网平台,应用于多云计算环境中的商业规模作物。
Sensors (Basel). 2020 Dec 14;20(24):7163. doi: 10.3390/s20247163.

本文引用的文献

1
Defining and measuring microservice granularity-a literature overview.定义和衡量微服务粒度——文献综述
PeerJ Comput Sci. 2021 Sep 8;7:e695. doi: 10.7717/peerj-cs.695. eCollection 2021.