Skip to main content

Working Effectively with Legacy Code

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 3134))

Abstract

Test Driven Development and Refactoring are powerful tools in the XP/Agile arsenal. With them you can add new code to systems and make existing code more maintainable. However, changing systems without having tests in place can be hazardous. This tutorial presented a collection of dependency breaking and test writing techniques that can be used to get existing code safely under test for refactoring and enhancement. These techniques were used in conjunction with Test Driven Development to breathe new life into large existing code bases. Attendees did all of this and more including:

  • Introduction / Testing as a Programmer’s tool

  • Working with and without Refactoring Tools

  • Breaking Dependencies – Sensing and Separation

  • Breaking Hidden/Manifest Dependencies

  • Java Exercise

  • Seam Identification

  • UML based exercise

  • Writing Characterization Tests

  • Java Exercise

  • Reasoning about Effects / Identifying Test Points

  • Large Method Strategies

  • Java Exercise

  • Architectural Ramifications

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

Buying options

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 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

Learn about institutional subscriptions
Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Feathers, M.C. (2004). Working Effectively with Legacy Code. In: Zannier, C., Erdogmus, H., Lindstrom, L. (eds) Extreme Programming and Agile Methods - XP/Agile Universe 2004. XP/Agile Universe 2004. Lecture Notes in Computer Science, vol 3134. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-27777-4_42

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-27777-4_42

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-22839-4

  • Online ISBN: 978-3-540-27777-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics