Issue 29:
SOA BUSINESS PROCESS MANAGEMENT (BPM) PRODUCTS
Printable
PDF Version
CONTENTS
Introduction
PERTH, AUSTRALIA – May 5, 2005: This is Issue No: 29 of
"The
Technology Newsletter" (TEN) - a free quarterly email
newsletter that is published world-wide.
You can opt-out of receiving future issues of TEN by replying with
“REMOVE <your email address>” in the Subject. Please ensure you
use the same email address that was used to send this issue to
you.
We
have moved all past issues of “The Enterprise Newsletter”
(TEN) to our new web site at
http://www.ies.aust.com/. Click on the
Papers
link from any page or use the following direct link:
Clive Finkelstein
TEN - The Enterprise Newsletter
Back to Contents
Upcoming
Events
A
series of 2-day seminars, titled: "Rapid Enterprise
Architecture Delivery" will be presented in May - June by
Clive Finkelstein. These are scheduled in Auckland NZ (May 9-10),
Sydney (May 12-13) and Melbourne (June 6-7). While these three
seminars are now completely sold out, some seats are still
available in Brisbane (June 9-10).
Clive Finkelstein will also be presenting a 1-day version of this
seminar in the USA in May, titled: "Rapid Delivery of
Enterprise Architecture":
-
At the TDWI
World Conference in Baltimore MD on Sunday May 15 (http://www.tdwi.org/).
-
In Richmond VA
on Thursday May 19:
For details of Methodology and Technology courses,
or for Project Descriptions, visit the IES web site at
http://www.ies.aust.com/. Click on the
Courses
or
Projects link from any page.
Back to Contents
Feature:
SOA Business Process Management (BPM) Products
In an earlier issue (TEN#27) I
discussed three Business Process Management (BPM) languages: Business
Process Execution Language (BPEL); Business Process Modeling Language
(BPML); and Business Process Specification Schema (BPSS) for ebXML.
In
this issue (TEN#29) I discuss some of the major BPM software
vendors and their products. These products automatically generate
XML-based executable code directly from workflow diagrams or
process models in one or more BPM language: BPEL, BPML or BPSS.
I
describe the following SOA BPM products for automatic BPM code
generation:
In the years ahead,
these SOA BPM products – and others still in development – promise
(in time) to transform systems development from a slow, error-prone
manual coding effort eventually into the rapid, automatic generation
of executable BPM code. Today when business changes occur, we have had
to manually change code in monolithic programs and manually retest.
Instead, in a few years using SOA BPM products these changes will be made diagrammatically at the process
model or workflow diagram level. Executable code that reflects these
changes will then be automatically regenerated.
Back to Contents
Microsoft BizTalk
Server 2004
The current edition of BizTalk is
Microsoft BizTalk Server 2004. This uses the BizTalk Orchestration
Designer for BPM, based on Visio. Microsoft use the term
“orchestration” (rather than “workflow”) to differentiate the
support by BizTalk Server 2004 for long-running business processes
that have many document interchanges over days or weeks. They
consider the term “workflow” refers mainly to short-running,
people-based processes that execute in minutes or hours. An
example of a BizTalk Orchestration diagram is shown in Figure 1.

Figure 1:
Microsoft BizTalk Orchestration Designer (Source:
Microsoft)
Figure 2 shows that Microsoft
provides extensive project support in BizTalk Server with the
definition, generation and testing of BizTalk projects within the
Visual Studio.NET Integrated Development Environment. Business
documents are used to generate XML Schema Definition (XSD) files,
used with BizTalk Data Mapper for data transformation. XML input
queues are pipelines for message input, with processed messages
directed to message output queues for further pipeline processing.
Within Visual Studio.NET, visual business processes are defined
using the BizTalk Orchestration Designer (see Figure 1). Extensive
training in BizTalk is available online from the Microsoft web
site.[1]

Figure 2:
Microsoft BizTalk Project Development (Source: Microsoft)
The most volatile parts of any
business process are typically the business rules. These rules are
coded as conditional logic in most systems development methods.
When these rules change, the conditional logic must also be
changed in every application program that references the relevant
rules.
To avoid this problem, BizTalk
Server 2004 also includes a Business Rules Engine. This is a
significant advance in the maintenance of business processes, when
business rules change. Each business rule and associated
conditional statements are expressed using business terminology in
the rules engine as shown in Figure 3. Each rule is referenced
from all Orchestration diagrams that need to execute the rule.
When a rule is changed in the engine, it is then automatically
changed in every Orchestration diagram that refers to the changed
rule: with dramatic improvement in maintenance cost and
responsiveness to business change.

Figure 3:
BizTalk Server 2004 Business Rules Engine (Source: Microsoft)
BizTalk Server 2004 also includes
support for Business Activity Monitoring and real-time tracking.
It generates executable BPEL XML-based code automatically from
orchestration diagrams and provides full support for Web Services
SOAP, WSDL and UDDI standards. Microsoft summarizes the features
of BizTalk Server 2004 as follows:
-
“Business Activity Monitoring:
Give information workers a real-time view of running business
processes with Microsoft Office tools.
-
Real-time Tracking: Follow
the real-time progress of documents and processes in BizTalk
Server applications.
-
Microsoft Visual Studio® .NET
Development Environment: Increase developer productivity
through a common development environment, and inherit all the
capabilities of Visual Studio .NET and the .NET Framework.
-
Microsoft Office InfoPath™
Integration: … InfoPath is a Microsoft Office System program
that provides … a front-end to BizTalk Server 2004 for entering
XML and consuming Web services.
-
Single Sign-on: Provide
unified authentication between heterogeneous systems and
applications (Windows and non-Windows).
-
Human-based Workflow:
Integrate people and processes with a single orchestration
engine.
-
Business Process Execution
Language (BPEL): Simplify cross-platform interoperability
for process orchestration with standards developed in
conjunction with other industry leaders (automatic generation of
BPEL from Orchestration diagrams.)
-
XML Web Services: Provide
ground-up support for XML Web services standards such as Web
Services Description Language (WSDL) and Universal Description,
Discovery and Integration (UDDI) …
-
Business Rules: Dynamically
change business processes to maximize organizational
flexibility.
-
Enhanced Scalability:
Construct massively scalable messaging and orchestration-based
applications through scale-out architecture.”
Back to Contents
IBM WebSphere Business
Integration Server Foundation
IBM offers extensive support for
Web Services and business process integration through its
WebSphere product family. WebSphere Studio Application
Developer is an Integrated Development Environment (IDE) for
developing J2EE Web Services. Business Process Management is
provided by the WebSphere Business Integration product
family.
We discussed earlier that business
process models are used so that business rules and processes can
be clearly documented for users. These schematic process diagrams
communicate business aspects of processes for users; IT developers
use UML diagrams to document the greater detail that they need for
coding. UML diagrams are very important when coding new software
from scratch, but with the increasing use of Web Services there
will be greater use of business process models for automatic
generation of executable BPM logic.
In 2002 IBM purchased Rational
Software and the Rational Rose UML product family to enhance their
move to Model-Driven Architecture for software development.
We saw in
TEN#27 (http://www.ies.aust.com/ten/ten27.htm)
in relation to ebXML BPSS that UML diagrams are used for automatic
generation of BPSS executable code. There has since been
significant IBM development activity to transform automatically
between Business Process Models and UML diagrams using the IBM UML
Transformer. Refer to the IBM White Paper in
References[2]
for additional detail.
This business-process model
transformation feature ensures that both process models and UML
models are traceable. These models show broad process outlines,
functional requirements, and eventually the elements that actually
make up the software artifacts under construction. IBM states that
the UML Transformer allows developers to:
-
“Produce a clear set of
development plans.
-
Link UML Models to BPM Process
Models.
-
Model business-software systems
in UML using six different visual-diagrams: Class, Use Case,
Sequence, Collaboration, State, and Activity.
-
Transform common elements between
UML Models and BPM Business Process Models.
-
Use Sequence and Collaboration
diagrams to see the system's objects, the messages among the
objects, and the system's logic flows.”
IBM provides full J2EE support for
BPEL generation and execution from process models with IBM
WebSphere Business Integration Server Foundation V5.1 (WBISF),[3]
a follow-on product to WebSphere Application Server Enterprise
V5.0. It is used in conjunction with WebSphere Studio
Application Developer (AD) Integration Edition V5.1 to build
and deploy BPEL processes with a run-time environment for BPEL
execution. These products run on Windows, Linux, IBM z/OS and
OS/400 for execution.
A drag-and-drop design tool is
provided by Process Choreographer in WebSphere Studio Application
Developer to visually define the sequence and flow of business
processes, with compensation support for transaction “roll-back”
of loosely-coupled business processes that cannot be undone
automatically by the application server. Tools are provided for
defining, executing and managing business rules – organizing
business rules into logical categories using business rule
enterprise java beans. The support for volatile business rules
includes the ability to update business rules at run-time without
the need to bring the application or the server down.
WBISF also includes WebSphere
Business Integration Monitor, which is a “real-time monitor that utilizes visual dashboards to provide a
dynamic view of business processes, for business performance
management and improved decision making.”
As summarized by IBM:
“WebSphere Business Integration
Modeler is a state-of-the-art product used to define, model,
analyze, simulate, and report business processes extending WBISF
with business tooling to visualize process impact for today's
competitive global marketplace.”
Back to Contents
Oracle BPEL Server
Oracle offers the Oracle BPEL
Process Manager[4]
to automatically generate executable Business Process Execution
Language (BPEL) code from process models. Based on the J2EE
environment, it includes a drag-and-drop visual process designer
with support for Web Services, Java Message Service (JMS) and Java
Connector Architecture (JCA). It includes UDDI and Web Services
Inspection Language (WSIL) browser support.
The Oracle BPEL Process Manager
offers support for BPEL 1.1, with state and content management: it
stores the state of long-running transactions for asynchronous
message processing. Support is provided for parallel processing,
exception management, events, notifications and version control.
It automatically maintains full audit trail information, with both
a graphical and textual representation of process status and
history.
The BPEL Process Manager can be
clustered for both fault-tolerance and failover and for increasing
transaction volumes. For example, a single BPEL process instance
can be created on one server, automatically relocate to another
server if a server failure occurs (including during the execution
of a process) and then complete on a third server based on
distribution of load.
The Oracle BPEL Process Manager
runs on all of the major application servers, including Oracle
Application Server, IBM WebSphere, BEA WebLogic and JBoss.
Supported production deployment platforms include Windows, Linux,
Solaris and IBM z/OS. It can utilize Oracle, Microsoft SQL Server,
IBM DB2 and other DBMS products.
Back to Contents
SAP NetWeaver
SAP, a leader in the ERP
marketplace, has moved aggressively in recent years to build on
the strength of its SAP R/3 ERP assets and move its products to
the Internet.
Feb 2003 saw the release of SAP
NetWeaver. This is the technical foundation intended by SAP to be
used for all future development of the mySAP Business Suite.
NetWeaver is a major initiative by SAP, moving from its
proprietary development environment with ABAP to embrace open
architecture.[5]
It supports concurrent ABAP and J2EE execution with all J2EE
related standards, and provides Web Services support for SOAP,
WSDL and UDDI. All SAP BAPI interfaces are now available as Web
Services through WSDL. As part of NetWeaver, SAP Web Application
Server provides application development capability for
cross-functional business applications called Cross-Applications (xApps). NetWeaver supports platform
interoperability with Microsoft .NET and IBM WebSphere.
SAP is a member of the W3C, the Web
Services Interoperability organization (WS-I) and the Java
Community Process (JCP). It is also a member of OASIS (the
Organization for Advancement of Structured Information Standards)
and UN/CEFACT for EDI and ebXML.
NetWeaver supports Web Services
Choreography Interface (WSCI) for Business Process Management. SAP
has stated that NetWeaver will also support BPEL4WS. While no
announcement had been made by SAP (that I am aware of) at the time
of writing, it is anticipated that their endorsement of WSCI and
BPEL may result in enhancements to SAP Web Application Server.
They could leverage their knowledge of SAP R/3 business processes
for dynamic generation of WSCI, BPEL and/or BPML logic from
business process models.
Next I will discuss a new software
category: Business Process Management Systems (BPMS). I will
discuss Intalio | n3 and its support for SOA, BPEL,
BPML and BPSS.
Back to Contents
BPMS Vendor – Intalio |
n3
Each vendor that we discussed above
has existing software products in other categories, to which they
are adding Business Process Management (BPM) capabilities to move
those products into the BPM market. In contrast, Intalio was
established in 1999 specifically to develop Business Process
Management System (BPMS) software solely for this market. This
is a new category of software products: specifically developed to
support execution of BPM languages.
Intalio was a co-founder in August
2000 of the Business Process Management Initiative (BPMI.org). In
April 2003 Intalio joined IBM and Microsoft in co-submitting the
BPEL 1.1 specification to OASIS. It has been an active
participant in the definition of all three BPM languages: BPML,
BPEL and WSCI.
The Intalio | n3 BPMS
product[6]
was first released in Feb 2002, with Version 2.0 launched in Feb 2003. The Intalio | n3
product
architecture comprises Intalio | n3 Server, Designer,
Director and Projectors.
Intalio | n3 Server:
This is the run-time server for the execution of business
processes. It is written in Java, built around a process
transaction engine for asynchronous execution for both
short-running and long-running transactions. It includes a process
execution optimizer for both BPML and BPEL processes that can also
be extended to support future process modeling languages. It also
supports WSCI for defining the interfaces of business processes.
This allows processes within existing applications and workflow
systems to be exposed as virtual processes that can be reused
within the context of larger business processes.
Intalio | n3
Designer: This is a process design tool for use by business
analysts, software engineers and systems administrators. It is
used to model business processes, binding them to external systems
and user interfaces, for execution deployment to the Intalio | n3
Server. Existing business processes can be imported from many
business process modeling tools; these include Casewise Corporate
Modeler, IDS Scheer ARIS, Microsoft Visio, MEGA Process, Popkin
System Architect and Proforma ProVision.
Alternatively the Intalio | n3
Designer process modeling capability can be used. This uses Business Process Modeling Notation (BPMN). In time, BPMN may
eventually emerge as a standard for process modeling. It reflects
the process constructs offered by BPML and BPEL and supports all
language constructs of these two languages.
In addition, any process designed
with Intalio | n3 Designer can be turned into a
reusable process by automatically generating its public interface
using WSCI in one mouse click. This can then be
dragged-and-dropped as a process within any other business
process. This allows common processes to be easily shared for
reuse.
The Intalio | n3
Designer includes a data transformation mapping editor based on
XML Schema, so that any complex schema can be mapped into any
other schema graphically. It uses a process repository that can be
deployed on any existing RDBMS to support collaborative
development of executable business processes. Further, it offers
process management support for check-in / check-out, versioning
and role-based access control and can be integrated with source
control systems such as Merant PVCS, Microsoft Visual SourceSafe,
and Rational ClearCase. It supports both top-down and bottom-up
development, monitoring all changes to process models that are
committed to the repository by using a process life cycle
management approach.
Intalio | n3 Director
enables employees, customers and partners to direct the execution
of business processes and carry out business activity monitoring
tasks, using many existing workflow engines, groupware systems and
enterprise portals. It supports development of workflow-driven
user interfaces for advanced workflow requirements such as complex
alert escalation and task assignment and delegation.
The Intalio | n3
Director offers an extensive range of design widgets to develop
highly interactive process portlets. This includes simple widgets
for building static forms, as well as sophisticated widgets for
development of interactive reports and process dashboards.
Intalio | n3
Projectors: These are process-level middleware components that
are designed to provide connectivity to any process, user or
system without writing any code. These Projectors can be used at
design-time by Intalio | n3 Designer and also at
runtime by Intalio | n3 Server.
Intalio | n3 Projectors
provide the capability – discussed earlier for Intalio | n3
Designer – to import existing processes from process modeling
tools such as Casewise, ARIS, Visio, System Architect and
ProVision. This connectivity is at the process level, rather than
at the message or transaction level. Existing processes can be
exposed for reuse as process components within larger end-to-end
business processes,
Projectors allow the workflow
execution meta-models of existing groupware systems and workflow
engines to be mapped to Intalio | n3 Server. This
enables workflow processes to be directly imported also into
Intalio | n3 Designer as process interface processes.
As a result, support is provided for connection to: Invensys iBaan;
J.D. Edwards OneWorld; Oracle e-Business Suite 11i; PeopleSoft;
SAP R/3; and Siebel e-Business.
As evident from the Intalio web
site, connections with the following products are also supported:
IBM DB2 UDB; Microsoft SQL Server 2000; Oracle 8i and 9i; Software
AG ADABAS; Sybase ASE; IBM Directory Server, Lotus Domino;
Microsoft Active Directory; IBM Legacy products CICS, IMS and VSE/VSAM;
and many other middleware products from BEA, Borland, IBM, IONA,
Microsoft and TIBCO.
It is clear that a product such as
Intalio | n3 is the direction of BPMS for the future.
With its existing native support for BPML, BPEL and its use of
WSCI, Intalio has taken a green-fields approach. It does not need
to migrate customers from proprietary environments, as do the
other BPM products discussed above. Its ability to import existing
processes from many process modeling tools – with projectors to
connect a variety of external process sources – allow it to take
ready advantage of future developments in the BPM market.
Back to Contents
Summary of SOA BPM
Products
In this issue I discussed a number
of SOA BPM vendors and their software products: