Embed presentation






![Reference:MERgE/WP3/22-05-14/initials
ITEA2 project #11011, 2012-20157
PRODAN approach
Develop / take
process model
Generate
Alloy Rule-set
Detect
Deviations
Suggest
Execution
Process
Recovery
Design Model Source Code
Design Code
Design Code
// If design is executed, code must be executed afterward
G(design -> X code)
Response[a,b:Activity] {
// (alloy code equivalent to LTL)
}
Response[design, code]
Alloy predicate rules
LTL formulas
Rule types:
• Initial[a:Activity]
• Response[a,b:Activity]
• Precedence[a,b:Activity]
• Existence[a:Activity]
• Final[a:Activity]](https://image.slidesharecdn.com/mergemeetingrennes-140624101828-phpapp02/75/Deviation-Detection-in-Process-Enactment-7-2048.jpg)
![Reference:MERgE/WP3/22-05-14/initials
ITEA2 project #11011, 2012-20158
PRODAN approach
Develop / take
process model
Generate
Alloy Rule-set
Detect
Deviations
Suggest
Execution
Process
Recovery
Rules are continually evaluated during the process enactment
• Satisfied: there is no deviation impacting the rule
• Violated: a deviation occurred that made the rule false
Satisfiable: may still be satisfied in the future
Design Code Code
Existence[Desgin]
Reponse[Desgin, Code]
Existence[Code]
…..
Design Model Source Code
Design Code
Execution](https://image.slidesharecdn.com/mergemeetingrennes-140624101828-phpapp02/75/Deviation-Detection-in-Process-Enactment-8-2048.jpg)














This document summarizes work on the PRODAN project, which develops a technique for detecting deviations from specified business processes by modeling them in Alloy and continuously evaluating execution traces against the model. It describes the PRODAN approach which takes a process model, generates Alloy rules, detects deviations by evaluating the rules against an execution trace, and suggests ways to recover by finding execution sequences that minimize further deviations. The document also provides an overview of the PRODAN architecture and progress to date, with the goal of supporting automatic deviation detection, on-the-fly process recovery, and analysis of common deviation patterns.






![Reference:MERgE/WP3/22-05-14/initials
ITEA2 project #11011, 2012-20157
PRODAN approach
Develop / take
process model
Generate
Alloy Rule-set
Detect
Deviations
Suggest
Execution
Process
Recovery
Design Model Source Code
Design Code
Design Code
// If design is executed, code must be executed afterward
G(design -> X code)
Response[a,b:Activity] {
// (alloy code equivalent to LTL)
}
Response[design, code]
Alloy predicate rules
LTL formulas
Rule types:
• Initial[a:Activity]
• Response[a,b:Activity]
• Precedence[a,b:Activity]
• Existence[a:Activity]
• Final[a:Activity]](https://image.slidesharecdn.com/mergemeetingrennes-140624101828-phpapp02/75/Deviation-Detection-in-Process-Enactment-7-2048.jpg)
![Reference:MERgE/WP3/22-05-14/initials
ITEA2 project #11011, 2012-20158
PRODAN approach
Develop / take
process model
Generate
Alloy Rule-set
Detect
Deviations
Suggest
Execution
Process
Recovery
Rules are continually evaluated during the process enactment
• Satisfied: there is no deviation impacting the rule
• Violated: a deviation occurred that made the rule false
Satisfiable: may still be satisfied in the future
Design Code Code
Existence[Desgin]
Reponse[Desgin, Code]
Existence[Code]
…..
Design Model Source Code
Design Code
Execution](https://image.slidesharecdn.com/mergemeetingrennes-140624101828-phpapp02/75/Deviation-Detection-in-Process-Enactment-8-2048.jpg)












