Understanding the effect of batch refactoring on software quality
Developers aim to create software with the least possible flaws and good quality. Hence, they apply a sequence of program transformation operations known as refactoring to create such software. Refactoring is a widely known code restructuring technique that enhances the program’s structure without m...
Saved in:
| Published in: | International journal of system assurance engineering and management Vol. 15; no. 6; pp. 2328 - 2336 |
|---|---|
| Main Authors: | , |
| Format: | Journal Article |
| Language: | English |
| Published: |
New Delhi
Springer India
01.06.2024
Springer Nature B.V |
| Subjects: | |
| ISSN: | 0975-6809, 0976-4348 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Summary: | Developers aim to create software with the least possible flaws and good quality. Hence, they apply a sequence of program transformation operations known as refactoring to create such software. Refactoring is a widely known code restructuring technique that enhances the program’s structure without modifying its functionality. Internal properties of a system are generally measured using software metrics that help to understand both qualitative and quantitative aspects of the software. The authors explored the interrelationship between batch refactorings and software metrics in this study. Batch refactorings are a set of multiple inter-related refactoring operations that a developer applies to achieve the desired quality of the system. The refactorings have been extracted from different versions of three open-source datasets, Thumbnailator, Mp3agic, and Tabula-java. The extracted refactorings are studied under five categories of refactoring batches, i.e., class, method, field, parameter, and attribute. In addition, seven prominent software metrics have been used to investigate the impact of batch refactorings on critical software metrics and software quality. A software metric is considered critical if it does not lie within the set threshold value of the respective metric. The findings of the study show that 43% of the batch refactorings belong to method-level batches. Approximately 74.3% of the batch refactorings have been applied to the classes that comprise at least one critical software metric. Also, on an average method level batches improved the metrics by 27.7% and thus outperformed other batches in improving the overall quality of the software. The results of this study help in better understanding the relationship between batch refactoring and software quality, and thus the developers can make an appropriate decision in choosing the best refactoring batches for achieving the maximum software quality. |
|---|---|
| Bibliography: | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 14 |
| ISSN: | 0975-6809 0976-4348 |
| DOI: | 10.1007/s13198-023-02247-x |