Static code analysis is valuable in finding code that is overly complex, violates a specific style guide, or contains error prone constructs.
It’s genuinely useful, and I use static code analysis myself as a low-level verification technique.
These observations are supported by a recent research paper from the University of Ottawa which concludes that:
There’s simply too much technical debt, and the business value from fixing it isn’t clear. But the paper continues:
So CodeScene works well in practice for prioritization. But what about the impact of its reported issues? Additional research, this time from the University of Victoria’s code quality study, compared CodeScene to SonarQube, a market-leading static analysis tool, and verified the reports by human inspection:
Both of these studies also looked at people-factors. This is another area where behavioral code analysis shines; the people side of software development simply isn’t available in the source code itself, whereas tools like CodeScene – with its additional data sources – can analyse aspects like knowledge distribution, team coupling, and off-boarding risks.
Check out our white paper to learn more about CodeScene, its use cases, and how they fit into your existing workflow and roles.
CodeScene’s social team analyses are described this blog post.
CodeScene is available as an on-premise version and as a hosted CodeScene Cloud that’s free for open source projects.