• 文献检索
  • 文档翻译
  • 深度研究
  • 学术资讯
  • 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分钟生成高质量综述,智能提取关键信息,辅助科研写作。

立即免费体验

用于软件质量改进的重构分类模型。

A refactoring categorization model for software quality improvement.

机构信息

Faculty of Computer Science and Information Technology, Universiti Tun Hussein Onn Malaysia, Parit Raja, Johor, Malaysia.

School of Computing, Universiti Utara Malaysia, Sintok, Malaysia.

出版信息

PLoS One. 2023 Nov 2;18(11):e0293742. doi: 10.1371/journal.pone.0293742. eCollection 2023.

DOI:10.1371/journal.pone.0293742
PMID:37917752
原文链接:https://pmc.ncbi.nlm.nih.gov/articles/PMC10621946/
Abstract

Refactoring, a widely adopted technique, has proven effective in facilitating and reducing maintenance activities and costs. Nonetheless, the effects of applying refactoring techniques on software quality exhibit inconsistencies and contradictions, leading to conflicting evidence on their overall benefit. Consequently, software developers face challenges in leveraging these techniques to improve software quality. Moreover, the absence of a categorization model hampers developers' ability to decide the most suitable refactoring techniques for improving software quality, considering specific design goals. Thus, this study aims to propose a novel refactoring categorization model that categorizes techniques based on their measurable impacts on internal quality attributes. Initially, the most common refactoring techniques used by software practitioners were identified. Subsequently, an experimental study was conducted using five case studies to measure the impacts of refactoring techniques on internal quality attributes. A subsequent multi-case analysis was conducted to analyze these effects across the case studies. The proposed model was developed based on the experimental study results and the subsequent multi-case analysis. The model categorizes refactoring techniques into green, yellow, and red categories. The proposed model, by acting as a guideline, assists developers in understanding the effects of each refactoring technique on quality attributes, allowing them to select appropriate techniques to improve specific quality attributes. Compared to existing studies, the proposed model emerges superior by offering a more granular categorization (green, yellow, and red categories), and its range is wide (including ten refactoring techniques and eleven internal quality attributes). Such granularity not only equips developers with an in-depth understanding of each technique's impact but also fosters informed decision-making. In addition, the proposed model outperforms current studies and offers a more nuanced understanding, explicitly highlighting areas of strength and concern for each refactoring technique. This enhancement aids developers in better grasping the implications of each refactoring technique on quality attributes. As a result, the model simplifies the decision-making process for developers, saving time and effort that would otherwise be spent weighing the benefits and drawbacks of various refactoring techniques. Furthermore, it has the potential to help reduce maintenance activities and associated costs.

摘要

重构是一种被广泛采用的技术,已被证明可以有效地促进和减少维护活动和成本。然而,应用重构技术对软件质量的影响并不一致,存在矛盾,导致对其整体效益的证据相互冲突。因此,软件开发人员在利用这些技术来提高软件质量方面面临挑战。此外,由于缺乏分类模型,开发人员无法根据特定的设计目标,决定最适合提高软件质量的重构技术。因此,本研究旨在提出一种新的重构分类模型,该模型根据重构技术对内部质量属性的可衡量影响对技术进行分类。首先,确定了软件从业者最常用的重构技术。随后,使用五个案例研究进行了实验研究,以衡量重构技术对内部质量属性的影响。随后进行了多案例分析,以分析这些影响在案例研究中的情况。该模型是基于实验研究结果和随后的多案例分析开发的。该模型将重构技术分为绿色、黄色和红色三类。该模型通过充当指南,帮助开发人员了解每个重构技术对质量属性的影响,从而允许他们选择适当的技术来改进特定的质量属性。与现有研究相比,该模型具有优越性,提供了更细粒度的分类(绿色、黄色和红色三类),范围更广(包括十种重构技术和十一种内部质量属性)。这种粒度不仅使开发人员深入了解每个技术的影响,还有助于做出明智的决策。此外,该模型优于当前研究,提供了更细致的理解,明确突出了每种重构技术的优势和关注点。这种增强有助于开发人员更好地理解每个重构技术对质量属性的影响。因此,该模型简化了开发人员的决策过程,节省了在权衡各种重构技术的优缺点时所花费的时间和精力。此外,它还有助于减少维护活动和相关成本。

https://cdn.ncbi.nlm.nih.gov/pmc/blobs/432c/10621946/719445fc23cd/pone.0293742.g002.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/432c/10621946/3dd369a624cf/pone.0293742.g001.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/432c/10621946/719445fc23cd/pone.0293742.g002.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/432c/10621946/3dd369a624cf/pone.0293742.g001.jpg
https://cdn.ncbi.nlm.nih.gov/pmc/blobs/432c/10621946/719445fc23cd/pone.0293742.g002.jpg

相似文献

1
A refactoring categorization model for software quality improvement.用于软件质量改进的重构分类模型。
PLoS One. 2023 Nov 2;18(11):e0293742. doi: 10.1371/journal.pone.0293742. eCollection 2023.
2
Visualizing software refactoring using radar charts.使用雷达图可视化软件重构。
Sci Rep. 2023 Nov 9;13(1):19530. doi: 10.1038/s41598-023-44281-6.
3
The future of Cochrane Neonatal.考克兰新生儿协作网的未来。
Early Hum Dev. 2020 Nov;150:105191. doi: 10.1016/j.earlhumdev.2020.105191. Epub 2020 Sep 12.
4
Detecting refactoring type of software commit messages based on ensemble machine learning algorithms.基于集成机器学习算法检测软件提交消息的重构类型。
Sci Rep. 2024 Sep 12;14(1):21367. doi: 10.1038/s41598-024-72307-0.
5
The Effectiveness of Integrated Care Pathways for Adults and Children in Health Care Settings: A Systematic Review.综合护理路径在医疗环境中对成人和儿童的有效性:一项系统评价。
JBI Libr Syst Rev. 2009;7(3):80-129. doi: 10.11124/01938924-200907030-00001.
6
A usability design checklist for Mobile electronic data capturing forms: the validation process.移动电子数据采集表单的可用性设计检查表:验证过程。
BMC Med Inform Decis Mak. 2019 Jan 9;19(1):4. doi: 10.1186/s12911-018-0718-3.
7
Rubbing salt in the wound? A large-scale investigation into the effects of refactoring on security.往伤口上撒盐?对重构对安全性影响的大规模调查。
Empir Softw Eng. 2023;28(4):89. doi: 10.1007/s10664-023-10287-x. Epub 2023 May 24.
8
Using social media and personality traits to assess software developers' emotional polarity.利用社交媒体和人格特质评估软件开发人员的情绪极性。
PeerJ Comput Sci. 2023 Sep 27;9:e1498. doi: 10.7717/peerj-cs.1498. eCollection 2023.
9
Decision aids for people facing health treatment or screening decisions.为面临健康治疗或筛查决策的人群提供的决策辅助工具。
Cochrane Database Syst Rev. 2014 Jan 28(1):CD001431. doi: 10.1002/14651858.CD001431.pub4.
10
Code smells analysis for android applications and a solution for less battery consumption.安卓应用的代码异味分析及降低电池消耗的解决方案。
Sci Rep. 2024 Jul 26;14(1):17683. doi: 10.1038/s41598-024-67660-z.