Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
A tertiary study on links between source code metrics and external quality attributes
Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.ORCID iD: 0000-0003-3177-6138
Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.ORCID iD: 0000-0001-7266-5632
Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.ORCID iD: 0000-0003-0639-4234
Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.ORCID iD: 0000-0002-8132-0107
2024 (English)In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 165, article id 107348Article, review/survey (Refereed) Published
Abstract [en]

Context: Several secondary studies have investigated the relationship between internal quality attributes, source code metrics and external quality attributes. Sometimes they have contradictory results. Objective: We synthesize evidence of the link between internal quality attributes, source code metrics and external quality attributes along with the efficacy of the prediction models used. Method: We conducted a tertiary review to identify, evaluate and synthesize secondary studies. We used several characteristics of secondary studies as indicators for the strength of evidence and considered them when synthesizing the results. Results: From 711 secondary studies, we identified 15 secondary studies that have investigated the link between source code and external quality. Our results show : (1) primarily, the focus has been on object-oriented systems, (2) maintainability and reliability are most often linked to internal quality attributes and source code metrics, with only one secondary study reporting evidence for security, (3) only a small set of complexity, coupling, and size-related source code metrics report a consistent positive link with maintainability and reliability, and (4) group method of data handling (GMDH) based prediction models have performed better than other prediction models for maintainability prediction. Conclusions: Based on our results, lines of code, coupling, complexity and the cohesion metrics from Chidamber & Kemerer (CK) metrics are good indicators of maintainability with consistent evidence from high and moderate-quality secondary studies. Similarly, four CK metrics related to coupling, complexity and cohesion are good indicators of reliability, while inheritance and certain cohesion metrics show no consistent evidence of links to maintainability and reliability. Further empirical studies are needed to explore the link between internal quality attributes, source code metrics and other external quality attributes, including functionality, portability, and usability. The results will help researchers and practitioners understand the body of knowledge on the subject and identify future research directions. © 2023 The Author(s)

Place, publisher, year, edition, pages
Elsevier, 2024. Vol. 165, article id 107348
Keywords [en]
Code quality, Evidence, Product quality, Quality models, Tertiary review, Tertiary study, Codes (symbols), Computer programming languages, Data handling, Forecasting, Object oriented programming, Reliability, External quality, Internal quality, Products quality, Quality attributes, Quality modeling, Source code metrics, Maintainability
National Category
Software Engineering
Identifiers
URN: urn:nbn:se:bth-25555DOI: 10.1016/j.infsof.2023.107348ISI: 001102357100001Scopus ID: 2-s2.0-85174715019OAI: oai:DiVA.org:bth-25555DiVA, id: diva2:1809779
Part of project
OSIR- Open Source Inspired Reuse, Knowledge Foundation
Funder
ELLIIT - The Linköping‐Lund Initiative on IT and Mobile CommunicationsKnowledge Foundation, 20190081Available from: 2023-11-06 Created: 2023-11-06 Last updated: 2024-03-13Bibliographically approved
In thesis
1. Towards Measuring & Improving Source Code Quality
Open this publication in new window or tab >>Towards Measuring & Improving Source Code Quality
2024 (English)Licentiate thesis, comprehensive summary (Other academic)
Abstract [en]

Context: Software quality has a multi-faceted description encompassing several quality attributes. Central to our efforts to enhance software quality is to improve the quality of the source code. Poor source code quality impacts the quality of the delivered product. Empirical studies have investigated how to improve source code quality and how to quantify the source code improvement. However, the reported evidence linking internal code structure information and quality attributes observed by users is varied and, at times, conflicting. Furthermore, there is a further need for research to improve source code quality by understanding trends in feedback from code review comments.

Objective: This thesis contributes towards improving source code quality and synthesizes metrics to measure improvement in source code quality. Hence, our objectives are 1) To synthesize evidence of links between source code metrics and external quality attributes, & identify source code metrics, and 2) To identify areas to improve source code quality by identifying recurring code quality issues using the analysis of code review comments.

Method: We conducted a tertiary study to achieve the first objective, an archival analysis and a case study to investigate the latter two objectives.

Results: To quantify source code quality improvement, we reported a comprehensive catalog of source code metrics and a small set of source code metrics consistently linked with maintainability, reliability, and security. To improve source code quality using analysis of code review comments, our explored methodology improves the state-of-the-art with interesting results.

Conclusions: The thesis provides a promising way to analyze themes in code review comments. Researchers can use the source code metrics provided to estimate these quality attributes reliably. In future work, we aim to derive a software improvement checklist based on the analysis of trends in code review comments.

Place, publisher, year, edition, pages
Karlskrona: Blekinge Tekniska Högskola, 2024. p. 169
Series
Blekinge Institute of Technology Licentiate Dissertation Series, ISSN 1650-2140 ; 2024:02
Keywords
Source code quality, Code review analysis, Software quality improvement
National Category
Computer Systems
Research subject
Software Engineering
Identifiers
urn:nbn:se:bth-25608 (URN)978-91-7295-474-8 (ISBN)
Presentation
2024-04-12, J1630, Karlskrona, 10:15 (English)
Opponent
Supervisors
Funder
ELLIIT - The Linköping‐Lund Initiative on IT and Mobile Communications
Available from: 2024-03-13 Created: 2024-03-13 Last updated: 2024-03-21Bibliographically approved

Open Access in DiVA

fulltext(1104 kB)83 downloads
File information
File name FULLTEXT01.pdfFile size 1104 kBChecksum SHA-512
1f6833f66f262aeaa6186bc639bd6d199ff9df5efb37791ea56630fdcbd4a96131df9a70c00b80e44cf3611e0131245ff12a1b344ae4f2d39a0606dc735409af
Type fulltextMimetype application/pdf

Other links

Publisher's full textScopus

Authority records

Iftikhar, UmarAli, Nauman binBörstler, JürgenUsman, Muhammad

Search in DiVA

By author/editor
Iftikhar, UmarAli, Nauman binBörstler, JürgenUsman, Muhammad
By organisation
Department of Software Engineering
In the same journal
Information and Software Technology
Software Engineering

Search outside of DiVA

GoogleGoogle Scholar
Total: 83 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 252 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf