Skip to Content
Managing Software Debt: Building for Inevitable Change
book

Managing Software Debt: Building for Inevitable Change

by Chris Sterling, Brent Barton
December 2010
Intermediate to advanced
288 pages
7h 21m
English
Addison-Wesley Professional

Overview

Shipping imperfect software is like going into debt. When you incur debt, you can do things faster than if you had to pay for everything upfront. Software debt takes five major forms: technical, quality, configuration management, design, and platform experience. In today’s rush to market, software debt is inevitable. And that’s okay—if you’re careful about the debt you incur,and if you quickly pay it back.

In Managing Software Debt, leading Agile expert Chris Sterling shows how understanding software debt can help you move products to market faster, with a realistic plan for refactoring them based on experience.

Writing for all Agile software professionals, Sterling explains why you’re going into software debt whether you know it or not—and why the interest on that debt can bring projects to a standstill. Next, he thoroughly explains each form of software debt, showing how to plan for it intelligently and repay it successfully. You’ll learn why accepting software debt is not the same as deliberate sloppiness, and you’ll learn how to use the software debt concept to systematically improve architectural agility. Coverage includes

  • Managing tensions between speed and perfection and recognizing that you’ll inevitably ship some “not quite right” code

  • Planning to minimize interest payments by paying debts quickly

  • Building architectures that respond to change and help enterprises run more smoothly

  • Incorporating emergent architecture concepts into daily activities, using Agile collaboration and refactoring

  • Delivering code and other software internals that reduce the friction of future change

  • Using early, automated testing to move past the “break/fix” mentality

  • Scripting and streamlining both deployment and rollback

  • Implementing team configuration patterns and knowledge sharing approaches that make software debt easier to repay

  • Clearing away technical impediments in existing architectures

  • Using the YAGNI (“you ain’t gonna need it”) approach to strip away unnecessary complexity

  • Using this book’s techniques, senior software leadership can deliver more business value; managers can organize and support development teams more effectively; and teams and team members can improve their performance throughout the development lifecycle.

    Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
    and much more.

    Read now

    Unlock full access

    More than 5,000 organizations count on O’Reilly

    AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

    QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
    Julian F.
    Head of Cybersecurity
    QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
    Addison B.
    Field Engineer
    QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
    Amir M.
    Data Platform Tech Lead
    QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
    Mark W.
    Embedded Software Engineer

    You might also like

    How to Develop a Great Digital Strategy

    How to Develop a Great Digital Strategy

    Jeanne W. Ross, Cynthia M. Beath, Ina M. Sebastian
    The Hidden Cost of AI-Assisted Creativity

    The Hidden Cost of AI-Assisted Creativity

    Léonard Boussioux, Anil Doshi, Oliver Hauser, Kartik Hosanagar
    What Successful Project Managers Do

    What Successful Project Managers Do

    W. Scott Cameron, Jeffrey S. Russell, Edward J. Hoffman, Alexander Laufer

    Publisher Resources

    ISBN: 9780321700582Purchase book