Automation of business processes is crucial, and doing it manually prophesies a higher probability of detrimental risks. In the business context, they can be bombs against profitability such as time delays, improper implementations, deployment problems, or buggy application. TIBCO provides a way out with its ActiveMatrix BusinessWorks product which allows modeling of business processes graphically. Such graphical rendition of a business process is called a process definition. BusinessWorks comes with a Designer tool which provides an environment for developing and testing process definitions. The execution of process definitions involves creation of their corresponding process instances which is seamlessly handled by the TIBCO ActiveMatrix BusinessWorks process engine. Each process instance is an automated business process in action.
A TIBCO process definition has five building blocks, namely: Activities, Transitions, Groups, Shared Configuration Resources, and Subprocesses. The logical combinations of these components define how a process definition intends to function.
In its simplest form, a process definition is a sequence of activities and transitions. It starts with either a Start activity or a process starter and ends with an End activity. Activities are the specific individual units of work which defines the actual operations and processing. They are logically grouped with their related counterparts into sets known as palettes. For example, all operations pertaining to file processing, such as reading, writing, or copying a file, are represented with their corresponding activities: Read File, Write File, and Copy File. These activities are grouped in the File palette. Similarly, all tasks that pertain to database access and manipulation are grouped in a single palette – the JDBC palette. On the other hand, transitions define the control flow as to when activities in the process definition take their turn. It is graphically represented by a unidirectional arrow between activities. It directs how interaction between activities should proceed, dictating how and when activities get executed. Although an activity may exists in a process, when there are no transitions that connect it to the entire flow with other activities therein, it can never be executed.
There are situations when an activity or a certain collection of activities in a process definition must be treated as a single task, be bound to a particular repetition, or be constrained by certain conditions. This is where Groups come in to support extended capabilities for the process to handle loops, transactions, collective error trapping, or synchronization. TIBCO provides nine group actions; each is unique for a particular purpose. These are as follows: No Action, If, Critical Section, Pick First, Iterate, Repeat Until True, While True, Repeat On Error Until True, and Transaction.
Each activity contains specifications that must be configured in order to meet the required behavior from it. A configuration can be properties, pieces of input and output information, or error schemas that must be supplied with proper settings or entries. However, there are specifications that are shared among activities like database connections, WSDL files, schema definitions, etc. With this, it is necessary to use Shared Configuration resources. They actually do not form part of the explicit flow but are created outside process definitions and are used in the Configuration tab of activities. Activities make references to these shared resources in order to make use of them.
What about a subprocess? A subprocess is a process definition called within another process definition. This is ideal when modeling a very complex business process. Plotting the entire logic flow in one gigantic process definition complicates how the business process is represented. Turn it into bite-size bits by chopping one complex process into smaller processes definitions and then call the latter from the main process. Subprocesses make process diagrams more readable and easy to comprehend, trace, and countercheck. Another good thing is that subprocesses are reusable across different process definitions. Just a note, they cannot contain process starters.
In short, TIBCO ActiveMatrix BusinessWorks provides the convenience and efficiency of graphically modeling business processes and executing them automatically. It saves you the pain and agony of weaving complex business processes manually like you have to do in other programming languages. From our experience, the level of productivity increase in the creation of business application using TIBCO ActiveMatrix BusinessWorks is significant.
Jazon Samillano – Jazon is the Chairman and Chief TIBCO Architect of Xmarter, Inc., a TIBCO consulting and training firm. Prior to his current position, Jazon worked as …
Business process modelling