Bulk fixing coding issues and its effects on software quality

Is it worth refactoring?

Gabor Szoke, Gabor Antal, Csaba Nagy, R. Ferenc, T. Gyimóthy

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

11 Citations (Scopus)

Abstract

The quality of a software system is mostly defined by its source code. Software evolves continuously, it gets modified, enhanced, and new requirements always arise. If we do not spend time periodically on improving our source code, it becomes messy and its quality will decrease inevitably. Literature tells us that we can improve the quality of our software product by regularly refactoring it. But does refactoring really increase software quality? Can it happen that a refactoring decreases the quality? Is it possible to recognize the change in quality caused by a single refactoring operation? In our paper, we seek answers to these questions in a case study of refactoring large-scale proprietary software systems. We analyzed the source code of 5 systems, and measured the quality of several revisions for a period of time. We analyzed 2 million lines of code and identified nearly 200 refactoring commits which fixed over 500 coding issues. We found that one single refactoring only makes a small change (sometimes even decreases quality), but when we do them in blocks, we can significantly increase quality, which can result not only in the local, but also in the global improvement of the code.

Original languageEnglish
Title of host publicationProceedings - 2014 14th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2014
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages95-104
Number of pages10
ISBN (Print)9780769553047
DOIs
Publication statusPublished - Dec 4 2014
Event14th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2014 - Victoria, Canada
Duration: Sep 28 2014Sep 29 2014

Other

Other14th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2014
CountryCanada
CityVictoria
Period9/28/149/29/14

Keywords

  • antipatterns
  • coding issues
  • ISO/IEC 25010
  • maintainability
  • software quality

ASJC Scopus subject areas

  • Software
  • Computer Science Applications

Cite this

Szoke, G., Antal, G., Nagy, C., Ferenc, R., & Gyimóthy, T. (2014). Bulk fixing coding issues and its effects on software quality: Is it worth refactoring? In Proceedings - 2014 14th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2014 (pp. 95-104). [6975643] Institute of Electrical and Electronics Engineers Inc.. https://doi.org/10.1109/SCAM.2014.18

Bulk fixing coding issues and its effects on software quality : Is it worth refactoring? / Szoke, Gabor; Antal, Gabor; Nagy, Csaba; Ferenc, R.; Gyimóthy, T.

Proceedings - 2014 14th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2014. Institute of Electrical and Electronics Engineers Inc., 2014. p. 95-104 6975643.

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

Szoke, G, Antal, G, Nagy, C, Ferenc, R & Gyimóthy, T 2014, Bulk fixing coding issues and its effects on software quality: Is it worth refactoring? in Proceedings - 2014 14th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2014., 6975643, Institute of Electrical and Electronics Engineers Inc., pp. 95-104, 14th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2014, Victoria, Canada, 9/28/14. https://doi.org/10.1109/SCAM.2014.18
Szoke G, Antal G, Nagy C, Ferenc R, Gyimóthy T. Bulk fixing coding issues and its effects on software quality: Is it worth refactoring? In Proceedings - 2014 14th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2014. Institute of Electrical and Electronics Engineers Inc. 2014. p. 95-104. 6975643 https://doi.org/10.1109/SCAM.2014.18
Szoke, Gabor ; Antal, Gabor ; Nagy, Csaba ; Ferenc, R. ; Gyimóthy, T. / Bulk fixing coding issues and its effects on software quality : Is it worth refactoring?. Proceedings - 2014 14th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2014. Institute of Electrical and Electronics Engineers Inc., 2014. pp. 95-104
@inproceedings{64fca0974c1b48ba8cd6d7062c55e110,
title = "Bulk fixing coding issues and its effects on software quality: Is it worth refactoring?",
abstract = "The quality of a software system is mostly defined by its source code. Software evolves continuously, it gets modified, enhanced, and new requirements always arise. If we do not spend time periodically on improving our source code, it becomes messy and its quality will decrease inevitably. Literature tells us that we can improve the quality of our software product by regularly refactoring it. But does refactoring really increase software quality? Can it happen that a refactoring decreases the quality? Is it possible to recognize the change in quality caused by a single refactoring operation? In our paper, we seek answers to these questions in a case study of refactoring large-scale proprietary software systems. We analyzed the source code of 5 systems, and measured the quality of several revisions for a period of time. We analyzed 2 million lines of code and identified nearly 200 refactoring commits which fixed over 500 coding issues. We found that one single refactoring only makes a small change (sometimes even decreases quality), but when we do them in blocks, we can significantly increase quality, which can result not only in the local, but also in the global improvement of the code.",
keywords = "antipatterns, coding issues, ISO/IEC 25010, maintainability, software quality",
author = "Gabor Szoke and Gabor Antal and Csaba Nagy and R. Ferenc and T. Gyim{\'o}thy",
year = "2014",
month = "12",
day = "4",
doi = "10.1109/SCAM.2014.18",
language = "English",
isbn = "9780769553047",
pages = "95--104",
booktitle = "Proceedings - 2014 14th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2014",
publisher = "Institute of Electrical and Electronics Engineers Inc.",

}

TY - GEN

T1 - Bulk fixing coding issues and its effects on software quality

T2 - Is it worth refactoring?

AU - Szoke, Gabor

AU - Antal, Gabor

AU - Nagy, Csaba

AU - Ferenc, R.

AU - Gyimóthy, T.

PY - 2014/12/4

Y1 - 2014/12/4

N2 - The quality of a software system is mostly defined by its source code. Software evolves continuously, it gets modified, enhanced, and new requirements always arise. If we do not spend time periodically on improving our source code, it becomes messy and its quality will decrease inevitably. Literature tells us that we can improve the quality of our software product by regularly refactoring it. But does refactoring really increase software quality? Can it happen that a refactoring decreases the quality? Is it possible to recognize the change in quality caused by a single refactoring operation? In our paper, we seek answers to these questions in a case study of refactoring large-scale proprietary software systems. We analyzed the source code of 5 systems, and measured the quality of several revisions for a period of time. We analyzed 2 million lines of code and identified nearly 200 refactoring commits which fixed over 500 coding issues. We found that one single refactoring only makes a small change (sometimes even decreases quality), but when we do them in blocks, we can significantly increase quality, which can result not only in the local, but also in the global improvement of the code.

AB - The quality of a software system is mostly defined by its source code. Software evolves continuously, it gets modified, enhanced, and new requirements always arise. If we do not spend time periodically on improving our source code, it becomes messy and its quality will decrease inevitably. Literature tells us that we can improve the quality of our software product by regularly refactoring it. But does refactoring really increase software quality? Can it happen that a refactoring decreases the quality? Is it possible to recognize the change in quality caused by a single refactoring operation? In our paper, we seek answers to these questions in a case study of refactoring large-scale proprietary software systems. We analyzed the source code of 5 systems, and measured the quality of several revisions for a period of time. We analyzed 2 million lines of code and identified nearly 200 refactoring commits which fixed over 500 coding issues. We found that one single refactoring only makes a small change (sometimes even decreases quality), but when we do them in blocks, we can significantly increase quality, which can result not only in the local, but also in the global improvement of the code.

KW - antipatterns

KW - coding issues

KW - ISO/IEC 25010

KW - maintainability

KW - software quality

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

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

U2 - 10.1109/SCAM.2014.18

DO - 10.1109/SCAM.2014.18

M3 - Conference contribution

SN - 9780769553047

SP - 95

EP - 104

BT - Proceedings - 2014 14th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2014

PB - Institute of Electrical and Electronics Engineers Inc.

ER -