skip to main content
research-article
Free Access

Barriers to refactoring

Published:25 September 2017Publication History
Skip Abstract Section

Abstract

Developers know refactoring improves their software, but many find themselves unable to do so when they want to.

References

  1. Bavota, G., Oliveto, R., Gethers, M., Poshyvanyk, D., and De Lucia, A. Methodbook: Recommending move method refactorings via relational topic models. IEEE Transactions on Software Engineering 40, 7 (July 2014), 671--694. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Baxter, G., Frean, M., Noble, J., Rickerby, M., Smith, H., Visser, M., Melton, H., and Tempero, E. Understanding the shape of Java software. In Proceedings of the 21st Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (Oct. 2006), 397--412. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Chen, J., Xiao, J., Wang, Q., Osterweil, L.J., and Li, M. Perspectives on refactoring planning and practice: An empirical study. Empirical Software Engineering 21, 3 (June 2016), 1397--1436. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Chidamber, S.R., Darcy, D.P., and Kemerer, C.F. Managerial use of metrics for object-oriented software: An exploratory analysis. IEEE Transactions on Software Engineering 24, 8 (Aug. 1998), 629--639. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Chidamber, S.R. and Kemerer, C.F. A metrics suite for object-oriented design. IEEE Transactions on Software Engineering 20, 6 (June 1994), 476--493. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Fowler, M. Refactoring: Improving the Design of Existing Code. Addison-Wesley, Boston, MA, 1999.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Gorschek, T., Tempero, E., and Angelis, L. A large-scale empirical study of practitioners' use of object-oriented concepts. In Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering (Cape Town, South Africa, 2010), 115--124. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Harun, M.F. and Lichter, H. Towards a technical debt-management framework based on cost-benefit analysis. In Proceedings of the 10th International Conference on Software Engineering Advances (Barcelona, Spain). International Academy, Research, and Industry Association, 2015.Google ScholarGoogle Scholar
  9. Kazman, R., Cai, Y., Mo, R., Xiao, L., Feng, Q., Haziyev, S., Fedak, V., and Shapochka, A. A case study in locating the architectural roots of technical debt. In Proceedings of the 37th International Conference on Software Engineering (Firenze, Italy). IEEE Press, 2015. Google ScholarGoogle ScholarCross RefCross Ref
  10. Kim, M., Zimmermann, T., and Nagappan, N. A field study of refactoring challenges and benefits. In Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering (Cary, NC). ACM Press, New York, 2012, article 50. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Murphy-Hill, E. and Black, A.P. Refactoring tools: Fitness for purpose. IEEE Software 25, 5 (Sept.-Oct. 2008), 38--44. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Murphy-Hill, E., Parnin, C., and Black, A.P. How we refactor, and how we know it. IEEE Transactions on Software Engineering 38, 1 (Jan. 2012), 5--18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Robson, C. and McCartan, K. Real World Research, Fourth Edition. John Wiley & Sons, Inc., 2015.Google ScholarGoogle Scholar
  14. Saldana, J. The Coding Manual for Qualitative Researchers, Third Edition. SAGE Publications Ltd., 2016.Google ScholarGoogle Scholar
  15. Shatnawi, R., Li, W., Swain, J., and Newman, T. Finding software metrics threshold values using ROC curves. Journal of Software Maintenance and Evolution: Research and Practice 22, 1 (Jan. 2010), 1--16. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Szöke, G., Nagy, C., Ferenc, R., and Gyimóthy, T. A case study of refactoring large-scale industrial systems to efficiently improve source code. In Proceedings of the 14th International Conference on Computational Science and Its Applications (Guirnaräes, Portugal, June 30--July 3). Springer International Publishing, Cham, Switzerland, 2014, 524--540. Google ScholarGoogle ScholarCross RefCross Ref
  17. Vakilian, M., Chen, N., Negara, S., Rajkumar, B.A., Bailey, B.P., and Johnson, R.E. Use, disuse, and misuse of automated refactorings. In Proceedings of the 34th International Conference on Software Engineering (Zurich, Switzerland). IEEE Press, 2012, 233--243. Google ScholarGoogle ScholarCross RefCross Ref
  18. Xing, Z. and Stroulia, E. Refactoring practice: How it is and how it should be supported (an Eclipse case study). In Proceedings of the 22nd International Conference on Software Maintenance (Philadelphia, PA). IEEE Press, 2006, 458--468. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Barriers to refactoring

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image Communications of the ACM
          Communications of the ACM  Volume 60, Issue 10
          October 2017
          90 pages
          ISSN:0001-0782
          EISSN:1557-7317
          DOI:10.1145/3144574
          Issue’s Table of Contents

          Copyright © 2017 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 25 September 2017

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Popular
          • Refereed

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        HTML Format

        View this article in HTML Format .

        View HTML Format