ENTERPRISE ARCHITECTURE FOR INTEGRATION: Rapid Delivery Methods and Technologies Third Edition

By Clive Finkelstein

With Foreword by John Zachman

CHAPTER 14: SERVICE-ORIENTED ARCHITECTURE FOR INTEGRATION – PRODUCT DESCRIPTIONS Chapter 14: Service-Oriented Architecture Product Descriptions i

Table of Contents Contents Page

Chapter 14: Service-Oriented Architecture Products ...... 1 Infrastructure Vendors...... 2 BizTalk ...... 2 IBM WebSphere ...... 3 Oracle BPEL Server ...... 5 Process-Driven Integration Vendors...... 5 Software AG ...... 5 ERP Vendors ...... 9 SAP NetWeaver...... 9 EAI Vendors...... 10 webMethods Business Process Integrator ...... 10 SeeBeyond e*Insight ...... 11 TIBCO BusinessWorks ...... 12 Enterprise Portal Vendors ...... 12 Plumtree Enterprise Web...... 12 Vignette Process Workflow ...... 14 BPMS Vendors ...... 15 Intalio BPMS...... 15 Management of SOA Development...... 19 Infravio...... 19 Products ...... 19 Chapter 14: Service-Oriented Architecture Product Descriptions ii

Table of Figures Contents Page

Figure P14.1: Microsoft BizTalk Project Development (© 2004 Microsoft Corporation. [Reprinted with Permission])...... 2 Figure P14.2: BizTalk Server Business Rules Engine (© 2004 Microsoft Corporation. [Reprinted with Permission])...... 3 Figure P14.3: Enterprise Service Integrator includes BPM Workflow (© 2005 Software AG. [Reprinted with Permission])...... 7 Chapter 14: Service-Oriented Architecture Products 1

Chapter 14: Service-Oriented Architecture Products

Several SOA vendors and their BPM products are discussed in this Product Descriptions section of Chapter 14. The vendors and products that are covered in this section follow: Infrastructure Software Vendors  Microsoft  IBM  Oracle Process Driven Integration Vendors  Software AG ERP Vendors  SAP EAI Vendors  webMethods  SeeBeyond  TIBCO Enterprise Portal Vendors  Plumtree (now BEA)  Vignette Business Process Management System (BPMS) Vendors  Intalio  Software AG Management of SOA Development  Infravio Enterprise Service Bus (ESB) Products  Cordys Process Factory  FioranoESB Suite  Artix ESB  Polarlake Integration Suite Chapter 14: Service-Oriented Architecture Products 2

 Progress Sonic SOA Suite Infrastructure Vendors

Microsoft BizTalk

We saw in Chapter 11 that Microsoft BizTalk Server uses the BizTalk Orchestration Designer for BPM, which is based on Visio. The BizTalk Orchestration Designer is shown in Chapter 11 as Figure P11.1 [a].

Figure P14.1 shows that Microsoft provides extensive project support in BizTalk Server with the definition, generation and testing of BizTalk projects within the Visual Studio Integrated Development Environment as discussed in Chapter 13. Business documents can be used to generate XML Schema Definition (XSD) files, used with BizTalk Data Mapper for data transformation. We discussed this in Chapter 11 with Figure 11.3. 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. Extensive training in BizTalk is available online from the Microsoft web site [b].

Figure P14.1: Microsoft BizTalk Project Development (© 2004 Microsoft Corporation. [Reprinted with Permission])

a This figure is in “Chap-11-Products.pdf” at http://www.ies.aust.com/EA_Book/Chap-11-Products.pdf. b Visit the Microsoft BizTalk home page at http://www.microsoft.com/biztalk. The current version at the time of writing is BizTalk Server 2013. Links provide access to many BizTalk Server White Papers. Also see “Technical Resources” and “Learning Resources” within that. These resources include presentations with online demos. Chapter 14: Service-Oriented Architecture Products 3

The most volatile parts of any business process are typically the business rules. These rules have been coded as conditional logic with most systems development methods. When these rules have changed, the conditional logic must also be changed in every application program that references the relevant rules.

To avoid this problem, BizTalk Server also includes a Business Rules Engine. Each business rule and the associated conditional statements are expressed using business terminology in the rules engine as shown in Figure P14.2. 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.

