Multilevel Readability Interpretation Against Software Properties: A Data-Centric Approach

被引:1
|
作者
Karanikiotis, Thomas [1 ]
Papamichail, Michail D. [1 ]
Symeonidis, Andreas L. [1 ]
机构
[1] Aristotle Univ Thessaloniki, Elect & Comp Engn Dept, Informat Proc Lab, Intelligent Syst & Software Engn Labgrp, Thessaloniki, Greece
来源
关键词
Developer-perceived readability; Readability interpretation; Size-based clustering; Support vector regression; SUPPORT;
D O I
10.1007/978-3-030-83007-6_10
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Given the wide adoption of the agile software development paradigm, where efficient collaboration as well as effective maintenance are of utmost importance, the need to produce readable source code is evident. To that end, several research efforts aspire to assess the extent to which a software component is readable. Several metrics and evaluation criteria have been proposed; however, they are mostly empirical or rely on experts who are responsible for determining the ground truth and/or set custom thresholds, leading to results that are context-dependent and subjective. In this work, we employ a large set of static analysis metrics along with various coding violations towards interpreting readability as perceived by developers. Unlike already existing approaches, we refrain from using experts and we provide a fully automated and extendible methodology built upon data residing in online code hosting facilities. We perform static analysis at two levels (method and class) and construct a benchmark dataset that includes more than one million methods and classes covering diverse development scenarios. After performing clustering based on source code size, we employ Support Vector Regression in order to interpret the extent to which a software component is readable against the source code properties: cohesion, inheritance, complexity, coupling, and documentation. The evaluation of our methodology indicates that our models effectively interpret readability as perceived by developers against the above mentioned source code properties.
引用
收藏
页码:203 / 226
页数:24
相关论文
共 50 条
  • [1] Software Technologies in the Data-centric Era
    Kihara S.
    Tanaka H.
    NTT Technical Review, 2022, 20 (04): : 10 - 13
  • [2] A Data-Centric Approach to Synchronization
    Dolby, Julian
    Hammer, Christian
    Marino, Daniel
    Tip, Frank
    Vaziri, Mandana
    Vitek, Jan
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2012, 34 (01):
  • [3] A Data-Centric Study of Software Tutorial Design
    Arya, Deeksha M.
    Nassif, Mathieu
    Robillard, Martin P.
    IEEE SOFTWARE, 2022, 39 (03) : 106 - 115
  • [4] A Data-Centric Approach to Loss Mechanisms
    Senior, Alistair C.
    Miller, Robert J.
    JOURNAL OF TURBOMACHINERY-TRANSACTIONS OF THE ASME, 2024, 146 (04):
  • [5] A Data-Centric Approach to Change Management
    Nwokeji, Joshua Chibuike
    Clark, Tony
    Barn, Balbir
    Kulkarni, Vinay
    Anum, Sheena O.
    PROCEEDINGS OF THE 2015 IEEE 19TH INTERNATIONAL ENTERPRISE DISTRIBUTED OBJECT COMPUTING CONFERENCE, 2015, : 185 - 190
  • [6] A DATA-CENTRIC APPROACH TO LOSS MECHANISMS
    Senior, Alistair C.
    Miller, Robert J.
    PROCEEDINGS OF ASME TURBO EXPO 2023: TURBOMACHINERY TECHNICAL CONFERENCE AND EXPOSITION, GT2023, VOL 13A, 2023,
  • [7] A data-centric approach to composing embedded, real-time software components
    Wuyts, R
    Ducasse, S
    Nierstrasz, O
    JOURNAL OF SYSTEMS AND SOFTWARE, 2005, 74 (01) : 25 - 34
  • [8] A data-centric approach to distributed tracing
    Popa, Nicolae Marian
    Oprescu, Ana
    11TH IEEE INTERNATIONAL CONFERENCE ON CLOUD COMPUTING TECHNOLOGY AND SCIENCE (CLOUDCOM 2019), 2019, : 209 - 216
  • [9] Toward data-centric software architecture for automotive systems - Embedded data stream processing approach -
    Nakamoto, Yukikazu
    Yamaguchi, Akihiro
    Sato, Kenya
    Honda, Shinya
    Takada, Hiroaki
    2014 IEEE 11TH INTL CONF ON UBIQUITOUS INTELLIGENCE AND COMPUTING AND 2014 IEEE 11TH INTL CONF ON AUTONOMIC AND TRUSTED COMPUTING AND 2014 IEEE 14TH INTL CONF ON SCALABLE COMPUTING AND COMMUNICATIONS AND ITS ASSOCIATED WORKSHOPS, 2014, : 586 - 589
  • [10] Fused data-centric visualizations for software evolution environments
    Jahnke, JH
    Müller, HA
    Walenstein, A
    Mansurov, N
    Wong, K
    10TH INTERNATIONAL WORKSHOP ON PROGRAM COMPREHENSION, PROCEEDINGS, 2002, : 187 - 196