Modelling and Verifying Recursive Workflow Models...

11
Modelling and Verifying Recursive Workflow Models using Attribute Grammars Roman Barták Charles University in Prague, Czech Republic Workflow is a description of a (manufacturing, business, …) process tasks and relations between them we use a specific nested structure (obtained by task decompositions) extra precedence, synchronization, and causal constraints can be added process is a subset of tasks that satisfies the constraints Background on Workflows Workflow Modeling and Verification using Attribute Grammars Roman Barták

Transcript of Modelling and Verifying Recursive Workflow Models...

ModellingandVerifying

RecursiveWorkflowModels

usingAttributeGrammars

Roman BartákCharles University in Prague, Czech Republic

Workflow isadescriptionofa(manufacturing,business,…)process

– tasksandrelations betweenthem– weuseaspecificnestedstructure

(obtainedbytaskdecompositions)– extraprecedence,

synchronization,andcausal

constraintscanbeadded– process isasubsetoftasksthat

satisfiestheconstraints

BackgroundonWorkflows

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

workflowisobtainedbytaskdecomposition

Theproblemofselectingavalidprocess

containinggiventasksistractable.

However,ifweaddextraconstraintsthenthe

problembecomesNP-complete.

PAR PARALT ALT

NestedWorkflows

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Extraconstraintssimplifydesignofcomplexworkflows.• Causal constraints– definerelationsrestrictingappearanceoftasksintheprocess

• Precedence constraints– definingorderingoftasksbeyondthenestedstructure

• Synchronization constraints– definetemporalsynchronizationbetweentasks(forexamplestartingatthesametime)

ExtraConstraintsinNestedWorkflows

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Canwerepresentnestedworkflowswithextra

constraintsinsome“standard”framework?

– toexploittechniques(suchasverification)forthatframework

– tounifyvariousworkflowmodelingapproaches

Canwerepresenteasilyrecursioninthe

workflow(taskdecompositioncontainsthetoptaskitself)?– tomodelplanningproblems,wherethenumberofactionsisunknowninadvance

Motivation

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Attributegrammarisacontext-freegrammar

S→A.B.CA→ aA→a.AB→ bB→b.BC→cC→c.C

BackgroundonAttributeGrammars

a+b+c+

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Attributegrammarisa context-freegrammarwhere:• extraattributesareaddedtosymbols

S(n)→A(k).B(l).C(m)A(n) → aA(n) →a.A(m)B(n) → bB(n) →b.B(m)C(n) →cC(n) →c.C(m)

BackgroundonAttributeGrammars

a+b+c+

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Attributegrammarisa context-freegrammarwhere:• extraattributesareaddedtosymbols• constraintsconnecttheseattributes

S(n)→A(k).B(l).C(m) [n=k=l=m]A(n)→ a[n=1]A(n)→a.A(m)[n=m+1]B(n)→ b[n=1]B(n)→b.B(m)[n=m+1]C(n)→c [n=1]C(n)→c.C(m)[n=m+1]

BackgroundonAttributeGrammars

anbncn

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Howtogetanattributegrammarequivalentto

thenestedworkflowwithextraconstraints?

– equivalence:process~word

Coreideas:

• nestedstructure→ context-freestructure• taskrelations→attributesandconstraints

TranslatingNestedWorkflowsto

AttributeGrammars

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

UsingstartandendtimeattributesfortasksParalleldecomposition(asinglerule)

Ti(Si,Ei)→Ti1(Si1,Ei1)...Tik(Sik,Eik)[Si =min{Si1,...,Sik},Ei =max{Ei1,...,Eik}]

Serialdecomposition(asinglerule)aspecialformofparalleldecompositionwithextraprecedenceconstraints[Ei ≤ Si+1 ]

Alternativedecomposition(asetofrules)Ti(Si,Ei)→Tij (Sij ,Eij ) [Si =Sij ,Ei =Eij ]

TranslatingtheNestedStructure

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Allextraconstraintsarebinary(betweenTi andTj)Twopossiblesituations:

Addattribute(M)toeachsymbolonthepathbetweenTi andTj.

TranslatingExtraConstraints

A"

Ti" Tj"

X" Y"B" C"

D" E"Alterna2ve"rules"

