CMMN (Case Management Model and Notation) : vie et mort d’une norme de l’OMG (Object Management Group)
La spécification date de fin 2016 et est, ou devrais-je plutôt dire “était”, destinée à venir en complément au BPMN (Business Process Model Notation).
Seulement voilà, les compléments, demandant des efforts d’assimilation supplémentaires, les utilisateurs ont souvent tendance à s’en passer en les contournant, et au fil du temps, ils tombent dans les oubliettes.
Comme nombreux avant nous, nous allons donc démontrer que l’on peut se passer de CMMN en utilisant BPMN et les “sub-process ad hoc”.
(exemple pédagogique d'un dossier de suspicion de fraude à la mutuelle modélisé avec CMMN)
Objectifs de CMMN
BPMN a été adoptée comme norme de modélisation des processus métier, qui sont décrits comme des séquences prédéfinies d'activités avec décisions (passerelles) pour diriger la séquence le long de chemins alternatifs ou pour des itérations.
Ces modèles sont efficaces pour des processus métier prédéfinis, entièrement spécifiés et reproductibles. (Voir nos articles dans la catégorie BPMN)
Qu’en est-il de la modélisation d’activités qui ne sont pas prédéfinies et reproductibles, mais qui dépendent plutôt de l'évolution des circonstances et des décisions ad hoc des experts métier concernant une situation particulière ?
C’est en partant de ce manque dans les normes de modélisations que l’OMG a créé CMMN.
Les applications sont nombreuses, on peut citer par exemple : les traitements antifraude, la gestion des réclamations dans les assurances, les diagnostics médicaux…
Le kit de survie CMMN
Il fut un temps où nous aurions pu utiliser l’outil open source bpmn.io, qui proposait le tiercé gagnant de la modélisation : BPMN pour les processus métier, DMN (Decision Model Notation) (voir nos articles dans la catégorie DMN) pour les règles métier et CMMN pour les processus ad hoc et non reproductibles, mais aujourd’hui CMMN est absent de la plateforme.
Heureusement pour notre démonstration, l’outil Enterprise Architect de Sparx Systems supporte toujours CMMN, en plus de BPMN, DMN et bien d’autres choses encore pour notre plus grand bonheur.
Comme cet article n’a pas pour vocation d’être exhaustif concernant la norme, voici donc les principaux artefacts de modélisation avec leur description :
Exemples de patterns CMMN
Enterprise Architect propose même un “Model Wizard” avec 3 patterns.
“Three Choice Tasks”
Ce pattern crée des éléments et un diagramme qui modélisent un choix simple où une tâche particulière doit être effectuée avant que d'autres tâches puissent être sélectionnées. La tâche sélectionnée dépend généralement de ce qui est déterminé dans la tâche précédente.
(pattern CMMN “Three Choice Tasks”)
“Two Phase Expanded Case Plan”
Ce pattern crée des éléments et un diagramme qui contient un modèle de plan de cas composé de deux étapes dont chacune contient cinq tâches dont deux sont discrétionnaires. Les deux étapes sont déclenchées par deux événements différents et pourraient potentiellement s'exécuter simultanément.
(pattern CMMN “Two Phase Expanded Case Plan”)
“Basic Five Task Plan”
Ce pattern crée des éléments et un diagramme où un événement utilisateur déclenche une tâche humaine qui est terminée, puis un certain nombre d'autres tâches peuvent être terminées. Pour atteindre un jalon, une tâche humaine doit être terminée. À tout moment, un événement de minuterie pourrait être déclenché mettant fin à l'exécution du cas.
(pattern CMMN “Basic Five Task Plan”)
Modélisation CMMN d’un cas de suspicion de fraude à la mutuelle
L’exemple pour notre démonstration sera volontairement simplifié, pour être avant tout pédagogique et se concentrer sur les sous-processus ad hoc.
La nature des fraudes reste assez classique : ordonnances fausses ou trafiquées, déclarations mensongères, fausses identités...
A l'origine du soupçon, souvent un signalement par les gestionnaires, qui émane de leur intuition face à un dossier, car les algorithmes d'IA n’éprouvent pas (encore) de sentiments.
D’autres niveaux reposent sur des moteurs de machine learning.
La tâche humaine bloquante “Analyser les arguments et les pièces justificatives fournis” est une tâche ad hoc. En effet, le gestionnaire doit adapter les vérifications en fonction de la spécificité des affirmations et des pièces fournies par l’assuré.
A noter aussi la tâche humaine non bloquante “Lancer le moteur d'IA”, qui est facultative, en fonction par exemple du type de fraude.
(exemple pédagogique d'un dossier de suspicion de fraude à la mutuelle modélisé avec CMMN)
Modélisation BPMN du même cas de suspicion de fraude à la mutuelle
Pour arriver à la même sémantique, nous avons utilisé l’artefact BPMN “sub-process ad hoc” nommé “Sous-processus ad hoc pour analyser les dires de l'assuré” avec le sigle ~ (tilde) en bas de l'activité et l'événement intermédiaire interruptible (en pointillé) typé message : “L'entretien entraîne des vérifications spécifiques”.
(le même exemple que précédemment, mais en utilisant BPMN en remplacement de CMMN)
Conclusion
La réticence aux changements, aux nouveautés, est présente partout.
Convaincre des experts métier de faire l’effort d’apprentissage d’une nouvelle notation comme CMMN, alors qu’on vient de leur infliger BPMN et qu’ensuite on leur a rajouté une couche avec DMN, en leur vendant que c’était complémentaire, est totalement une mission impossible.
Les utilisateurs chercheront à s’en passer par tous les moyens.
Les solutions de contournement existent, comme nous l’avons démontré en utilisant les subprocess ad hoc de BPMN.
D'autres défauts viennent s'ajouter, comme sa valeur limitée, la connaissance métier enfouie dans des règles invisibles, les artefacts de modélisation mal interprétés et rien n'est prévu pour montrer l'alignement de l'informatique avec le métier.
CMMN rejoint donc le club des normes (CWM, KDM, VDML, MDMI, SBVR, SPEM...) qui n’ont pratiquement jamais été utilisées, car souvent trop complexes à mettre en œuvre et, en tous les cas, toujours boudées par les utilisateurs.
|
Rhona Maxwel @rhona_helena |
“On mesure l’intelligence d’un individu à la quantité d’incertitudes qu’il est capable de supporter”
Emmanuel Kant
Compléments de lecture
- BPMN : norme OMG - synthèse des éléments graphiques
- BPMN : l'antisèche pour rester incollable en modélisation de processus
- BPMN l’exemple type pour tout comprendre sans prendre d’aspirine
- BPMN : la norme, toute la norme rien que la norme. L'exemple à lire en attendant une pizza.
- BPMN : mais que dit la norme sur les sous-processus et la gestion des événements d'interruption et de remontée d'incidents ?
- DMN - L'antisèche de la notation complète des composants d'un DRD (Decision Requirement Diagram) : notation de la décision
- DMN - L'antisèche de la notation complète des composants d'un DRD (Decision Requirement Diagram) : notation des règles de connexions
- Tutoriel – didacticiel – exemple complet sur la norme de modélisation des règles métiers DMN (Decision Model Notation) : le processus métier BPMN
- Tutoriel – didacticiel – exemple complet sur la norme de modélisation des règles métiers DMN (Decision Model Notation) : La vue des exigences des décisions
- Tutoriel – didacticiel – exemple complet sur la norme de modélisation des règles métiers DMN (Decision Model Notation) : Le niveau logique de décision
- Tutoriel – didacticiel – exemple complet sur la norme de modélisation des règles métiers DMN (Decision Model Notation) : Exemple d'exécution du modèle de décisions
Inscrivez-vous au site
Soyez prévenu par email des prochaines mises à jour
Rejoignez les 769 autres membres