Open Source Code Quality Tools: Sonar
During the development of SOS Open Source we analyzed over 60 tools to evalute open source software, and among them we came across Sonar. Sonar is an open source software quality management tool dedicated to continuously analyze and measure source code quality, with very active users and developers mailing-lists and over 3000 downloads per month.
Sonar is a Stable and well-mantained code, with an high mark in Maturity (3.5 years old) and Stability. Sonar is becoming increasingly popular among developers, unfortunately there are not available books yet.
Case studies and feedback from third parties are regularly reported on SonarSource blog in the news section (SonarSource, the company behind Sonar, is born in November 2008, when Sonar 1.4 was already available from the original author Freddy Mallet).
Sonar is a company-led project, but Sonar Plugins are backed by a very active team of 29 contributors, placing Sonar in the top 2% of all project teams on the meta-forges Ohloh.
Sonar Industrial Strength is pretty strong, only minus is that the documentation is only in English. Sonar it is mostly written in Java and Ruby, and generously commented, as are also the plug-ins. The project has in place tools (Jira) and QA procedures, granting very fast reactions to bugs as seen above. A splendid online demo (codename: “Nemo“) dedicated to open source projects is available, try it out looking for Hibernate to see how it helps to assess code popularity.
Commercial support is available from SonarSource and other partners, some plugins are distribuited only commercially (open core licensing). A channel program is available, and it costs 5000 € per year.
Sonar Roadmap is too synthetic – so to know more about the next release you better follow them on Twitter – but Sonar architecture of participation is open, also on demand. Contributing to the core require to grant your contribution though.
Sonar is a professional and extensible quality tool, read more about Sonar and its metrics and try it out.