skip to main content
10.1145/1062455.1062512acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article

CatchUp!: capturing and replaying refactorings to support API evolution

Published:15 May 2005Publication History

ABSTRACT

Library developers who have to evolve a library to accommodate changing requirements often face a dilemma: Either they implement a clean, efficient solution but risk breaking client code, or they maintain compatibility with client code, but pay with increased design complexity and thus higher maintenance costs over time.We address this dilemma by presenting a lightweight approach for evolving application programming interfaces (APIs), which does not depend on version control or configuration management systems. Instead, we capture API refactoring actions as a developer evolves an API. Users of the API can then replay the refactorings to bring their client software components up to date.We present catchup!, an implementation of our approach that captures and replays refactoring actions within an integrated development environment semi-automatically. Our experiments suggest that our approach could be valuable in practice.

References

  1. K. Chow and D. Notkin. Semi-automatic update of applications in response to library changes. In ICSM, pages 359--. IEEE Computer Society, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. M. Fowler. Refactoring: Improving the Design of Existing Code. Addison-Wesley, 1999. ISBN 0-201-48567-2.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patters. Addison-Wesley, 1995.Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. R. Keller and U. Hölzle. Binary component adaptation. In ECOOP'98 - Object-Oriented Programming: 12th European Conference, Brussels, Belgium, July 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. J. Kerievsky. Refactoring to Patterns. Addison-Wesley, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. B. S. Lerner. A model for compound type changes encountered in schema evolution. ACM Trans. Database Syst., 25(1):83--127, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. T. Mens and T. Tourwe. A survey of software refactoring. IEEE Transactions on Software Engineering, 30(2):126--139, Feb. 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. W. F. Opdyke. Refactoring Object-Oriented Frameworks. PhD thesis, University of Illinois at Urbana-Champaign, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. CatchUp!: capturing and replaying refactorings to support API evolution

    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
    • Published in

      cover image ACM Conferences
      ICSE '05: Proceedings of the 27th international conference on Software engineering
      May 2005
      754 pages
      ISBN:1581139632
      DOI:10.1145/1062455

      Copyright © 2005 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: 15 May 2005

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • Article

      Acceptance Rates

      Overall Acceptance Rate276of1,856submissions,15%

      Upcoming Conference

      ICSE 2025

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader