search menu icon-carat-right cmu-wordmark

New SEI Book on Managing Technical Debt Published

New SEI Book on Managing Technical Debt Published
May 28, 2019 • Article

May 28, 2019—Managing Technical Debt: Reducing Friction in Software Development, the latest book in the SEI Series in Software Engineering, is now available from Addison-Wesley Professional. The book was written by Philippe Kruchten, a professor of software engineering at the University of British Columbia in Vancouver, and senior members of the SEI’s technical staff Robert Nord and Ipek Ozkaya.

Technical debt refers to design or implementation constructs that allow software to be developed more rapidly in the short term but make future changes more difficult. The book likens the result of technical debt in software-reliant systems to unwanted friction in a mechanical device. The goal of Managing Technical Debt is to provide software developers practical information to start managing their technical debt throughout the software development process and life of the software product.

Though technical debt is a long-standing problem in software development, the development community lacks a cohesive approach to it. Kruchten, Nord, and Ozkaya’s new book aims to fill that gap by formalizing the principles and practices for managing technical debt.

For example, one of the formal principles is Technical debt must trace to the system. “To reason about technical debt, estimate its magnitude, and offer information on which to base decisions,” explains Nord, “you must be able to anchor technical debt to explicit technical debt items that identify parts of the system: code, design, test cases, or other artifacts. These items can be incorporated into your issue tracking system along with other issues, such as features and defects.”

Ozkaya says that any software-reliant system will inevitably develop some friction as technology, business priorities, and development teams change. “Managing technical debt is a key software engineering practice that all organizations must embrace,” she says, “no different than requirements engineering, software design, testing, and the like.”

To learn more about Managing Technical Debt: Reducing Friction in Software Development or order a copy, visit https://resources.sei.cmu.edu/library/asset-view.cfm?assetid=546594. Use discount code TECHDEBT at checkout to save 35 percent.

The SEI also offers an on-demand eLearning course called Managing Technical Debt of Software, which presents approaches to assessing the technical debt landscape and teaches mechanisms for managing it. To learn more, visit https://www.sei.cmu.edu/education-outreach/courses/course.cfm?courseCode=V37.

To hear Nord and Ozkaya discuss this topic, listen to their recent podcast Managing Technical Debt: A Focus on Automation, Design, and Architecture.