Figure P14.2: BizTalk Server Business Rules Engine (© 2004 Microsoft Corporation. [Reprinted with Permission])

BizTalk Server also includes support for Business Activity Monitoring and real-time tracking, as we discussed in Chapter 11 for webMethods. It generates executable BPEL XML code automatically from orchestration diagrams and provides full support for Web Services SOAP, WSDL and UDDI standards. IBM WebSphere

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. The WebSphere Business Integration product family provides business Process Management.

We discussed earlier that business process models are used so that business rules and processes can be clearly documented for users [c]. These c This section is based on a White Paper titled: “Business Process Management with IBM Holosofx” in the IBM DeveloperWorks library at http://www.ibm.com/developerworks/ibm/library/i-holo/. Chapter 14: Service-Oriented Architecture Products 4

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 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. Model Driven Architecture (MDA) and Model-Driven Development (MDD) are emerging open standards from the Open Management Group at http://www.omg.org/.  In 2005 the OMG announced a merger of its BPM activities with the Business Process Management Initiative (BPMI) to advance the use of BPMN [d]. We were introduced to BPMN in Chapter 10. In Chapter 11 in relation to ebXML BPSS 2.0 (ebBP 2.0) we discussed that BPMN can be used by BPSS for automatic generation of BPSS executable code.

IBM provides full J2EE support for BPEL generation and execution from process models with IBM WebSphere Business Integration Server Foundation (WBISF) [e], a follow-on product to WebSphere Enterprise. It is used in conjunction with WebSphere Studio Application Developer (AD) Integration Edition 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 provided by the Process Choreographer in WebSphere Studio Application Developer is used 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 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.”

d See the OMG – BPMI announcement at http://www.omg.org/news/releases/pr2005/06-29-05.htm). e The announcement “IBM WebSphere Business Integration Server Foundation, V5.1 — for building and deploying service-oriented applications” is at http://www.ibm.com/. Search for “WBISF”. Chapter 14: Service-Oriented Architecture Products 5

Oracle BPEL Server

Oracle offers the Oracle BPEL Process Manager [f] to automatically generate executable BPEL code from process models. Based on the J2EE environment, it includes a drag-and-drop visual process designer with support for Web Services, JMS and JCA [g]. 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/failover and to handle 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, Oracle 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.

Process-Driven Integration Vendors

Software AG

Software AG provides a process-driven integration approach to deliver a standards-based SOA to align business and IT goals, enable process improvement and integrate people, processes and data for competitive advantage. Whether the objectives are to ensure compliance, improve productivity, cut costs or increase visibility, Software AG’s process-driven solutions help this achievement. Enterprise Legacy Integrator

Software AG's Enterprise Legacy Integrator allows companies to unlock the power in their legacy systems enabling new and innovative ways to meet user requirements and create greater competitive advantages, without increasing their operational expenses.

f Oracle BPEL Process Manager is based on the Collaxa BPEL Orchestration Server for Web Services. Details are at http://www.oracle.com/us/products/middleware/application-server/bpel-home-066588.html. g These are Java Message Service (JMS) and Java Connector Architecture (JCA). Chapter 14: Service-Oriented Architecture Products 6

Enterprise Legacy Integrator allows for an evolutionary approach to meet both short and long term goals. It provides a full range of capabilities enabling organizations to modernise the user interface, business logic and data access across virtually any platform or .

It provides transactions from legacy systems (user session, program logic, operations on data) as modular Java, .NET and Web Services for reuse in new composite applications or as business processes through Service-Oriented Architecture. Services can be registered with Software AG’s CentraSite to maximize reuse and manage change (e.g., enable impact analysis). Possible options include:  ApplinX - wraps user session  EntireX Communicator - wraps program logic  XML Adapters - wrap operations on data (about 200 applications and databases supported) Enterprise Information Integrator

Enterprise Information Integrator offers a unique approach to delivering a single view of information to business users. In addition to querying and aggregating information from disparate data sources, Enterprise Information Integrator helps organisations create their Organisation Information Model employing business terms and semantic relationships. Views are then automatically created for display in portals or reuse as web services in processes, composite applications or other destinations. Enterprise Service Integrator

