Organisations have long used process modelling to describe the dynamic behaviour of their business. Workflow Management Systems (WfMSs) are commonly applied for process modelling and allow to describe and execute business processes. With the advent of Service Oriented Computing organisations started to expose their business functionality explicitly as reusable and composable services. To interact with these services organisations offer choreography interfaces, stating conversational patterns in which the services can be consumed.
A fundamental lack in current choreography frameworks such as Abstract BPEL and WS-CDL is the disconnection between external choreography interfaces and internal workflow descriptions. Conceptually, a choreography interface can be regarded as an abstracted view on a business process (c.f. [2, 7, 1]), but current choreography frameworks ignore this dependency relation. A major obstacle in connecting internal processes and external choreographies is the variety in existing workflow languages, workflow metamodels, and choreography languages [8]. Directly translating from workflow languages to choreography languages would require n2 mappings, for each combination of workflow and choreography language.
Figure 1 describes our approach to connect workflows and choreography descriptions. We develop an intermediate unifying workflow ontology that can represent arbitrary workflows, thus reducing the amount of required mappings to 2n. This ontology can be used to represent internal process models, and from the ontology choreography interfaces (corresponding to the internal process model) can be extracted.
The multi metamodel process ontology (m3po) is based on two principles: to incorporate and unify the different existing workflow metamodels and workflow reference models, and to provide the necessary properties for extracting choreographies from internal business processes. To facilitate the extraction of the external view on a workflow the m3po allows a workflow engineer to mark the visibility of tasks to different collaboration roles. Thus multiple views on the underlying workflow model can be extracted.
For the integration of workflow models the m3po is organised around the five key workflow aspects [4] widely recognised as essential workflow characteristics. We have combined the most elaborate existing reference metamodels per aspect in our ontology. The target of our ontology are choreography specification languages such as WS-CDL or Abstract BPEL. Thus we further extended the m3po with choreography-specific information. The choreography related concepts provided in the m3po are a superset of the modelling primitives offered in these languages.
Our hypothesis is that constructing the ontology through a careful analysis of existing reference models and workflow languages, guarantees the representational width of the ontology, i.e. that all existing workflow models can be represented and all existing choreography interfaces can be extracted from it. The ontology is written in the WSML [3] ontology language, making the semantics of the process concepts formal and explicit — necessary given the different semantics of workflow meta-models. The behavioural semantics in the ontology are defined similarly to the one of the PSL ontology [6] with occurrence graphs, which are isomorphic to substructures of the situation tree from situation calculus. Given the space limitations, we only display the key concepts of the ontology in a UML class diagram; a thorough description of the full ontology can be found at: http:/www.m3pe.org/deliverables/process-ontology.pdf.
To validate our hypothesis we first need to show that indeed all metamodels can be represented, and then that arbitrary choreography interfaces can be extracted. We report on an initial result, namely the mapping from one WfMS (IBM Websphere MQ Workflow) into our ontology, and the mapping to one choreography language (Abstract BPEL), as shown in figure 3.
Our work is most closely related to several approaches to views on process models. Chebbi et al. [1] propose a view model with cooperative activities that can be partially visible for different partners, but the approach requires n2 mappings and does not consider data (message transfer). Chiu et al. [2] present a meta-model that includes crossorganisational communications. The approach is specific to one workflow modelling tool, and does not offer integrated choreography extraction. Schulz and Orlowska [7] introduce a state-transition approach that binds states of private workflow tasks to a corresponding view-task; they do not describe how to integrate different workflow models, and abstract the data aspect completely. Sayal et al. [5] introduce service activities (that represent trade partner interaction) as workflow primitives. Their approach is specific to one workflow modelling tool and addresses neither workflow integration nor choreography interface extraction.
We have presented the multi meta-model process ontology (m3po). It is unique in the combination of workflow primitives and support for choreography-specific concepts. It can act as connecting ontology to integrate workflow models and allows choreography interface extraction. We showed that one can straightforwardly generate a complete and correct Abstract BPEL interface from the annotated m3po ontology in an example validation. To further verify the hypothesis that any process model can be mapped to the m3po, more work is still required on the construction of mappings from the WfMSs and choreography languages to our ontology.
[1] The view-based approach to dynamic inter-organizational workflow cooperation, Data Knowl. Eng., 56(2):139–173, 2006.
,[2] Workflow view driven cross-organizational interoperability in a web service environment., Inf. Tech. and Management 5(3-4):221–250, 2004.
,[3] The web service modelling language WSML., WSML Final Draft D16.1 2005
,[4] Workflow Management: Modeling Concepts, Architecture and Implementation., Int. Thomson Computer Press 1996.
,[5] Integrating workflow management systems with business-to-business interaction standards., In Proc. of the 18th Int. Conf. on Data Eng. pages 287–296, 2002.
,[6] Process specification language (PSL): Overview and version 1.0 specification., Technical Report NISTIR 6459 National Institute of Standards and Technology, Gaithersburg, MD, 2000.
,[7] Facilitating cross-organisational workflows with a workflow view approach., Data Knowl. Eng. 51(1):109–147, 2004.
,[8] Workflow patterns., Distributed and Parallel Databases 14(1):5–51, 2003.
,