TIBCO BusinessWorks SonarQube enhances your code quality
Some time ago, we were asked for a complete continuous integration solution for TIBCO BusinessWorks developments. At that time, some of us were working in a very complex environment. It had lots of dependencies and few documented rules as development, configuration and documentation guidelines. Only two resources enforced those rules, on the top of their day by day responsibilities. The result: a lot of poor quality code promoted up to pre-prod environment, where all the issues became visible. When management asked for the causes of those issues they weren’t happy, as most of them, could have been avoided by following the guidelines. That’s the reason why we started to build a complete continuous integration solution. An important part of it is a TIBCO BusinessWorks SonarQube language plugin.
First of all, we researched for similar environments within the Java world, being aware that BusinessWorks was not a language and some tweaks would be required. We split the problem into several parts: – Project building – Unit testing and coverage support – Static code analysis – Issue tracking. Project building, can be done using Jenkins or Bamboo, and our colleagues from Windy Road had tib-ant that helped us a lot. Unit testing can be achieved using SoapUI, or any other testing tool, but it’s required to implement multiple communication protocols if your project is not just web services. We got lucky when we found out BWUnit, again from our colleagues from Windy Road, which allows you to test the processes directly. Issue tracking can be sorted using Jira. Several other products could be used too, but it seemed a very good choice.
But the static code analysis was a challenge. We quickly aimed at SonarQube, since some colleagues of our team knew it from their former Java live. Unfortunately there is no Tibco BusinessWorks compatibility/support in SonarQube. That is the main reason for us to develop our T-Qube, the TIBCO BusinessWorks SonarQube language plugin, supporting our set of rules for BusinessWorks developments. It was a challenge to adapt a language-oriented QA tool like SonarQube, to a visual modeled process oriented technology, but we did it, and in our humble opinion, it did worth a lot.
We are proud off several features implemented within the T-Qube:
- BusinessWorks Processes and Issues Graphical View, to quickly identify the process and the cause of the issue. This graphical view supports almost any official TIBCO BusinessWorks plug-in.
- Flexible rule configuration, to adapt to any requirement.
- Technical debt, to estimate the effort it will take to fix the issues.
- Test coverage from BWUnit integrated into SonarQube metrics.
And many others… If you want to have a look at it, send us an email to firstname.lastname@example.org and we will answer as soon as possible to arrange a demo for you on the TIBCO BusinessWorks SonarQube language plugin.
And of course, we have been working with other tools, either from TIBCO or from other partners. If you are interested into a plugin for your tool, send us an email and we will try to advice the solution that suits you best.