This composes new business services and orchestrates their participation in an SOA. The Enterprise Service Integrator is based on the webMethods Enterprise Service Bus (ESB). It creates flexible composite applications that aggregate the interactions and data of multiple applications. The Enterprise Service Integrator connects to IT resources exposed as services, receives XML documents, combines, validates, and transforms them as requested into a format that the receiving application needs, and then forwards the result to the intended recipient. It contains a best-of breed native XML server and powerful routing and transformation features for XML documents.

Figure P14.3 shows the Enterprise Service Integrator [h]. This is used to specify logic flow between Web Services, with business process logic paths being determined by evaluation of various conditions. This logic flow is defined graphically. The Enterprise Service Integrator also supports the creation and execution of BPEL workflows that can be utilized as is, or expanded on to create more complex service execution sequences.

h This is based on the webMethods Enterprise Service Bus (ESB). Details of the Software AG Enterprise Service Integrator are available from http://www.softwareag.com/. Chapter 14: Service-Oriented Architecture Products 7

Figure P14.3: Enterprise Service Integrator includes BPM Workflow (© 2005 Software AG. [Reprinted with Permission]) Enterprise Process Manager

Enterprise Process Manager provides digital management of end-to-end business processes that span across different departments and various software systems. Through easy-to-use modelling, integration and management tools, Enterprise Process Manager enables the alignment of systems with business strategy and provides the ability to monitor performance and identify opportunities for improvement. Enterprise Process Manager is a business process management tool that unites people with the data they need, when they need it. CentraSite – The Integration Metadata Repository

The CentraSite Metadata Repository in Figure 14.4 and Figure 14.5 provides the governance and compliance required for efficient use of an SOA. CentraSite provides the central point of management of the artefacts (WSDL, message process definitions, XSLT, data models, business process definitions) within the SOA / ESB environment. By centrally cataloguing the descriptions and dependencies of these SOA assets, their visibility and reuse are assured. As a repository, it enables developers to conduct impact analysis on any potential changes and to determine the data lineage. This is an important function when business users require verification of the information delivered to them. Chapter 14: Service-Oriented Architecture Products 8

Figure P14.4: Enterprise Process Manager supporting process design, automation and analytics (© 2005 Software AG. [Reprinted with Permission])

Figure P14.5: CentraSite Integration Metadata Repository (© 2005 Software AG. [Reprinted with Permission]) Chapter 14: Service-Oriented Architecture Products 9

Composite Application Integrator

Composite applications reuse and orchestrate application logic and information exposed by Service Oriented Architecture. It is the new application paradigm for large companies and one of the major ROI drivers of an SOA.

Composite Application Integrator is the product from Software AG that focuses on building user interfaces for composite applications. A revolution is happening in the world of front-end application development. Until recently, the stateless nature of HTTP, browser incompatibilities and the page-centric design of applications restricted the possibilities to reproduce capabilities of traditional “thick” clients within browsers. With Asynchronous JavaScript and XML communication (AJAX) [i], developers now have the means to reproduce the capabilities of thick clients in browsers. Composite Application Integrator allows Rich Internet Applications to be created based on the AJAX technology.

Composite Application Integrator helps IT departments to develop and deploy rich Internet and composite applications very rapidly by providing a design and runtime environment that doesn’t require skills in JavaScript, HTML and CSS. It allows rich interfaces to be created (i.e. clients that behave like thick clients).

ERP Vendors

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. As we discussed in Chapter 12, it licensed TopTier technology for mySAP and eventually purchased the TopTier Company in 2001. The TopTier Portal is now called the SAP NetWeaver Portal. This technology was used to move SAP into new markets for Small and Medium Enterprises (SMEs).

Feb 2003 saw the release of SAP NetWeaver [j]. This is the technical foundation used by SAP 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 [k]. 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

i AJAX is used in Web 2.0 to build “Rich Internet Applications” (RIA). j NetWeaver is at http://www.sap.com/solutions/netweaver/technicaldetails/index.epx. Take also the NetWeaver link to: “Components and Tools”. k Many White Papers are available from the Solutions section of SAP at http://www.sap.com/. Chapter 14: Service-Oriented Architecture Products 10

