urbanisation-si

urbanisation-si

Processus métier : UML vs BPMN, devinez qui va gagner ?

(Modélisation d'un processus métier avec le profil UML Eriksson Penker)

urbanisation-si-blog-proces.gif

 

Les processus métier peuvent se modéliser en UML et/ou BPMN qui sont 2 normes de l'OMG.

UML (Unified Modeling Language) est le langage le plus ancien. Ce n'est pas une méthode, mais simplement une boite à outil, un espéranto permettant de modéliser un systéme et de faire communiquer tous les acteurs d'une entreprise. Les 13 diagrammes de la version 2.x permettent de modéliser un systèmes sous différentes vues (représentation privilégiant certains aspects au détriment d'autres).

La norme a été conçue de manière à être évolutive avec parcimonie. En effet, on ne peut pas changer la sémantique des artefacts de modélisation. Mais on peut créer des stéréotypes qui sont des vues ou des types plus spécifiques des éléments de modélisation UML. Par exemple, il n'y pas d'élément spécifique en UML pour représeter un processus métier.  Mais on peut stéréotyper une activité composite (sub activity) d'un diagramme d'activité). Il suffit de créer un nouveau stéréotype en lui donnant un nom ("Processus"), une définition, sur quel élément de modélisation UML il s'applique et enfin un dessin le représentant. Des tagged value permettent aussi de créer des paramétres "clé/valeur". On peut aussi définir des règles de modélisation en utilisant le langage de contrainte formel OCL (UML 2.x est spécifié en OCL). L'ensemble des stéréotypes, clés/valeurs et règles OCL peuvent faire partie d'un même ensemble homogène appelé "profil".

Heureusement l'utilisateur n'a pas à créer tout cela, il pourra trouver son bonheur dans les nombreux profils  existants dans tous les domaines et étendant UML de base. Certains sont normalisés comme SysML, JEE, ... d'autres sont fournis comme outils supplémentaires dans certains AGL (ils sont alors spécifiques à un éditeur) et d'autres sont des standards sans être des normes comme le profil Eriksson Penker spécialement conçu pour les processus métier.

Le profil UML Eriksson Penker se compose :

  • d'un stéréotype (flèche) représentant une agrégation d'activités
  • un stéréotype but du processus (<<goal>>), la raison pour laquelle l'organisation fait ce travail. Il doit doit être exprimé en termes de bénéfices apportés à l'organisation, c'est la justification pour exécuter le processus.
  • un acteur métier (client, marché, ...)
  • des entrées non modifiables (<<supply>>) et d'autres qui le sont pendant le processus (<<input>>)
  • un stéréotype évènement, réception d'un objet, l'arrivée d'une date (événement temporel, expiration d'une durée, ...), une notification ou le déclenchement d'une action (trigger). On peut représenter l'envoi et la réception. L'évènement peut être utilisé et transformé ou juste être un simple catalyseur.
  • un stéréotype sorties (<<output>>) qui sont les produits du processus métier
  • des objet physiques
Le processus est considéré comme une boite noire. Il faut le décomposer par des diagrammes d'activité UML, les bonnes pratiques imposent 2 ou 3 niveaux.
L'avantage du profil Eriksson Penker est qu'il s'intègre bien dans la cartographie macroscopique de la vue métier de la démarche d'urbanisation SI. Il est intéressant de l'utiliser pour avoir une vue globale et synthétique. Avec un AGL, on peut faire des liens vers des acteurs UML, des classes, des objets, d'autres activités, des règles métiers, des exigences, ... permettant d'assurer la traçabilité et ainsi de pouvoir gérer les changements.
 
(Modélisation d'un processus métier avec BPMN)
urbanisation-si-blog-bpmn-1.gif
 
UML est un langage de modélisation générique. Pendant très longtemps on a voulu contraindre les MOA à apprendre UML avec des concepts techniques (classes, objets, ...) sans se soucier du vocabulaire des experts métiers. Ceux-ci ont alors refusé d'utiliser UML en disant que c'est trop compliqué. La norme BPMN (Business Process Modeling Notation) a été conçu spécialement pour eux en répondant à leurs besoins. Pas besoin de faire des stéréotypes, tout ce dont l'expert métier à besoin se trouve déjà dans BPMN sous forme de symboles comme par exemple les différents types d'évènements (date, message, ...). Donc BPMN est plus convivial mais ce sera plus compliqué pour assurer la traçabilité. Pour aller jusqu'à la génération de code par exemple, il faudra repasser par ... devinez, et oui bien sur de l'UML !
 
"L'avenir nous tourmente, le passé nous retient, c'est pour ça que le présent nous échappe."
Gustave Flaubert


03/05/2015
1 Poster un commentaire

A découvrir aussi


Inscrivez-vous au blog

Soyez prévenu par email des prochaines mises à jour

Rejoignez les 114 autres membres