Fixing vulnerabilities potentially hinders maintainability

Journal Article (2021)
Author(s)

Sofia Reis (Universidade de Lisboa)

Rui Abreu (Universidade do Porto)

Luís Cruz (TU Delft - Software Engineering)

Research Group
Software Engineering
Copyright
© 2021 Sofia Reis, Rui Abreu, Luis Cruz
DOI related publication
https://doi.org/10.1007/s10664-021-10019-z
More Info
expand_more
Publication Year
2021
Language
English
Copyright
© 2021 Sofia Reis, Rui Abreu, Luis Cruz
Research Group
Software Engineering
Issue number
6
Volume number
26
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Security is a requirement of utmost importance to produce high-quality software. However, there is still a considerable amount of vulnerabilities being discovered and fixed almost weekly. We hypothesize that developers affect the maintainability of their codebases when patching vulnerabilities. This paper evaluates the impact of patches to improve security on the maintainability of open-source software. Maintainability is measured based on the Better Code Hub’s model of 10 guidelines on a dataset, including 1300 security-related commits. Results show evidence of a trade-off between security and maintainability for 41.90% of the cases, i.e., developers may hinder software maintainability. Our analysis shows that 38.29% of patches increased software complexity and 37.87% of patches increased the percentage of LOCs per unit. The implications of our study are that changes to codebases while patching vulnerabilities need to be performed with extra care; tools for patch risk assessment should be integrate into the CI/CD pipeline; computer science curricula needs to be updated; and, more secure programming languages are necessary.

Files

License info not available