Technical Debt Analysis Method
Abstract
As the capabilities of static code analyzers expand, many organizations are looking into incorporating static code analysis tools in their development activities to perform quality checks. The challenge for development teams in using static analysis tools is making sense of the results to prioritize what to fix and what to ignore. Our goal is to extract potential design issues from the results of static code analysis. Design issues have previously been shown to constitute hardest to resolve technical debt. To extract these issues, we supplement the results from static code analysis with information about the design characteristics of the violations and combine this with data based on co-changing file relationships. Files that change at the same time during development could provide clues about underlying design issues. By combining the two data sets, the developer is able to view groups of files with possible design issues and design issues that are endemic throughout the codebase. Using this approach, we have created a pipeline that identifies the most significant design issues that contribute to technical debt, giving the developer a clearer picture of what should be fixed. This document serves as a procedure for using the pipeline to find technical debt items (TDIs).
Document Details
- Document Type
- Technical Report
- Publication Date
- Oct 01, 2018
- Accession Number
- AD1084894
Entities
People
- Christopher Seifried
- Ipek Ozkaya
- James Ivers
- Robert Nord
- Stephany Bellomo
Organizations
- Carnegie Mellon University