(the Organization for Advancement of Structured Information Standards) and UN/CEFACT for EDI and ebXML.

NetWeaver supports Web Services for Remote Portals (WSRP) and WSCI for Business Process Management (see Chapter 14). SAP has stated that it will also support BPEL. While it appears that no announcement had been made by SAP at the time of writing, it is anticipated that their endorsement of WSCI and BPEL will 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.

EAI Vendors

webMethods Business Process Integrator We earlier discussed that EAI vendors are evolving their software products to support the emerging BPM market. In Chapter 11 we saw that in 2007 Software AG purchased webMethods. We discussed the Software AG Business Process Integrator above. This was originally the webMethods Business Process Integrator [l]. With a major presence in the EAI market and its participation in many of the Web Services standards initiatives – including the BPEL Specifications – it is reasonable to assume that webMethods (as part of Software AG) will support automatic generation in the future of some (or even all) the BPM languages. In Chapter 11, Figure P11.4 [m] shows the webMethods Business Process Integrator. This is used for Business Process Modeling. Figure P11.5 shows the generation of business logic using the webMethods current capability. This was based on proprietary webMethods technology. Figure P11.6 shows data mapping support to transform between source and target data formats. We have seen that most BPM integration products offer a similar drag-and-drop capability for Transformation Data Mapping today. Figure P11.7 finally shows the dynamic monitoring of business process execution during normal webMethods operation.

It is clear from the associated discussion in Chapter 11 that the capability provided by webMethods Business Integrator today already addresses much of the support that we have discussed as necessary for Service-Oriented Architecture and Business Process Management.

While no announcement has apparently been made by webMethods at the time of writing, it seems that future support by webMethods for automatic generation of one (or all) of the BPM languages: BPEL, WSCI, BPML and ebXML BPSS may not be difficult to achieve.

l Details on the BPM capability from webMethods are available from http://www.softwareag.com/. m These figures are in: “Chap-11-Products.pdf” at http://www.ies.aust.com/EA_Book/Chap-11- Products.pdf. Chapter 14: Service-Oriented Architecture Products 11

SeeBeyond e*Insight

SeeBeyond is also a well-established EAI vendor with their e-Business Integration Suite. SeeBeyond was purchased by Sun Microsystems in 2005 [n]. We will use documentation provided originally on the SeeBeyond web site to discuss its potential for supporting Business Process Management using the concepts we discussed earlier.

The e*Insight Business Process Manager – as part of the e-Business Integration Suite – supports Web Services plus long-lived processes that can span multiple enterprises or applications that take seconds, hours or weeks to complete. Support is already provided by e*Insight for RosettaNet, EDI (X12 and EDIFACT) and BizTalk – with guaranteed message delivery. It has a Validation Rules Builder and user workflow: to incorporate users into automated business processes for approvals, authorizations and exception handling through email or web-based user involvement.

e*Insight and e*Gate for EAI-based Business Process Management provide extensive support for process modeling, implementation, monitoring, management and optimization similar to what we discussed in relation to webMethods capability in Figure 11.25 – Figure 11.28.

The SeeBeyond White Paper: “Business Process and Workflow Management” originally available from the SeeBeyond web site [o] discussed many workflow-related features: to graphically design business processes using UML Activity Diagrams; to design business processes with conditional routing and aborts – with functions based on complex business rules – without programming; to provide rollback functionality for long-lived transactions across systems, and ensure that all activities compete successfully or the process is backed out.

It provides further support: for humans to alter the flow of a particular process (business transaction) after it has started; to create processes with structured document message data and process them; and then monitor and manage the status of the workflow. It will send alerts and notifications by phone, email, intranet, pager, fax; and integrate workflow human decision processes; support process model decomposition and nesting to several levels; with dynamic or ad- hoc routing; and scheduled ad-hoc or user defined reports.

The SeeBeyond Integrated Composite Application Network (ICAN) includes the e*Insight Business Process Manager and extensive support for generation and execution of BPEL. As stated by SeeBeyond [p] this is “an open graphical modeling environment using BPMN (Business Process Modeling Notation) for the graphical modeling notation and BPEL4WS (Business Process Execution Language for Web Services, a.k.a. WS-BPEL) for executing the process.”

