Skip to main content

Do Developers Really Worry About Refactoring Re-test? An Empirical Study of Open-Source Systems

  • Conference paper
  • First Online:
Book cover Product-Focused Software Process Improvement (PROFES 2018)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 11271))

Abstract

In this paper, we explore the extent to which a set of over 12000 refactorings fell into one of four re-test categories defined by van Deursen and Moonen; the ‘least disruptive’ of the four categories contains refactorings requiring only minimal re-test. The ‘most disruptive’ category of refactorings on the other hand requires significant re-test effort. We used multiple versions of three open-source systems to answer one research question: Do developers prefer to undertake refactorings in the least disruptive categories or in the most disruptive? The simple answer is that they prefer to do both. We provide insights into these refactoring patterns across the systems and highlight a fundamental weakness with software metrics trying to capture the refactoring process.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Bavota, G., De Lucia, A., Di Penta, M., Oliveto, R., Palomba, F.: An experimental investigation on the innate relationship between quality and refactoring. J. Syst. Soft. 107, 1–14 (2015)

    Article  Google Scholar 

  2. Demeyer, S., Ducasse, S., Nierstrasz, O.: Finding refactorings via change metrics. In: ACM Conference on Object Oriented Programming Systems Languages and Applications (OOPSLA), Minneapolis, USA, pp. 166–177 (2000)

    Google Scholar 

  3. Fowler, M.: Refactoring: improving the design of existing code (1999)

    Google Scholar 

  4. Mens, T., Tourwe, T.: A survey of software refactoring. IEEE Trans. Softw. Eng. 30(2), 126–139 (2004)

    Article  Google Scholar 

  5. Murphy-Hill, E., Parnin, C., Black, A.: How we refactor, and how we know it. IEEE Trans. Softw. Eng. 38(1), 5–18 (2012)

    Article  Google Scholar 

  6. Negara, S., Chen, N., Vakilian, M., Johnson, R.E., Dig, D.: A comparative study of manual and automated refactorings. In: Castagna, G. (ed.) ECOOP 2013. LNCS, vol. 7920, pp. 552–576. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39038-8_23

    Chapter  Google Scholar 

  7. Opdyke, W.: Refactoring OO frameworks, Ph.D. thesis, University of Illinois (1992)

    Google Scholar 

  8. Prete, K., Rachatasumrit, N., Sudan, N., Kim, M.: Template-based reconstruction of complex refactorings. In: International Conference on Software Maintenance, Timisoara, Romania, pp. 1–10 (2010)

    Google Scholar 

  9. van Deursen, A., Moonen, L.: The video store revisited - thoughts on refactoring and testing. In: International Conference on eXtreme Programming and Flexible Processes in Software Engineering XP 2002, Sardinia, Italy (2002)

    Google Scholar 

  10. https://figshare.com/articles/An_Experimental_Investigation_on_the_Innate_Relationship_between_Quality_and_Refactoring/1207916

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Stev Counsell .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Counsell, S., Swift, S., Arzoky, M., Destefanis, G. (2018). Do Developers Really Worry About Refactoring Re-test? An Empirical Study of Open-Source Systems. In: Kuhrmann, M., et al. Product-Focused Software Process Improvement. PROFES 2018. Lecture Notes in Computer Science(), vol 11271. Springer, Cham. https://doi.org/10.1007/978-3-030-03673-7_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-03673-7_12

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-03672-0

  • Online ISBN: 978-3-030-03673-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics