Commit-defect and architectural metrics-based quality assessment of C language

Devansh Tiwari, Hironori Washizaki, Yoshiaki Fukazawa, Tomoyuki Fukuoka, Junji Tamaki, Nobuhiro Hosotani, Munetaka Kohama, Yann Gael Gueheneuc, Foutse Khomh

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

The foundation of any software system is its design and architecture. Maintaining and improving the architecture and design as systems grow are difficult tasks. Many studies on the architecture and design of object-oriented systems exist but only few studies pertain to the architecture and design of procedural systems. Herein we study the quality of systems for the C language, and investigate how dependencies and associated metrics among files, functions, and modules are related to defects. We also investigate whether a set of static, dependency, and social-network metrics are related to problems in the architecture. Additionally, we examine the bug fixing commits from the commit history and the relations among bug-fixing commits and metrics. Thirteen open source systems from trending GitHub projects are used for study. We found that files with a high number of bug fixing commits are correlated to higher cycles and centrality, indicating that key files of the architecture in C systems are the same files causing issues in the development process. We identify some version releases having huge impact on architecture and files which could be considered at high risk and need more attention.

Original languageEnglish
Title of host publicationENASE 2020 - Proceedings of the 15th International Conference on Evaluation of Novel Approaches to Software Engineering
EditorsRaian Ali, Hermann Kaindl, Leszek Maciaszek, Leszek Maciaszek
PublisherSciTePress
Pages579-586
Number of pages8
ISBN (Electronic)9789897584213
Publication statusPublished - 2020
Event15th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2020 - Virtual, Online
Duration: 2020 May 52020 May 6

Publication series

NameENASE 2020 - Proceedings of the 15th International Conference on Evaluation of Novel Approaches to Software Engineering

Conference

Conference15th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2020
CityVirtual, Online
Period20/5/520/5/6

Keywords

  • C Language
  • Code Smells
  • Commit History
  • Defect Prediction
  • Dependency Graph
  • Software Architecture
  • Software Metric Analysis

ASJC Scopus subject areas

  • Computer Science Applications
  • Software

Fingerprint Dive into the research topics of 'Commit-defect and architectural metrics-based quality assessment of C language'. Together they form a unique fingerprint.

Cite this