n See http://www.sun.com/2005-0823/seebeyond/index.html for the Sun announcement of its SeeBeyond purchase. o The White Paper was titled: “Business Process and Workflow Management”. However, it does not appear to be on the Oracle website now, following the purchase of Sun by Oracle. p For details on ICAN, see http://www.oracle.com/ and search for ICAN. Chapter 14: Service-Oriented Architecture Products 12

TIBCO BusinessWorks

In Chapter 11 we saw that TIBCO also offers similar capability to the EAI vendors above. TIBCO BusinessWorks [q] uses graphical design tools to manage all aspects of a Business Process Integration project. It “includes a graphical interface to create and define integration scenarios, an engine that automates routine sequences of tasks, and a web-based interface for monitoring applications, systems resources and processes.”

TIBCO BusinessWorks has many features relevant to BPM, to: leverage standards and technologies such as XML, J2EE and Web Services with an easy- to-use design interface that allows for fast deployment and training. It offers process templates and out-of-the-box connectivity for leading applications, with reuse of process models and transformation maps. It supports full authentication and authorization of system components and human users, with a graphical data transformation environment that simplifies the process of resolving differences in data structures between applications. A web-based administration console enables real-time monitoring of systems and processes across a distributed environment.

TIBCO BusinessWorks provides support for XML, J2EE and JMS, with full Web Services support for XML, SOAP and WSDL. According to TIBCO: “TIBCO is an active part of key standards bodies including OASIS, W3C and WS-I and is leading the effort to develop standards for both SOA and EDA. TIBCO is leveraging its expertise and experience as a pioneer of real-time and event-driven enterprises to help define a number of Web Services standards for EDA as the co-author of key specifications including WS-Reliable Messaging, WS-Eventing and WS-Notification. In addition, TIBCO is actively involved with orchestration (WS-BPEL), security (WS- Security) and monitoring and management (WS-DM) standards.”

We will complete this chapter by discussing vendors in the software product categories of Enterprise Portals (called Corporate Portals) and dedicated BPM vendors. Enterprise Portals are emerging to provide easy integrated access to many resources: databases; systems; applications; and workflow – tailored uniquely to each individual’s job responsibilities. Web Services and BPM modeling tools and languages are technologies that all point to the further evolution of Enterprise Portals. Enterprise Portal Vendors

Plumtree Enterprise Web

We discussed in Chapter 12 that Plumtree is a major Enterprise Portal vendor, with a large portfolio of satisfied customers throughout the world. As discussed in Chapter 12, BEA purchased the Plumtree Company and software in 2005. BEA was later purchased by Oracle.

q Further information on TIBCO is available from http://www.tibco.com/. Chapter 14: Service-Oriented Architecture Products 13

Plumtree had earlier announced the Plumtree Enterprise Web [r] as: “an open environment for creating Web applications that span rival platforms and business systems. The foundation of the Enterprise Web is a set of technologies that work together via Web services, including technologies for business integration, collaboration, content management, identity management, and search.”

Released in 2003, the Plumtree Enterprise Web is based on Foundation Services, which are the core services commonly used to build Web applications, including business integration, collaboration, content management, identity management and search. It uses Integration Products that integrate content, application services and security from existing systems, such as Groupware, ERP and CRM systems.

The Plumtree Enterprise Web supports the development of Composite Applications. These are Web applications hosted within the portal that combine services from different systems, which the portal orchestrates in custom business processes. In the context of our discussion of Service-Oriented Architecture in this chapter, Composite Applications are of particular interest.

Foundation Services within the Enterprise Web are used to build Composite Applications. As the technologies most commonly used to build Web applications, Foundation Services are designed to span technical and organizational boundaries — to manage knowledge, support collaboration and rationalize security across a business. The foundation services deployed by Plumtree across the Enterprise Web are Business Process Automation and Content Management.

With Business Process Automation, rather than create a business process for every Web application in every business unit, instead a business integration engine acts as a foundation service for the entire Enterprise Web. This routes transactions across many systems. As a result, the Enterprise Web not only surfaces information and services from many systems, but also creates business processes spanning those systems.

