Friday | 5 September, 2008
Computerworld
BPEL
Jan Matlis 06/07/2005 13:57:46

Computerworld Buyer's Guide - Vendors Matched to this Article
Related Features
  • +

    Strategies for Dealing With IT Complexity 24/12/2007 10:30:47

    Every innovation, every business process improvement, comes with an IT complexity tax that must be paid by CIOs in time, money and sweat. Here are strategies to mitigate the increasing complexity of IT as it enables new business.
    Every innovation, every business process improvement, comes with an IT complexity tax that must be paid by CIOs in time, money and sweat. Here are strategies to mitigate the increasing complexity of IT as it enables new business.
  • +

    Your World. . . Hacked 02/10/2007 10:51:23

    As your business becomes more collaborative and global, the risks to your company’s trade secrets rise proportionally. Fortunately, there are new strategies to protect the data that allows you to compete
    The call to Bob Bailey, an IT executive with a major US government contractor, came on an otherwise ordinary day in October 2003. "Why are you attacking us?" demanded the caller, an IT leader with a Silicon Valley manufacturer. He wanted to know why Bailey's company had launched a denial-of-service attack against his network
Additional Resources
Executive Guides
Whitepapers
Zones
Zone logoZones provide focussed content from Computerworld and leading technology partners.

Newsletter Subscription

Sign up for our Computerworld newsletters!
Computerworld's twice-daily news service keeps you in touch with the latest, most important headlines from Australia and around the world.
Keep up with the latest virtualisation technologies, products, news and features.
RSS Feeds

For its advocates, Business Process Execution Language promises to be the capstone in the Web services standards stack that makes Web-based commerce work. It was designed to integrate a variety of applications that are run to achieve a particular business objective -- and to do it in a way that's platform- and code-independent, not to mention one that's scalable and flexible.

It would be possible to hammer out Java code or a set of Unix scripts that could manage a series of processes -- such as the steps taken by an insurance broker running a series of Web-based applications to match the needs of a customer -- but the task would be labourious, and the finished code would probably be cumbersome. Writing a BPEL application, on the other hand, provides a layer of abstraction through which all the steps can be connected and managed.

Sitting in front of a BPEL designer graphical user interface, a business manager such as our insurance broker could define a business process in BPEL that would be independent of the underlying applications. If those applications were to change, the insurance broker's arrangement of them in the BPEL designer GUI could stay the same. Or if the insurance broker's business plan changed, he could rearrange the processes, as well as add new ones or subtract others, within the GUI.

To run BPEL code that has been generated, either through a GUI or by an intrepid XML programmer, the code is parsed by a BPEL engine, which does the same kind of parsing job as other XML interpreters. Each process that's run is characterized by a Web Services Description Language (WSDL) document, and its messages are transmitted across the Web by the Simple Object Access Protocol (SOAP). Processes that look up available Web services can use the Universal Description, Discovery and Integration (UDDI) directory.

In order to define business processes, BPEL has been endowed with a variety of XML constructs, including "partners", which are definitions of the actors in a business transaction; "containers", which are definitions of the messages that need to be transmitted; "operations", which are definitions of the type of Web services that are required; and "port types", which are definitions of the kinds of Web services connections that are required for operations.

BPEL's capacity goes beyond the range of traditional, definitional XML types. By defining processes, it blurs the distinction between XML -- a definition language -- and executable languages like Java and Unix shell scripts; hence the "execution" in its name.

To define how processes should be executed, BPEL has XML definitions or commands that specify the order of operations, the looping of operations, and synchronous and asynchronous requirements for operations. (Synchronous operations block requesters until a request is either fulfilled or denied. Asynchronous operations allow requesters to continue without waiting for a response.) BPEL also has commands to take care of fault conditions and commands to undo or reverse operations.

An insurance-broker BPEL program, for example, might request financial information from a customer first, loop through insurance company offerings that it discovers from a UDDI search (some of which may be time-based offers) and finally present a package to the customer. If an error occurs or if the customer rejects the offers, even after tentatively accepting one, the BPEL program will make the proper adjustments.

