Skip to main content

Business process standards, Part 2: How the standards are used in WebSphere products

Marc Fasbinder (mfasbind@us.ibm.com), Consulting I/T Specialist, WebSphere Software Technical Sales, IBM
Photo of Mark
Marc Fasbinder is an I/T Specialist at IBM with the WebSphere Technical Sales team in Southfield, Michigan. You can reach him at mfasbind@us.ibm.com.

Summary:  In Part 1 of this article, you learned about three common business process standards: BPMN, XPDL and WS-BPEL. In Part 2, we'll talk about how those standards get implemented in several key IBM® products, and look at a practical example of how you can export a process model from WebSphere Business Modeler using these standards.

View more content in this series

Date:  24 Oct 2007
Level:  Intermediate
Activity:  748 views

Introduction

Part 1 described three important business process standards. In Part 2, we'll talk about how those standards get implemented in several key IBM products. Almost all emerging standards are moving targets, as they go from proposals to specifications to ratified standards. Due to the varying maturity of the standards, usage of them varies across IBM products.

BPMN

As described in Part 1, Business Process Modeling Notation (BPMN) provides a standard notation for business process diagrams to ensure consistency. It also defines how the elements of a BPMN diagram map to WS-BPEL.

BPMN in WebSphere® Business Modeler

WebSphere Business Modeler (Modeler) is not fully BPMN-compliant, but it is influenced by BPMN. The icons used for various objects in a Modeler process model are based on those from the BPMN specification, as shown in Figure 1:


Figure 1. Modeler and BPMN icons
Figure 1. Modeler and BPMN icons

Modeler does not support all of the shapes in the BPMN specification, nor does it always use the BPMN shape. However, in most cases, there is a close correlation between Business Modeler and BPMN. Business Modeler provides the ability to export process models to WS-BPEL. Therefore, although Modeler is not fully BPMN-compliant, it accomplishes both major goals of the specification. Because of IBM's commitment to the standard, it is expected that future releases will move towards full support of the standard.

BPMN in FileNet®

FileNet Business Process Manager includes a Microsoft™ Visio based Process Modeler, along with a Process Designer, Process Analyzer, and Process Simulator. Process Modeler includes a set of BPMN stencils and templates for Visio, as shown in Figure 2:


Figure 2. FileNet BPMN shapes for Visio
Figure 2. FileNet BPMN shapes for Visio

These diagrams can be directly mapped to process definitions in XML Process Definition Language (XPDL). As shown in Figure 3, the graphic representation of the XPDL in Filenet Process Designer uses a different notation than BPMN, adding colors and specialized icons to differentiate the tasks.


Figure 3. FileNet process
Figure 3. FileNet process

XPDL

XPDL provides an XML format for the storage of BPMN diagrams to facilitate exchange of process models among vendors.

XPDL in WebSphere Business Modeler

WebSphere Business Modeler V6.1 enables you to export processes as XPDL files, which you can then import into the FileNet Business Process Manager for further refinement. There are some limitations to the export. For example, Modeler does not impose a maximum length on item names, which may cause them to be truncated in FileNet, and Business Modeler supports complex data types, whereas FileNet does not. These types of variations may require some rework. For Modeler V6.0.2.1, this same function is available in the free BA77 SupportPac.

XPDL in FileNet

The FileNet Process Designer is a Web-based process design tool that can read and produce portable process definitions in XPDL. Version 4.0.0 can export processes into an XPDL format, while Version 4.0.2 adds the support for importing XPDL. This allows the Process Designer to interface with other modeling tools such as WebSphere Business Modeler.

WS-BPEL

WS-BPEL is an execution language to describe the behavior of business processes in a standards-based environment. Processes can use Web services to invoke business functions, and the process itself can be exposed as a Web service.

WS-BPEL in WebSphere Business Modeler

