Metrics driven architectural analysis using dependency graphs for C language projects

Devansh Tiwari, Hironori Washizaki, Yoshiaki Fukazawa, Tomoyuki Fukuoka, Junji Tamaki, Nobuhiro Hosotani, Munetaka Kohama

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

Abstract

The highest share of cost for a software product is software maintenance. Identifying the quality merit of the software architecture is extremely vital as the quality directly relates to software maintenance. A good design always exhibits good quality characteristics because it is directly related to good 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 representation 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.

Original languageEnglish
Title of host publicationProceedings - 2019 IEEE 43rd Annual Computer Software and Applications Conference, COMPSAC 2019
EditorsVladimir Getov, Jean-Luc Gaudiot, Nariyoshi Yamai, Stelvio Cimato, Morris Chang, Yuuichi Teranishi, Ji-Jiang Yang, Hong Va Leong, Hossian Shahriar, Michiharu Takemoto, Dave Towey, Hiroki Takakura, Atilla Elci, Susumu Takeuchi, Satish Puri
PublisherIEEE Computer Society
Pages117-122
Number of pages6
ISBN (Electronic)9781728126074
DOIs
Publication statusPublished - 2019 Jul
Event43rd IEEE Annual Computer Software and Applications Conference, COMPSAC 2019 - Milwaukee, United States
Duration: 2019 Jul 152019 Jul 19

Publication series

NameProceedings - International Computer Software and Applications Conference
Volume1
ISSN (Print)0730-3157

Conference

Conference43rd IEEE Annual Computer Software and Applications Conference, COMPSAC 2019
CountryUnited States
CityMilwaukee
Period19/7/1519/7/19

Fingerprint

Software architecture
Computer software maintenance
Costs
Industry

Keywords

  • C language
  • Code smells
  • Dependency graphs
  • Software architecture
  • Software metrics analysis

ASJC Scopus subject areas

  • Software
  • Computer Science Applications

Cite this

Tiwari, D., Washizaki, H., Fukazawa, Y., Fukuoka, T., Tamaki, J., Hosotani, N., & Kohama, M. (2019). Metrics driven architectural analysis using dependency graphs for C language projects. In V. Getov, J-L. Gaudiot, N. Yamai, S. Cimato, M. Chang, Y. Teranishi, J-J. Yang, H. V. Leong, H. Shahriar, M. Takemoto, D. Towey, H. Takakura, A. Elci, S. Takeuchi, ... S. Puri (Eds.), Proceedings - 2019 IEEE 43rd Annual Computer Software and Applications Conference, COMPSAC 2019 (pp. 117-122). [8754186] (Proceedings - International Computer Software and Applications Conference; Vol. 1). IEEE Computer Society. https://doi.org/10.1109/COMPSAC.2019.00025

Metrics driven architectural analysis using dependency graphs for C language projects. / Tiwari, Devansh; Washizaki, Hironori; Fukazawa, Yoshiaki; Fukuoka, Tomoyuki; Tamaki, Junji; Hosotani, Nobuhiro; Kohama, Munetaka.

Proceedings - 2019 IEEE 43rd Annual Computer Software and Applications Conference, COMPSAC 2019. ed. / Vladimir Getov; Jean-Luc Gaudiot; Nariyoshi Yamai; Stelvio Cimato; Morris Chang; Yuuichi Teranishi; Ji-Jiang Yang; Hong Va Leong; Hossian Shahriar; Michiharu Takemoto; Dave Towey; Hiroki Takakura; Atilla Elci; Susumu Takeuchi; Satish Puri. IEEE Computer Society, 2019. p. 117-122 8754186 (Proceedings - International Computer Software and Applications Conference; Vol. 1).

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

