Processus d'entreprise. Extraire un modèle BPMN d'un document. Partie 1

Les projets modernes pour l'optimisation et l'automatisation des processus commerciaux impliquent, en règle générale, l'analyse de gros volumes de documents du client au stade initial afin de modéliser les processus commerciaux « tels quels» sur leur base en peu de temps. La liste des documents analysés peut comprendre des actes juridiques réglementaires, des normes de l'industrie, des protocoles d'entretien, des réglementations, des réglementations, des spécifications techniques et d'autres documents d'entreprise.

L'analyste de projet est confronté à une tâche plutôt laborieuse et en même temps routinière , qui ne dispose pas pour le moment d'outils d'automatisation. Comme le montre une analyse des outils modernes de modélisation des processus métier, même des applications bien connues sur le marché comme Enterprise Architect, Business Studio, Bizagi Modeler - ne disposent pas de mécanismes de prise en charge pour la construction de modèles de processus métier basés sur leur description textuelle.

L'article résout le problème de l' extraction d'un modèle BPMN à partir d'un document.



Il est à noter qu'actuellement sur le marché de la gestion des processus métiers ( BPM ) il existe une technologie d'analyse intellectuelle des processus ( Process Mining ). Cependant, contrairement à la technologie décrite ci-dessous, une base de données avec les résultats d'un processus commercial simulé, et non un ensemble de documents avec sa description textuelle, est alimentée à l'entrée du système Process Mining.

Énoncé du problème


Définir une tâche idéale peut être représenté comme un « gros bouton rouge », en appuyant sur lequel tout le volume de documents à analyser est automatiquement converti en un réseau de modèles BPMN des processus commerciaux du client, disponibles pour l'analyse, l'optimisation et l'automatisation.

La solution du problème dans une telle formulation est une question d'avenir. Nous introduisons un certain nombre de limites logiques et techniques pour une véritable tâche pilote.

Objectif: minimiser la complexité de la construction d'un modèle de processus métier à partir d'une description textuelle tout en garantissant l'exhaustivité et la cohérence du modèle.

A l'entrée se trouve un document au format Microsoft Word, qui:

  • contient une description textuelle d' un processus métier interne ( Private Business Process ).
  • dans le processus opérationnel impliquait un artiste ( Participant ).
  • le processus opérationnel est décrit avec le même niveau de détail (pas de sous-processus ).

La sortie est un fichier xml au format BPMN2.0 , qui:

  • contient un modèle de processus métier correspondant au niveau de description de base ( sous-classe de conformité descriptive BPMN ).
  • s'ouvre correctement pour l'édition dans Bizagi Modeler .

Comme cas de test, nous utiliserons une description textuelle d'un processus aussi répandu que la gestion des incidents de la norme ITIL ( Information Technology Infrastructure Library ). Le cas de test est délibérément pris en anglais. La langue anglaise n'a pas de cas et a été choisie pour faciliter le traitement des liens ( coreferences ) vers des éléments d'un processus métier dans le cadre d'une tâche pilote ( ceci sera discuté plus en détail dans la partie 2 ).

La sortie doit être un modèle du processus de gestion des incidents « pas pire » que l' organigramme de la bibliothèque ITIL. Par critère « pas pire », nous entendons: exhaustivité et cohérence des fonctions métier, des données, des conditions de prise de décision et des acteurs du processus métier.


Figure 1. Organigramme du processus de gestion des incidents (ITIL v.3 Official Introduction, p.98)

Concept de solution


Selon le glossaire de la norme BPMN ( Business Process Model and Notation, version 2.0 ), un processus métier ( Process ) est représenté par «un graphique des éléments Flow (un ensemble d'activités, d'événements, de passerelles) et des relations Sequence Flow qui les relient en un flux exécutable ».

Définition Par graphe BPMN, nous entendons un graphe orienté fini ( théorie des graphes ) avec les extensions suivantes:

  1. Les sommets du graphe correspondent aux éléments BPMN du processus ( Flow, Data, Participant ).
  2. Les bords du graphe correspondent aux connexions BPMN du processus ( Sequence Flow, Message Flow, Association ).
  3. Les sommets et les arêtes ont les attributs requis: identifiant ( id ), nom ( nom ), commentaire ( documentation ).
  4. Les types de sommets obligatoires sont des éléments de la catégorie Flux ( activité, événement, passerelle ).
  5. Les types de bord obligatoires sont des relations de flux de séquence .

