Identifying technical debt

Today’s very short post is about ways to identify technical debt and how to find components/classes that require immediate attention.

1) Files that have a large number of git commits (they are changed often). These files are dependency magnets, they most likely violate “Open-close principle” and “Single responsibility principle”. Create a report by running:

# list repo files with their total number of commits
git log --name-only --pretty=format: | sort | uniq -c | sort -nr > git_stats.txt

2) SonarQube provides pretty good reports showing the complexity and test coverage of your classes

Written on November 8, 2019