Using Content Management, organizations typically publish volumes of content to many Web sites. Content management uses templates to capture and publish information in an organized way across an enterprise, with workflow and version-control for publishing to the Enterprise Web, using a central repository to manage the information. Rather than a separate repository for every Web application, instead the Enterprise Web relies on a common content management system. This enforces consistent publishing policies and simplifies management of the data.

The Enterprise Web Development Kit uses tools to build personalized, interactive applications from Web Services running on different platforms. It results in Web Services that can interoperate with J2EE and .NET development environments. The Enterprise Web is a flexible development environment.

r BEA purchased Plumtree in Aug 2005; Oracle then purchased BEA. Further information is available from http://www.oracle.com/. Chapter 14: Service-Oriented Architecture Products 14

Plumtree uses similar terminology to other potential BPM vendors, but it has not announced that it plans to move in this direction. It is apparent from the functionality of the Plumtree Enterprise Web that this product offers the potential to provide future support of the BPM languages for SOA, but its future within Oracle is not known. Vignette Process Workflow

Vignette originally offered Content Management products, but has aggressively moved into the Enterprise Portal marketplace with its early purchase of Epicentric, an XML-based Portal product. It has expanded on these capabilities with the Vignette family of products. OpenText purchased Vignette in 2009.

The Vignette Application Builder and Vignette Process Workflow Modeler [s] particularly interest us in this chapter. The latter product supports a Graphical Process Modeling Environment: a visual interface that allows users to logically map the flow of a process, including the execution of both program tasks and human tasks, with no coding required.

Vignette Process Workflow Modeler uses Microsoft Visio – as also does Microsoft BizTalk Orchestration Designer. Users can leverage their knowledge of Visio capabilities, such as the ability to drag and drop, zoom and print workflows. Vignette snaps into an existing installation of Microsoft Visio and provides a comprehensive “palette” of process workflow objects, for creating human and automated tasks, transitions, decision points, automated notifications, sub- workflows, and more.

Process definitions can be defined and validated offline, then used with Vignette Content Management. This offers flexibility for users to define and test workflows remotely so they can identify and correct errors earlier in the process of creating workflows, before they are incorporated into the system.

Process workflows can be defined to retrieve user, group, role, content object, metadata and deployment information in real-time from the live Vignette system. Critical information can be directly retrieved from roles-based content management on demand, increasing the speed and accuracy with which workflow processes can be created. Tasks can be assigned to roles within a central collaboration environment for roles-based management, providing the flexibility to accommodate changes within the organization quickly, and to promote the re-usability of approved business processes.

Conditional Transitions allow creation of decision points in a process where the workflow will be directed to one of multiple paths based on a specific condition. Conditions can involve many variables, including content metadata, timing, explicit instructions passed from a prior step (e.g. “approved”), content- type specific attributes and information returned from an integrated application.

s Webcasts by OpenText, covering the Vignette product capabilities, are available from http://www.vignette.com/. Chapter 14: Service-Oriented Architecture Products 15

Additionally Parallel Routing is supported. This supports the creation of processes where two or more tasks can occur simultaneously. Multiple tasks such as reviews, translations or other sub-processes can occur concurrently, rather than sequentially. Joining of two or more parallel paths can be dictated by a specific condition. Escalation and Exception Handling identifies and reacts intelligently to events such as process bottlenecks, deadlines, errors or rejection. Tasks can be automatically re-routed, with automatic alerts and status notification. Access and update rights can be assigned for the security of workflow processes and payloads comprised of one or more managed objects, including documents and composite objects. An example of a composite object is a "product" that may contain text files, data from SAP databases, and also other database records.

The overall result of the above capabilities is that Vignette Process Workflow Modeler supports the functionality required for Enterprise Workflow Design. It supports the definition of business processes for the enterprise that include both event-based objects as well as role-based user actions. These can govern the creation and management of almost any type of content, with the approval and deployment of content, interactions with other applications, and many other processes.

It supports the design of process definitions that map to overall business objectives. It enables deadlines to be set for overall processes, to include dependent sub-processes under this macro-level design.

