TIBCO BPM

General Overview

A Business Process Management (BPM) enterprise solution is the “must have” application for business in the new century. In the end, a well implemented BPM is a key driver for profitability in any company. The objective of this white paper is first to provide a general overview of what BPM is and what makes it so attractive to the industry nowadays. Then we’ll address the need for a complete BPM software, and using a Use Case we’ll continue with a TIBCO ActiveMatrix (AMX) BPM overview as a viable BPMS, followed with a conclusion based on our company’s experience of implementing AMX BPM solutions for different clients.

 

Intro to BPM

What is BPM?
The simplest definition for BPM would be:
“Business process management (BPM) is a systematic approach to making an organization’s workflow more effective, more efficient and more capable of adapting to an ever-changing environment.”
Let’s take a simple workflow from an HR process, the picture demonstrates the relative chaotic organization that probably is too familiar to all of us:

A relatively chaotic organization, tibco

By applying BPM methodology and analysis technology the process will be first analyzed then organized and finally monitored for further improvements. The new process will look like this:

A new organization after applying the BPM methodology, tibco

To understand the BPM methodology in its bases, first we need to take a detailed look at the definition of a business process, and apply it to a real life scenario.
Definition: “A business process (BP) is an activity or set of activities that will accomplish a specific organizational goal.”
A business process can be anything from opening a new account, processing a customer order, to on-boarding a new employee.
BPM is modeling, optimizing, automating, monitoring and managing the business process with only one goal to improve the process itself. General BPM lifecycle would be:

 

general BPM lifecycle, tibco

 

In terms of BP the Lifecycle would look like this:

how the life-cycle looks like in terms of bpm, tibco

Use Case
Let’s take a more detailed process from realistic scenario like a sample change order process, presented with the diagram below. The process is initiated by a customer request to change some service or a product. The organizing manager gets the request, he can reject it and send an email notification to the customer or request input from two other groups (Software and Electrical Eng.) at the same time.

 

Sample change order process

When all the groups have provided input, the process makes a request to an estimation system (Web Service call for example) with the provided data, and gets in return cost and time figures for the change. This information goes to the organizing manager for final review. At this time he can reject the request due to high time and cost estimate or if that’s not the case the flow continues to the sales manager who will create the quote and notify the customer with the positive resolution.
Let’s break this process in components and see where BPM can add value.
• Identifying the flow – BPM modeling allows for a clear identification of all the steps in one process and a diagram can be created representing the process flow.
• Optimization – BPM identifies opportunities for process optimization, such as automating of a step. In our case the first task of initial review by the organizing manager can be automated.
• Reducing the errors – BPM will assign time limits to all tasks, and implement auto escalation features, triggered when the limit is passed. If the sales manager doesn’t respond in a given time, a notification will be send to his substitute or manager.
• Visibility – BPM will enable all process participants to monitor process status at any time. It can be easily seen who has completed the work and who has not.
• Analysis – BPM can gather different parameters from the process other than the main goal (the quota). For example how long it took, how much it costs, which department is the slowest. Depending on the results the flow can be modified, rules adjusted all to aim of increasing operational efficiency.
Now we have enough arguments to answer the next question.

Why BPM?
Through applying the BPM methodology a process execution can be improved significantly, in BPM terms:
• Modeling the process creates a clear understanding of the work activities.
• Automating the process reduces cycle run time and reduces errors.
• Managing the process ensures that all tasks are executed efficiently.
• Monitoring the process opens further improvement possibilities.
• Optimizing the process leads to continues improvement of the process flow.
With this BPM is placing the business user in close control of the BP operations and their execution. Generating increased business agility, improved processes effectiveness and better business insight.
Applying BPM in the change order process can result in reducing the quota delivery time, reducing the errors, getting more accurate pricing. And finally satisfied customers and employees.
In today’s challenging economic climate the question is not “Should we have BPM” but rather “Which BPM technology should we choose”. We will elaborate this further in the next question.

When to use BPM?
Every organization that has a number of businesses processes can benefit from BPM implementations. The level of improvement would vary depending on the processes itself. We can separate some process characteristics that can determine likely improvement value:
• Automation possibilities. If there are a lot of activities that can be automated this will deliver substantial value.
• Complicated processes. The more steps and people involved the process has, the more likely is to be delays and errors. BPM Modeling and organizing can improve the process significantly in this scenario.
• Volume of usage. Processes that are used often are considerable cost for every organization, even a gradually improvement done by BPM can provide enormous value.

