What is our primary use case?
The primary use case of this solution is for static code analysis, and benchmarking our code standards according to our preferences.
Our builds process through SonarQube and if it passes the required set of requirements we have set, it will then go through to production.
What is most valuable?
The most valuable features are the segregation containment and the suspension of product services. Also, the library that SonarQube covers is good.
What needs improvement?
The library could have more languages that are supported. It would be helpful.
There are a few clauses that are specific to our organization, and it needs to improve. It's the reason that were are evaluating other solutions. It creates the ability for the person who releases the authorized release, which is not good. We would like to be able to expand on our work.
MicroFocus, as an example, would be helping us with that area or creating a dependency tree of the code from where it deployed and branching it into your entire code base. This would be something that is very helpful and has helped in identifying the gaps.
It would be great to have a dependency tree with each line of your code based on an OS top ten plugin that needs to be scanned. For example, a line or branch of code used in a particular site that needs to be branched into my entire codebase, and direct integration with Jira in order to assign that particular root to a developer would be really good.
Automated patching for my library, variable audience, and support for the client in the CICD pipeline is all done with a set of different tools, but it would be nice to have it like a one-stop-shop.
I would like to see improvements in defining the quality sets of rules and the quality to ensure code with low-performance does not end up in production. We would also need the ability to edit those rules.
For how long have I used the solution?
I have been using SonarQube for approximately two years.
What do I think about the stability of the solution?
The stability is good.
The branch advanced analysis pull request declarations, they are good and highly valuable, but they are not part of the free edition. They are only available as part of the licensed one.
What do I think about the scalability of the solution?
Currently, we have 1.2 to 1.5 million lines of code. Certainly, if that increases, so would the costs expediently.
We have 50 developers' licenses.
There is quite a bit of maintenance that is needed. We have a couple of people from our operations team to do the maintaining.
It is integrated with our CICD department and is being used extensively.
We do have plans to increase the usage of SonarQube.
Which solution did I use previously and why did I switch?
We have used open-source origins of the tools.
PCI is an open-source solution that we used before, and we used Snyk as well.
How was the initial setup?
The initial setup is straightforward.
What about the implementation team?
We did not use a vendor team, it was done by us.
What's my experience with pricing, setup cost, and licensing?
The developer edition is based on cost per lines of code.
Which other solutions did I evaluate?
Now we are looking for a more mature solution and evaluating other products. We want a complete code analysis platform that is more mature.
We will either go with the paid Developer active license or solutions such as Checkmarx or MicroFocus.
What other advice do I have?
The community edition is quite informative for engineers. The actual code analysis is not conducted on the GitLab flow, but the build pipeline would show the core quantity steps which is part of the criteria.
The trial gives you a way to implement the POC and check if it can be integrated with your own stack. Once the trial expires, you can continue with the same setup for getting the license.
I would rate this solution a six out of ten.
Which deployment model are you using for this solution?
Which version of this solution are you currently using?