Agile Software Development: Refactoring

Agile Software Development: Refactoring

Refactoring code is a key responsibility of software developers. It helps you develop quality code—the foundation you need to react quickly to change, add new features, and ship high-performance products. This course teaches the basics of refactoring, tailored for agile development. Instructor Richard Kasperowski helps you set up a test-driven development environment and walks through basic refactoring techniques: the rename variable, extract, and inline methods. In chapter two, he explains how to stabilize legacy code with outstanding technical debt—inefficiencies and errors introduced as the result of careless programming. Then he uses refactoring to simplify code, remove duplication, and build more reusable objects. Finally, he shows how refactoring complements an agile workflow, by demonstrating how to quickly add a new feature to the simplified codebase.

What you’ll learn?

  • Extreme programming overview
  • Feedback loops
  • Iteration planning
  • Continuous process
  • Pinning down legacy code
  • Testing code and branch coverage
  • Refactoring legacy code
  • Simplifying math and Booleans
  • Adding new behaviors to refactored code

Instructor: Richard Kasperowski

Richard Kasperowski is an author, speaker, teacher, and coach focused on high-performance teams.

Richard is the author of the book, High-Performance Teams: The Foundations, as well as The Core Protocols: A Guide to Greatness. He leads clients in building great teams that get great results using the Core Protocols, agile, and Open Space Technology (OST). Richard created and teaches the class Agile Software Development at Harvard University.