Introducing TIBreview: an Automated Quality Code Review Tool for TIBCO BusinessWorks 6
After having introduced reactiveWM, a framework for implementing reactive designs on webMethods, I would like this time introduce another development of mine based on TIBCO: TIBreview.
This project is an automated quality code review tool for TIBCO BusinessWorks 6 projects. In a nutshell TIBreview is based on an extensible and configurable engine for running automated rules in XPath or Java. At the end of an automated check, it can generate a report in a CSV or a PMD format (directly integrable in Jenkins or Sonar).
So far, TIBreview is capable to analyze two types of BusinessWorks assets: processes and resources. For the first release, about 50 automated rules have been implemented:
- Checking forbidden activities: Checkpoint, Copy File etc…
- Global TIBCO conventions: process description missing, default namespace used, process size, number of activities per process, missing Catch All activity etc…
- Transitions: missing label on a conditioned transition, missing Empty activity after a transition parallelization, conditioned transitions without a no matching one
- Critical sections: make sure a blocking activity is not called within a critical section scope
- Process calls infinite cycles: for example Process A –> Process B –> Process A
- Resources: hardcoded values
- Etc…
Because each context is unique, it is also possible to quickly enable/disable rules and to easily implement new ones. So if you are interested to do it because you developed, for instance, your specific BusinessWorks framework, you should give it a try. TIBreview can be used during developments (manually triggered by a develop for example) or in the scope of a continuous integration process.
For more information, check out the Github page: https://github.com/teivah/TIBreview
Last but not least, if you are interested in working on the project, please let me know 😉