towards a decserflow mapping to s ciff
DESCRIPTION
Towards a DecSerFlow mapping to S CIFF. Federico Chesani, Paola Mello, Marco Montali, Sergio Storari. Limits of procedural languages 1/2. Recent trends in the web-services world: WS-BPEL, WS-CDL They are procedural and not very different from classical workflow languages - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/1.jpg)
Towards a DecSerFlow mapping to SCIFF
Federico Chesani, Paola Mello, Marco Montali, Sergio Storari
![Page 2: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/2.jpg)
Limits of procedural languages 1/2
Recent trends in the web-services world: WS-BPEL, WS-CDLThey are procedural and not very different from classical workflow languagesVan der Aalst’s claim:
Autonomyconstrained freedom
Procedural languages do not fit well with the autonomous nature
of web services
![Page 3: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/3.jpg)
Limits of procedural languages 2/2
We want to express the not co-existence between two activities
“A and B could be executed several times, but they exclude each other”
Procedural approach:
A Over-specification
B How? When?
![Page 4: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/4.jpg)
Procedural vs Declarative Approach
Declarative approachLTL: (A B)Compact and expressive……but difficult to use by non-experts
Solution: a graphical declarative language for the specification of service flows (DecSerFlow)
A B
![Page 5: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/5.jpg)
DecSerFlow 1/2Main features:
DeclarativeGraphicalMapping to LTL (inspired from LTL patterns)
Dynamic service monitoring (conformance)Service enactment
Easy extendibleSupport of hard and soft constraints“Open” perspective
The modeler must explicitly express not only what has to be done, but also what is forbidden
![Page 6: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/6.jpg)
DecSerFlow 2/2Main elements:
Activity: an atomic logical unit of workConstraint: relationship between activities (policy or business rule)
Each constraint is mapped to an LTL template formula
credit card
notify failure
successful booking
0..10..1
0..1existenceformula
relationformula
negationformula
![Page 7: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/7.jpg)
DecSerFlow ConstraintsThree families
Existence formulaeUnary formulae constraining the cardinality of activities (absence, existence, at most…, at least…)
Relation formulaeBinary formulae specifying “what has to be done”Sub-families: simple relations, alternate relations, chain relations
Sub-sub-families: response, precedence, successionNegation formulae
Binary formulae specifying “what is forbidden”They are the negated version of relation formulae
![Page 8: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/8.jpg)
Extended notation
![Page 9: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/9.jpg)
Mapping to the SCIFF-framework
LTLQuickTime™ and aTIFF (Uncompressed) decompressorare needed to see this picture.
SCIFF
DecSerFlow
•Conformance verification•Enactment
extensions
•Conformance verification•Enactment
![Page 10: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/10.jpg)
Translation Example 1/3Absence_N (N=1)
credit card
notify failure
successful booking
0..10..1€
H(booking,Ti)i=1
N
∏ ∧Ti > Ti−1
→EN(booking,Tb )∧Tb > TN
Atomic model for activitiesAn activity A is mapped to an event
performed(A)
0..1
![Page 11: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/11.jpg)
Mutual substitution
Translation Example 2/3Chain response
(sequence a là workflow)
credit card
notify failure
successful booking
0..10..1
€
H(credit _card,Tc )→E(booking,Tb )∧Tb > Tc∧ EN(X,TX )∧TX > Tc ∧TX < Tb
€
→ E(credit _card,Tc )∨ E(notify _ failure,Tn ).
0..1
![Page 12: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/12.jpg)
2x Responded Absence
Translation Example 3/3Not coexistence
credit card
notify failure
successful booking
0..10..1
€
H(credit _card,Tc )→EN(notify _ failure,Tn )H(notify _ failure,Tn )→EN(credit _card,Tc )
0..1
credit card notify failure
credit card notify failure
![Page 13: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/13.jpg)
Intensional Formalization 1/3
Instead of mapping each concrete formula to an integrity constraints……we follow van der Aalst’s approach by formalizing template formulae with template ICs
General abductive formalization, valid for all modelsRepresentation of a specific model by simply compiling a knowledge base mapping the diagram structure to a list of facts
![Page 14: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/14.jpg)
Intensional formalization 2/3
Our aim is to translate template formulae into
a general set of ICs (ICDSF)+ a general KB (KBDSF)
valid for all DecSerFlow modelsThus DecSerFlow is mapped to an Abductive Logic ProgramSDSF< KBDSF , ={E, EN}, ICDSF >
![Page 15: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/15.jpg)
Intensional formalization 3/3
A specific DecSerFlow diagram is then mapped to an ALP of the form
Sspec< KB, ={E, EN}, ICDSF >
where KBspec models the diagram structure
same as SDSFKB=KBDSFKBspec
![Page 16: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/16.jpg)
Example of diagram descriptionKBspec
existence_formula(booking, absence_N(1)).existence_formula(credit_card, absence_N(1)).existence_formula(notify_failure, absence_N(1)).rel_formula(notify_failure, credit_card, mutual_substitution).neg_formula(notify_failure, credit_card, not_coexistence).rel_formula(credit_card, booking, chain_response).
credit card
notify failure
successful booking
0..10..1
0..1
![Page 17: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/17.jpg)
General Knowledge BaseKBDSF defines knowledge common to all DecSerFlow modelsIn particular, some DecSerFlow constraints are defined in terms of other onesThese correspondences are modeled inside KBDSFE.g. the coexistence relation…neg_formula(A,B,responded_absence):-
neg_formula(A,B,not_coexistence).neg_formula(B,A,responded_absence):-
neg_formula(A,B,not_coexistence).
![Page 18: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/18.jpg)
Template Integrity Constraints 1/2
The first conjunct of a DecSerFlow integrity constraint is the corresponding template formula representationFormalization of the responded absence negation formulaneg_formula(A,B,responded_absence)H(A,TA)EN(B,TB).Thanks to the universal quantification of A and B, the rule is replicated for each (concrete) responded absence formula
![Page 19: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/19.jpg)
Template Integrity Constraints 2/2
Alternate response
rel_formula(A, B, response)H(A,TA)E(B,TB)TB>TA
rel_formula(A,B,alt_response)H(A,TA)H(A,TA2)TA2>TA
E(B,TB)TB>TA TB<TA2
rel_formula(A, B, alt_response)H(A,TA)E(B,TB)TB>TA
EN(A,TB)TB>TA TB<TA2
![Page 20: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/20.jpg)
Example 1/2
ICDSF
neg_formula(X, Y, responded_absence)H(X, TA)EN(Y, TB).
KBDSF
neg_formula(A, B, responded_absence):- neg_formula(A, B, not_coexistence).neg_formula(B, A, responded_absence):- neg_formula(A, B, not_coexistence).
KBspec
neg_formula (credit_card, notify_failure, not_coexistence).
STEP 1: by unfoldingneg_formula(X, Y, not_coexistence)H(X, TA)EN(Y, TB).neg_formula(Y, X, not_coexistence)H(X, TA)EN(Y, TB).
![Page 21: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/21.jpg)
Example 2/2
ICDSF
neg_formula(X, Y, responded_absence)H(X, TA)EN(Y, TB).
KBDSF
neg_formula(A, B, responded_absence):- neg_formula(A, B, not_coexistence).neg_formula(B, A, responded_absence):- neg_formula(A, B, not_coexistence).
KBspec
neg_formula (credit_card, notify_failure, not_coexistence).
STEP 2: by unfolding
H(credit_card, TA)EN(notify_failure, TB).
H(notify_failure, TA)EN(credit_card, TB).
![Page 22: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/22.jpg)
Constraints equivalenceSome negation formulae are “equivalent”, i.e. express the same interaction pattern
E.g. the responded absence and the not coexistence formulae
We have defined a concept of “equivalence w.r.t. conformance” to capture such a case
And proven that our formalizations satisfy these equivalences
![Page 23: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/23.jpg)
DecSerFlow “extensions”Composite activities
Conjunction and disjunction of activities in relationships source/targetVan der Aalst et. al have already introduced disjunctions
Explicit temporal constraints and deadlines
![Page 24: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/24.jpg)
Temporal Constraints Templates
QuickTime™ and aTIFF (LZW) decompressor
are needed to see this picture.
![Page 25: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/25.jpg)
Formulae factorizationrelation family temporal
constraintresponded existence simple alwaysresponse simple after(0)precedence simple before(0)alternate response alternate after(0)alternate precedence alternate before(0)chain response chain after(0)chain precedence chain before(0)
![Page 26: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/26.jpg)
Composite Activities
source target
conjunction synchronizing merge parallel split
disjunction simple merge deferred choice
![Page 27: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/27.jpg)
Example of Extended Policy
Triggers when both sources happens
QuickTime™ and aTIFF (LZW) decompressor
are needed to see this picture.
![Page 28: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/28.jpg)
An extended policy with temporal constraints
QuickTime™ and aTIFF (LZW) decompressor
are needed to see this picture.
![Page 29: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/29.jpg)
ConclusionsWe have successfully mapped the basic DecSerFlow template formulae to SCIFF
A first implementation has been developedAnd tested on the ACME example
Ongoing implementation for extended constraints (conjunctions and temporal aspects)
Future worksTo consider data (!)Service animation through SCIFF (?)
![Page 30: Towards a DecSerFlow mapping to S CIFF](https://reader035.vdocuments.net/reader035/viewer/2022062411/5681675b550346895ddc228f/html5/thumbnails/30.jpg)
Basta!