La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Les procédés métiers : conception, modélisation et systèmes

Présentations similaires


Présentation au sujet: "Les procédés métiers : conception, modélisation et systèmes"— Transcription de la présentation:

1 Les procédés métiers : conception, modélisation et systèmes
Claude Godart Université de Lorraine - Esstin

2 Organisation du cours Introduction Concepts et notations
Modélisation des processus Analyse qualitative des processus Analyse quantitative des processus Systèmes de gestion de processus Processus transactionnels Découverte de processus Conclusion

3 Chapitre 6 Découverte de la logique des processus
Claude Godart Université de lorraine. Esstin

4 Idée de base Traces de workflow ERP, billetterie … découverte

5 Motivations Trouver le modèle d’un processus
Trouver le comportement exact d’un processus déjà modélisé Pour diagnostiquer, Améliorer  business intelligence

6 Exemples de traces Log format (caseID, activity) Example
Check Invoice for Invoice No completed on at 9:19:57 Function StoreCustomerData(„Müller“, c1987, „Bad Bentheim“) completed on at 9:22:24 Send Invoice for Invoice No completed on at 9:23:18 Resulting Log (4567, Check Invoice), (c1987, StoreCustomerData), (4567, Send Invoice), etc.

7 Structure des traces d’exécution
Cette structure est a la fois indépendante de tout SGWF particulier mais compatible avec les sortie de SGWF Une structure indépendante, compatibles avec la plupart des SGWFs actuels

8 Structure des traces d’exécution
(basique) Cette structure est a la fois indépendante de tout SGWF particulier mais compatible avec les sortie de SGWF

9 Structure des traces d’exécution (Exemple d’extension)
Participant Cette structure est a la fois indépendante de tout SGWF particulier mais compatible avec les sortie de SGWF

10 Conditions minimales sur les traces d'exécutions
Un seuil minimale sur la qualité et la quantité d’information Qualité de l’information (i.e. structure minimale): Absence de bruit (traces d’exécution incorrectes ou inachevées) Événement atomique (i.e. absence d’états, et de temps d’exécution) Quantité de l’information (i.e. nombre d’instances différentes): Nombre minimale égale à 1 Ajouter n instances pour un choix parmi n activités Ajouter  (ji+ i -1) -1 pour un parallélisme entre n flux contenant chacun ji activités Prouvé suffisant pour la découverte du flot de contrôle Instances 1 STP VSC ER VD MJR RD LD 2 STP VSC AE VD RD LD 3 STP VSC VD RP RD LD 4 STP VSC VD ER MJR RD LD 5 STP VSC ER MJR VD RD LD 6 STP VSC VD AE RD LD 7 STP VSC RP VD RD LD 8 STP VD VSC RP RD LD 9 STP VSC RP RD VD LD STP VSC ER VD MJR AE RP RD LD 1+3+1*(4+1)=9

11 The « α algorithme »  

12 α algorithme : relations d’ordre
Soit T un ensemble d’activités, s Î T* est une trace d’une instance d’exécution de workflow et W Í T* est un log de workflow. Soit a,b Î T: a > W b ssi il y a une trace s = t1 t2 t3 ¼tn-1 et i Î {1, ¼, n-2} tels que s Î W et ti = a et ti+1 = b, a ®W b ssi a > W b et not (b > W a), a ||W b ssi a > W b et b > W a. a #W b ssi not(a > W b) et not(b > W a), and

13 Le log est complet si la relation ne peut pas être étendue.
α algorithme : Exemple 1 W = { A B C D, A C B D, A E D} case 1 : task A case 2 : task A case 3 : task A case 3 : task B case 1 : task B case 1 : task C case 2 : task C case 4 : task A case 2 : task B case 2 : task D case 5 : task A case 4 : task C case 1 : task D case 3 : task C case 3 : task D case 4 : task B case 5 : task E case 5 : task D case 4 : task D A > W B A > W C A > W E B > W C B > W D C > W B C > W D E > W D A®W B A ®W C A ®W E B ®W D C ®W D E ®W D B ||W C C ||W B #W : rest Le log est complet si la relation ne peut pas être étendue. Pas (X®W Y xor Y®W X xor X ||W Y xor X #W Y)

