Passer au contenu
← Tous les termes

Multi-instances

Une activité qui s'exécute une fois par élément d'une collection — le for-each de BPMN, en séquentiel ou en parallèle.

Ce qu'est une activité multi-instances

Une activité multi-instances est une activité avec trois barres verticales (parallèle) ou trois barres horizontales (séquentiel) en bas. Elle signifie « exécuter cette activité une fois par élément d'une collection ». La collection est typiquement une liste d'éléments — les lignes d'une facture, les approbateurs d'une chaîne, les régions d'un déploiement.

Le parallèle démarre toutes les itérations en même temps et attend que toutes (ou un sous-ensemble configurable) se terminent avant de continuer. Le séquentiel les exécute l'une après l'autre. Le choix est important : le parallèle est plus rapide mais exige que les itérations soient indépendantes ; le séquentiel garantit l'ordre mais cumule les latences.

Les conditions d'achèvement

Les activités multi-instances supportent des conditions d'achèvement — des règles qui décident quand « assez » d'itérations ont été complétées. La valeur par défaut est « toutes doivent se terminer ». Vous pouvez définir « au moins 1 » (court-circuit au premier succès), « au moins N » (vote par quorum), ou une expression personnalisée. C'est ainsi que l'on modélise des chaînes d'approbation où trois approbateurs sur cinq suffisent, ou des appels d'offres parallèles où le premier à répondre remporte.

Les activités multi-instances dans LucidFlow

Quand le document source fait référence à une liste (« pour chaque ligne », « notifier chaque responsable régional »), LucidFlow émet une activité multi-instances plutôt que de dupliquer l'étape. Le tableau de bord des coûts multiplie le coût de l'activité par la taille attendue de la collection — une activité « Rechercher le taux de TVA » en multi-instances sur une facture type de vingt lignes est comptée comme vingt fois le coût par itération. Les activités multi-instances sont des cibles d'automatisation de premier choix : le coût par itération est faible, mais le total est élevé et le travail est mécanique.

Questions fréquentes

Quelle différence entre une activité multi-instances et une boucle ?

Une boucle relance la même activité jusqu'à ce qu'une condition soit vraie — le nombre d'itérations est dynamique, généralement petit, toujours séquentiel. Une multi-instances exécute une fois par élément d'une collection connue — le nombre d'itérations est la taille de la collection, et les itérations peuvent tourner en parallèle.

Comment arrêter une multi-instances parallèle dès qu'assez d'itérations ont fini ?

En posant une condition d'achèvement. Dès qu'elle est vraie, les instances restantes sont terminées. C'est le pattern « premier de trois appels d'offres reçus gagne » ou « quorum d'approbateurs atteint ».

Un sous-processus peut-il être multi-instances ?

Oui, et c'est souvent le pattern le plus propre. Un sous-processus multi-instances encapsule le corps par itération — entrées, activités, sorties — et garde le diagramme parent lisible.

Termes liés

← Retour au glossaire complet