Date post: | 21-Dec-2015 |
Category: |
Documents |
View: | 219 times |
Download: | 2 times |
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
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
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
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