Go Back Research Article February, 2020
IACSE - International Journal of Software Engineering

A Framework for Analyzing Technical Debt Using Static Code Analysis and Developer Commit Histories

Abstract

Technical debt (TD) represents the cumulative consequences of expedient development decisions that compromise long-term software quality, maintainability, and sustainability. While short-term gains are often achieved by deferring optimal design or implementation practices, unmanaged technical debt can lead to increased maintenance costs, higher defect rates, and reduced development velocity. Effective identification and management of TD are therefore critical for sustaining software health, particularly in evolving and long-lived codebases. This paper introduces a novel hybrid framework for technical debt detection and analysis, which integrates static code analysis (SCA) with developer commit history mining to deliver a more holistic and context-aware view of technical debt in software projects. Traditional SCA tools are proficient at identifying code-level issues such as code smells, duplication, and complexity metrics, but they often lack temporal and human-centric insights. Conversely, developer commit histories capture the evolution of code, decision-making patterns, and debt-incurring behaviors over time. By combining these two complementary data sources, our framework uncovers both the structural symptoms and historical origins of technical debt, enabling enhanced traceability and prioritization.

Keywords

technical debt static code analysis developer commit history software quality code maintenance debt management framework.
Document Preview
Download PDF
Details
Volume 1
Issue 1
Pages 1-7
ISSN 1512-3789