Many-Objective Optimization of Non-Functional Attributes based on Refactoring of Software Models

V. Cortellessa, Daniele Di Pompeo, Vincenzo Stoico, Michele Tucci
{"title":"Many-Objective Optimization of Non-Functional Attributes based on Refactoring of Software Models","authors":"V. Cortellessa, Daniele Di Pompeo, Vincenzo Stoico, Michele Tucci","doi":"10.48550/arXiv.2301.09531","DOIUrl":null,"url":null,"abstract":"Software quality estimation is a challenging and time-consuming activity, and models are crucial to face the complexity of such activity on modern software applications. In this context, software refactoring is a crucial activity within development life-cycles where requirements and functionalities rapidly evolve. One main challenge is that the improvement of distinctive quality attributes may require contrasting refactoring actions on software, as for trade-off between performance and reliability (or other non-functional attributes). In such cases, multi-objective optimization can provide the designer with a wider view on these trade-offs and, consequently, can lead to identify suitable refactoring actions that take into account independent or even competing objectives. In this paper, we present an approach that exploits NSGA-II as the genetic algorithm to search optimal Pareto frontiers for software refactoring while considering many objectives. We consider performance and reliability variations of a model alternative with respect to an initial model, the amount of performance antipatterns detected on the model alternative, and the architectural distance, which quantifies the effort to obtain a model alternative from the initial one. We applied our approach on two case studies: a Train Ticket Booking Service, and CoCoME. We observed that our approach is able to improve performance (by up to 42\\%) while preserving or even improving the reliability (by up to 32\\%) of generated model alternatives. We also observed that there exists an order of preference of refactoring actions among model alternatives. We can state that performance antipatterns confirmed their ability to improve performance of a subject model in the context of many-objective optimization. In addition, the metric that we adopted for the architectural distance seems to be suitable for estimating the refactoring effort.","PeriodicalId":133352,"journal":{"name":"Inf. Softw. Technol.","volume":"16 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Inf. Softw. Technol.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.48550/arXiv.2301.09531","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4

Abstract

Software quality estimation is a challenging and time-consuming activity, and models are crucial to face the complexity of such activity on modern software applications. In this context, software refactoring is a crucial activity within development life-cycles where requirements and functionalities rapidly evolve. One main challenge is that the improvement of distinctive quality attributes may require contrasting refactoring actions on software, as for trade-off between performance and reliability (or other non-functional attributes). In such cases, multi-objective optimization can provide the designer with a wider view on these trade-offs and, consequently, can lead to identify suitable refactoring actions that take into account independent or even competing objectives. In this paper, we present an approach that exploits NSGA-II as the genetic algorithm to search optimal Pareto frontiers for software refactoring while considering many objectives. We consider performance and reliability variations of a model alternative with respect to an initial model, the amount of performance antipatterns detected on the model alternative, and the architectural distance, which quantifies the effort to obtain a model alternative from the initial one. We applied our approach on two case studies: a Train Ticket Booking Service, and CoCoME. We observed that our approach is able to improve performance (by up to 42\%) while preserving or even improving the reliability (by up to 32\%) of generated model alternatives. We also observed that there exists an order of preference of refactoring actions among model alternatives. We can state that performance antipatterns confirmed their ability to improve performance of a subject model in the context of many-objective optimization. In addition, the metric that we adopted for the architectural distance seems to be suitable for estimating the refactoring effort.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
基于软件模型重构的非功能属性多目标优化
软件质量评估是一项具有挑战性且耗时的活动,而模型对于面对现代软件应用程序中此类活动的复杂性至关重要。在这种情况下,软件重构是需求和功能快速发展的开发生命周期中的关键活动。一个主要的挑战是,不同质量属性的改进可能需要对软件进行不同的重构操作,比如在性能和可靠性(或其他非功能属性)之间进行权衡。在这种情况下,多目标优化可以为设计人员提供一个更广泛的视角来看待这些权衡,因此,可以确定适当的重构操作,考虑到独立甚至竞争的目标。在本文中,我们提出了一种利用NSGA-II作为遗传算法来搜索软件重构的最优Pareto边界的方法,同时考虑了许多目标。我们考虑与初始模型相关的模型替代的性能和可靠性变化,在模型替代上检测到的性能反模式的数量,以及体系结构距离,它量化了从初始模型替代中获得模型替代的努力。我们在两个案例研究中应用了我们的方法:火车票预订服务和CoCoME。我们观察到,我们的方法能够提高性能(高达42%),同时保留甚至提高生成的模型替代方案的可靠性(高达32%)。我们还观察到,在模型备选方案中存在重构行为的优先顺序。我们可以说,性能反模式证实了它们在多目标优化上下文中提高主题模型性能的能力。此外,我们采用的体系结构距离度量似乎适合于估计重构工作。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Robustness assessment of hyperspectral image CNNs using metamorphic testing Towards accurate recommendations of merge conflicts resolution strategies Characteristics and generative mechanisms of software development productivity distributions Can An Old Fashioned Feature Extraction and A Light-weight Model Improve Vulnerability Type Identification Performance? Learning Test-Mutant Relationship for Accurate Fault Localisation
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1