We have much expertise in the integration area and many of our consultants are experts in the main TIBCO integration software (i.e. TIBCO BusinessWorks™ 5.x). So combining these two ingredients the Serbian and the Dutch team decided to deliver a tool to automate the “boring” part of every development phase: initial BusinessWorks project setup.
What is the tool about?
The tool is a Spring Boot application, written in Java. A very simple interface allows the user to specify input configuration files and generate TIBCO BusinessWorks 5.x code.
The tool allows to create different types of ESB services to cover different functionalities:
- Front-end or Façade services; to let external applications communicate with the ESB layer.
- Composite services; mainly meant for orchestration, service composition and routing features.
- Back-end services; to connect the ESB services towards the back-end applications.
- Notification services; asynchronous services waiting for a final notification.
In order to maximize the flexibility of output generation the tool is driven by two types of configuration sources:
- A configuration file in XML format. This file is validated against an XSD structure, where all the types of the services are defined with the possibility to add specific properties. The default set of properties can be overridden with specific (custom) properties defined in the input configuration file.
- A template structure to base the TIBCO BusinessWorks project on.
The tool guarantees that all the generated resources follow the same naming convention and a standard way of working. The more complete the provided input resources are (e.g. schema, TIBCO BusinessWorks sample processes, etc), the more accurate and complete the final TIBCO BusinessWorks project will be. It’s possible to combine the services that will be part of the TIBCO BusinessWorks project in several ways:
- Any combination of front-end, back-end and/or composite services.
- Services with one or multiple operations.
- High level of customization of the input template structure.
- The tool works fine even with an empty TIBCO BusinessWorks project template, it’s enough to list only the service types to include in the final project.
- Baseline TIBCO BusinessWorks processes are part of a “generated” folder (also this folder name is fully customizable from a configuration point of view), in order to emphasize that these processes should never be touched or modified by any developer.
What are the requirements?
The tool runs in any operating system hosting a minimum version of Java 8. The jar file is executable and can be started either with a double click on it or using the java command line with the –jar option.
What are next steps?
The tool has been released publicly in its first stable version. There are many features in our product backlog to be added to the tool. Some of the planned improvements are:
- Resources validation (e.g. schemas, namespaces, service names, etc) according to a specific naming convention.
- Flexibility about the “camel-case” notation in the naming convention.
- High level of customization with properties defined also at operation level.
- Service agents with multiple operations also at composite and back-end service level.
Conclusion
We will continue to work on this code generator tool and other similar tools to support the daily work of our integration specialists. Stay tuned in order to not miss the latest updates on the code generator tool and exploit its latest capabilities!
Devoteam: the #1 partner when it comes to Tibco BusinessWorks
Due to our background in Integration and DevOps, we are the #1 partner for well-known Dutch organizations when it comes to Tibco BusinessWorks. Curious to learn more? Read all of our success stories, use cases, and technical blog-posts.