# DMN : tables de décision et règles métier

Informatique de gestion · Bachelor 3

> Modéliser les décisions avec DMN : tables de décision, politiques de succès, DRD et lien avec BPMN.

## Introduction

Dans un processus, certaines étapes consistent à prendre une décision : accepter ou refuser un crédit, calculer une remise, router une demande vers le bon service. Si cette logique est codée dans les passerelles du diagramme BPMN, le modèle devient illisible et chaque changement de règle impose de modifier le processus. DMN (Decision Model and Notation), standard de l'OMG, propose de séparer les décisions du flux.

Une décision se modélise par une table de décision : les colonnes d'entrée contiennent des conditions, les colonnes de sortie les résultats, chaque ligne est une règle. Une politique de succès (hit policy) précise ce qui se passe quand plusieurs règles s'appliquent : Unique (une seule), First (première règle), Priority, Collect (toutes). Un diagramme d'exigences de décision (DRD) montre comment les décisions dépendent de données d'entrée et d'autres décisions. Les expressions s'écrivent en FEEL.

Cette séparation permet aux experts métier de maintenir les règles (barèmes, seuils d'approbation, conditions de remise) sans toucher au processus, ce qui est précieux dans les banques, assurances et administrations où les règles évoluent souvent.

## Objectifs d'apprentissage

- Expliquer pourquoi séparer décisions et flux de processus
- Construire une table de décision avec entrées, sorties et règles
- Choisir une politique de succès adaptée
- Lire un diagramme d'exigences de décision
- Relier une tâche de règle métier BPMN à une décision DMN

## Concepts clés

- **Table de décision** : Tableau de règles : chaque ligne associe des conditions sur les entrées à une ou plusieurs sorties.
- **Politique de succès** : Détermine l'issue en cas de plusieurs règles applicables : Unique, Any, First, Priority, Collect, Rule order.
- **DRD** : Diagramme montrant décisions, données d'entrée, sources de connaissance et leurs dépendances.
- **Lien avec BPMN** : Une tâche de règle métier (business rule task) d'un processus BPMN appelle une décision DMN et reçoit son résultat.

## Conclusion

DMN apporte au BPM un langage de décision lisible, testable et maintenable. La séparation entre flux et règles réduit le coût du changement.

Bien utilisée, elle rapproche les experts métier de l'exécution des règles tout en conservant un modèle de processus stable.

## Cartes

### Que signifie DMN ?

Decision Model and Notation, standard de l'OMG pour modéliser et exécuter des décisions métier.

### Pourquoi séparer décisions et processus ?

Les règles changent plus souvent que le flux ; les isoler évite de modifier le diagramme et permet aux experts métier de les maintenir.

### Que contient une ligne d'une table de décision ?

Une règle : des conditions sur les entrées et le résultat à produire si elles sont réunies.

### Que fait la politique de succès Unique ?

Elle exige qu'au plus une règle soit satisfaite pour chaque entrée ; sinon la table est mal conçue.

### Que fait la politique First ?

Elle retient la première règle satisfaite dans l'ordre des lignes.

### Que fait la politique Collect ?

Elle retourne l'ensemble des résultats de toutes les règles satisfaites, éventuellement agrégés (somme).

### Qu'est-ce que FEEL ?

Le langage d'expressions standard de DMN, lisible par des non-informaticiens (ex. [18..25], >= 1000).

### À quoi sert un DRD ?

À montrer les dépendances entre décisions et données d'entrée, donc la structure globale d'une décision complexe.

### Qu'est-ce que la complétude d'une table ?

Chaque combinaison possible d'entrées est couverte par au moins une règle.

### Citez un exemple de décision DMN en entreprise.

Calcul d'une remise selon le segment client et le volume, ou score d'acceptation d'une demande de crédit.

## Glossaire

- **Décision** : Choix produisant une sortie à partir d'entrées selon une logique définie.
- **Règle métier** : Énoncé d'une contrainte ou d'une logique de l'organisation.
- **Hit policy** : Paramètre d'une table précisant comment gérer plusieurs règles satisfaites.
- **Business rule task** : Tâche BPMN qui délègue l'évaluation à un moteur de règles.
- **FEEL** : Friendly Enough Expression Language, langage des expressions DMN.
- **Données d'entrée** : Informations fournies à une décision.

https://ruvy.ch/decks/-P5CthyUELMoEvFJOFNI
