Assessing Code Quality And Technical Debt Using Sonarqube

22 May 2017

On 22 May I attended the Assessing Code Quality and Technical Debt Using SonarQube Dot Net Notts event presented by Guy Smith-Ferrier at the UNiDAYS offices in Nottingham.

SonarQube has become the de-facto tool for assessing code quality. SonarQube runs rules, unit tests and code coverage against code, assesses code quality and calculates technical debt. SonarQube categorizes technical debt and provides clear indication of where the most important technical debt must be re-paid. Most importantly SonarQube tracks metrics over time and provides developers and managers with the statistics necessary to determine progress. This session demonstrates the key features of SonarQube from the perspective of C# analysis and shows the value of revealing your code’s strengths and weaknesses.

The slides from the presentation are available to download here: http://www.guysmithferrier.com/downloads/SonarQube.pptx

This was the first time I’d attended a Dot Net Notts event and the first visit to the UNiDAYS offices. Given that their offices are across the road from where I work at PAREXEL I should have made the effort sooner!

I’ve used tools like Fx Cop and the code quality checks available in ReSharper but as the presentation was demonstrating these always tend to be local checks; just carried out on a developer’s own machine before the code is committed.

The benefits of using Sonar Qube were clear in having a centralised repository of the quality of code over time and more importantly a means to ensure code quality by preventing new code commits which reduce code coverage or which don’t conform to company standards.

I could see a tool like this being of great benefit and the setup involved didn’t seem very onerous.

Links

http://www.guysmithferrier.com/downloads/SonarQube.pptx

http://www.guysmithferrier.com/

https://www.sonarqube.org/

FxCop https://msdn.microsoft.com/en-us/library/bb429476(v=vs.80).aspx

https://www.jetbrains.com/resharper/

http://dotnetnotts.co/

Unidays https://corporate.myunidays.com/GB/en-GB/index