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

Upload: trinhnhu

Post on 05-Jul-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

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]