Ti"

X"

D"

Tj"

A"

Alterna2ve"rules"

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

AssumeconstraintTi ó TjGrammarrules:

Tj(...,M)→...,A(...,M),... [M=1]X(...,M)→... [M=0]D(...,M)→...,Ti,... [M=1]

TranslatingExtraConstraints(1)

A"

Ti" Tj"

X" Y"B" C"

D" E"Alterna2ve"rules"

Ti"

X"

D"

Tj"

A"

Alterna2ve"rules"

Tj=>T

iTimutex T

jTi→T

jTiss T

jTiseT

j

Tj(...,M)→...,A(...,M),... M=1 M=1 M≤Sj M=Sj M=EjX(...,M)→... M=0 M=1 --- --- ---D(...,M)→...,Ti,... M=1 M=0 Ei ≤M M=Si M=Si

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

TranslatingExtraConstraints(2)

A"

Ti" Tj"

X" Y"B" C"

D" E"Alterna2ve"rules"

Ti"

X"

D"

Tj"

A"

Alterna2ve"rules"

Grammarrules:ParalleldecompositionofA:A→...,B(...,M),...,C(...,M),...[]

AlternativedecompositionofA:A→B(...,M) [M=0]A→C(...,M) [M=0]

X(...,M)→... [M=0]Y(...,M)→... [M=0]

D(...,M)→...,Tii,... [M=1]E(...,M)→...,Tj,... [M=1]

AssumeconstraintTi ó Tj

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Wecanrepresentnestedworkflowswithextra

constraintsusingattributegrammars.

Canweverifytheworkflow/planningdomain

modelrepresentedasanattributegrammar?

–Whatdoesitmeantoverifytheattributegrammar?

– Howcanwerealizetheverificationalgorithminthecaseofrecursivegrammars?

Nextsteps

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Whereisthebuginthefollowinggrammar?

S(NS)→A(NA).B(NB) [NS=NA,NS=NB]A(N)→a [N=1]A(N)→a.a [N=2]B(N)→b.b [N=2]

Theattributegrammarverificationproblemconsistsofdetectingnon-terminalsandrulesthatcannotbeusedinanysuccessfulderivation.

AttributeGrammarVerificationProblem

A(N)→a [N=1]

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Attributegrammarverificationissimilartoreductionofacontext-freegrammar.

1. translatetheattributegrammartoaCFGbygroundingallattributes

2. reduceCFG

VerificationviaTranslationtoCFG

original grounded generating

non-terminals

reachable

non-terminals

S(NS) → A(NA).B(NB)[NS = NA,NS = NB]

A(N) → a [N = 1] A(N) → a.a [N = 2] B(N) → b.b [N = 2]

S1 → A1.B1S2 → A2.B2A1 → a A2 → a.aB2 → b.b

S2 → A2.B2A1 → a A2 → a.aB2 → b.b

S2 → A2.B2

A2 → a.aB2 → b.b

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

SimulatethereductionalgorithmontheattributegrammarandcalculatepossiblevaluesofattributesbysolvingunderlyingCSPs.

S(NS)→A(NA).B(NB)[NS=NA,NS=NB]A(N)→a [N=1]A(N)→a.a [N=2]B(N)→b.b [N=2]

DirectVerificationviaCSP

Bottom-up

SAB

Top-down

SAB2

21,2

222

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Editorofattributegrammarswithlinearconstraints.Push-buttonverificationwithhighlightingallerrorsinthegrammar.

Implementation

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Wecantranslatenestedworkflowswithextra

constraintstoattributegrammars.

WecantranslateSTRIPSplanningdomainmodelstoattributegrammars.Wecanfullyverifytheattributegrammars:

• bytranslationtoaCFG

• directlybysolvingunderlyingCSPs

Thedownside:• verificationiscomputationallydemanding

Summary

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

• translationofothermodels(suchashierarchicaltasknetworks)

• automatedlearningofgrammars(fromexampleplans/schedules)

• visualizationandsupportforinteractiveediting

Thisisjustthebeginning…

WorkflowModelingandVerificationusingAttributeGrammars RomanBarták

Roman BartákCharles University, Faculty of Mathematics and Physics

[email protected]