Business Process Management Software (BPMS)
BPM is often viewed as a vendor product, or a technology but this view is problematic. The market for BPM software is currently crowded and can be confusing. Purchasing any BPM software doesn’t guaranty a successful BPM implementation. On the other hand most of the features of BPM, like automation, are impossible without a BPMS. If we apply a BPMS on the scenario from the first diagram, this would be the result:

Applying a business process management software

How to choose a BPMS?
First we need to see what are the essential components of a complete BPMS and then we’ll know how to choose one. These are the five crucial components:
• Graphical tools, for designing, analyzing and modeling processes.
• Runtime execution engine, underlying state machine for executing the defined processes.
• Agility capabilities, in-flight adjustments on the flow.
• Tools to monitor and manage the flows.
• Tools for post-completion analysis

In the next sections we’ll explain how TIBCO AMX covers the above BPM components.

 

TIBCO ActiveMatrix BPM

With ActiveMatrix BPM (AMX BPM), TIBCO introduces a new generation of BPM Software, one that offers truly digitalization vs only automation. AMX BPM enables implementation of flexible processes, event triggered in real time that can meet all of company’s business processes needs. Therefore, by using AMX BPM the existing business processes can take advantages of the new technologies and trends in general, like Event-Driven Enterprise, Mobility, and Fast Data. AMX BPM was designed to be business friendly with enterprise strength, to reduce the dependency on IT for daily business operations, but still to meet all the tight technical standards required for a mission – critical process.
AMX BPM is integrated BPM and service oriented architecture (SOA) platform which provides a single environment for automating business processes involving both people and systems.
The following picture represents the different elements that compose the AMX BPM software:

 

Elements that compose the AMX BPM software

 

All those elements make TIBCO BPM a complete BPMS. Next we’ll do a short overview for each of them with the aim to represent the AMX BPM architecture.
TIBCO Business Studio – BPM Edition
TIBCO Business Studio (BS) is the AMX BPM graphical tool of choice. It is an Eclipse based tool that is used to design and implement all steps and aspects of a process flow. Starting from the BPMN (BPM Notation) model, organization and data model, user form, page flow, process implementation, and finally deployment. Business Studio provides two modes of work, one for the Business analysts where all the modeling can take place, and one for Solution designers where the actual implementation and deployment is happening.

In the change order use case (UC), the design for the organization model in BPM Business Studio would look like this:

 

Organization model in BPM Business Studio

 

Creating the design is done following a familiar pattern, the organization is divided in organization units and each of them has positions, so any organization structure can be modeled.
The process design is also of a very familiar type, with drag and drop artefacts, swim lines and connections. The same interface is used to create basic rules and events to control the flow.
A simplified implementation of the use case would look like this:

 

A simplified implementation of the use case

 

Each of the user tasks represented by user taskobject, is associated with a form or page flow to enable human interaction. The forms can be accessed by the AMX BPM build in client applications: Openspace and Workspace, or a custom client application.
Workspace, is Ajax web client that allows user interaction with work lists. It can be easily customized and configured based on the requirements of a specific enterprise.
Openspace, is a gadget based client, build using GWT (GoogleWeb Toolkit). Users can add web content from different sources as well as gadgets. At the same time the user can customize how that content is displayed. There is also an Openspace version for mobile devices.
In the use case we can use Openspace and supply a link or dynamically update content of the product or service the customer is referring to, so the participants in the process flow won’t need to look for additional info for the related item. In terms of collaboration between the two BS modes mentioned above, here the business user can create the form with the required input and the developer can code the backend logic, like data validation.
The User Task object can be associated with an organization unit defined earlier, like the Software Engineer Group or a specific position like Organizing Manager. In the use case once the customer has made the request the review task will be passed to all employees holding the Organizing Manager position. When one manager starts working on the task the task is removed from the task list of the other managers, and this can be reconfigured if needed.
The Service Task service task can be anything from E-Mail activity, Web Service call, DB call to custom Java code. In the sample UC will use this to automate the send e-mail task, so for example if the Organizing Manager rejects the order, he simply clicks on the Reject button on his form, and “Send Mail to Customer” service task does the rest.
AMX BPM provides many features that can enrich the UC process flow, we’ll demonstrate the Timer Event activitytimer event activityAs it can be seen in the process diagram it’s associated with “Organizing Manager Initial review”. Using this we can define time out for the initial review task. If no one from the organizing manager group completes the task in a given time, further action can be taken, like sending an email to the group supervisor, in order to assure task completion.
TIBCO Business Studio has simulation capabilities, which allow process designers to test and refine the processes before implementation. In the UC we can start the simulation by setting up initial data, like users tasks length in time, and participants’ unit cost. Then run the process model and monitor how it behaves, increase the load and check for bottlenecks or areas of high delay or cost. Additionally, Business Studio has number of reporting capabilities to catch and show this. Next we can redesign the model and run the simulation again. We can repeat this until the result are acceptable, and to do all this we need only Business Studio environment.
Once the process design is completed we can get it deployed using the same Business Studio environment. In conclusion we can say, that one of the most significant features of TIBCO Business Studio is that it provides single environment for process modeling, testing, simulation and deployment, covering both business and technical users.
Next will go thru the rest of the AMX BPM architecture parts.

