2012
Developing an Architecture-Focused Measurement Framework for Managing Technical Debt
Agile , Architecture , Technical Debt No Comments »By Ipek Ozkaya
Senior Member of the Technical Staff
Research, Technology, and System Solutions
Managing technical debt, which refers to the rework and degraded quality resulting from overly hasty delivery of software capabilities to users, is an increasingly critical aspect of producing cost-effective, timely, and high-quality software products. A delicate balance is needed between the desire to release new software capabilities rapidly to satisfy users and the desire to practice sound software engineering that reduces rework. A previous post described the practice of strategically managing technical debt related to software architecture, which involves deliberately postponing implementation of some architectural design choices to accelerate delivery of the system today and then rearchitecting at a later time. This blog post extends our prior post by discussing how an architecture-focused analysis approach helps manage technical debt by enabling software engineers to decide the best time to rearchitect—in other words, to pay down the technical debt.


As industry and government customers demand increasingly rapid
innovation and the ability to adapt products and systems to emerging
needs, the time frames for releasing new software capabilities continue
to shorten. Likewise, Agile software development processes, with their
emphasis on releasing new software capabilities rapidly, are increasing
in popularity beyond their initial small team and project context.
Practices intended to speed up the delivery of value to users, however,
often result in high rework costs that ultimately offset the benefits of
faster delivery,
Recent Comments