Tiwari, D, Washizaki, H, Fukazawa, Y, Fukuoka, T, Tamaki, J, Hosotani, N & Kohama, M 2019, Metrics driven architectural analysis using dependency graphs for C language projects. in V Getov, J-L Gaudiot, N Yamai, S Cimato, M Chang, Y Teranishi, J-J Yang, HV Leong, H Shahriar, M Takemoto, D Towey, H Takakura, A Elci, S Takeuchi & S Puri (eds), Proceedings - 2019 IEEE 43rd Annual Computer Software and Applications Conference, COMPSAC 2019., 8754186, Proceedings - International Computer Software and Applications Conference, vol. 1, IEEE Computer Society, pp. 117-122, 43rd IEEE Annual Computer Software and Applications Conference, COMPSAC 2019, Milwaukee, United States, 19/7/15. https://doi.org/10.1109/COMPSAC.2019.00025
Tiwari D, Washizaki H, Fukazawa Y, Fukuoka T, Tamaki J, Hosotani N et al. Metrics driven architectural analysis using dependency graphs for C language projects. In Getov V, Gaudiot J-L, Yamai N, Cimato S, Chang M, Teranishi Y, Yang J-J, Leong HV, Shahriar H, Takemoto M, Towey D, Takakura H, Elci A, Takeuchi S, Puri S, editors, Proceedings - 2019 IEEE 43rd Annual Computer Software and Applications Conference, COMPSAC 2019. IEEE Computer Society. 2019. p. 117-122. 8754186. (Proceedings - International Computer Software and Applications Conference). https://doi.org/10.1109/COMPSAC.2019.00025
Tiwari, Devansh ; Washizaki, Hironori ; Fukazawa, Yoshiaki ; Fukuoka, Tomoyuki ; Tamaki, Junji ; Hosotani, Nobuhiro ; Kohama, Munetaka. / Metrics driven architectural analysis using dependency graphs for C language projects. Proceedings - 2019 IEEE 43rd Annual Computer Software and Applications Conference, COMPSAC 2019. editor / Vladimir Getov ; Jean-Luc Gaudiot ; Nariyoshi Yamai ; Stelvio Cimato ; Morris Chang ; Yuuichi Teranishi ; Ji-Jiang Yang ; Hong Va Leong ; Hossian Shahriar ; Michiharu Takemoto ; Dave Towey ; Hiroki Takakura ; Atilla Elci ; Susumu Takeuchi ; Satish Puri. IEEE Computer Society, 2019. pp. 117-122 (Proceedings - International Computer Software and Applications Conference).
@inproceedings{8d68874aa2684f5683629e8449f7d831,
title = "Metrics driven architectural analysis using dependency graphs for C language projects",
abstract = "The highest share of cost for a software product is software maintenance. Identifying the quality merit of the software architecture is extremely vital as the quality directly relates to software maintenance. A good design always exhibits good quality characteristics because it is directly related to good 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 representation 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.",
keywords = "C language, Code smells, Dependency graphs, Software architecture, Software metrics analysis",
author = "Devansh Tiwari and Hironori Washizaki and Yoshiaki Fukazawa and Tomoyuki Fukuoka and Junji Tamaki and Nobuhiro Hosotani and Munetaka Kohama",
year = "2019",
month = "7",
doi = "10.1109/COMPSAC.2019.00025",
language = "English",
series = "Proceedings - International Computer Software and Applications Conference",
publisher = "IEEE Computer Society",
pages = "117--122",
editor = "Vladimir Getov and Jean-Luc Gaudiot and Nariyoshi Yamai and Stelvio Cimato and Morris Chang and Yuuichi Teranishi and Ji-Jiang Yang and Leong, {Hong Va} and Hossian Shahriar and Michiharu Takemoto and Dave Towey and Hiroki Takakura and Atilla Elci and Susumu Takeuchi and Satish Puri",
booktitle = "Proceedings - 2019 IEEE 43rd Annual Computer Software and Applications Conference, COMPSAC 2019",

}

TY - GEN

T1 - Metrics driven architectural analysis using dependency graphs for C language projects

AU - Tiwari, Devansh

AU - Washizaki, Hironori

AU - Fukazawa, Yoshiaki

AU - Fukuoka, Tomoyuki

AU - Tamaki, Junji

AU - Hosotani, Nobuhiro

AU - Kohama, Munetaka

PY - 2019/7

Y1 - 2019/7

N2 - The highest share of cost for a software product is software maintenance. Identifying the quality merit of the software architecture is extremely vital as the quality directly relates to software maintenance. A good design always exhibits good quality characteristics because it is directly related to good 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 representation 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.

AB - The highest share of cost for a software product is software maintenance. Identifying the quality merit of the software architecture is extremely vital as the quality directly relates to software maintenance. A good design always exhibits good quality characteristics because it is directly related to good 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 representation 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.

KW - C language

KW - Code smells

KW - Dependency graphs

KW - Software architecture

KW - Software metrics analysis

UR - http://www.scopus.com/inward/record.url?scp=85072700113&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85072700113&partnerID=8YFLogxK

U2 - 10.1109/COMPSAC.2019.00025

DO - 10.1109/COMPSAC.2019.00025

M3 - Conference contribution

AN - SCOPUS:85072700113

T3 - Proceedings - International Computer Software and Applications Conference

SP - 117

EP - 122

BT - Proceedings - 2019 IEEE 43rd Annual Computer Software and Applications Conference, COMPSAC 2019

A2 - Getov, Vladimir

A2 - Gaudiot, Jean-Luc

A2 - Yamai, Nariyoshi

A2 - Cimato, Stelvio

A2 - Chang, Morris

A2 - Teranishi, Yuuichi

A2 - Yang, Ji-Jiang

A2 - Leong, Hong Va

A2 - Shahriar, Hossian

A2 - Takemoto, Michiharu

A2 - Towey, Dave

A2 - Takakura, Hiroki

A2 - Elci, Atilla

A2 - Takeuchi, Susumu

A2 - Puri, Satish

PB - IEEE Computer Society

ER -