982.11M lines of code 4835 analyzed projects days of Technical Debt
  • Technical Debt in figures: TechDebt Report #2 available!

    1,293 software projects tracked, 78M+ lines of code analyzed, 59K days of technical debt detected: The first TechDebt Report (June, 2012) is available for download on Tocea’s website. Thanks to Armel Gouriou for this paper.

Discussion 2 Responses

  1. July 27, 2012 at 2:09 pm

    Technical Debt enthusiasts are themselves in technical debt when it comes to the definition of technical debt. It is time to produce a better definition for technical debt.

    The current definition is unsatisfactory:
    “Not quite right code” which we postpone making it right… Ward Cunningham 1992

    I suggest the following:
    Technical debt is the organizational, project, or programmer neglect of known good practice that results in persistent public, user, customer, staff, or financial cost.

    Don O’Neill
    Independent Consultant

    ONeillDon@aol.com

  2. July 31, 2012 at 1:12 pm

    Management of Technical Debt

    The success of large scale software intensive systems is largely dependent on the engineering, management, and process capabilities, people, practices, methods, and tools of the enterprise charged with the requirements determination, design, development, testing, fielding, and sustainment of the systems. These elements of success are in various stages of maturity, and their evolution becomes the source of continuous process improvement. At any point in time these gaps can be referred to as technical debt expected to result in persistent reputation, economic, mission, or competitiveness costs?

    Technical debt is the organizational, project, or programmer neglect of known good practice that results in persistent public, user, customer, staff, reputation, or financial cost. Technical debt is considered written off when it is eliminated.

    Sources of technical debt in engineering involve neglect in application domain understanding, requirements determination, system and software architecture, iterative multi-level design, staged incremental development, software development life cycle, programming language, middleware, operating system, network interface, and software development environment.

    Sources of technical debt in management involve neglect in requirements management, estimating, planning, measurement, monitoring and controlling, risk management, process management, team innovation management, supply chain management, team building, personnel management, and customer relationship management.

    Sources of technical debt in process involve insufficient evidence of explicit goals and readiness to perform, insufficient accountability based on work responsibility matrix, insufficient planning of design levels and staged increments, and insufficient planning, management, and control of software product releases.