As Published In

Oracle Magazine
March/April 2005
Feature

Containing Business Processes
By Alan Joch

A new Web standard orchestrates business process flexibility and synchronization.

Give a violin to a classical music master such as Itzhak Perlman, and he can single-handedly create a stirring solo. For a fuller sound, you might team him with an orchestra of world-renowned musicians. But no matter how accomplished the individual players are, a talented conductor is key to organizing everyone and keeping the music flowing harmoniously.

Harmony also rules in Web services. Those tightly focused software components that perform tasks alone or with guidance can dynamically join forces to create an interconnected business process such as an order-processing system.

In the past, Web services integration was based on nonstandard proprietary protocols that created integration headaches. But a new talent has taken center stage, a maturing standard known as the Business Process Execution Language (BPEL) that lets businesses orchestrate and synchronize Web services. BPEL isn't limited to just Simple Object Access Protocol (SOAP) Web services; through a special framework, a BPEL process can invoke Web services regardless of their format.

Policy Studies Inc. (PSI), a Denver-based outsourcer and technology consulting firm for state and local governments, is an early adopter of BPEL, using it to manage a system that processes eligibility and enrollment operations for the State Children's Health Insurance Program (SCHIP). Open-standards BPEL provides a way for PSI to quickly customize the application for each client while keeping development costs to a minimum, which improves PSI's competitive position.

"In our business, short time to market is very important," says Robert Wales, vice president of enterprise architecture at PSI. "The flexibility BPEL provides is a big advantage. We can take our application and tailor and redeploy it for another state. This helps us perform better than most companies in this market in terms of systems development ROI."

Inside Service-oriented architectures

BPEL adoption is part of a larger movement by large- and midsize companies toward service-oriented architecture (SOA), which delineates a new world of interconnected services. In the past, complex and proprietary "tightly coupled" applications reigned. Developers wrote single, large workflow programs to which companies adapted their internal processes or customized the software to fit their needs. "Loosely coupled" Web services now promise mix-and-match flexibility for companies that only need to revise individual components or plug in new ones as business conditions change.

Most Web services rely on open standards such as XML schemas, for data models; SOAP, for interservice communication; and Web Services Description Language (WSDL), for defining the location and capabilities of services. BPEL joins the crew with an open-standards way to orchestrate Web services into process workflows.

Technology experts believe that BPEL is poised for takeoff. "We think it will become one of the more important and prevalent Web services technologies in the years ahead," says David Smith, vice president at technology research and analysis consultancy Gartner, in Stamford, Connecticut. "As people try to do more and more with Web services, they are increasingly going to be looking at ways to orchestrate them, and that's what BPEL is all about," Smith explains. Those who already use Web services are good candidates for using BPEL to extend the services by interconnecting them within larger processes, he adds.

Financial, telecommunications, government, and manufacturing organizations are among the early users of BPEL for creating Web-services-based workflows. For example, when a customer requests new DSL service, the telecom provider may use an order management system comprising individual Web services to enter the order, pull a DSL modem from inventory, ship the device to the customer, and schedule a technician to reprogram a switch in the field. Exceptions to the standard fulfillment process can occur anywhere along that workflow. Orders for modems that are out of stock may divert to a related workflow that pings a manufacturer for additional modems and sends a back-order notice to the customer. BPEL provides the framework to keep these complicated workflows humming.

Among BPEL's selling points is the widespread support it enjoys from major software vendors, including Oracle. Oracle BPEL Process Manager 10g includes a J2EE-based BPEL server that runs in conjunction with Oracle Application Server 10g or any other J2EE application server. "Oracle is paving the way in terms of having one of the first implementations that use BPEL," Smith observes.

Oracle will introduce an enhanced Oracle BPEL Process Manager in conjunction with a new release of Oracle Application Server 10g (see the "SOA-Savvy App Server" sidebar). In addition to the expanded BPEL offering, Oracle Application Server 10g will include new business activity monitoring (BAM) capabilities as part of Oracle Integration (see the "BAM: Looking Under the Business Processing Covers" sidebar) and an expanded human workflow component that will be integrated directly within the Oracle BPEL Server.

Oracle BPEL Process Manager and Oracle BPEL Server

Performance was a key criterion when PSI chose Oracle's BPEL server. "We did some 'smoke tests,' capacity tests in which we tried to push the Oracle BPEL Server until it ran out of room," PSI's Wales recalls. "With those, we satisfied ourselves that we could get tens of thousands of BPEL processes in flight at any given time and get hundreds of thousands of processes executing each day."
SOA-Savvy App Server

The latest version of Oracle's application server, Oracle Application Server 10g Release 2, includes several new service-oriented architecture (SOA) and enterprise grid computing features, as well as enhancements to the suite's business integration capabilities.

To improve the productivity of developers who build SOA and J2EE applications, the new release includes a version of Oracle JDeveloper 10g with support for SOA standards such as WSIF, WS-Reliability, WS-Security, and WS-Policy. The technology also now supports JavaServer Faces, a standards-based user interface framework for server-side Java applications deployed over the Web. Oracle also has one of the largest collections of JavaServer Faces components available today with Oracle ADF Faces Components, a collection of 82 JavaServer Faces components.

