Abstract
This paper investigates if Code-Churn, Lines of Code (LoC), Duplicated Code, Complexity and Technical Debt (TD) can inform a coder where to prioritize refactoring. A mature code-base of 1 300 000 LoC in approximately 5000 files for a period of 20 months has been examined. The result is that code-churn is the strongest variable out of the studied variables followed by LoC and TD. Multiplying with code-churn strengthens LoC and TD even more, making them the strongest indicators of refactoring potential.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Fowler, M.: Refactoring: improving the design of existing code. Addison-Wesley Professional (1999)
Tsantalis, N., Chatzigeorgiou, A.: Ranking refactoring suggestions based on historical volatility. In: 2011 15th European Conference on Software Maintenance and Reengineering (CSMR), pp. 25–34. IEEE (2011)
Zazworka, N., Vetro’, A., Izurieta, C., Wong, S., Cai, Y., Seaman, C., Shull, F.: Comparing four approaches for technical debt identification. Software Quality Journal, 1–24 (2013) (article in press)
Feathers, M.: Working effectively with legacy code. Prentice Hall Professional (2004)
Feathers, M.: On Churn and Complexity. http://www.stickyminds.com/sitewide.asp?Function=edetail&ObjectType=COL&ObjectId=16679&tth=DYN&tt=siteemail&iDyn=2 (visited May 21, 2013)
Tom, E., Aurum, A., Vidgen, R.: An exploration of technical debt. Journal of Systems and Software (2013) (article in press)
http://www.sonarqube.org/ (visited October 2, 2014)
Luijten, B., Visser, J., Zaidman, A.: Faster defect resolution with higher technical quality of software. In: 4th International Workshop on Software Quality and Maintainability (SQM 2010).(March 2010)
How to calculate Spearman’s rank correlation coefficient. http://en.wikipedia.org/wiki/Spearman%27s_rank_correlation_coefficient(visited June 20, 2013)
Technical Debt Calculation http://docs.codehaus.org/display/SONAR/Technical+Debt+Calculation(visited August 23, 2013)
http://git-scm.com/(visited October 24, 2014)
What the Spearman’s rank correlation coefficient result meanshttp://www.statstutor.ac.uk/resources/uploaded/spearmans.pdf(visited June 20, 2013)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Siverland, S., Wernersson, R.C.S., Sennersten, C. (2015). Optimal Refactoring. In: Lassenius, C., Dingsøyr, T., Paasivaara, M. (eds) Agile Processes in Software Engineering and Extreme Programming. XP 2015. Lecture Notes in Business Information Processing, vol 212. Springer, Cham. https://doi.org/10.1007/978-3-319-18612-2_21
Download citation
DOI: https://doi.org/10.1007/978-3-319-18612-2_21
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-18611-5
Online ISBN: 978-3-319-18612-2
eBook Packages: Computer ScienceComputer Science (R0)