A non-technical business analyst can create the initial process model in Modeler. Technical users can then add additional attributes to prepare the model for export to the I/T tool set. One of the export targets from Modeler is WebSphere Process Server. When exporting to the Process Server, the process model is exported as WS-BPEL, along with other artifacts needed in Process Server, such as WSDL, XSD, the SCA assembly diagram, and so forth.

WS-BPEL in WebSphere Process Server

WS-BPEL is used as the execution language in Process Server. WebSphere Integration Developer, which provides the tools for Process Server, includes a graphic WS-BPEL editor as well as a visual debugger. Process Server was released before WS-BPEL was ratified as a final standard. It uses WS-BPEL to choreograph the flow of a business process, building on WS-BPEL version 1.1, with major capabilities from WS-BPEL v2.0.

Both Process Server and Integration Developer support extensions to WS-BPEL, including Java™ snippets and Java expressions, similar to the BPELJ specification, along with human tasks, similar to BPEL4People. There are other extensions for quality of service, such as grouping multiple activities into a single transaction, or short-running flows. You can disable these extensions for a process in the advanced settings of the New Business Process wizard. The IBM Information Server plugin for WebSphere Integration Developer provides an Information Service BPEL activity that enables a process to make SQL calls directly to relational databases.

Figure 4 shows the BPEL editor in WebSphere Integration Developer. The XML constructs defined in the WS-BPEL standard are represented graphically, such as the invoke activity called Step 1, the variable RequestData, and the request partner link called Step1_Interface.


Figure 4. Business editor process in WebSphere Integration Developer
Figure 4. Business editor process in WebSphere Integration Developer

WS-BPEL in WebSphere Business Integration Server Foundation

The predecessor to Process Server was WebSphere Business Integration Server Foundation V5.1. Server Foundation also used WS-BPEL to choreograph the business process, building on Version 1.1 of the draft specification. The tooling that supported Server Foundation was WebSphere Studio Application Developer Integration Edition.

WS-BPEL in WebSphere Portal

WebSphere Portal Enable V6 or higher includes a workflow capability that uses the Business Process Choreographer component of Process Server. Simple Web-based tools are used to define the work flow. The use of work flow in Portal is limited to human tasks. If integration flows are needed, you can use Process Server to provide the full range of process functionality.

Business process example

Figure 5 shows a business process modeled in WebSphere Business Modeler. In this process, the flow of control is indicated with the black lines, while the flow of data is indicated with blue lines from the tasks to the repositories. The first step of the process is a map, which is used to direct the incoming data to a pair of repositories. The sample project is included as a download with this article.


Figure 5. Sample process model
Figure 5. Sample process model

Export the process to WS-BPEL

  1. In Business Modeler, right-click Export Project in the project tree, then select Export.
  2. In the Export dialog, select WebSphere Process Server, then click Next,
  3. Specify a target directory, then click Finish.
  4. Open the project in Integration Developer.

Figure 6 shows the results of the export. The map activity in the business process model was transformed into a Java activity called Map. The business items in the business process model have become BPEL variables, such as floatVariable. The tasks in the business process model have been transformed into BPEL invoke activities, such as Approve. The expression logic in the simple decision called Decision was transformed into transition conditions on the connectors flowing out of the Check Credit History invoke activity.


Figure 6. WS-BPEL process editor
Figure 6. WS-BPEL process editor

The generated WS-BPEL, shown in Listing 1, is an XML document that includes the constructs necessary in an execution language, such as the condition for how to transition from one activity to the next, partner links for services to invoke, and an interface partner advertising how the process itself can be invoked.


Listing 1. WS-BPEL
                