Énoncé 1. Description textuelle du processus opérationnel dans un document (en langage naturel) - contient un graphique BPMN sous une forme implicite .

Énoncé 2. La tâche d'extraction d'un modèle BPMN à partir d'un document appartient à la classe des tâches d'extraction d'informations à partir de documents lisibles par machine mal structurés ( extraction d'informations ), dont les principales sous-tâches sont: reconnaissance d'entité nommée , extraction d' identité nommée , résolution de relation ( résolution de référence ) .

En combinant les algorithmes d' extraction de la théorie des graphes et de l' information , nous obtenons les étapes de solution suivantes .

  1. Marquage d'un document avec des balises BPMN ( pour identifier les éléments de processus ).
  2. Compilation de balises BPMN dans un modèle de processus BPMN ( pour identifier les relations de processus ).
  3. Vérification du modèle BPMN ( pour la résolution des liens ).
  4. Correction du modèle BPMN ( si le modèle ne correspond pas à la description textuelle ).
  5. Exportez un modèle BPMN vers un fichier xml ( pour convertir un graphique BPMN en un format standard ).


Figure 2. Diagramme de processus pour extraire un modèle BPMN à partir d'un document (BPMN Text Extraction)

Solution. Étape 1: mettre en page un document avec des balises BPMN


Nous utiliserons des balises BPMN dans le document pour marquer les éléments BPMN du processus métier .

Définition Une balise BPMN est un marqueur de texte coloré avec un identifiant contenant le type d'un élément BPMN. Le nom et la couleur de la balise BPMN correspondent à une catégorie spécifique de l'élément BPMN.

Les couleurs, les catégories et les types de balises BPMN sont indiqués ci-dessous, ainsi que des recommandations pour baliser un document ( trouver les règles exactes pour identifier les éléments BPMN est la tâche de la prochaine étape du projet ).


Tableau 1. Description des balises BPMN

Principe général de fonctionnement avec les tags BPMN: sélectionnez un morceau de texte contenant un élément BPMN et cliquez sur le bouton du tag BPMN correspondant.
Par exemple, pour mettre en surbrillance un processus métier, sélectionnez " GESTION DES INCIDENTS ", puis cliquez sur le bouton <Processus métier>. L'arrière-plan de l'élément BPMN sélectionné sera coloré dans la couleur de la balise BPMN sélectionnée, et un signet avec l'identifiant de la balise BPMN sera ajouté aux signets du document.


Figure 3. Ruban de menu de l'onglet BPMN (balises BPMN, groupes de balises d'édition)

Voici les opérations de base pour les balises BPMN:

  • Ajout ( balise BPMN ) - ajoute une nouvelle balise BPMN aux signets d'un document ( signets Word ) et marque le fragment de texte sélectionné avec la couleur correspondante.
  • Afficher / Masquer ( Afficher les balises ) - active / désactive les marqueurs des balises BPMN dans le texte du document.
  • Redimensionner - Modifie la zone du texte étiqueté de la balise BPMN.
  • Supprimer - supprime la balise BPMN (signet et marqueur) du document.
  • Détails - affiche des informations détaillées sur la balise BPMN (identifiant, catégorie, type et texte de la balise BPMN).
  • Rapport - affiche un rapport statistique sur le nombre et les types de balises BPMN dans le document actif.

Suite au balisage du document de test, nous obtenons le résultat suivant.


Figure 4. Balisage BPMN d'une description textuelle du processus de gestion des incidents (l'image est cliquable)

Notez qu'il existe des balises BPMN « répétitives » dans le texte qui ont le même texte et la même couleur (par exemple, Service Desk, Gestion des problèmes, Enregistrement des incidents ) - ce sont des liens vers le même élément de processus. Le traitement de ces liens ( coreferences ) sera pris en compte dans la deuxième étape de la solution.

À suivre ...

Source: https://habr.com/ru/post/fr439934/


All Articles