|
In SOA Information Model (SOA-IM), either the business or infrastructural process is modeled as a
collaborative process. Each collaborative process has one or more
collaborative process flows. A collaborative process flow is modeled by
activities, decisions, events and other entities needed for its deployment
and execution.
This example demonstrates modeling, deployment, and execution of the
Order Promising collaborative process flow:
 |
| |
| Figure 1: Order Promising Collaborative Process Flow |
Activities are represented by rectangles, decisions
by diamonds and events by circles. They are all connected with inputs and
outputs depicted with arrows. Roles are in the swim-lanes on the left side.
We will use this example to illustrate the steps of the methodology and
to explain how Semantion SOA Virtual Machine
(SOA-VM) works.
Figure 2 illustrates three main steps in process modeling, deployment and
execution:
 |
| |
| Figure 2: Business Process Modeling, Deployment and Execution |
This example is executed in the following steps:
Step 1 - JBoss Web Services
This section documents deployment of JBoss-based Web Services used in the
SOA-VM example.
Change your working directory to be the JBoss Web Services directory:
cd c:\semantion-1.1\examples\soavm\ws\jboss
Make sure that your JBoss home and jbossws.integration.target are properly set up in ant.properties.
Build and deploy JBoss Web Services:
ant
Step 2 - High-Level Business Process Modeling
High-level modeling of a business process includes the business process modeling and
also modeling of
participated organizations, people, services, messages that are going to be
exchanged, etc.. The high-level business process model
is done by the Value Reference Model (VRM) with output (Collaborative Process Information Document)
generated in SOA-IM. The Collaborative Process Information
Document (CPID) contains process activities, inputs, outputs and metrics.
Organizations, people and messages are modeled in SOA-IM as well.
Detailed services, resources and other needed models can be done
using any corresponding reference models. The outputs of these models
(WSDL, CPA, etc.) are referenced in SOA-IM.
Now, we will submit detailed definitions of organizations, people, and messages
to the SOA-VM Federation Registry:
cd c:\semantion-1.1\examples\soavm
ant setup
Step 3 - Detailed Business Process Modeling
This step (BPM in Fig. 2) includes detailed business process modeling.
The input of this step is the CPID generated in Step 2.
If the URLs for the WSDL locations (i.e., http://localhost:8085/jaxws-ferasoa-checkproductcatalog/CheckProductCatalog?wsdl) in
c:\semantion-1.1\examples\soavm\xml\cpid-demo.xml does not match your environment, update all these URLs containing port 8085.
The output of this step is the final version of CPID in
SOA-IM (cpid-demo.xml).
When the CPID is generated, it is submitted to the SOA-VM Federation Registry via Semantion Process Management Console
(please see Fig. 3). Expand and click the Process Management/Modeling/Submit link. Using the Browse button
download and submit the cpid-demo.xml document from c:\semantion-1.1\examples\soavm\xml folder.
 |
| |
| Figure 3: Submit business process model (CPID) |
As a result of the CPID submission, an execution concept of the business process model will be
created and the cpid-demo.xml document will be associated with it in the registry:
 |
| |
| Figure 4: Execution concept of the business process model |
Finally, the run-time deployment needs to be done. This deployment prepares
the process for the execution. Click the Run-time Deployment to perform this step.
Step 4 - Submit an Order
Now we are ready to submit an order since the Order Promising process model has been deployed:
ant order
When the order is submitted, the execution of the process will start and all CPID elements related to the
process will be created:
 |
| |
| Figure 5: Order Promising CPID elements |
Expand and click the Process Management/Monitoring link to serach for the process and view
above details.
At the end of the Order Promising collaborative process flow execution,
Record Receivable and Order Committed alert events are executed by
the Event Manager that instructs the Federation Manager to send the
"Store Order has been committed" message to these events’ subscribers
over the Federation Gateway:
 |
| |
| Figure 6: Store Order Has Been Committed Message |
SOA-IM and SOA-VM support not only business process modeling, deployment
and execution but also any business process changes and/or extensions
without coding. We purposely removed the Fix or Redo Order activity in
the original CPID generated in Step 3. It can be seen in Fig. 5
that the Fix or Redo Order activity is missing. Now we can add the
activity with all its related collaborative entities that will be
included in the new version of CPID (cpid-new-demo.xml).
The new CPID is located in c:\semantion-1.1\examples\soavm\xml\cpid-new-demo.xml.
If the 8085 (JBoss) port is not used for the WSDL URLs, replace it with the corresponding port in
c:\semantion-1.1\examples\soavm\xml\cpid-new-demo.xml using the
Replace function of your text editor.
Click the Submit Model Document link (Fig. 4) to submit the c:\semantion-1.1\examples\soavm\xml\cpid-new-demo.xml
document containing the new version of the process model. Now when the document is submitted, click the Run-time Deployment link
to deploy the new version of the model.
If we submit one more order:
ant order
the execution of the process will start and the
Order Promising collaborative process flow entities will also include
just added Fix or Redo Order activity:
 |
| |
| Figure 7: Order Promising CPID Elements |
|