The following diagram can give one more representation of the AMX BPM Architecture:

 

A representation of the AMX BPM Architecture

 

All of the AMX components are wired together using public services, which allows for anyone to use them in order to replace or expand the components. In fact, the BPM platform together with the AMX BPM applications are all considered as AMX composite applications.
So far we have covered the modeling part as it is done in the Business Studio environment, and the user interface, carried out by AMX BPM build in client applications (Openspace and Workspace).

Work Management
The Work Manager is an AMX BPM logical node, which provides a collection of services who are dealing with management of human resources. It’s composed of: Business Resource Management services, Directory services, Work Presentation services, Pageflow services, Business services.
For example the Directory services, in term of the UC, will maintain the runtime of the organization model and provide all authentication and authorization services. Meaning that the client application can navigate thru the organization model by calling a Directory services API (OrgModelService).

Process Management
The Process Manager is also an AMX BPM logical node that is providing a collection of services that deals with the management of the process. Grouped in: Process services, Event Collection services and Calendar services.
When the UC process is deployed in the BPM runtime the Process services will do the business process execution and the Event Collection services will do the event collecting and correlating based on the UC process flow.

SOA Integration
All AMX BPM application conform to a service oriented architecture (SOA), meaning that the processes can be exposed as service operations. For example in the UC instead of initiating the process from an Openspace form, a SOAP call from an external client can do the same.

For all of the above components there is a common administration, and through the administrator interface we can control the AMX platform, AMX BPM, sample applications and organizational models. By selecting a particular AMX BPM application through the administrator, we can see the underlying components as well as all of the public services available.
To be able to complete the BPM lifecycle next we need to monitor the performance of the deployed process, including user performance or any other parameters of value for the business. AMX BPM can record its activity and generate events when doing that. Client applications or external product (like TIBCO Spotfire) can access that data and get information on all managed objects like processes or work items. Additionally TIBCO BPM provides various measures that can be queried to obtain statistical information about resources and process performance or business data. Operations managers for example can use the resource statistics data to restructure a company department to increase staff efficiency. In the UC example we can get the total number of process instances by their current status, arranged by hours or days, over a specific period of time. Using this info we can detect a bottleneck for example, and redesign that part of the process.
With all of the above functionalities it is clear that AMX BPM is designed to cover the entire process lifecycle including people and technology, therefor TIBCO BPM can be evidently categorized as a complete BPMS Solution.

 

Conclusion

For majority of large companies, in today’s business climate, the question is not “Should we have BPM” but “Which BPM Software should we chose”. BPM is one of the most important technology-driven business initiatives of nowadays. It leads the company to use technology to provide sustainable, strong and competitive advantage on the fast growing market. With AMX BPM TIBCO has the leading role in the market of BPMS, and in terms of architecture and functionality TIBCO has suppress many of his competitors.
InterWorks has solid experience improving enterprise business processes and operations using TIBCO BPM product suite, especially the mission-critical processes which are vital for normal and efficient system functioning and achieving strategic company goals. We have been involved in creation and monitoring of process definitions, as well as monitoring, optimization and automation of the execution of those processes and workflows.

Lazar Kochovski,

Tibco Business Events and MDM Practice Lead