New enterprise integration capabilities consist of enhanced business process automation and monitoring with Oracle BPEL Process Manager 10g, business activity monitoring (BAM), and business event management capabilities. Additionally, the release provides updated and automated support for a wide variety of industry protocols and standards, including RosettaNet, HL7, EDI, EDIFACT, AS2, UCCNet, and SWIFT.

For enterprise grid computing, Oracle Application Server 10g Release 2 provides high-availability features such as automatic fault recovery, multitier failover notification, a flashback feature, and enhanced clustering and backup-and-recovery capabilities.

Oracle BPEL Process Manager lets developers incorporate any Web services that use WSDL or SOAP into a workflow process. Thanks to WSIF (Web Services Invocation Framework), Oracle BPEL Process Manager can also integrate Java and Enterprise JavaBeans (EJB) code into a BPEL process. WSIF is a simple Java API used for invoking Web services regardless of their format. Instead of working directly with SOAP APIs (the standard for Web services), developers can interact with abstract representations of Web services, allowing them to work with the same programming model, regardless of how the Web service is implemented. "Through a WSIF binding, companies can get the native performance of Java," says David Shaffer, director of product management for Oracle BPEL Process Manager. "A developer doesn't have to know whether those services are implemented in Java and they're communicating through Java native methods or whether they're communicating via SOAP."

Oracle BPEL Process Manager also incorporates a service that makes Java Message Service communications look like those of any other asynchronous service. "That enables people to integrate messages over, say, MQ Series into their BPEL processes just like any other service," Shaffer adds. In addition, Oracle BPEL Process Manager handles simple HTTP get-and-post requests, e-mail messages, and Java Connector Architecture adapters that connect to back-end systems.

The Oracle BPEL Process Manager also helps keep workflows reliable. If the system crashes in the middle of executing a process flow, Oracle BPEL Process Manager will maintain the flow state at the point of interruption, so the process can resume when the system restarts. Oracle BPEL Designer, a programming module within Oracle BPEL Process Manager, provides a graphical drag-and-drop interface for creating workflows. Oracle BPEL Designer includes a menu of standard synchronous or asynchronous BPEL services or lets developers create their own templates for invoking custom activities. "Mainstream developers can now be integration developers, because BPEL standardizes all of that process logic," Shaffer says.

The server is made even more reliable by its integration with the entire Oracle technology stack. "The benefit of running on top of the Oracle database and application server is that you get the advantages of the grid architecture," says Ashish Mohindroo, director of product marketing at Oracle. "If one server goes down, the process still executes, because of technologies like failover and load balancing. You can also scale the system by simply adding more servers."

Managing Volatility

PSI is relying on Oracle BPEL Process Manager because all of these capabilities are making the company more flexible and better able to respond to changing business conditions. For example, eligibility and enrollment applications are complex, because of the many steps that are required to process cases and the complexity of the eligibility determination logic in government-subsidized health insurance programs. Applicants must provide proof of income and citizenship, and program representatives may talk with families numerous times during the application process. "It's a volatile workflow—it tends to change quite a bit over time," Wales explains. "You've got to have a process in place that you can modify in relatively short order to meet the demands of a pretty demanding stakeholder group."
Snapshots

Policy Studies Inc.
Denver, Colorado
www.policy-studies.com
Policy Studies Inc. provides outsourcing, consulting, and information technology services to state and local governments across the United States, as well as the U.S. federal government.
Year founded: 1984
Employees: 1,600
Oracle products: Oracle Database, Oracle BPEL Process Manager

CenterStone Software
Hopkinton, Massachusetts
www.centerstonesoft.com
CenterStone Software is an independent software vendor that targets Global 2000 companies with its eCenter One solution, a comprehensive application for real estate and facilities management.
Year founded: 1999
Employees: 50
Oracle products: Oracle BPEL Process Manager

Oracle BPEL Process Manager, he says, gives the PSI application "the verbs and syntax" to make this happen. "We can take 42 discrete Web services that all do unique things and compose them into a business process that does something useful, such as process somebody's application to or enrollment in a specific managed care organization," he says.

PSI considered commercial workflow-centric solutions first but gravitated to Oracle BPEL Process Manager because it is standards-based and because it provides better ROI. "These are three-to-five-year contracts, and developing a complete system solution with payoffs in that short time means we have to be more efficient than most other companies," he says.

Code reusability and short time to market are the keys to efficiency, he adds, and Oracle BPEL Process Manager within an SOA environment gives PSI that edge. On top of that, Wales likes Oracle BPEL Process Manager's long-term potential. "We believe that most of our potential business partners will be evolving toward an SOA. Using BPEL is a strategic choice. We think that in three to five years, we'll be composing systems that include our business partners' components and BPEL will orchestrate those activities."

