Three Process Modeling Options

Three Process Modeling Options Mark Ford February 8 2010 February 8, 2010 999999-1 XYZ 2/10/2010 MIT Lincoln Laboratory Evaluation Criteria • Vis...
7 downloads 0 Views 137KB Size
Three Process Modeling Options Mark Ford

February 8 2010 February 8, 2010

999999-1 XYZ 2/10/2010

MIT Lincoln Laboratory

Evaluation Criteria • Visualization – Standard Standard way of representing tasks, decisions, control  way of representing tasks, decisions, control and data flow

• Executable – Ability to execute the plan in a form that comes from the  analyst

• Tooling li – Availability of COTS tools or API’s for developing,  simulating and debugging simulating, and debugging

• Semantics –A Availability of semantic annotations on services to  il bilit f ti t ti i t facilitate discovery, reasoning, or dynamic service  composition 999999-2 XYZ 2/10/2010

MIT Lincoln Laboratory

BPEL • Visualization  – None but could use BPMN or vendor specific icons

• Executable – Designed as an execution language so it gets high marks here – Ad‐hoc process modeling is difficult unless interfaces already defined in WSDL – Specification doesn’t cover deployment so there are some vendor specific artifacts 

• Tooling – Variety of COTS and open source tools but few are 100% compliant – Some Some offer mix of BPMN for design and BPEL for execution but ultimately you need  offer mix of BPMN for design and BPEL for execution but ultimately you need to be a programmer to do BPEL (Xpath, XSLT) – Few pure play BPEL vendors. Most vendors offer BPEL as part of larger BPM  platform (IBM, Oracle). 

• Standard : OASIS specification • Semantics : None

999999-3 XYZ 2/10/2010

MIT Lincoln Laboratory

BPMN •

Visualization – Originally created to provide visualization for BPEL g y p – 4 simple building blocks: messages, activities, gateways, and links



Executable – Early versions had executable extensions by vendors and achieved interop via XPDL  serialization – Executable BPMN processes now part of 2.0 spec but vendor support isn’t there yet – Expect announcements in summer 2010 for vendor offerings when 2.0 spec is finalized



Tooling – Variety of COTS and open source tools but it is unlikely that all will be 100% compliant – If you can use Visio, you can do BPMN



Standard : ver 2 0 is in Beta from OMG Standard : ver 2.0 is in Beta from OMG



Semantics : None

999999-4 XYZ 2/10/2010

MIT Lincoln Laboratory

OWL‐S •

Visualization :  – None, but could use BPMN



Executable – Composite processes can be invocable if their contents are resolved to atomic processes or  other composite processes that are invocable – Services typically offer WSDL Groundings (aka Bindings) and provide XSLT to convert between  RDF and required schema types for input/output. – Also feasible to convert OWL‐S process definition to BPEL via XSLT (something Group 61 is  p g) exploring)

• Tooling – No COTS tools known – OWL‐S API is a Java API for reading, writing, and executable OWL. Seems  reasonably active. •

Standard – OWL‐S 1.1 is a W3C Submission but NOT a standard – OWL‐S 1.2 is underway at SRI 



Semantics : Full support for ontologies : Full support for ontologies

999999-5 XYZ 2/10/2010

MIT Lincoln Laboratory

No Perfect Choice Feature

BPEL

BPMN

OWL‐S

Visualization

Executable

Tooling

Standard

Semantics

999999-6 XYZ 2/10/2010

MIT Lincoln Laboratory

Recommendation Feature

BPMN

+

OWL‐S

=

Combined Approach

Visualization

BPMN diagrams for  documentation

Executable

OWL‐S API for execution or  transform to BPEL transform to BPEL

Tooling

Visio with BPMN plugin or  Magic Draw or many others g y

Standard

Main focus is on  documentation

Semantics

Semantics as annotations  within diagram but explicit  within OWL‐SS  within OWL

999999-7 XYZ 2/10/2010

MIT Lincoln Laboratory

Next steps • Create BPMN diagrams of the process model – These diagrams are great tools for documenting the process model g g g p – They are suitable for publication since the representations are well  understood

• Create ontology to describe data model Create ontology to describe data model – Typically OWL files in RDF

• Create OWL‐S files*  – Profiles for discovery – Process Models for execution – Groundings for bindings to WSDL

• Create WSDL for service actors • Create XSLT to translate from RDF to schema types and back* * If you keep the process model simple then this shouldn’t be too painful, although your mileage il may vary. Th There are samples l ffrom th the spec but b t I haven’t h ’t done d this thi yet. t 999999-8 XYZ 2/10/2010

MIT Lincoln Laboratory

Resources •



OWL‐S –

http://www.w3.org/Submission/OWL‐S/ W3C submission paper for OWL‐S 1.1



http://on.cs.unibas.ch/owls‐api/ Java API for reading, writing, executing OWL‐S maintained by the University of  Basel

BPMN – http://www.bpmn.org/ http://www bpmn org/ OMG managed site OMG managed site – http://www.itp‐commerce.com/ BPMN plugin for MS Visio – http://www.magicdraw.com/ modeling tool that supports BPMN – Too many BPMN tools available to list but I’ve used the two above and they’re good



BPEL Engines – http://code.google.com/p/bpel‐g/ GPL licensed BPEL engine maintained by Mark Ford. Runs on  T Tomcat and Apache ServiceMix. Based on the last open source release of Active Endpoints  d A h S i Mi B d h l l fA i E d i platform. – http://ode.apache.org/ Open source engine that powers a few commercial packages out there.  Not 100% compliant and quality of code is mixed. – Many other BPEL engines out there but most are part of some much larger platform

999999-9 XYZ 2/10/2010

MIT Lincoln Laboratory