14 W = { A B C D, A C B D} est complet
α algorithme : Exemple 2 W = { A B C D, A C B D} est complet A > W B A > W C B > W C B > W D C > W B C > W D A®W B A ®W C B ®W D C ®W D B ||W C C ||W B #W : rest

15 W = { A B D, A C D} est complet
α algorithme : Exemple 3 W = { A B D, A C D} est complet A®W B A ®W C B ®W D C ®W D A > W B A > W C B > W D C > W D ||W :aucun #W : le reste

16 α algorithme – Principe (a)
xy

17 α algorithme – Principe (b)
xy, xz, and y#z

18 α algorithme – Principe (c)
xz, yz, and x#y

19 α algorithme – Principe (d)
xy, xz, and y||z

20 α algorithme – Principe (e)
xz, yz, and x||y

21 α algorithme : Règles de construction d’un RdP
Soit W un log de workflow sur l’ensemble T. TW = { t Î T  |  $s Î W et t Î s}, (ensemble des activités) TI = { t Î T  |  $s Î W et t = first(s) } (activités initiales) TO = { t Î T  |  $s Î W et t = last(s) } (activtés finales) X = { (A,B) |  A Í TW  Ù B Í TW  Ù  "a Î A, "b Î B, a®Wb   Ù  "a1,a2 Î A , a1# a2  Ù  "b1,b2 Î B, b1#W b2 } (relations causales) Y = { (A,B) Î X  |   "(A¢,B¢) Î X A Í A¢ ÙB Í B¢Þ (A,B) = (A¢,B¢) } (ensemble minimal de relations causales) PW = { p(A,B)  |  (A,B) Î YW } È{iW,oW}, FW = { (a,p(A,B))  |  (A,B) Î YW  Ù a Î A }  È { (p(A,B),b)  |  (A,B) Î YW  Ù b Î B }  È{ (iW,t)  |  t Î TI}  È{ (t,oW)  | t Î TO} a(W) = (PW,TW,FW).

22 α algorithme : exemple Ensemble des traces d’execution :
A1, A2, A3, A4, A5, A6, A9 A1, A2, A3, A4, A5, A7, A9 A1, A2, A3, A4, A5, A8, A9 A1, A2, A4, A3, A5, A6, A9 A1, A2, A4, A3, A5, A7, A9 A1, A2, A4, A3, A5, A8, A9 A1, A4, A2, A3, A5, A6, A9 A1, A4, A2, A3, A5, A7, A9 A1, A4, A2, A3, A5, A8, A9

23 α algorithme : exemple TW = {A1, A2, A3, A4, A5, A6, A7, A8, A9},
TI = {A1}, TO = {A9}, XW = {(A1, A2), (A1, A4), (A2, A3), (A3, A5), (A4, A5), (A5, A6), (A5, A7), (A5, A8), (A6, A9), (A7, A9), (A8, A9), (A5, (A6, A7)), (A5, (A6, A8)), (A5, (A7 , A8)), (A5, (A6, A7 , A8)), ((A6, A7), A9), ((A6, A8), A9), ((A7, A8), A9), ((A6, A7, A8), A9) YW = {(A1, A2), (A1, A4), (A2, A3), (A3, A5), (A4, A5), (A5, (A6, A7 , A8)), ((A6, A7, A8), A9) PW = { p(A1), p(A1, A2), p(A1, A4), p(A2, A3), p(A3, A5), p(A4, A5), p(A5, A678), p(A678, A9), p(A9) } FW = {(p(A1), A1), (A1, p(A1, A2)), (p(A1, A2), A2), (A1, p(A1, A4)), (p(A1, A4), A4), (A2, p(A2, A3)), (p(A2, A3), A3), (A3, p(A3, A5)), (p(A3, A5), A5), (A5, p(A4, A5), (p(A4, A5), A5), (A5, p(A5, A678)), (p(A5, A678), A6), (p(A5, A678), A7), (p(A5, A678), A8), (A6, p(A678, A9)), (A7, p(A678, A9)), (A8, p(A678, A9)), (p(A678, A9), A9), (A9, p(A9)) a(W) = (PW,TW,FW).

24 α algorithme : exemple

25 Patterns mining

26 Construction de la table de dépendance statistique (TDS)
Pour chaque activité A dans les traces d’exécution : le nombre d'occurrences global de cette activité (dénotée #A) les dépendances directes aux activités précédentes Bi (dénoté P(A\Bi)) Instances 1 STP VSC ER VD MJR RD LD 2 STP VSC AE VD RD LD 3 STP VSC VD RP RD LD 4 STP VSC VD ER MJR RD LD 5 STP VSC ER MJR VD RD LD 6 STP VSC VD AE RD LD 7 STP VSC RP VD RD LD 8 STP VD VSC RP RD LD 9 STP VSC RP RD VD LD STP VSC ER MJR AE RP VD RD SD #STP=9 # VSC=9 0.89 0.11 # ER=3 0.66 0.33 # MJR=3 # AE=2 0.5 0.55 # RP=4 0.75 0.25 # VD=9 # RD=9 0.22 # SD=9

27 Construction de la table de dépendance statistique (TDS)
Pour chaque activité A dans les traces d’exécution : le nombre d'occurrences global de cette activité (dénotée #A) les dépendances directes aux activités précédentes Bi (dénoté P(A\Bi)) Instances 1 STP VSC ER VD MJR RD LD 2 STP VSC AE VD RD LD 3 STP VSC VD RP RD LD 4 STP VSC VD ER MJR RD LD 5 STP VSC ER MJR VD RD LD 6 STP VSC VD AE RD LD 7 STP VSC RP VD RD LD 8 STP VD VSC RP RD LD 9 STP VSC RP RD VD LD STP VSC ER MJR AE RP VD RD SD #STP=9 # VSC=9 0.89 0.11 # ER=3 0.66 0.33 # MJR=3 # AE=2 0.5 0.55 # RP=4 0.75 0.25 # VD=9 # RD=9 0.22 # LD=9

28 Élimination des dépendances erronées
STP VSC ER VD MJR AE RP RD LD P(RP\VD) <> 0.25  P(VD\RP) <> 0.11 Instances 1 STP VSC ER VD MJR RD LD 2 STP VSC AE VD RD LD 3 STP VSC VD RP RD LD 4 STP VSC VD ER MJR RD LD 5 STP VSC ER MJR VD RD LD 6 STP VSC VD AE RD LD 7 STP VSC RP VD RD LD 8 STP VD VSC RP RD LD 9 STP VSC RP RD VD LD STP VSC ER MJR AE RP VD RD SD #STP=9 # VSC=9 0.89 0.11 # ER=3 0.66 0.33 # MJR=3 # AE=2 0.5 0.55 # RP=4 0.75 0.25 # VD=9 # RD=9 0.22 # LD=9 0.88

29 Élimination des dépendances erronées
STP VSC ER VD MJR AE RP RD LD Instances 1 STP VSC ER VD MJR RD LD 2 STP VSC AE VD RD LD 3 STP VSC VD RP RD LD 4 STP VSC VD ER MJR RD LD 5 STP VSC ER MJR VD RD LD 6 STP VSC VD AE RD LD 7 STP VSC RP VD RD LD 8 STP VD VSC RP RD LD 9 STP VSC RP RD VD LD STP VSC ER MJR AE RP VD RD SD #STP=9 # VSC=9 0.89 0.11 # ER=3 0.66 0.33 # MJR=3 # AE=2 0.5 0.55 # RP=4 0.75 0.25 # VD=9 # RD=9 0.22 # LD=9 0.88

30 Élimination des dépendances erronées
Deux activités A et B sont concurrentes ssi les entrées P(A\B) et P(B\A) dans TDS sont non nulles. Instances 1 STP VSC ER VD MJR RD LD 2 STP VSC AE VD RD LD 3 STP VSC VD RP RD LD 4 STP VSC VD ER MJR RD LD 5 STP VSC ER MJR VD RD LD 6 STP VSC VD AE RD LD 7 STP VSC RP VD RD LD 8 STP VD VSC RP RD LD 9 STP VSC RP RD VD LD STP VSC ER MJR AE RP VD RD LD #STP=9 # VSC=9 0.89 -1 # ER=3 0.66 # MJR=3 # AE=2 0.5 # RP=4 0.75 # VD=9 0.11 # RD=9 0.22 0.33 # LD=9 0.88 Pour éliminer ces dépendance on proposer de les détecter et de les marquer en utilisant l’axiome que deux activité sont en concurrences ssi

31 Découverte des dépendances indirectes
Comportement concurrentiel STP VSC ER VD MJR AE RP RD LD Instances 1 STP VSC ER VD MJR RD LD 2 STP VSC AE VD RD LD 3 STP VSC VD RP RD LD 4 STP VSC VD ER MJR RD LD 5 STP VSC ER MJR VD RD LD 6 STP VSC VD AE RD LD 7 STP VSC RP VD RD LD 8 STP VD VSC RP RD LD 9 STP VSC RP RD VD LD STP VSC ER MJR AE RP VD RD LD #STP=9 # VSC=9 0.89 -1 # ER=3 0.66 # MJR=3 # AE=2 0.5 # RP=4 0.75 # VD=9 0.11 # RD=9 0.22 0.33 # LD=9 0.88 Le comportement concurrentiel engendre un autre problème dans lequel on observe des dépendances incomplète. Par exemple observons l’instance 1

32 Découverte des dépendances indirectes
Comportement concurrentiel STP VSC ER VD MJR AE RP RD LD Instances 1 STP VSC ER VD MJR RD LD 2 STP VSC AE VD RD LD 3 STP VSC VD RP RD LD 4 STP VSC VD ER MJR RD LD 5 STP VSC ER MJR VD RD LD 6 STP VSC VD AE RD LD 7 STP VSC RP VD RD LD 8 STP VD VSC RP RD LD 9 STP VSC RP RD VD LD STP VSC ER MJR AE RP VD RD LD #STP=9 # VSC=9 0.89 -1 # ER=3 0.66 # MJR=3 # AE=2 0.5 # RP=4 0.75 # VD=9 0.11 # RD=9 0.22 0.33 # LD=9 0.88

33 Découverte des dépendances indirectes: Fenêtre de concurrence
Nous ne considérons pas seulement les activités qui précédent directement mais toutes les activités couvertes par la fenêtre de concurrence ayant une dépendance statistique non nulle. Longueur de la fenêtre de concurrence = 2 + nombre d’activités en concurrence Donc TFC[MJR]=3 Instances 1 STP VSC ER VD MJR RD LD 2 STP VSC AE VD RD LD 3 STP VSC VD RP RD LD 4 STP VSC VD ER MJR RD LD 5 STP VSC ER MJR VD RD LD 6 STP VSC VD AE RD LD 7 STP VSC RP VD RD LD 8 STP VD VSC RP RD LD 9 STP VSC RP RD VD LD STP VSC ER MJR AE RP VD RD LD #STP=9 # VSC=9 0.89 -1 # ER=3 0.66 # MJR=3 1 # AE=2 0.5 # RP=4 0.75 # VD=9 0.11 # RD=9 0.22 0.33 # LD=9 0.88 Cette fenêtre de considérer pas seulement …

34 Patterns mining : Découverte des dépendances indirectes:
Fenêtre de concurrence Nous ne considérons pas seulement les activités qui précédent directement mais toutes les activités couvertes par la fenêtre de concurrence ayant une dépendance statistique non nulle. Instances 1 STP VSC ER VD MJR RD LD 2 STP VSC AE VD RD LD 3 STP VSC VD RP RD LD 4 STP VSC VD ER MJR RD LD 5 STP VSC ER MJR VD RD LD 6 STP VSC VD AE RD LD 7 STP VSC RP VD RD LD 8 STP VD VSC RP RD LD 9 STP VSC RP RD VD LD STP VSC ER MJR AE RP VD RD LD #STP=9 # VSC=9 1 -1 # ER=3 # MJR=3 # AE=2 # RP=4 # VD=9 # RD=9 0.33 0.22 0.45 # LD=9

35 Découverte de patrons de flots de contrôle

36 Patron de séquence

37 Découverte des patrons de branchement

38 Découverte des patrons de jonction

39 Patterns mining : Découverte des patrons de workflows

40 Patterns mining : Découverte des patrons de workflows
STP VSC ER MJR AE RP VD RD LD #STP=9 # VSC=9 1 -1 # ER=3 # MJR=3 # AE=2 # RP=4 # VD=9 # RD=9 0.33 0.22 0.45 # LD=9 STP VSC ER VD MJR AE RP RD LD


Télécharger ppt "Les procédés métiers : conception, modélisation et systèmes"

Présentations similaires


Annonces Google