<?xml version="1.0" encoding="UTF-8"?>
<bpws:process xmlns:bpws="http://schemas.xmlsoap.org/ws/2004/03/business-process/"
xmlns:ns="http://Processes/LoanProcessingArtifacts"
xmlns:ns0="http://Processes/LoanProcessing/LoanProcessingInterface"
xmlns:ns1="http://Processes/LoanProcessing/CheckCreditHistoryInterface"
xmlns:ns2="http://Processes/LoanProcessing/ApproveInterface"
xmlns:ns3="http://Processes/LoanProcessing/RejectInterface"
xmlns:ns4="http://Processes/LoanProcessing/SendResponseInterface"
xmlns:wpc="http://www.ibm.com/xmlns/prod/websphere/business-process/6.0.0/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
name="LoanProcessing" suppressJoinFailure="yes"
targetNamespace="http://Processes/LoanProcessing"
wpc:autonomy="peer" wpc:displayName="Loan Processing"
wpc:executionMode="longRunning" wpc:id="1000"
wpc:validFrom="2007-08-28T04:22:34">
  <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
location="LoanProcessingInterface.wsdl"
namespace="http://Processes/LoanProcessing/LoanProcessingInterface"/>
  <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
location="CheckCreditHistory0550137218Interface.wsdl"
namespace="http://Processes/LoanProcessing/CheckCreditHistoryInterface"/>
  <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
location="Approve01373358028Interface.wsdl"
namespace="http://Processes/LoanProcessing/ApproveInterface"/>
  <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
location="Reject1523800978Interface.wsdl"
namespace="http://Processes/LoanProcessing/RejectInterface"/>
  <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
location="SendResponse01167886200Interface.wsdl"
namespace="http://Processes/LoanProcessing/SendResponseInterface"/>
  <bpws:import importType="http://schemas.xmlsoap.org/wsdl/"
location="LoanProcessingArtifacts.wsdl"
namespace="http://Processes/LoanProcessingArtifacts"/>
  <bpws:partnerLinks>
    <bpws:partnerLink myRole="LoanProcessingService"
name="LoanProcessingPartner"
partnerLinkType="ns:LoanProcessingPartnerLink"/>
    <bpws:partnerLink name="CheckCreditHistoryPartner"
partnerLinkType="ns:CheckCreditHistoryPartnerLink"
partnerRole="CheckCreditHistoryService"/>
    <bpws:partnerLink name="ApprovePartner"
partnerLinkType="ns:ApprovePartnerLink" partnerRole="ApproveService"/>
    <bpws:partnerLink name="RejectPartner"
partnerLinkType="ns:RejectPartnerLink" partnerRole="RejectService"/>
    <bpws:partnerLink name="SendResponsePartner"
partnerLinkType="ns:SendResponsePartnerLink"
partnerRole="SendResponseService"/>
  </bpws:partnerLinks>
  <bpws:variables>
    <bpws:variable name="floatVariable2" type="xsd:float" wpc:id="1001"/>
    <bpws:variable name="stringVariable2" type="xsd:string" wpc:id="1002"/>
    <bpws:variable name="stringVariable3" type="xsd:string" wpc:id="1003"/>
    <bpws:variable name="stringVariable" type="xsd:string" wpc:id="1004"/>
    <bpws:variable name="floatVariable" type="xsd:float" wpc:id="1005"/>
  </bpws:variables>
  <bpws:flow name="LoanProcessing_Flow" wpc:displayName="LoanProcessing_Flow"
wpc:id="1006">
    <bpws:links>
      <bpws:link name="Input2_to_MapInput2"/>
      <bpws:link name="MapOutput_to_CheckCreditHistoryInput"/>
      <bpws:link name="DecisionOutput_to_ApproveInput">
        <wpc:description>Yes</wpc:description>
      </bpws:link>
      <bpws:link name="DecisionOutput2_to_RejectInput">
        <wpc:description>No</wpc:description>
      </bpws:link>
      <bpws:link name="InputCriterion2_to_MergeOutputCriterion"/>
      <bpws:link name="InputCriterion22_to_MergeOutputCriterion"/>
      <bpws:link name="OutputCriterionToLoanProcessing_OutputCriterion"/>
    </bpws:links>
    <bpws:receive createInstance="yes" name="LoanProcessing_InputCriterion"
