The first installment of the Architecture in practice series, Realizing Service-Oriented Architecture, discusses the IBM Service-Oriented Architecture (SOA) foundation life cycle and how it allows IBM customers to think of SOA in terms of a software-development life cycle. The four phases of the IBM SOA life cycle â model, assemble, deploy, and manage â are covered in detail in the first installment.
This article focuses on the third of the SOA solution scenarios: the BPM scenario. Customers typically have packaged applications (ERP, supply chain, and so on) to manage their critical business processes. However, according to Gartner, by 2008 "users will seek a business process platform as a means of orchestrating custom business processes to meet the demands of dynamic business models and processes."
To maintain a competitive or differentiated advantage, an enterprise must ensure that its operating model improves faster than its competition's. An integral part of the operating model is the set of its executable business processes. BPM is a discipline, combining tools and methodology for governing an organization's cross-functional, core business processes. (Part 6, Why business process management (BPM) is important to an enterprise, defines BPM and why it is important to any organization that wants to stay competitive.)
In this article, learn the benefits of the BPM scenario, especially the integration of a BPM environment with a flexible IT architecture. In this scenario, typically, a business process (composed of tasks that span people, systems, and information) is represented as a service or set of services. You can use and reuse the services to build other processes, thereby accelerating process changes. This integrated approach lets domain experts create business processes using reusable business services, which simplifies the decomposition and construction of business processes to speed business innovation.
Though many tools and products are mentioned, it's outside the scope of this article to explain all of them. You may use the Resources to further explore topics of interest.
BPM leads to business innovation and optimization by implementing business strategy through modeling, developing, deploying, and managing business processes throughout the entire life cycle. BPM enables a business to define and implement strategic goals. It also helps to measure a company's financial and operational performance against those goals.
BPM combines business architecture with IT architecture and helps a business realize its strategy through IT action. Fundamentally, business architecture comprises, among other constructs, business processes that are executable and measurable. In an ideal business architecture, people, information, and technology are aligned to create a single integrated view, with real-time intelligence, of both business measurements and IT-system performance.
The BPM scenario is realized by a set of products that enable the transformation of business strategies to IT action. The suite includes:
- BPM tools to digitize the way the business runs and operates.
- Development and infrastructure tools that enable the development, implementation, and deployment of IT services that encompass the business process models.
- BPM tools that monitor and manage the run-time implementations of business processes and associated IT systems.
Generic use cases for the BPM scenario
Part 2 of this series outlines a process for using the SOA scenarios. A critical part of the process is to use the criteria to select a scenario. Figure 1 is a partial list of the generic use cases that are used in the SOA scenarios. Three of them (U9, U10, and U11) are mapped to and realized by the BPM scenario.
Figure 1. Partial list of generic use cases in SOA scenarios

U9 is typical in scenarios in which a customer has existing business processes that use both automated and manual tasks, and they are experiencing some bottlenecks in the process execution. The goals are to improve the efficiency of the existing business processes by simulating the ''as-is' processes, and identify bottleneck areas and inefficiencies to improve the overall process.
U10 is typical in scenarios in which customers are looking to develop a top-down approach for SOA solutions. They want to digitize the business processes that typically run the enterprise. Then they employ IT architectural techniques to identify software artifacts (services and IT components) that work together to realize the business processes.
U11 is typical in enterprises with executable business processes that they want to monitor for compliance with a measurement-metrics set for their key performance indicators (KPIs). These companies are looking for continuous improvement in their business processes. So they want to develop a robust foundation for process monitoring and management by exceptions.
The first step in generating a BPM scenario is to map the functional requirements of a given problem domain to one of the three generic use cases above.
The BPM scenario can be realized as an implementation of the model, assemble, deploy, and manage life cycle of a typical SOA solution. The IBM WebSphere® brand has a core set of products that work together to enable an end-to-end BPM scenario implementation. Figure 2 shows how the products work together.
Figure 2. Enabling the complete life cycle of a business process