Workflow definitions can be reused for multiple purposes or as part of more complex or overarching processes. Process definitions can be reused by allowing processes to be modeled conceptually, to inherit specific characteristics as they are used. Processes can also be assigned specific attributes such as payloads or resources at run-time rather than design time.

Vignette Process Workflow Modeler currently supports the Process Definition Language (XPDL) defined by WfMC (the Workflow Management Coalition) [t]. XPDL is an additional XML-based BPM language that has been defined for workflow modeling. We did not discuss XPDL in Chapter 14: as it does not have the same industry support as BPEL, WSCI, BPML or ebXML BPSS. However it certainly demonstrates that Vignette has the technology to support generation of the other BPM languages. Whether OpenText will take advantage of this technology is not known. BPMS Vendors

Intalio BPMS

Each vendor above has existing software products in other categories, to which they are adding BPM capabilities to move those products into the BPM market. In contrast, Intalio was established specifically to develop Business Process Management System (BPMS) software products solely for this market. It

t Further information on XPDL is at http://xml.coverpages.org/XPDL20010522.pdf. Chapter 14: Service-Oriented Architecture Products 16

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 BPMS product architecture comprises Intalio Server, Designer, Director and Projectors [u]. According to Intalio:

“Intalio BPMS is being integrated into Intalio Cloud and forms the foundation of Intalio BPM, Intalio's cloud-based BPM product. All the features currently offered by the Designer, Server, and Workflow components of Intalio BPMS will remain available with Intalio BPM, and migration from one platform to the other is straightforward.”

Intalio 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. Using WSCI, processes developed in other languages – such as BPML or BPEL – can be integrated at a process level rather than at a message or transaction level, for better performance.

Intalio Server can utilize load balancing across multiple hardware servers for parallel RDBMS products such as Oracle Parallel Server. It supports transactional messaging systems – such as IBM WebSphere MQ and TIBCO Rendezvous TX – for legacy system transaction processing. Further, it can be deployed on J2EE application servers including BEA WebLogic and IBM WebSphere. It also includes single sign-on capabilities such as for BEA WebLogic Portal and IBM WebSphere Portal.

Intalio 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 Intalio Server. Existing business processes can be imported from many business process-modeling tools; these include Coastwise Corporate Modeler, IDS Scheer ARIS, Microsoft Visio, MEGA Process, Popkin System Architect (now called IBM Rational System Architect) and Proforma ProVision. Or instead Intalio Designer process modeling capability can be used directly.

Intalio Designer uses Business Process Modeling Notation (BPMN) for graphical notation of business processes. It reflects the process constructs offered by BPML and BPEL and supports all language constructs of these two languages.

u Intalio BPMS product details are available directly from http://www.intalio.com/. Details about the Business Process Management Initiative are available from http://www.bpmi.org/. Chapter 14: Service-Oriented Architecture Products 17

In addition, any process designed with Intalio 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 Designer includes a data transformation-mapping editor based on XML Schema, so that any complex schema can be mapped into any other schema graphically. This implements the XPath 1.0 specification as defined by W3C [v], with standard XPath functoids (expressions) for transformation that are ready for use.

Intalio Designer uses a process repository that is able to be deployed on any existing RDBMS to support collaborative development of executable business processes. It offers process management support for check-in / checkout, versioning and role-based access control and can be integrated with existing 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 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.

Intalio Director uses XPage for user-interface design and implementation. XPage is expressed in XML: it is a blend between XForms from W3C [w] and the Model-View-Controller pattern pioneered by Smalltalk. It also uses the Extensible User Interface Protocol (XUP), which has been submitted to W3C. This can be deployed using any J2EE Application Server, including BEA WebLogic and IBM WebSphere. Normally, if any part of a browser page changes, the entire browser page is transmitted from the web server back to the browser. With XUP, only the updates that have been made to the user interface need be transmitted. This reduces the network traffic between the browser and server, so improving transaction response time performance at the browser.

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 the development of interactive reports and process dashboards.

Intalio Projectors: These are process-level middleware components that are designed to provide connectivity to any process, user or system without writing

v The XML Schema and XPath specifications are available from the W3C web site at http://www.w3c.org/. w The XForms and XUP specifications are also available from the W3C web site at http://www.w3c.org/. Chapter 14: Service-Oriented Architecture Products 18