operation="InputCriterion" partnerLink="LoanProcessingPartner"
portType="ns0:LoanProcessing" wpc:displayName="Loan ProcessingReceive"
wpc:id="1007">
      <wpc:output>
        <wpc:parameter name="Input" variable="stringVariable"/>
        <wpc:parameter name="Input2" variable="floatVariable"/>
      </wpc:output>
      <bpws:sources>
        <bpws:source linkName="Input2_to_MapInput2"/>
      </bpws:sources>
    </bpws:receive>
    <bpws:invoke name="Map" operation="null" partnerLink="null"
portType="wpc:null" wpc:displayName="Map" wpc:id="1008">
      <wpc:script>
        <wpc:javaCode><![CDATA[// Add Implementation Codes here
// Map the contents of variables 'stringVariable floatVariable '
to variable 'stringVariable2 floatVariable2 ']]></wpc:javaCode>
      </wpc:script>
      <bpws:targets>
        <bpws:target linkName="Input2_to_MapInput2"/>
      </bpws:targets>
      <bpws:sources>
        <bpws:source linkName="MapOutput_to_CheckCreditHistoryInput"/>
      </bpws:sources>
    </bpws:invoke>
    <bpws:invoke name="CheckCreditHistory_InputCriterion"
operation="InputCriterion" partnerLink="CheckCreditHistoryPartner"
portType="ns1:CheckCreditHistory" wpc:displayName="Check Credit History"
wpc:id="1009">
      <wpc:input>
        <wpc:parameter name="Input2" variable="stringVariable2"/>
      </wpc:input>
      <wpc:output>
        <wpc:parameter name="Output2" variable="stringVariable3"/>
      </wpc:output>
      <bpws:targets>
        <bpws:target linkName="MapOutput_to_CheckCreditHistoryInput"/>
      </bpws:targets>
      <bpws:sources>
        <bpws:source linkName="DecisionOutput_to_ApproveInput">
          <bpws:transitionCondition expressionLanguage=
"http://www.ibm.com/xmlns/prod/websphere/business-process/
expression-lang/java/6.0.0/"><![CDATA[return 
((floatVariable2.floatValue()) < (100.0));
]]></bpws:transitionCondition>
        </bpws:source>
        <bpws:source linkName="DecisionOutput2_to_RejectInput">
          <bpws:transitionCondition expressionLanguage=
"http://www.ibm.com/xmlns/prod/websphere/business-process/
expression-lang/java/6.0.0/"><![CDATA[return 
((((floatVariable2.floatValue()) == (floatVariable2.floatValue()))) 
&amp;amp;amp;amp;&amp;amp;amp;amp; (!(((floatVariable2.floatValue()) < (100.0)))));
]]></bpws:transitionCondition>
        </bpws:source>
      </bpws:sources>
    </bpws:invoke>
    <bpws:invoke name="Approve_InputCriterion" operation="InputCriterion"
partnerLink="ApprovePartner" portType="ns2:Approve" wpc:displayName="Approve"
wpc:id="1010">
      <wpc:input>
        <wpc:parameter name="Input2" variable="stringVariable2"/>
      </wpc:input>
      <wpc:output/>
      <bpws:targets>
        <bpws:target linkName="DecisionOutput_to_ApproveInput"/>
      </bpws:targets>
      <bpws:sources>
        <bpws:source linkName="InputCriterion2_to_MergeOutputCriterion"/>
      </bpws:sources>
    </bpws:invoke>
    <bpws:invoke name="Reject_InputCriterion" operation="InputCriterion"
partnerLink="RejectPartner" portType="ns3:Reject" wpc:displayName="Reject"
wpc:id="1011">
      <wpc:input>
        <wpc:parameter name="Input2" variable="stringVariable2"/>
      </wpc:input>
      <wpc:output/>
      <bpws:targets>
        <bpws:target linkName="DecisionOutput2_to_RejectInput"/>
      </bpws:targets>
      <bpws:sources>
        <bpws:source linkName="InputCriterion22_to_MergeOutputCriterion"/>
      </bpws:sources>
    </bpws:invoke>
    <bpws:invoke name="SendResponse_InputCriterion" operation="InputCriterion"