- Model phase
- We recommend using IBM WebSphere Business Modeler
for this phase. A visual modeling of the process flows assists in identifying
bottlenecks, disconnects, and inefficiencies in the actual process. Process owners can quickly see areas for
improvement and automation and ways to reduce error cycles.
You can also use process models as a universal communication tool for the business to document and describe work for systems integrators, developers, trading partners, regulators, and business process outsourcers. WebSphere Business Modeler is designed specifically for business analysts, with inputs from the business stakeholders, to model, simulate, and optimize business processes. It also helps you incorporate business performance measures and metrics into the model before handing off the process models to the IT design and implementation team.
- Assemble phase
- For assembling the business processes, you can use IBM WebSphere
Integration Developer. The IT team uses WebSphere
Integration Developer to decompose the
business processes into subprocesses, and drill further down into activities
and tasks. The architect uses the same tool to identify and design services, based on SOA
principles and best practices, to realize the activities and
subprocesses in a given business process. With this tool, you can:
- Import custom-developed services that may be developed in a tool or platform such as IBM Rational® Application Developer or any other J2EE or .NET compliant development environment.
- Obtain services from a repository of existing service assets, such as IBM WebSphere Service Registry and Repository.
- Design services by wrapping existing legacy functions that use technology-specific adapters, such as the Siebel Adapter or SAP adapter, which are in the IBM WebSphere Adapter product suite.
The business process model in WebSphere Business Modeler can be exported as Business Process Execution Language (BPEL), one of the many exported formats that it supports. You can then import the BPEL representation of the business process into WebSphere Integration Developer, which then marks the starting point for enabling the process through an orchestration of services that are defined in the enterprise service portfolio. Services from the portfolio are wired together using the assembly editor in WebSphere Integration Developer. The resulting output is a BPEL-compliant realization of the business process.
- Deploy phase
- The IBM WebSphere Process Server platform can run
the business processes. WebSphere Process Server is a robust, scalable, and
high-
performance run-time platform for executing BPEL-compliant business processes.
WebSphere Process Server is built on top of IBM WebSphere Application
Server. It harnesses the platform features that are
imperative to run mission-critical business processes and applications.
WebSphere Process Server smoothly integrates the various enterprise service buses (ESBs) that are available in the WebSphere platform. It performs complex mediation, transformation, and routing of service invocation between service consumers and service providers. Using ESBs enriches an SOA solution by supporting heterogeneous protocols, standards, message formats, and technologies.
- Manage phase
- The executable business processes and supporting IT assets in the form of
services are monitored for compliance with the service level agreements,
performance indicators, and metrics that a business mandates. Monitoring
service and process execution is imperative to demonstrate the return on
investment of using BPM enabled by SOA as a business and IT strategy that brings
flexibility and responsiveness to the enterprise operating model.
IBM WebSphere Business Monitor offers real-time visibility into process performance to enable process intervention. Continuous improvement allows for visualization of KPIs. The health of the business can be monitored, and emerging problems can be pinpointed for immediate resolution. WebSphere Business Monitor includes support for monitoring processes running in WebSphere Process Server.
IBM Tivoli® Composite Application Manager for SOA provides real-time visibility into Web services interactions. It can be used to monitor Web services calls into and out of WebSphere Process Server.
Targeted visibility and collection of measurements and data from real-time execution provide insight into the performance bottlenecks both in the services and in the business processes. Continuous improvement of a company's services to its customers is a very important dimension of an enterprise's value proposition. Data gathered from WebSphere Business Monitor and Tivoli Composite Application Manager for SOA is fed back into WebSphere Business Modeler, where simulations identify bottlenecks and other issues. You can use simulations to define and design the next level of improvement. The BPM life cycle lets an enterprise iteratively improve its business processes and maintain dominance in the marketplace.
The tools and products recommended in a typical implementation of a BPM scenario are:
| Products | Phase |
|---|---|
| WebSphere Business Modeler | Model |
| WebSphere Integration Developer | Assemble |
| WebSphere Process Server | Deploy |
| WebSphere Business Monitor and Tivoli Composite Application Manager for SOA | Monitor |
For developing custom services, IBM Rational Application Developer may also be used. Adapters from the WebSphere Adapter suite can be used to wrap functions from legacy and packaged applications.
This section gives an overview of some salient features of WebSphere Business Modeler, WebSphere Integration Developer, WebSphere Process Server and WebSphere Business Monitor.
WebSphere Business Modeler is essentially a tool that empowers analysts to define and design business processes. Customers model their processes mainly for compliance or documentation, redesign, and execution. Any of these objectives can be accomplished in WebSphere Business Modeler, which provides a top-down approach to BPM design.
Some organizations have a tactical need to accurately document processes for legal, regulatory, training, or other purposes. WebSphere Business Modeler incorporates ease of use, shared-model element, document attachment, and collaboration features to make it very appealing for this requirement.
Many businesses are undertaking specific process-improvement initiatives where process redesign is either already underway or inevitable. The analysis and reporting, simulation, and process-comparison capabilities in WebSphere Business Modeler make it a very powerful tool for this approach. Modeling for analysis helps customers understand what can and should change in their processes to meet their business goals (such as reducing costs or improving processing time).
When the organization chooses to implement the new "to-be" process, WebSphere Business Modeler can provide artifacts from the business model that are suitable for use as the IT community starts adding implementation details to the process model. These details improve the accuracy of the transition from the business to the technology domain and help reduce the implementation time.
To create a comprehensive picture of the business process, multiple models or dimensions must be depicted in the modeling tool. WebSphere Business Modeler supports the following dimensions or aspects, which provide a comprehensive modeling platform:
- Process model
- Drag and drop to create the graphical view, the visual representation of the process model.
- Resource model
- Define resource types, templates, and instances and associate them with the process.
- Information model
- Define the data and its attributes to show how data is used within a business process.
- Organization model
- Define organization units and locations. Show roles, resources, and other organizational elements in structured diagrams.
- Analysis model
- Define and analyze process elements for their static relationships and their simulated dynamic behavior.
- Business measures model
- Define KPIs and metrics that represent the critical performance characteristics to be monitored. You can export this model from the modeling tool and use it as an input into the WebSphere Business Monitor tool for real-time performance analysis of the executable business processes.
WebSphere Business Modeler also supports collaboration and team support to help in publishing models for browser-based access, while sharing models in a centralized repository such as CVS, IBM Rational ClearCase, and so on. Figure 3 shows an example.
WebSphere Business Modeler supports various output capabilities for smooth integration with downstream phases of a typical SOA development. In this capacity, WebSphere Business Modeler exports the models in the form of Unified Modeling Language to be imported into an architecture and design tool (such as IBM Rational Software Architect) and also:
- As XML Schema Definition (XSD), to be used to define the logical data model or the information model in a tool such as IBM Rational Data Architect.
- As BPEL, to be imported into a process orchestration and implementation tool (such as WebSphere Integration Developer) to implement the process by wiring services together.
There are other supported export formats, but those mentioned here are most commonly used in a BPM solution.
Figure 3. WebSphere Business Modeler in a typical BPM solution