any code. Intalio Designer can use these Projectors at design-time and Intalio Server can use these Projectors at runtime.

Connectors are used to connect to external process participants independently of the communication protocols that they natively support, such as TCP/IP, IIOP or RMI. They establish the “dial tone” between the BPMS and the external process participants.

Adaptors interface with external process participants, independently of the schema languages that they are natively defined in, such as XML Schema or IDL. They define a “common language” between the BPMS and the external process participants.

Projectors are used to project external process participants onto process interfaces, in a way that is independent of their process execution meta-models. A projector supports the “conversation” between the BPMS and the external process participants.

Intalio Projectors provide the capability – discussed earlier for Intalio 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 Server. This enables workflow processes to be directly imported also into Intalio 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 also many other middleware products from BEA, Borland, IBM, IONA, Microsoft and TIBCO.

It is clear that a product such as Intalio|BPMS 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 is the case with many of the other BPM products that we discussed in this chapter. 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. Chapter 14: Service-Oriented Architecture Products 19

Management of SOA Development

Infravio

As in any development environment, to avoid future maintenance chaos, development using SOA must be managed carefully. There may be many services that are utilized by SOA. Metadata describing these services and other resources must be captured and managed in an SOA Registry. A registry manages details about various resources, while a repository manages the resources themselves. An excellent White Paper is available from Infravio describing a four-step process for SOA development using an SOA registry [x]. Enterprise Service Bus Products

A new class of products, categorized as Enterprise Service Bus (ESB), has emerged to provide extensive enterprise management support for Service Oriented Architecture environments. An ESB product suite includes tools to streamline development of SOA systems, with process orchestration, a data- transformation engine, intelligent message routing and a management interface supporting real-time monitoring and exception handling as well as deployment and management of services. A number of ESB products are now available, including:  Cordys Process Factory [y]  FioranoESB Suite [z]  Artix ESB [aa]  Polarlake Integration Suite [bb]  Progress Sonic SOA Suite [cc]

An excellent comparative review by Infoworld of each of the above products is provided in an article that highlights their strengths and weaknesses [dd]. Many other related articles are available from the Infoworld Archive [ee]. According to Infoworld:

x The White Paper is titled: “Intentional SOA for Real-World SOA Builders”. It discusses Intentional SOA – a design methodology that connects business benefits with SOA best practices and principles. This paper is available from http://www.mops1.com/softwareag/bid/pdf/Intentional%20SOA%20WP.pdf. It also discusses the Infravio X-Registry product, used for SOA metadata management. We discussed earlier that webMethods purchased Infravio in 2006 and Software AG later purchased webMethods. y Cordys Process Factory is discussed in Chapter 15. Details are at http://www.cordysprocessfactory.com/. z FioranoESB is at http://www.fiorano.com/products/ESB-enterprise-service-bus/Fiorano-ESB-enterprise-service-bus.php aa Artix is now part of Progress Software. See http://web.progress.com/en/sonic/artix-index.html. bb Sun purchased Polarlake Integration Suite and Oracle purchased Sun. An Overview White Paper on Polarlake Integration Suite is at http://hosteddocs.ittoolbox.com/PolarLake-Technology-Overview.pdf. cc See http://www.sonicsoftware.com/products/sonic_soa_suite/index.ssp for Progress Sonic SOA Suite details. dd Refer to the Infoworld article: “Service Buses Hit the Road” published in the July 25, 2005 issue of Infoworld at http://www.infoworld.com/article/05/07/22/30FEesb_1.html?s=feature. ee Search the Infoworld Archive at http://www.infoworld.com/ and also Google for related articles using the search terms: Enterprise Service Bus ESB. Chapter 14: Service-Oriented Architecture Products 20

“Sonic Software, which has been credited with coining the term Enterprise Service Bus, and Cape Clear Software both fall into the category of those productizing ESBs, while webMethods and IBM view an ESB as merely one technology piece in the middleware stack. Sonic and Cape Clear will be joined by BEA Systems this summer (2005), when the company introduces its ESB product, code-named Quicksilver.”

Return now to Chapter 14 in the book, at Summary of Service-Oriented Architecture.