Sökning: onr:"swepub:oai:DiVA.org:bth-20813" >
Refactoring, Bug Fi...
Refactoring, Bug Fixing, and New Development Effect on Technical Debt : An Industrial Case Study
-
- Zabardast, Ehsan (författare)
- Blekinge Tekniska Högskola,Institutionen för programvaruteknik
-
- Gonzalez-Huerta, Javier (författare)
- Blekinge Tekniska Högskola,Institutionen för programvaruteknik
-
- Šmite, Darja (författare)
- Blekinge Tekniska Högskola,Institutionen för programvaruteknik
-
(creator_code:org_t)
- Institute of Electrical and Electronics Engineers Inc. 2020
- 2020
- Engelska.
-
Ingår i: Proceedings - 46th Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2020. - : Institute of Electrical and Electronics Engineers Inc.. - 9781728195322 ; , s. 376-384
- Relaterad länk:
-
https://bth.diva-por... (primary) (Raw object)
-
visa fler...
-
https://urn.kb.se/re...
-
https://doi.org/10.1...
-
visa färre...
Abstract
Ämnesord
Stäng
- Code evolution, whether related to the development of new features, bug fixing, or refactoring, inevitably changes the quality of the code. One particular type of such change is the accumulation of Technical Debt (TD) resulting from sub-optimal design decisions. Traditionally, refactoring is one of the means that has been acknowledged to help to keep TD under control. Developers refactor their code to improve its maintainability and to repay TD (e.g., by removing existing code smells and anti-patterns in the source code). While the accumulation of the TD and the effect of refactoring on TD have been studied before, there is a lack of empirical evidence from industrial projects on how the different types of code changes affect the TD and whether specific refactoring operations are more effective for repaying TD. To fill this gap, we conducted an empirical study on an industrial project and investigated how Refactoring, Bug Fixing, and New Development affect the TD. We have analyzed 2, 286 commits in total to identify which activities reduced, kept the same, or even increased the TD, further delving into specific refactoring operations to assess their impact. Our results suggest that TD in the studied project is mainly introduced in the development of new features (estimated in 72.8 hours). Counterintuitively, from the commits tagged as refactoring, only 22.90% repay TD (estimated to repay 8.30 hours of the TD). Moreover, while some types of refactoring operations (e.g., Extract Method), help repaying TD, other refactoring operations (e.g., Move Class) are highly prone to introduce more TD. © 2020 IEEE.
Ämnesord
- NATURVETENSKAP -- Data- och informationsvetenskap -- Programvaruteknik (hsv//swe)
- NATURAL SCIENCES -- Computer and Information Sciences -- Software Engineering (hsv//eng)
Nyckelord
- Bug Fixing
- Case Study
- Empirical Study
- Industrial Study
- New Development
- Refactoring
- Technical Debt
- Engineering
- Industrial engineering
- Anti-patterns
- Code changes
- Development effect
- Empirical studies
- Industrial case study
- Industrial projects
- Sub-optimal designs
- Technical debts
- Application programs
Publikations- och innehållstyp
- ref (ämneskategori)
- kon (ämneskategori)
Hitta via bibliotek
Till lärosätets databas