let's go all the way: from requirements via colored workflow nets to a bpel implementation of a...

18
Let's Go All the Way: From Requirements via Colored Workflow Nets to a BPEL Implementation of a New Bank System Wil M. P. van der Aalst Jens Bæk Jørgensen Kristian Bisgaard Lassen

Post on 21-Dec-2015

221 views

Category:

Documents


2 download

TRANSCRIPT

Let's Go All the Way: From Requirements via Colored

Workflow Nets to a BPEL Implementation of a New Bank

System

Wil M. P. van der AalstJens Bæk Jørgensen

Kristian Bisgaard Lassen

© Kristian Bisgaard Lassen, CoopIS 2005

Bankdata

• Make software for banks (15 banks and 300 employees)– They provide daily operation of their

systems

• Bankdata in transition from data oriented to process oriented systems design

• Case: Blanc loan application work process

© Kristian Bisgaard Lassen, CoopIS 2005

Approach”Bridging the Gap”

T0: Manual, Executable Use Case, by Bankdata + authors

T1: Manual, by the authorsT2: Semi-automatic, by the authors

real world(a bank)

T0 T2

( )

requirements model

textual descriptionRequirements CPN RCPN

animation

AP system

BPEL

T1

Colored Workflow Net

workflow model

(CWN)

( )focus on context processes and organization (focus on realization system and software)

© Kristian Bisgaard Lassen, CoopIS 2005

Requirements Model

• Consists of– Textual description– Requirements CPN– Animation

• Animation used for prototyping the future workflow

• Describes the system in its environment and includes– Actions that will remain manual – Actions to be supported by the system – Actions fully automated by the system

© Kristian Bisgaard Lassen, CoopIS 2005

Executable Use Case

Requirements CPN

Word documentInformal flow diag.

© Kristian Bisgaard Lassen, CoopIS 2005

Snapshot of the Animation

CustomerAdvisers

ManagerAnimation interfaceLoan requestsExample animation : Recommendation

© Kristian Bisgaard Lassen, CoopIS 2005

Requirements CPN

© Kristian Bisgaard Lassen, CoopIS 2005

Workflow Model

• Model of the system• Contains only

actions to be supported by the system

• Support the three workflow perspectives

• Modeling language:Colored Workflow Nets

Task(Processdefinition)

Case

Resource

Work item

Activity

© Kristian Bisgaard Lassen, CoopIS 2005

Places

Colored Workflow Nets (CWN)Introduction

• Restriction on Colored Petri Nets• Conceptual workflow language• Example:

Place TypesTransition

GuardCode segmentArc expressionsMarkingsArcs

© Kristian Bisgaard Lassen, CoopIS 2005

Colored Workflow NetsOverview

• Only three kinds of places:– Case : (id,attributes)– Resource : (id,roles,organizational units)– CaseXResource : (case,resource)

• A CWN without resources places should correspond to a Sound Workflow Net

© Kristian Bisgaard Lassen, CoopIS 2005

Requirements model vs.Workflow model

Requirements model Workflow model

Describe the system in its environment

Describe the workflow system

Actions: 1. Manual2. Supported by the system3. Automated by the system

Actions:1. Supported by the system2. Automated by the system

No restrictions on expression, uses concepts with no counterpart in the system

Restricted vocabulary; e.g., case, resource, various modeling guidelines etc.

Focus is on context; process and organization

Focus is on realization; system and software

© Kristian Bisgaard Lassen, CoopIS 2005

Colored Workflow Net

© Kristian Bisgaard Lassen, CoopIS 2005

T2’Workflow

net

AP system

• A BPEL skeleton specification– No WSDL specification

• Meant as template code– Not executable– Should be intuitive for the BPEL programmer

• Translation to the AP system

T2AP system

BPELColored Workflow Net

workflow model

(CWN)

T2’’

© Kristian Bisgaard Lassen, CoopIS 2005

p1

tC1

tC2

p7expr2

expr1

p1

t1

t2

p3

p2

t4

t3

t6p6

p5

p4 t7

p7

t5

expr3

expr4

p1

t1

tC1

p3

p2

t4

t3

t6p6

p5

p7expr2

While component

<flow> … (links) <invoke name=“t1”>… (links)</invoke> <invoke name=“t3”>… (links)</invoke> <invoke name=“t4”>… (links)</invoke> <invoke name=“t6”>… (links)</invoke></flow>

Example of the translation:WFN to BPEL

Flow component

<invoke name=“t2”/><while condition=“expr3 and not expr4”> <invoke name=“t5”/></while><invoke name=“t7”/>

Switch component

tC3

<switch> <case condition=“expr1”> tc2

</case> <case condition=“expr2”> tc1

</case> </switch>

© Kristian Bisgaard Lassen, CoopIS 2005

BPEL skeleton

© Kristian Bisgaard Lassen, CoopIS 2005

Conclusion & Future Work

• Introduced a new bridge from the real world to a running system

• Colored Workflow Nets needs further work– Theoretical– Tool support (CPN Tools)– Visualization of CWN

• Prototype new workflow systems on the fly

Questions?

Thank you!