Code beauty is in the eye of the beholder: Exploring the relation between code beauty and quality

IF 3.7 2区 计算机科学 Q1 COMPUTER SCIENCE, SOFTWARE ENGINEERING
Theodoros Maikantis , Ilianna Natsiou , Christina Volioti , Elvira-Maria Arvanitou , Apostolos Ampatzoglou , Nikolaos Mittas , Alexander Chatzigeorgiou , Stelios Xinogalos
{"title":"Code beauty is in the eye of the beholder: Exploring the relation between code beauty and quality","authors":"Theodoros Maikantis ,&nbsp;Ilianna Natsiou ,&nbsp;Christina Volioti ,&nbsp;Elvira-Maria Arvanitou ,&nbsp;Apostolos Ampatzoglou ,&nbsp;Nikolaos Mittas ,&nbsp;Alexander Chatzigeorgiou ,&nbsp;Stelios Xinogalos","doi":"10.1016/j.jss.2025.112494","DOIUrl":null,"url":null,"abstract":"<div><div>Software artifacts and source code are often viewed as pure technical constructs aiming primarily at delivering specific functionality to the end users. However, almost each line of a computer program is the result of software engineer’s craftsmanship and thus reflects their skills and capabilities, but also their aesthetic view of how code should be written. Additionally, by nature, the code is not an artifact that is managed by a single person: the code is peer-reviewed, in some cases programmed in pairs, or maintained by different people. In this respect, the first impression for the quality of a code is usually a matter of “<em>reading</em>” the “<em>beauty</em>” of the code and then diving into the details of the actual implementation. This “<em>first-look</em>” impression can psychologically bias the software engineers, either positively or negatively and affect their evaluation. In this article we propose a novel code beauty model (accompanied with metrics) and empirically explore: (a) if different software engineers perceive code beauty in the same way; (b) if the proposed code beauty metrics are correlated to the perceived code beauty by individual software engineers; and (c) if code beauty metrics are correlated to software maintainability. The results of the study suggest: (a) that code beauty is highly subjective and different software engineers perceive a code chunk as beautiful or not in an inconsistent way; (b) that some code beauty metrics can be considered as correlated to maintainability; and therefore, the “<em>first-look</em>” impression might to some extent be representative of the quality of the reviewed code chunk.</div></div>","PeriodicalId":51099,"journal":{"name":"Journal of Systems and Software","volume":"229 ","pages":"Article 112494"},"PeriodicalIF":3.7000,"publicationDate":"2025-05-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of Systems and Software","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0164121225001621","RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0

Abstract

Software artifacts and source code are often viewed as pure technical constructs aiming primarily at delivering specific functionality to the end users. However, almost each line of a computer program is the result of software engineer’s craftsmanship and thus reflects their skills and capabilities, but also their aesthetic view of how code should be written. Additionally, by nature, the code is not an artifact that is managed by a single person: the code is peer-reviewed, in some cases programmed in pairs, or maintained by different people. In this respect, the first impression for the quality of a code is usually a matter of “reading” the “beauty” of the code and then diving into the details of the actual implementation. This “first-look” impression can psychologically bias the software engineers, either positively or negatively and affect their evaluation. In this article we propose a novel code beauty model (accompanied with metrics) and empirically explore: (a) if different software engineers perceive code beauty in the same way; (b) if the proposed code beauty metrics are correlated to the perceived code beauty by individual software engineers; and (c) if code beauty metrics are correlated to software maintainability. The results of the study suggest: (a) that code beauty is highly subjective and different software engineers perceive a code chunk as beautiful or not in an inconsistent way; (b) that some code beauty metrics can be considered as correlated to maintainability; and therefore, the “first-look” impression might to some extent be representative of the quality of the reviewed code chunk.
代码美在旁观者的眼中:探讨代码美与质量的关系
软件工件和源代码通常被视为纯粹的技术结构,主要目的是向最终用户交付特定的功能。然而,几乎计算机程序的每一行都是软件工程师手艺的结果,因此反映了他们的技能和能力,也反映了他们对如何编写代码的审美观。此外,从本质上讲,代码不是由单个人管理的工件:代码是同行评审的,在某些情况下是成对编程的,或者由不同的人维护。在这方面,对代码质量的第一印象通常是“阅读”代码的“美”,然后深入到实际实现的细节中。这种“第一印象”会在心理上对软件工程师产生偏见,或积极或消极地影响他们的评价。在本文中,我们提出了一个新的代码美模型(伴随着度量),并进行了实证探索:(a)如果不同的软件工程师以相同的方式感知代码美;(b)建议的代码美观度量是否与单个软件工程师感知到的代码美观相关;(c)代码美观度量是否与软件可维护性相关。研究结果表明:(a)代码美是高度主观的,不同的软件工程师以不一致的方式感知代码块的美或不美;(b)一些代码美观指标可以被认为与可维护性相关;因此,“第一印象”可能在某种程度上代表了审查代码块的质量。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
Journal of Systems and Software
Journal of Systems and Software 工程技术-计算机:理论方法
CiteScore
8.60
自引率
5.70%
发文量
193
审稿时长
16 weeks
期刊介绍: The Journal of Systems and Software publishes papers covering all aspects of software engineering and related hardware-software-systems issues. All articles should include a validation of the idea presented, e.g. through case studies, experiments, or systematic comparisons with other approaches already in practice. Topics of interest include, but are not limited to: •Methods and tools for, and empirical studies on, software requirements, design, architecture, verification and validation, maintenance and evolution •Agile, model-driven, service-oriented, open source and global software development •Approaches for mobile, multiprocessing, real-time, distributed, cloud-based, dependable and virtualized systems •Human factors and management concerns of software development •Data management and big data issues of software systems •Metrics and evaluation, data mining of software development resources •Business and economic aspects of software development processes The journal welcomes state-of-the-art surveys and reports of practical experience for all of these topics.
×
引用
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学术官方微信