partnerLink="SendResponsePartner" portType="ns4:SendResponse"
wpc:displayName="Send Response" wpc:id="1012">
      <wpc:input>
        <wpc:parameter name="Input2" variable="stringVariable2"/>
      </wpc:input>
      <wpc:output/>
      <bpws:targets>
        <bpws:joinCondition expressionLanguage=
"http://www.ibm.com/xmlns/prod/websphere/business-process/
expression-lang/java/6.0.0/"><![CDATA[return 
((getLinkStatus("InputCriterion2_to_MergeOutputCriterion")) 
|| (getLinkStatus("InputCriterion22_to_MergeOutputCriterion")));
]]></bpws:joinCondition>
        <bpws:target linkName="InputCriterion2_to_MergeOutputCriterion"/>
        <bpws:target linkName="InputCriterion22_to_MergeOutputCriterion"/>
      </bpws:targets>
      <bpws:sources>
        <bpws:source linkName="OutputCriterionToLoanProcessing_OutputCriterion"/>
      </bpws:sources>
    </bpws:invoke>
    <bpws:reply name="LoanProcessing_OutputCriterion" operation="InputCriterion"
partnerLink="LoanProcessingPartner" portType="ns0:LoanProcessing"
wpc:displayName="Loan ProcessingReply" wpc:id="1013">
      <wpc:input/>
      <bpws:targets>
        <bpws:target linkName="OutputCriterionToLoanProcessing_OutputCriterion"/>
      </bpws:targets>
    </bpws:reply>
  </bpws:flow>
</bpws:process>

Export the process to XPDL

You can export Process Modeler processes to XPDL using the BA77 FileNet Integration SupportPac. After installing the SupportPac, export the process as follows:

  1. In Business Modeler, right-click Export Project in the project tree, and select Export.
  2. In the Export dialog, select FileNet Business Process Manager, then click Next.
  3. Specify an export directory, then click Finish.

As shown in Listing 2, the XPDL representation of the process has some similarities to WS-BPEL, such as defining the steps of the process, the flow of data, and the flow of control. The second line indicates that it is using an XPDL extension defined by FileNet, in order to use XPDL as a run-time language.


Listing 2. XPDL
                
<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://www.wfmc.org/2004/XPDL2.0alpha"
xmlns:fn="http://www.filenet.com/ns/fnpe/2005/07/pe/schema
/XPDLExtension" Id="1" Name="Project 1">
  <PackageHeader>
    <XPDLVersion>2.0</XPDLVersion>
    <Created>28 Aug 2007 22:36:36 GMT</Created>
    <Description>Created from Websphere Business Modeler
    </Description>
  </PackageHeader>
  <TypeDeclarations>
    <TypeDeclaration Id="attachment" Name="attachment">
      <BasicType Type="STRING"/>
    </TypeDeclaration>
    <TypeDeclaration Id="participant" Name="participant">
      <BasicType Type="STRING"/>
    </TypeDeclaration>
    <TypeDeclaration Id="xml" Name="xml">
      <BasicType Type="STRING"/>
    </TypeDeclaration>
  </TypeDeclarations>
  <WorkflowProcesses>
    <WorkflowProcess DefaultStartActivityId="BLM-1dcdf65eacb98f9b3ce346dd63bfea33"
    Id="Loan Processing" 
Name="Loan Processing">
      <ProcessHeader>
        <Description></Description>
        <fn:WorkflowDefinition 
