Service Classification through Machine Learning: Aiding in the Efficient Identification of Reusable Assets in Cloud Application Development

Z. Alizadehsani, Daniel Feitosa, Theodoros Maikantis, Apostolos Ampatzoglou, A. Chatzigeorgiou, David Berrocal-Macías, Alfonso González-Briones, J. Corchado, Márcio Mateus, Johannes Groenewold
{"title":"Service Classification through Machine Learning: Aiding in the Efficient Identification of Reusable Assets in Cloud Application Development","authors":"Z. Alizadehsani, Daniel Feitosa, Theodoros Maikantis, Apostolos Ampatzoglou, A. Chatzigeorgiou, David Berrocal-Macías, Alfonso González-Briones, J. Corchado, Márcio Mateus, Johannes Groenewold","doi":"10.1109/SEAA56994.2022.00046","DOIUrl":null,"url":null,"abstract":"Developing software based on services is one of the most emerging programming paradigms in software development. Service-based software development relies on the composition of services (i.e., pieces of code already built and deployed in the cloud) through orchestrated API calls. Black-box reuse can play a prominent role when using this programming paradigm, in the sense that identifying and reusing already existing/deployed services can save substantial development effort. According to the literature, identifying reusable assets (i.e., components, classes, or services) is more successful and efficient when the discovery process is domain-specific. To facilitate domain-specific service discovery, we propose a service classification approach that can categorize services to an application domain, given only the service description. To validate the accuracy of our classification approach, we have trained a machine-learning model on thousands of open-source services and tested it on 67 services developed within two companies employing service-based software development. The study results suggest that the classification algorithm can perform adequately in a test set that does not overlap with the training set; thus, being (with some confidence) transferable to other industrial cases. Additionally, we expand the body of knowledge on software categorization by highlighting sets of domains that consist ‘grey-zones’ in service classification.","PeriodicalId":269970,"journal":{"name":"2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2022 48th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SEAA56994.2022.00046","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2

Abstract

Developing software based on services is one of the most emerging programming paradigms in software development. Service-based software development relies on the composition of services (i.e., pieces of code already built and deployed in the cloud) through orchestrated API calls. Black-box reuse can play a prominent role when using this programming paradigm, in the sense that identifying and reusing already existing/deployed services can save substantial development effort. According to the literature, identifying reusable assets (i.e., components, classes, or services) is more successful and efficient when the discovery process is domain-specific. To facilitate domain-specific service discovery, we propose a service classification approach that can categorize services to an application domain, given only the service description. To validate the accuracy of our classification approach, we have trained a machine-learning model on thousands of open-source services and tested it on 67 services developed within two companies employing service-based software development. The study results suggest that the classification algorithm can perform adequately in a test set that does not overlap with the training set; thus, being (with some confidence) transferable to other industrial cases. Additionally, we expand the body of knowledge on software categorization by highlighting sets of domains that consist ‘grey-zones’ in service classification.
通过机器学习进行服务分类:帮助在云应用程序开发中有效识别可重用资产
基于服务开发软件是软件开发中最新兴的编程范式之一。基于服务的软件开发依赖于通过编排API调用的服务组合(即,已经构建并部署在云中的代码片段)。在使用这种编程范例时,黑盒重用可以发挥重要作用,因为识别和重用已经存在/部署的服务可以节省大量的开发工作。根据文献,当发现过程特定于领域时,识别可重用资产(即组件、类或服务)更加成功和有效。为了促进特定于领域的服务发现,我们提出了一种服务分类方法,该方法可以仅给定服务描述就对应用程序领域的服务进行分类。为了验证我们的分类方法的准确性,我们在数千个开源服务上训练了一个机器学习模型,并在使用基于服务的软件开发的两家公司开发的67个服务上进行了测试。研究结果表明,该分类算法在不与训练集重叠的测试集上表现良好;因此,(有一些信心)可以转移到其他工业案例中。此外,我们通过突出显示服务分类中包含“灰色地带”的领域集,扩展了软件分类的知识体系。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
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学术官方微信