Several large companies have been involved in defining BPEL, and many of them participated in previous efforts to create standards for business process execution for Web services. They include Adobe Systems, Avaya, BEA Systems, Booz Allen Hamilton, Electronic Data Systems, Hewlett-Packard, NEC, Novell, Oracle, Panacea Corp, SAP and SeeBeyond Technology. However, IBM and Microsoft have had the most impact on defining how execution works in BPEL. IBM's Web Services Flow Language, which uses a directed graph approach, and Microsoft's Xlang, which uses a block-structured approach, were brought together in August 2002 under the aegis of the Organization for the Advancement of Structured Information Standards to create the first draft of the BPEL standard.

Directed graphs specify the choices that must be made to get from one transactional state to another. For example, customer financial information must be received before insurance quotes are solicited. Block-structured languages offer the kind of programming flexibility familiar to Java, C and C++ programmers.

The consensus among analysts appears to be that BPEL will "orchestrate" business processes, meaning that centralized control of Web services will reside in a BPEL engine. However, the protocol seems to leave open the possibility for "choreographing" Web services at a future date. Choreographed Web services interact without being directed by a central, controlling program. The ability in BPEL to publish the execution requirements of a Web service would seem to be what's needed for the more decentralized vision of choreography.

Someday, instead of harried office administrators talking into three phones at once, or stock brokers monitoring banks of terminals while bidding in the seeming anarchy of the exchange floor, or even lonely consumers trying to synchronize airline, hotel and car reservations, BPEL engines may be doing it all with little more than the occasional mouse click from the humans involved.

Environmental Issues

  • BPEL orchestration servers provide a runtime environment for executing BPEL business processes.
  • BPEL servers work in both J2EE or .Net application server environments, where they can make use of the services provided by application servers, such as security, transactions, scalability and integration with databases, as well components such as Enterprise JavaBeans and messaging systems such as Java Message Service.
  • BPEL orchestration servers for J2EE:
  • Oracle BPEL Process Manager
  • IBM WebSphere Business Integration Server Foundation
  • IBM alphaWorks BPWS4J
  • OpenStorm Software's Service Orchestrator
  • Vergil Technology's VCAB Server
  • Active Endpoints's ActiveWebflow Server
  • ActiveBPEL Engine, an open-source technology released under the GPL by ActiveBPEL
  • Bexee BPEL Execution Engine, an open-source, J2EE-based BPEL engine
  • Cape Clear Software's Orchestrator, an enterprise service bus containing an enterprise BPEL engine
  • FiveSight Technologies's Process eXecution Engine
  • SeeBeyond's eInsight Business Process Manager
  • BPEL orchestration servers based on .Net:
  • Microsoft BizTalk 2004
  • * OpenStorm Service Orchestrator
    Computerworld Buyer's Guide - Vendors Matched to this Article
Market Place

Computerworld Member Login


 

Prioritizing Services with IT Service Management (ITSM)

Computerworld Live Webinar
Wednesday 20th, August 2008
11:00am EST (Sydney, Australia)

To be repeated on:

Thursday 4th, September 2008
11:00am EST (Sydney Australia)

Sign up and receive a free copy of The Forrester WaveTM Service Desk Management Tools, Q2 2008 at the conclusion of the Webinar.

Attend and discover:

  • How to deliver value to your business through ITSM
  • Best practice ITSM implementation
  • Why emphasis is changing from optimizing IT management processes to better servicing customers and demonstrating real dollar value
  • If service-oriented ITSM is best for your business
Whitepaper

Realizing the Value of Unified Communications

Discover how the integration of disparate technologies in your company can lead to greater user productivity, improved management, lower costs, higher efficiency, and easier risk mitigation.

Enterprise IT Buyer's Guide
Find Technology Vendors Fast
 
Find vendors by name | Find by category
Sponsored Links