AuthorTool="Websphere Business Modeler 6.0.2.1"/>
      </ProcessHeader>
      <DataFields>
        <DataField Id="LoanAmount" IsArray="FALSE" Name="LoanAmount">
          <DataType>
            <BasicType Type="FLOAT"/>
          </DataType>
        </DataField>
        <DataField Id="CustomerID" IsArray="FALSE" Name="CustomerID">
          <DataType>
            <BasicType Type="STRING"/>
          </DataType>
        </DataField>
        <DataField Id="CreditHistoryResult" IsArray="FALSE" Name="CreditHistoryResult">
          <DataType>
            <BasicType Type="STRING"/>
          </DataType>
        </DataField>
      </DataFields>
      <Activities>
        <Activity Id="BLM-1dcdf65eacb98f9b3ce346dd63bfea33" 
	Name="LaunchStep" StartActivity="true">
          <Implementation>
            <Task>
              <TaskApplication Name="LaunchStep">
                <DataMappings>
                  <DataMapping Direction="INOUT" Formal="CustomerID">
                    <Actual>CustomerID</Actual>
                    <fn:Parameter IsArray="false" Type="string"/>
                  </DataMapping>
                  <DataMapping Direction="INOUT" Formal="LoanAmount">
                    <Actual>LoanAmount</Actual>
                    <fn:Parameter IsArray="false" Type="float"/>
                  </DataMapping>
                </DataMappings>
              </TaskApplication>
            </Task>
          </Implementation>
        </Activity>
        <Activity Id="BLM-57f20cd21115fe485af4ee813b0e0f73"
	Name="Check Credit History">
          <Implementation>
            <Task>
              <TaskApplication Name="Check Credit History">
                <DataMappings>
                  <DataMapping Direction="IN" Formal="CustomerID">
                    <Actual>CustomerID</Actual>
                    <fn:Parameter IsArray="false" Type="string"/>
                  </DataMapping>
                  <DataMapping Direction="OUT" 
		  Formal="CreditHistoryResult">
                    <Actual>CreditHistoryResult</Actual>
                    <fn:Parameter IsArray="false" Type="string"/>
                  </DataMapping>
                </DataMappings>
              </TaskApplication>
            </Task>
          </Implementation>
          <TransitionRestrictions>
            <TransitionRestriction>
              <Split Type="OR">
                <TransitionRefs/>
              </Split>
            </TransitionRestriction>
          </TransitionRestrictions>
        </Activity>
        <Activity Id="BLM-c3e15331d897e154af5b202727043302" 
	Name="Approve">
          <Implementation>
            <Task>
              <TaskApplication Name="Approve">
                <DataMappings>
                  <DataMapping Direction="IN" Formal="CustomerID">
                    <Actual>CustomerID</Actual>
                    <fn:Parameter IsArray="false" Type="string"/>
                  </DataMapping>
                </DataMappings>
              </TaskApplication>
            </Task>
          </Implementation>
        </Activity>
        <Activity Id="BLM-b9bfa2f98617a71d0be00e0e76db2053" 
	Name="Reject">
          <Implementation>
            <Task>
              <TaskApplication Name="Reject">
                <DataMappings>
                  <DataMapping Direction="IN" Formal="CustomerID">
                    <Actual>CustomerID</Actual>
                    <fn:Parameter IsArray="false" Type="string"/>
                  </DataMapping>
                </DataMappings>
              </TaskApplication>
            </Task>
          </Implementation>
        </Activity>
        <Activity Id="BLM-fff20764c5af8c8bd40c1db58976da2c"
	Name="Send Response">
          <Implementation>
            <Task>
              <TaskApplication Name="Send Response">
                <DataMappings>
                  <DataMapping Direction="IN" Formal="CustomerID">
                    <Actual>CustomerID</Actual>
                    <fn:Parameter IsArray="false" Type="string"/>
                  </DataMapping>
                </DataMappings>
              </TaskApplication>
            </Task>
          </Implementation>
          <TransitionRestrictions>
            <TransitionRestriction>
              <Join Type="XOR"/>
            </TransitionRestriction>
          </TransitionRestrictions>
        </Activity>
      </Activities>
      <Transitions>
        <Transition From="BLM-57f20cd21115fe485af4ee813b0e0f73" 
