SonarQube for Quality Management

Quality Management

It’s important to manage the quality of you code the same it’s important to manage the quality of your product (especially if your code is your product like in open source projects).

  • Set — Make sure the tools we use are in order based on the workflow
  • Shine — Make sure the work area is clean and equipment is maintained
  • Standardise — Make sure standards are set and maintained
  • Sustain — Make sure the discipline to follow the process is maintained
  • Set — We can ensure the codebase follows a logical structure
  • Shine — We can set linters to ensure code is commented and tools to ensure complexity is low
  • Standardise — We can set standards for our code, SonarQube allows us to set standards based on Regex matches and using XPath against an XML representation of the code’s Abstract Syntax Tree
  • Sustain — We can ensure all code conforms to a set of defined standards and highlight any non-conforming code

Using SonarQube with Git Flow

At work we use Git Flow. I like Git Flow as it allows for code to be worked on separately of the rest of code base (although it’s important to merge develop into the feature branch often) and then merge the changes in once the code has passed the quality checks we want.

Using SonarQube with Travis CI

We also use Travis CI. Travis CI is an amazing Continuous Integration engine which makes it easy to configure the CI environment and work really well with Github and the Git Flow branching strategy.

  • sonar.jdbc.username
  • sonar.jdbc.password
  • sonar.jdbc.url

Summary

Quality Management tools such SonarQube really help you to keep on top of your codebase. If you’re testing your code then you should really think about setting up an instance and using it to track your code’s quality.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Colin Wren

Colin Wren

Currently building reciprocal.dev. Interested in building shared understanding, Automated Testing, Dev practises, Metal, Chiptune. All views my own.