CenterStone Software, in Hopkinton, Massachusetts, also gravitated to Oracle BPEL Process Manager, for many of the same reasons—in particular because Oracle BPEL is an open standard that helped the independent software vendor get a leg up on its competitors by automating expensive manual processes for its large corporate clients.

The eCenter One application, CenterStone's workplace resource management solution, controls all aspects of corporate real estate and facilities management, from space planning to move and lease administration to work order processing. "Everything that's necessary to put somebody in a space and turn the lights on," says Ross Leibowitz, CenterStone's chief technology officer.

Behind these activities are a wide range of complex business processes and related systems and job functions. "Our customers want to automate all these various business processes, and BPEL allows us to do that," Leibowitz says.

These business processes may tap a legacy application, a component of eCenter One, a Web service, or a manual process performed by a person. "If someone says his office is too hot, we want a workflow that looks at where the person is sitting and routes a message to the right facilities person or to a service provider who handles the building's heating and cooling issues," he explains. "This message may be an e-mail or perhaps a Web service call that sends out a request and gets a response back."
Next Steps

READ about Oracle BPEL Process Manager

LEARN about Oracle Application Server 10g

DOWNLOAD Oracle Application Server 10g

Providing a flexible way to build these types of workflows was a BPEL selling point for CenterStone, but not the only one, Leibowitz says. "We also knew that as facilities automation systems became more prevalent, we'd be linking in a self-service component; so when somebody thinks his office is too hot, he would send a message directly to the HVAC system. We're combining systems and people to gain efficiency."

Big Ideas

BPEL gives SOA pioneers another advantage, by allowing them to implement business process management (BPM) systems piece by piece, rather than in a complex and costly "big bang" approach dictated by traditional enterprise application integration and proprietary BPM technologies. "You don't have to rip out all of your existing systems; you can use BPEL to extend your existing application and start moving in the direction of Web services and business process integration," Shaffer says. "This means that when a corporation defines its business processes, it's doing it in a standard fashion that's vendor-independent. That's a powerful model that gives customers control of what's often their most important asset: their business processes."

BAM: Looking Under the Business Processing Covers

Technologies for business activity monitoring (BAM) work hand in hand with the business process efficiencies made possible with Business Process Execution Language (BPEL).

BAM provides instant visibility into business operations, so managers can proactively monitor and analyze their business processes in real time, identify bottlenecks, and uncover opportunities to optimize the workflows for better performance.

Oracle's BAM capabilities, part of the Oracle Application Server 10g Enterprise Edition and Oracle Integration products, capture events as they happen, compare performance with established metrics and thresholds, display the results in real-time dashboards, and trigger alerts when necessary.

Underlying Oracle's BAM are sensors that capture the event activities an end user wants BAM to monitor. These sensors support a broad range of event sources, including applications, databases, messaging systems (JMS, MQ, AQ), RFID sensors, and business process tools such as Oracle BPEL Process Manager. "Oracle stands apart in its BAM offering with our comprehensive event strategy to monitor, manage, and analyze events across so many different systems," says Kevin Clugage, Oracle product marketing manager.

Oracle's BPEL capabilities and BAM functionality work to help you create (using BPEL) and monitor (using BAM) a complex process flow. "When you implement your processes in BPEL, there is virtually no effort to incorporate BAM," says David Shaffer, director of product management for Oracle BPEL Process Manager. "Together this is the killer app for automating business processes."

For example, suppose a financial institution uses Oracle BPEL Process Manager to create a loan procurement process. This procurement process takes loan applications entered by customers and automatically processes them, first invoking a service that obtains the applicant's credit rating, then executing processes that collect information on various loan types available to the application, and finally evaluating and ranking the loan offers.

The financial institution is interested in evaluating several aspects of loan applications in real time, so it has used the BAM capabilities of Oracle Application Server to set up a series of events that will analyze and monitor the loan process. For example, a loan officer wants to view the number of applications rejected and accepted during the day, along with the average time each step of the loan process takes. The loan officer also wants to view those applications based on other variables such as the loan amount, the completeness of the original loan application, and the overall loan volume. BAM is able to capture related business events from the various heterogeneous systems and applications involved in the loan process and then automatically perform complex calculations and compare results against key performance indicators (KPIs), a powerful feature of Oracle's BAM capabilities.

The loan officer can view results in a BAM dashboard, make decisions based on that information, and contact branches while loans are still being processed. In addition, Oracle Application Server BAM automatically monitors and calculates the risk of all outstanding loan applications. When certain risk-related thresholds are exceeded, the bank's risk manager receives an alert.

Even companies that haven't yet adopted SOA-type frameworks can make use of BAM, adds Clugage. "Look at what the implicit processes are, identify what events you're capturing inside of those business processes, and then use BAM as a direct connection to monitor those events," he says.


Alan Joch (ajoch@monad.net) is a New England-based technology writer specializing in enterprise and internet applications.


Please rate this document:

Excellent Good Average Below Average Poor


Send us your comments

E-mail this page
Printer View Printer View
Oracle Is The Information Company About Oracle | Oracle RSS Feeds | Careers | Contact Us | Site Maps | Legal Notices | Terms of Use | Privacy