Id="BLM-e65b5aca84dac030fc701f63398e22ae_BLM-
c3e15331d897e154af5b202727043302" 
To="BLM-c3e15331d897e154af5b202727043302">
          <Condition Type="CONDITION">LoanAmount < 
100.0</Condition>
        </Transition>
        <Transition From="BLM-57f20cd21115fe485af4ee813b0e0f73" 
Id="BLM-e65b5aca84dac030fc701f63398e22ae_BLM-
b9bfa2f98617a71d0be00e0e76db2053" 
To="BLM-b9bfa2f98617a71d0be00e0e76db2053">
          <Condition Type="CONDITION">LoanAmount = 
LoanAmount</Condition>
        </Transition>
        <Transition From="BLM-c3e15331d897e154af5b202727043302" 
Id="BLM-c3e15331d897e154af5b202727043302_BLM-
3af79b509babd49c8070e8b915570359" 
To="BLM-fff20764c5af8c8bd40c1db58976da2c"/>
        <Transition From="BLM-b9bfa2f98617a71d0be00e0e76db2053" 
Id="BLM-b9bfa2f98617a71d0be00e0e76db2053_BLM-
3af79b509babd49c8070e8b915570359" 
To="BLM-fff20764c5af8c8bd40c1db58976da2c"/>
        <Transition From="BLM-1dcdf65eacb98f9b3ce346dd63bfea33" 
Id="BLM-1dcdf65eacb98f9b3ce346dd63bfea33_BLM-
57f20cd21115fe485af4ee813b0e0f73" 
To="BLM-57f20cd21115fe485af4ee813b0e0f73"/>
      </Transitions>
    </WorkflowProcess>
  </WorkflowProcesses>
</Package>

Summary

In Part 1 of this article, you learned about three of the important standards for business processes: BPMN, which describes what a business process model should look like; XPDL, which describes how the model should be stored; and WS-BPEL, which describes how to run the process. In Part 2, you learned how IBM products implement these standards, and saw a practical example of how you can export a business process to either WS-BPEL or XPDL from WebSphere Business Modeler.



Download

DescriptionNameSizeDownload method
Sample codeExportSample.zip64KBHTTP

Information about download methods


Resources

Learn

Get products and technologies

About the author

Photo of Mark

Marc Fasbinder is an I/T Specialist at IBM with the WebSphere Technical Sales team in Southfield, Michigan. You can reach him at mfasbind@us.ibm.com.

Comments (Undergoing maintenance)



Trademarks  |  My developerWorks terms and conditions

Help: Update or add to My dW interests

What's this?

This little timesaver lets you update your My developerWorks profile with just one click! The general subject of this content (AIX and UNIX, Information Management, Lotus, Rational, Tivoli, WebSphere, Java, Linux, Open source, SOA and Web services, Web development, or XML) will be added to the interests section of your profile, if it's not there already. You only need to be logged in to My developerWorks.

And what's the point of adding your interests to your profile? That's how you find other users with the same interests as yours, and see what they're reading and contributing to the community. Your interests also help us recommend relevant developerWorks content to you.

View your My developerWorks profile

Return from help

Help: Remove from My dW interests

What's this?

Removing this interest does not alter your profile, but rather removes this piece of content from a list of all content for which you've indicated interest. In a future enhancement to My developerWorks, you'll be able to see a record of that content.

View your My developerWorks profile

Return from help

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=WebSphere, SOA and Web services
ArticleID=263817
ArticleTitle=Business process standards, Part 2: How the standards are used in WebSphere products
publish-date=10242007
author1-email=mfasbind@us.ibm.com
author1-email-cc=crothemi@us.ibm.com

My developerWorks community

Tags

Help
Use the search field to find all types of content in My developerWorks with that tag.

Use the slider bar to see more or fewer tags.

Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere).

My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Use the search field to find all types of content in My developerWorks with that tag. Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere). My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Rate a product. Write a review.

Special offers