IBM Business Process Manager combines simplicity, ease-of-use and task management capabilities with support for enterprise integration and transaction process management requirements, as part of an overall services oriented architecture (SOA). Prior to the V184.108.40.206 release of BPM, process applications developed with WebSphere Lombardi Edition were not available to run on the z/OS platform. Another limitation was that existing WebSphere Lombardi edition servers could not make use of DB2® on z/OS as the product database.
WebSphere Process Server was already a well-established product on the z/OS platform. This meant that if an enterprise solution was developed containing applications in WebSphere Lombardi Edition, the applications would have to run on a distributed set-up. The release of IBM Business Process Manager (BPM) Advanced for z/OS, V7.5 brought together for the first time WebSphere Lombardi Edition and WebSphere Process Server onto the same System z® platform. It also enabled applications developed for WebSphere Lombardi Edition to make use of DB2 on z/OS, with all the benefits that entails.
Figure 1 provides an overview of Business Process Manager.
Figure 1. Business Process Manager overview
There are four main components of the Business Process Manager infrastructure:
- Process Designer
- Integration Designer
- Process Center
- Process servers
The Process Designer, shown in Figure 2, is part of the Business Process Manager development tools. It is a process design tool that allows both modeling and implementation of business processes, providing functionality such as rules, metrics, and human interfaces. The tooling contains a simplified, graphical designer interface that allows multiple team members, including those without a technical background, to work on and analyze process design. It also allows for the flexible deployment of process applications originally created with earlier versions of WebSphere Lombardi Edition for Linux® on System z or other platforms.
Figure 2. Process Designer
The IBM Integration Designer (formerly WebSphere Integration Developer), shown in Figure 3, is also part of the Business Process Manager development tools. It is used for building Business Process Execution Language (BPEL) flows, performing data transforms, building reusable SOA services, orchestrating services, accessing back-end systems and developing mediation flows that run on WebSphere Enterprise Service Bus. Applications created in earlier version using WebSphere Integration Developer can be easily migrated into the Integration designer.
Figure 3. Integration Designer
To summarize, the Process Designer and the Integration Designer tools are where the authoring of the process applications takes place. The development tools and authoring process are exactly the same as on other platforms, which allows process designers and integration developers who are already familiar with these development environments to use the same tools to create process solutions to run in a z/OS environment.
The Process Center provides a web-based interface, and is used as a master repository for the deployment and management of business processes from either the Process Designer or the Integration Designer. The Process Center provides a common interface for both development tools, and enables the deployment of process applications from either or both tools as a single unified deployment package. The Process Center also provides versioning, snapshot, and playback capabilities. Playback allows a developer to test a flow they have developed in the Process Designer before deploying it to the Process server. It provides a test client interface that the developer can use to go through a process flow, entering test data and examining the flow step by step.
Figure 4. Process Center
The process servers are where the applications developed in Process Designer or Integration Designer are deployed to (from the Process Center). It is here that the applications themselves run.
The Process Designer and Integration Designer development tools, as well as the Process Center, function in exactly the same way as if the topology was running on a completely distributed system. It is only at deployment time that the z/OS process servers come into the topology. From the Process Center, various process servers can be configured as deployment targets for the developed applications. These target process servers are grouped under three categories, test, staging and production, depending on their intended purpose.
Once a process server has been configured to be a deployment target from the process center, any of the applications that have been published by the developers from the Process or Integration Designers to the Process Center can be deployed to it.
Figure 5 shows an picture of the complete Business Process Manager deployment structure.
Figure 5. Business Process Manager showing deployment servers and associated tooling
The flow in Figure 5 is as follows:
- The developers produce applications in Integration Designer or business processes in the Process Designer.
- The applications or processes are published to the Process Center.
- The Process Center is used to deploy the applications to the appropriate process server.
- Once deployed, the standard Business Process Manager tools, such as Process Portal, Business Process Choreographer Explorer, and Business Space can be used to interact with the applications.
Note that in this example, there are three possible targets for the application. Various process servers can be set up and configured depending on their required purpose. In Figure 5, three servers have been configured as deployment targets. One of these is set up as a test system on a non-z/OS platform (such as Microsoft® Windows®, AIX® or zLinux®), although there is no reason this test server couldn't also be a zOS process server. This demonstrates the flexibility of the Process Center in deploying to process servers on different platforms. It is also possible to have multiple test, staging, and production servers as deployment targets for the Process Center.
Running the process servers on System z has many advantages over the distributed approach. Following are just a few of the many advantages of bringing a z/OS process server into the topology:
- Co-location of services
If the applications developed in the Process Center or Integration Designer make use of existing System z programs (such as DB2, CICS®, IMS™), the co-location of the process servers with these programs gives much improved performance, scalability, and access to data.
- High availability and quality-of-service
Because the core run-time environment for Business Process Manager is provided by WebSphere Application Server, it inherits the high-availability workload management and quality-of-service that comes as standard with WebSphere Application Server on z/OS. This is essential if the process servers are running mission-critical applications.
- Centralized security
The centralization of process assets, data, and enterprise services on z/OS provides security advantages.
- Data integrity
System z provides consistent backup and recovery for mission-critical processes, transactions, and data, which is very important for global operations.
- Infrastructure cost
Running on z/OS provides savings on physical space and power demands over equivalent distributed systems.
This article has provided an introduction to IBM Business Process Manager Advanced, now available on z/OS, and described how using z/OS can improve your BPM process.
- IBM Business Process Manager product information
- IBM Business Process Manager Advanced for z/OS
- IBM Business Process Manager: Optimizing process management with IBM
developerWorks BPM zone: Get the latest technical resources on
IBM BPM solutions, including downloads, demos, articles, tutorials,
events, webcasts, and more.
Journal: Get the latest articles and columns on BPM solutions in
this quarterly journal, also available in both Kindle and PDF versions.
Brian Venn is the System Verification Test Team Lead for WebSphere Process Server and WebSphere ESB on z/OS. He has 15 years of experience in the software industry and has worked at IBM Hursley Lab in the United Kingdom since 2000. He is an IBM Certified Solution Designer for SOA Solutions and an IBM Certified Deployment Professional, and he has participated in the authoring of four WebSphere Process Server and WebSphere ESB certification exams. He earned a Bachelors degree in Astrophysics from Southampton University in the United Kingdom. You can contact Brian at firstname.lastname@example.org.