TIBCO BPM

26 Sep, 2016 | 11 minutes read

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 by 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 relatively 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 and processing a customer order, to onboarding a new employee.

BPM is modeling, optimizing, automating, monitoring, and managing the business process with only one goal to improve the process itself. The 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 a 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 into 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 sent to his substitute or manager.
  • Visibility – BPM will enable all process participants to monitor the 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 cost, which department is the slowest. Depending on the results the flow can be modified, and rules adjusted 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 continuous 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 process effectiveness, and better business insight.
Applying BPM in the change order process can result in reducing the quota delivery time, reducing errors, and 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 business 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 gradual 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 guarantee 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 to 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, the 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 true digitalization vs only automation. AMX BPM enables the implementation of flexible processes, and events triggered in real-time that can meet all of the company’s business process needs. Therefore, by using AMX BPM the existing business processes can take advantage 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 an integrated BPM and service-oriented architecture (SOA) platform that 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 of each of them with the aim of representing 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 are 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 into 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 artifacts, 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 is represented by

user task

an object 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 an 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, built 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 the 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 calls, and DB calls 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 the “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 activity

timer event activity

As it can be seen in the process diagram it’s associated with the “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 ensure 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 a 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 results are acceptable, and to do all this we need only a 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 a single environment for process modeling, testing, simulation, and deployment, covering both business and technical users.

Next will go through 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 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 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 that deal with the management of human resources. It’s composed of: Business Resource Management services, Directory services, Work Presentation services, Pageflow services, and Business services.

For example, the Directory services, in terms of the UC, will maintain the runtime of the organization model and provide all authentication and authorization services. This means that the client application can navigate through 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 deal 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 applications 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 products (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 the majority of large companies, in today’s business climate, the question is not “Should we have BPM” but “Which BPM Software should we choose”. BPM is one of the most important technology-driven business initiatives of today. It leads the company to use technology to provide a sustainable, strong, and competitive advantage in 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 suppressed many of its competitors.

⋮IWConnect has solid experience improving enterprise business processes and operations using the TIBCO BPM product suite, especially the mission-critical processes that are vital for normal and efficient system functioning and achieving strategic company goals. We have been involved in the creation and monitoring of process definitions, as well as monitoring, optimization, and automation of the execution of those processes and workflows.