21.08.2013 Views

COVA- COURSE VALIDATION ARRANGER - CETIS Wiki

COVA- COURSE VALIDATION ARRANGER - CETIS Wiki

COVA- COURSE VALIDATION ARRANGER - CETIS Wiki

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>COVA</strong>- <strong>COURSE</strong> <strong>VALIDATION</strong><br />

<strong>ARRANGER</strong><br />

Evaluating BPM Toolsets For Higher<br />

Education<br />

Balbir Barn, Barn Samia Oussena<br />

THAMES VALLEY UNIVERSITY<br />

{balbir.barn, { , samia.oussena}@tvu.ac.uk }@<br />

<strong>CETIS</strong> Enterprise SIG Meeting April 4 th 2008


Agenda<br />

Introduction to the project<br />

Background, <strong>COVA</strong>RM Scenarios<br />

<strong>COVA</strong> Project Aims and Objectives<br />

Approach Taken<br />

A very brief introduction to BPMN 1.0<br />

Current Results<br />

Video Demonstration<br />

Final comments


Introduction to the project<br />

CCourse Validation ld Arranger A (<strong>COVA</strong>) (CO A) builds b ld on the h<br />

outcomes from the <strong>COVA</strong>RM project<br />

Th The <strong>COVA</strong>RM project j (http://covarm.tvu.ac.uk/covarm)<br />

(h // k/ )<br />

key relevant outcomes were:<br />

A (large) synthesised business process model describing<br />

course validation activities<br />

An approach pp to managing g g large g complex p processes p using g a<br />

decomposition approach based on events and sub-processes<br />

Two sub-processes or scenarios were implemented using<br />

WSDL Services implemented in JAVA, executed using BPEL and<br />

ORACLE BPEL Process Manager


Two sub-processes sub processes / Scenarios<br />

End to End process is large, complex and has<br />

multiple stop – start points (event entry points)<br />

Technical feasibility limited to developing sub- subsections<br />

of the process – scenarios<br />

1. Prepare programme proposal<br />

To get the initial approval to develop the new programme<br />

2. R Run Validation V lid i EEvent<br />

To arrange the setting up of an event


Scenario 1: Set up Validation Event<br />

Notification<br />

ValidationDocSpecificationSet<br />

«Report» Validation Event Minute<br />

Convene Panel<br />

Constraint::Panel i l Membership b hi<br />

Issue Documentation to<br />

Panel Members<br />

Get Feedback db k<br />

Event Logistics<br />

Run Validation Event<br />

Review i All ll Documentation i<br />

Produce Event Minute


BPEL Process Definition from Domain<br />

Sub-processes<br />

Narrative Description<br />

1-1<br />

Calendar_Port<br />

ValDoc_Port<br />

Timetabling_Port<br />

BPEL Process<br />

Definition<br />

ECows_Port<br />

Notification_Port<br />

Choreography<br />

constraints<br />

LearningProductSpecfica<br />

tion_Port<br />

ProcessParticipatio<br />

n_Port<br />

Sample operation details<br />

For one service


Emerging issues and evaluation<br />

BPEL Modelling Toolsets<br />

BPELWSDL Links: Problems with complex p data types yp<br />

in message flows<br />

Have to break down complex types into simple types on<br />

message flows<br />

Work arounds available<br />

WSDL t to Code Cd generation ti<br />

New methods added to wsdl require full re-generation<br />

of code leading g to cut and paste p of old business logic g<br />

BPEL Modelling Toolsets<br />

7


8<br />

Model Transformations<br />

Single<br />

transformation<br />

IBM Rational XDE<br />

Issues:<br />

Operation Specs<br />

IBM Rational Software<br />

Architect<br />

Model<br />

changes<br />

Multiple transforms<br />

XSD Schemas<br />

Multiple toolsets and notations<br />

Multiple toolsets and notations<br />

Multiple training requirments<br />

JDeveloper<br />

Scenarios<br />

BPEL specs<br />

BPEL Process<br />

Manager<br />

Manual WSDL<br />

production


COVa – Course Validation Arranger<br />

Key Drivers<br />

Technical demands of using bespoke process implementation<br />

technology (<strong>COVA</strong>RM example)<br />

Multiple toolsets and notations<br />

Wid Widespread d adoption d i of f the h OMG standard d d for f process<br />

modelling – BPMN 1.0<br />

Emerging implementations of BPM toolsets<br />

Open source and Commercial products<br />

Increasing importance of role of process modelling within<br />

Higher Education<br />

Elaboration of process p modelling g<br />

needs in the e-Framework


<strong>COVA</strong>: Aims and Objectives<br />

Ai Aims:<br />

To explore the potential of open source business process<br />

management g solutions as viable approach pp for the support pp of<br />

common administrative processes in HE<br />

Objectives<br />

A demonstration implementation of the two <strong>COVA</strong>RM<br />

scenarios using a BPM toolset such as Intalio Designer.<br />

An evaluation of a BPM toolset an all encompassing<br />

environment<br />

Workshop collatoral on Process modelling and BPMN 1.0<br />

C b h k(<br />

Contributions to the e-Framework (services, process<br />

modelling concepts)


Approach Taken


BPMN 1.0 on 4 slides<br />

What is BPMN?<br />

The BPM lifecycle y<br />

A sample business process in BPMN<br />

Th The BPMN 1.0 1 0 notation t ti<br />

Most toolsets have not implemented all aspects of the<br />

notation<br />

i


13<br />

What is BPMN?<br />

M N MN<br />

Business Process Modelling Notation –BPMN<br />

A flowchart based notation for defining business<br />

processes<br />

An agreement between many modelling tool<br />

vendors to use a single unified notation<br />

Benefits to end users in terms of training<br />

Enables generation of an executable business<br />

process from business level understanding


The BPM Life cycle<br />

Technical change is accepted:<br />

14<br />

Human change g<br />

-Assess human capability<br />

-Human implications of process<br />

change<br />

-Human change g management<br />

requirements<br />

g<br />

evaluation<br />

case data<br />

analysis y<br />

design<br />

enactment<br />

monitoring<br />

requirements<br />

Ideally performed in a single<br />

tool or a set of integrated<br />

toolsets<br />

process model<br />

implementation<br />

infrastructure<br />

case data Model based<br />

-The model is the process<br />

-Process is self-documenting<br />

-Design is self-executing


15<br />

A sample business process in BPMN<br />

Start Event<br />

Task<br />

Gateway<br />

Sequence q<br />

Flow<br />

Sub-Process<br />

End Event


Business Process Modelling Notation - BPMN<br />

Adapted from White, S. (2005), Object Management Group. http://www/omg.org


Current Results<br />

BPMN<br />

workshops and<br />

other collateral<br />

IImplementation l t ti<br />

of “Prepare<br />

P<br />

Programme<br />

Proposal”<br />

Methodology gy<br />

Guidance<br />

Process Patterns


BPMN Guidance and Methodology<br />

BPMN workshops<br />

Presentational Workshop material on BPMN and process modelling in<br />

general has been developed and is available on request.<br />

Whole Day workshop | 3 hour workshop | 1.5 hour workshop<br />

Handouts available at:<br />

http://samsa.tvu.ac.uk/cova/Business%20Process%20Modelling-<br />

Workshop.pdf<br />

Guidance Notes on Process Modelling for JISC Domain Maps<br />

Available as draft – currently waiting for JISC to do final editing<br />

Extended abstract-along with readings list available at:<br />

http://samsa.tvu.ac.uk/cova/ProcessModellingGuidanceNotesAbstrac<br />

tt.pdf pdf


UML<br />

Model<br />

Implementation of “Prepare<br />

Programme Proposal”<br />

Analysis<br />

Model<br />

Implementation<br />

Model<br />

Intalio Designer Toolset<br />

Translate <strong>COVA</strong>RM<br />

UML model into<br />

BPMN<br />

Implement BPMN<br />

model using<br />

<strong>COVA</strong>RM Services<br />

Execution of<br />

Scenario in Toolset<br />

TTranslation l into BPMN<br />

Methodology needs<br />

Appropriate selection of<br />

notations<br />

Intalio Implementation of<br />

BPMN<br />

Implementing the scenario<br />

CConsume <strong>COVA</strong>RM CO A M WSDL WS<br />

services<br />

Forms Design in Intalio<br />

Mapping of data from<br />

forms to services


Analysis Models in BPMN - methods<br />

MDA principles:<br />

Computation independent model (CIM)<br />

Platform Independent model (PIM)<br />

Platform Specific model (PSM)<br />

Producing a CIM in Intalio presents methodology<br />

issues:<br />

Full expressive power of BPMN not available<br />

Need to represent joint activities in a single org unit<br />

How do you represent a “Panel” or “Committee”?<br />

Support for exchange of information between Roles in<br />

Support for exchange of information between Roles in<br />

the same org. Unit


Examples of Methodology Issues<br />

CM CIM needs for f TIMER M events


Sequence and Message constraints<br />

BPMN rule: sequences in the same pool; message<br />

(information) flow across pools:<br />

But we need to share information between roles in<br />

the same pool p (University): ( y) E.g. g Computing p g Dept, p ,<br />

Registry.<br />

Use of naming conventions:<br />

University: Registry<br />

Ui i C i D<br />

University: Computing Dept Universi<br />

Coordinating Tasks<br />

Univerrsity:<br />

Comp Dept<br />

Registr<br />

ity:<br />

ry


Intalio Implementation - Services<br />

Existing <strong>COVA</strong>RM WSDL<br />

Services<br />

New XCRI Service<br />

- output XML


Intalio Implementation: - Forms


Consuming Services and mapping data<br />

between forms and services


Execution – video....<br />

Please check the <strong>COVA</strong> website for video<br />

availability<br />

http://samsa.tvu.ac.uk/cova/


Some Issues in using Intalio<br />

AAutomatic t ti creation ti of f variables i bl (from (f WSDL) t to b be used d in i the th process,<br />

makes any change to WSDL requires re-work of the mapping activity<br />

Intalio makes it difficult to use types from WSDL schema. It will generate 2<br />

imports one for the WSDL and another one when the type is assign to a<br />

variable. And this leads to conflicting schema. The workaround that I used<br />

is to create an equivalent schema and use it for the process variable.<br />

Intalio requires complete specification in gateways – expression for the IF<br />

and the ELSE must be completed even if not required.<br />

Data is often required to be saved in intermediate variables to be used for<br />

a condition or in a sub process (different Context)<br />

The Community Edition for Intalio is shipped with an embedded database<br />

which is not scalable for large processes. (Need to reconfigure the server<br />

for MySQL. y<br />

Intalio does allow you to import a WSDL (service) so you end up cut & past<br />

the WSDL. It does not handle the import of schema in a WSDL. Here as<br />

well you are required to cut&paste.<br />

Minor bugs – updates in data mapper not reflected in the data editor<br />

Usability: resizing sub-processes or lanes; Printing is in-adequate. Debugging<br />

is difficult.


Conclusion<br />

Even when h using BPM M toolsets l implementing l and d<br />

executing HE business processes appears to be TOO<br />

HARD!<br />

BPMN provides a realisable strategy for HE to deliver<br />

a computation independent model of systems<br />

Process modelling needs to be a first order concept in<br />

the e-Framework<br />

e Framework<br />

QUESTIONS?

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!