Functional requirements are often documented in a formal requirements-management tool, such as IBM Rational RequisitePro. WebSphere Business Modeler is integrated with Rational RequisitePro, so you can import the requirements and use them to drive the process-modeling activities. The integration provides traceability between what is modeled and the requirements. Figure 3 shows how WebSphere Business Modeler is well suited in an integrated tooling environment for BPM solutions.
You can import UML exports of the process model into Rational Software Architect as activity models for downstream design and architecture of the solution. The BPEL export from WebSphere Business Modeler can be directly imported into WebSphere Integration Developer, where it is represented as a BPEL process for downstream orchestration and wiring together services based on the service component architecture (SCA) specifications. Then you can publish the models to a portal, so they can be reviewed in a team environment and you can solicit feedback.
WebSphere Business Modeler has three different offerings:
- Basic
- Has capability for process authoring, reporting, and sharing. It has support for three different editing modes: basic, intermediate, and advanced. Visio import and swimlane editing are supported.
- Advanced
- Contains all the capabilities of Basic, plus:
- Simulation and analysis
- Transformation and handoff of artifacts to IT (BPEL, UML, XSD, Web Services Description Language)
- Creation of business measures for monitoring purposes
- Ability to publish models to the publishing server for Web publishing and collaboration
- Publisher
- The storage location for any models published by users of the Advanced
edition for viewing by authorized Web browser users. The server also provides
access control for viewing models and manages any comments or questions for
any draft elements under review. When the process model is more or less
complete, the Business Measures model can be created to define the appropriate
measurements for monitoring after the process is deployed. This
model consists of several mechanisms and constructs available to the user to
build the custom measurements that they need to supply the business with the
performance information about the running process.
You can define, among other features, the following:
- What is monitored during the execution of the business process
- KPIs and metrics both at a business process and activity level
- Actionable outbound events (alerts) based on business situations
These features and capabilities make WebSphere Business Modeler ideally suited for the model phase activities in the BPM scenario.
WebSphere Integration Developer
WebSphere Integration Developer is an Eclipse-based tool designed to help create business process flows, state machines, and business rules. WebSphere Integration Developer has full support for:
- The BPEL language and IBM extensions to BPEL for human tasks, to add the ability to capture human-to-process, process-to-human, or even human-to-human interactions.
- Service Component Architecture (SCA), including a wiring editor for assembling service components, so you can import service interface definitions and setting binding policies. SCA uses BPEL for assembling business process tasks into workflows, which can then be deployed to WebSphere Process Server.
Developers can group service components into modules using the assembly or wiring editor, and specify which service interfaces are exposed by the module to outside consumers.
WebSphere Integration Developer also defines common libraries to store artifacts that will be shared across modules, such as interfaces or data maps. Modules expose their functions by way of exports, and use the functions of other modules by way of imports. Modules can be connected using wires to form complete integration solutions or composite applications.
A module is designed as a unit for encapsulation; it is a container for service components. A service component represents business rules, human tasks, processes, and so on. Neither the type, nor the number of service components inside a module, affect how each module interacts with other modules in any service-oriented integration scenario.
A service component can be implemented by various service-implementation types. The following table lists the supported service-implementation types in WebSphere Integration Developer.
| Business process | Consists of a series of activities or steps executed in a specific order, sequentially or in parallel. It provides the primary means for coordinating enterprise services and describing business logic. The business process itself can be represented as a service and exported as a WSDL following the Web services-BPEL specifications. |
|---|---|
| Business state machine | An event-based business transaction that defines a set of states for a given
part of the application. It moves from one valid state to another based on
external events that it receives. Applications, or part thereof, which have
recurrent states and can have event loops, are ideally represented by business
state machines. WebSphere Integration Developer provides a state machine editor and a graphical interface that you can use to define the state machine. Requires little or no Java™. programming experience. |
| Business rules | Provide the ability to represent business rules in a format that can be
encapsulated and externalized from the core business logic implementation.
Rules and policies are considered first-class constructs in an SOA, because they
are reusable building blocks that can be reused across multiple applications
and business processes. WebSphere Integration Developer provides a business rules editor that allows the specification of business rules in rule sets and decision tables. |
| Selectors | Provide the ability to dynamically route a service request to different service implementations based on a configurable parameter. The parameter supported currently is a calendar date. Provides a framework for dynamic endpoint selection of service implementations. |
| Interface maps | Describes how an operation of one service translates into another. You can map operations and input and output messages between a set of interfaces through a drag-and-drop, graphical mechanism using the interface mapping editor. This mapping allows WebSphere Integration Developer to homogenize any differences between a source and target service pairs. |
| Business object editor | Also called a data map, is used for translating business data from one type to another. It is often necessary to map one business object into another when coordinating between heterogeneous systems, or even as part of normal business logic. The business object editor provides a graphical mechanism to map business objects through its support of 1—1, 1—m, m—1, m—n mapping relationships. |
| Human task | Encapsulates a unit of work done by a human. It provides the ability to encapsulate the escalation process between subordinates and managers. You can configure it using the graphical human task editor. Supporting human tasks as a service implementation mechanism allows it to be a participant in a business process. |
The business logic implemented as services in an integrated development environment, such as IBM Rational Software Architect, can be imported as partner links into WebSphere Integration Developer, and you can subsequently use it in a process orchestration. You can also import services that are provisioned in a repository, such as WebSphere Service Registry and Repository, into WebSphere Integration Developer as partner links. Then you can use them to implement business processes. WebSphere Integration Developer provides an efficient mechanism to integrate with existing legacy and packaged applications with the WebSphere Adapter suite.
The modules and libraries that you develop and package in WebSphere Integration Developer can be seamlessly deployed.
WebSphere Process Server provides a run-time environment to execute business processes that are developed to the Web Services-BPEL specifications. It also:
- Supports the IBM SOA programming model based on SCA and service data object (SDO) technology.
- Provides a run time for the services, business processes, and composite applications that are developed using WebSphere Integration Developer.
- Provides the same level of reliability, performance, scalability, and security as the market-proven WebSphere Application Server, on which it is built.
Because it's the platform to execute business processes, WebSphere Process Server also provides a compensation mechanism that allows activities in a process to roll back when a fault occurs in a process step.
WebSphere Process Server lets BPM applications access and integrate with external resources using a standards-based technique. It uses J2EE standards to provide access points to resources such as data sources, resource adapters for various applications and technologies, and Java Messaging Service (JMS) resources.
With WebSphere Process Server, you also get a testing environment to test whether the installed BPM applications are working as intended. The Business Process Choreographer Explorer is a browser-based client that runs within WebSphere Process Server. It allows quick testing (starting, stopping, debugging, retrying, displaying, and so on) of applications without the need to build client applications.
WebSphere Process Server also provides administrative tools from an administrative console to let you:
- Configure resources and deploy, manage, and troubleshoot applications.
- Configure business rules dynamically.
- Search, introspect, retry, and delete processes.
- Search, display, and track common base events that are emitted from business processes and their constituent SCA components.
WebSphere Business Monitor V6 is an enterprise application suite that measures business performance, monitors processes and workflow, and reports on business operations. It also provides real-time data, metrics, and analytics that are fed back to the modeling phase through the WebSphere Business Monitor tool to support an iterative cycle for continuous process improvement. The following table outlines some of the salient features of WebSphere Business Monitor.
| Feature | Benefits |
|---|---|
| Management of in-flight business processes | You can monitor execute processes and get process status, execution paths, inspection of process-instance data, and examination of duration and costs. You can administer process instances by suspending and resuming process instances and transferring work items between user roles. |
| Quick response to critical conditions | Improve customer service and satisfaction by reviewing running processes and examining arriving events for conditions that require action. Alerts and e-mails notify the appropriate user for follow-up action. Enterprise takes action on critical conditions, catering to customers in a proactive rather than reactive manner. |
| Improved accuracy through real-time data in future models | Reduce risk by loading real-time data and information back into WebSphere Business Monitor for analysis. When process "actuals" are used for modeling and simulation, you get a more accurate representation of the existing process, permitting better simulation and analysis. Resulting new processes will be more likely to meet their projected performance goals. |
| Ability to monitor executable processes in real time | Improve compliance and SLA tracking by monitoring in real time. Analyze a
large number of event messages and capture information, before
filtering the data into relevant, consumable, business-level information
pertinent to the user. Update the KPIs in real time when the
process is executing, and display it in a variety of forms pertaining to the
user. Examples views are: KPI table view, scorecard view with KPIs grouped in categories, and a gauge view displaying KPIs as automatic gauges with defined targets and limits. |
| Gathering business intelligence from collected data | Analyze business metrics over time to analyze trends. The Report view provides performance reports relative to a time-axis. Such reports typically contain tables and graphs that analyze historical data in the performance- warehouse data store. The Report view has built-in analysis types, including Quartile, Trend, and Control Analysis, with many chart-type options. The Dimensional view provides a multidimensional view of business data. Users can pivot on dimensions to view the performance aspects. |
There are several different SOA scenarios that IBM identifies as the most commonly occurring in typical SOA-based IT projects. To help customers get started with SOA, IBM offers business-centric and IT-centric SOA entry points and scenarios. IBM also provides comprehensive guidance on how each scenario should be modeled, designed, and implemented using IBM tools, products, and methodologies.
This article addresses the BPM scenario—the third SOA scenario. The BPM scenario empowers a business to strategically align its core assets—people, information, technology, and business processes—to create a single, integrated view of the enterprise. This view, aided by a supporting framework, fosters the implementation and practice of an iterative cycle of continuous business process improvement.
In this article you learned about aligning a project's functional requirements to the generic use cases that represent the BPM scenario. Details about the BPM life cycle were included, along with an overview of the features and functions of the recommended tools and products to realize a typical implementation of the BPM scenario.
Learn
- Read the other parts of this series:
- Part 1: Realizing Service-Oriented Architecture - IBM tools and products for implementing SOA systems
- Part 2: An introduction to SOA solution scenarios
- Part 3: Top ten tips for writing great IT project proposals
- Part 4: Scenario 1: Service creation options in a real-world SOA scenario
- Part 5: Scenario 2: Service connectivity options in a real-world SOA scenario
- Part 6: Why Business Process Management (BPM) is important to an enterprise
- Learn more about
the IBM SOA foundation.
- Take this guided tour of
WebSphere Integration Developer.
-
"Getting started with WebSphere Enterprise Service Bus and WebSphere Integration Developer"
(developerWorks, Jan 2006) provides an introduction to how WebSphere Integration
Developer is used to build mediation flows for the WebSphere Enterprise Service
Bus.
- Gartner offers research services, analysts and
consultants, executive programs, and more.
- Get started with
Tivoli
Composite Application Manager for
SOA.
- Learn more about
WebSphere Adapters.
- Get an introduction to modeling by reading
"Model a business process with WebSphere Business Modeler"
(developerWorks, Mar 2006).
-
"From business process to service model architecture using IBM WebSphere Business Modeler and IBM Rational Software Architect"
(developerWorks, Dec 2007) discusses how to transform business process models into
a service model.
- Read part 4 of a series that introduces
business activity monitoring,
"Introduction to WebSphere Business Monitor dashboard"
(developerWorks, Mar 2007). It also provides links to the first three articles of
the series.
- The IBM Redbook
Patterns: SOA Foundation - Business Process Management Scenario
focuses on the Business Process Management Service-Oriented Architecture (SOA)
scenario of the IBM SOA Foundation.
- In the
Architecture area on developerWorks,
get the resources you need to advance your skills in the architecture arena.
- Browse the
technology bookstore
for books on these and other technical topics.
Discuss
- Check out
developerWorks
blogs and
get involved in the
developerWorks community.

Tilak Mitra is a Senior Certified Executive IT Architect in IBM. He specializes in SOAs, helping IBM in its business strategy and direction in SOA. He also works as an SOA subject matter expert, helping clients in their SOA-based business transformation, with a focus on complex and large-scale enterprise architectures. His current focus is on building reusable assets around Composite Business Services (CBS) that has the ability to run on multiple platforms like the SOA stacks for IBM, SAP and so on. He lives in sunny South Florida and, while not at work, is engrossed in the games of cricket and table tennis. Tilak did his Bachelors in Physics from Presidency College, Calcutta, India, and has an Integrated Bachelors and Masters in EE from Indian Institute of Science, Bangalore, India. Find out more about SOA at Tilak's blog. View Tilak Mitra's profile on LinkedIn or e-mail him with your suggestions at tmitra@us.ibm.com





