Metrics driven architectural analysis using dependency graphs for C language projects, accepted for COMPSAC 2019 short paper (CORE Rank B)

Devansh Tiwari, Hironori Washizaki, Yoshiaki Fukazawa, Tomoyuki Fukuoka, Junji Tamaki, Nobuhiro Hosotani and Munetaka Kohama, “Metrics driven architectural analysis using dependency graphs for C language projects,” 43rd IEEE Computer Society Signature Conference on Computers, Software and Applications (COMPSAC 2019), short paper, Hosted by Marquette University, Milwaukee, Wisconsin, USA, July 15-19, 2019. (CORE Rank B)

The highest share of cost for a software product is software maintenance. Hence, it is crucial to determine whether a product will succeed or fail. Identifying the quality merit of the software architecture is extremely vital as the quality merit directly relates to software maintenance. A good design always exhibits good quality characteristics because they are due to the software architecture. Although C language is a major language in the software industry, few studies investigate the quality of the architecture in C language. This study aims to evaluate the quality of C language projects in a quantifiable form by focusing on dependency graphs, associated metrics, and software architecture. In particular, this study (i) formulates the architecture of C projects, (ii) determines the metrics capturing the quality of architecture, (iii) defines code smell and metrics relations and (iv) conducts an empirical analysis on 58 C projects. We show which metrics derived from dependency graphs can detect architectural issues and verify their relation to software architecture quality.