De la modélisation des processus à la conception de systèmes automatisés (Partie 1)

"Un jour dans la vie d'un écureuil" ou des processus de modélisation à la conception d'un système automatisé de comptabilisation des actifs matériels "Belka-1.0" (Partie 1)

De la modélisation des processus à la conception de systèmes automatisés (Partie 1)
Une illustration a été utilisée pour « Le Conte du tsar Saltan » de A.S. Pouchkine, publié par Children's Literature, Moscou, 1949, Leningrad, dessins de K. Kuznetsov

Qu’est-ce que « écureuil » a à voir là-dedans ?

Je vais tout de suite vous expliquer ce que « l’écureuil » a à voir là-dedans. Ayant découvert sur Internet des projets ludiques d'apprentissage d'UML basés sur une matière empruntée aux contes de fées (par exemple, ici [1]), j'ai également décidé de préparer un exemple similaire pour mes étudiants afin qu'ils puissent étudier uniquement trois types de diagrammes pour commencer : le diagramme d'activités, le diagramme de cas d'utilisation et le diagramme de classes. Je ne traduis délibérément pas les noms des diagrammes en russe pour éviter les controverses sur les « difficultés de traduction ». Je vous expliquerai à quoi ça sert un peu plus tard. Dans cet exemple, j'utilise le framework Enterprise Architect d'une entreprise australienne. Systèmes Sparx [2] – un bon outil pour un prix raisonnable. Et dans le cadre de mes formations j'utilise Modèle [3], un bon outil de conception orienté objet gratuit qui prend en charge les normes UML2.0 et BPMN, sans fioritures inutiles en termes de capacités visuelles, mais tout à fait suffisant pour apprendre les bases du langage.

Nous allons automatiser l'activité de comptabilité des actifs matériels qui surgit dans ces processus.

...
Une île dans la mer se trouve, (E1, E2)
Grêle sur les stands de l'île (E3, E1)
Aux églises au dôme doré, (E4)
Avec des tours et des jardins ; (E5, E6)
L'épicéa pousse devant le palais, (E7, E8)
Et en dessous se trouve une maison de cristal; (E9)
L'écureuil y habite, apprivoisé, (A1)
Oui, quel animateur ! (A1)
L'écureuil chante des chansons, (P1, A1)
Oui, il ronge toutes les noix, (P2)
Et les noix ne sont pas simples, (C1)
Toutes les coquilles sont dorées, (C2)
Grains d'émeraude pure; (C3)
Les serviteurs gardent l'écureuil, (P3, A2)
Servez-la comme serviteurs de toutes sortes (P4)
Et un greffier a été affecté (A3)
Compte rendu strict de l'actualité des noix ; (P5, C1)
Donne l'honneur à son armée ; (P6, A4)
Une pièce est coulée des coquillages, (P7, C2, C4)
Laissez-les flotter autour du monde; (P8)
Les filles lancent l'émeraude (P9, A5, C3)
Dans les garde-manger, mais sous le boisseau ; (E10, E11)
...
(A.S. Pouchkine « Le conte du tsar Saltan, de son glorieux et puissant héros le prince Guidon Saltanovich et de la belle princesse Swan », les travaux sur le conte de fées ont probablement commencé en 1822, le conte de fées a été publié pour la première fois par Pouchkine dans le recueil « Poèmes de A. Pouchkine » (Partie III, 1832, pp. 130-181) — 10 ans entre le concept et la publication, d'ailleurs !)

Un peu sur les codes qui sont écrits à droite des lignes. « A » (de « Acteur ») signifie que la ligne contient des informations sur un participant au processus. « C » (de « Classe ») – informations sur les objets de classe qui sont traités lors de l'exécution des processus. « E » (de « Environnement ») – informations sur les objets de classe qui caractérisent l'environnement d'exécution des processus. « P » (de « Processus ») – informations sur les processus eux-mêmes.

D'ailleurs, la définition exacte d'un processus prétend également être à l'origine de controverses méthodologiques, ne serait-ce que du fait qu'il existe différents processus : commercial, de production, technologique, etc. et ainsi de suite. (vous pouvez découvrir par exemple, ici [4] et ici [5]). Pour éviter toute controverse, convenons que Nous nous intéressons au procédé du point de vue de sa répétabilité dans le temps et de la nécessité d'une automatisation., c'est à dire. transférer l'exécution de toute partie des opérations du processus à un système automatisé.

Notes sur l'utilisation du diagramme d'activité

Commençons par modéliser notre processus et utilisons le diagramme d'activité pour cela. Tout d’abord, laissez-moi vous expliquer comment les codes ci-dessus seront utilisés dans le modèle. C'est plus facile à expliquer avec un exemple graphique, mais en même temps nous analyserons certains éléments (presque tous ceux dont nous avons besoin) du diagramme d'activité.
Analysons le fragment suivant :

...
L'écureuil chante des chansons, (P1, A1)
Oui, il ronge toutes les noix, (P2)
Et les noix ne sont pas simples, (C1)
Toutes les coquilles sont dorées, (C2)
Grains d'émeraude pure; (C3)
...

Nous avons deux étapes de processus P1 et P2, un participant A1 et des objets de trois classes différentes : un objet de classe C1 est entré dans l'étape, les objets des classes C2 et C3 sont sortis suite à l'activité de cette étape P2 de notre processus. Pour le diagramme, nous utilisons les éléments de modélisation suivants.

De la modélisation des processus à la conception de systèmes automatisés (Partie 1)

Un fragment de notre processus peut être représenté comme ceci (Figure 1).

De la modélisation des processus à la conception de systèmes automatisés (Partie 1)

Figure 1. Fragment du diagramme d'activités

Pour organiser l'espace et structurer le diagramme d'activité, nous utiliserons une approche non standard, du point de vue de l'utilisation classique de la notation UML. Mais il y a plusieurs raisons à cela. Tout d'abord, juste avant de commencer la modélisation, nous compilerons ce que l'on appelle accord de modélisation, dans lequel nous enregistrons toutes les fonctionnalités d'utilisation de la notation. Deuxièmement, cette approche a été appliquée avec succès à plusieurs reprises au stade de la modélisation commerciale dans des projets réels de création de systèmes logiciels ; les résultats ont été enregistrés par notre petite équipe d'auteurs dans l'objet de droit d'auteur correspondant [6], et ont également été utilisés dans un manuel de formation [ 7]. Pour le diagramme d'activité, nous définissons que le champ du diagramme est structuré à l'aide de « couloirs de nage ». Le nom de la piste correspondra au type d'éléments du graphique qui seront placés sur cette piste.

"Artefacts d'entrée et de sortie" : Cette piste contiendra des éléments Objets - des objets qui sont utilisés ou sont le résultat de l'exécution d'une étape du processus.
"Étapes du processus" : Ici, nous placerons les éléments d'activité - les actions des participants au processus.
"Participants" : un chemin pour les éléments qui désigneront les rôles des exécutants de l'action dans notre processus ; pour eux, nous utiliserons le même élément de modélisation Objet - un objet, mais nous y ajouterons le stéréotype « Acteur ».
La piste suivante s'appelle "Règles commerciales" et sur cette piste nous placerons sous forme de texte les règles d'exécution des étapes du processus, et pour cela nous utiliserons l'élément de modélisation Note - une note.
Nous nous arrêterons ici, même si nous pourrions également emprunter le chemin "Outils" pour collecter des informations sur le niveau d’automatisation des processus. Un chemin pourrait aussi être utile "Positions et divisions des participants", il peut être utilisé pour relier les rôles aux postes et aux départements des participants au processus.

Tout ce que je viens de décrire est un fragment conventions de modélisation, cette partie de l'accord concerne les règles d'organisation d'un schéma et, partant, les règles de rédaction et de lecture de celui-ci.

"Recette"

Considérons maintenant la possibilité de modéliser spécifiquement le système à partir du diagramme d’activité. Ce n’est qu’une des options, je note que ce n’est bien sûr pas la seule. Le diagramme d'Activité nous intéressera du point de vue de son rôle dans le passage de la modélisation des processus à la conception d'un système automatisé. Pour ce faire, nous respecterons les recommandations méthodologiques - une sorte de recette composée de seulement cinq étapes et prévoyant l'élaboration de seulement trois types de schémas. L'utilisation de cette recette nous aidera à obtenir une description formalisée du processus que nous souhaitons automatiser et collecter des données pour la conception du système. Et pour les étudiants qui débutent dans l'étude d'UML, c'est une sorte de bouée de sauvetage qui ne leur permettra pas de se noyer dans toute la variété de moyens et de techniques visuels que l'on retrouve dans UML et les outils de modélisation modernes.

Voici en fait la recette elle-même, puis suivez les schémas construits pour notre domaine « conte de fées ».

Étape 1. Nous décrivons le processus sous la forme d'un diagramme d'activités. Pour un processus comportant plus de 10 étapes, il est judicieux d’appliquer le principe de décomposition des étapes du processus pour améliorer la lisibilité du diagramme.

Étape 2. Sélectionnez ce qui peut être automatisé (les étapes peuvent être mises en évidence sur un schéma par exemple).

Étape 3. L'étape automatisée doit se voir attribuer une fonction ou des fonctions du système (la relation peut être plusieurs à plusieurs), dessinez un diagramme de cas d'utilisation. Ce sont les fonctions de notre système.

Etape 4. Décrivons l'organisation interne de l'AS à l'aide d'un diagramme de classes - Classe. Le swimway « Objets d'entrée et de sortie (documents) » dans le diagramme d'activité constitue la base de la construction d'un modèle objet et d'un modèle entité-relation.

Etape 5. Analysons les notes sur la piste "Business Rules", ils prévoient divers types de restrictions et de conditions, qui se transforment progressivement en exigences non fonctionnelles.
L'ensemble de diagrammes résultant (Activité, Cas d'utilisation, Classe) nous donne une description formalisée dans une notation assez stricte, c'est-à-dire a une lecture sans ambiguïté. Vous pouvez désormais élaborer des spécifications techniques, clarifier les spécifications des exigences, etc.

Commençons la modélisation.

Étape 1. Décrire le processus sous la forme d'un diagramme d'activité

Je vous rappelle que nous avons structuré le champ du diagramme en couloirs « de nage » ; chaque couloir contient des éléments du même type (Figure 2). En plus des éléments du diagramme décrits ci-dessus, nous utiliserons des éléments supplémentaires, décrivons-les.

De la modélisation des processus à la conception de systèmes automatisés (Partie 1)

La décision (Décision) désigne le point de ramification de notre processus dans le diagramme, et la fusion des fils (Merge) – le point de leur réunification. Les conditions de transition sont écrites entre crochets sur les transitions.

Entre deux synchroniseurs (Fork), nous montrerons les branches de processus parallèles.
Notre processus ne peut avoir qu’un seul début – un seul point d’entrée (Initial). Mais il peut y avoir plusieurs complétions (Final), mais pas pour notre schéma spécifique.

Il y a beaucoup de flèches, avec un grand nombre d'éléments et de connexions, vous pouvez d'abord identifier les étapes du processus, puis effectuer une décomposition de ces étapes. Mais pour plus de clarté, je voudrais montrer notre processus de « conte de fées » entièrement sur un seul diagramme, alors que, bien sûr, nous devons nous assurer que les flèches « ne collent pas ensemble », il serait possible de suivre avec précision ce qui est connecté à quoi.

De la modélisation des processus à la conception de systèmes automatisés (Partie 1)

Figure 2. Diagramme d'activité - vue générale du processus

Parce que dans les lignes poétiques, certains détails du processus sont omis, ils ont dû être restaurés, ils sont montrés par des éléments à fond blanc. Ces détails incluent l’étape de transfert/réception pour le stockage et le traitement ainsi que plusieurs artefacts d’entrée et de sortie. Il convient de noter que cette étape ne révèle pas non plus complètement le processus, car il faudrait désigner séparément l'étape de transmission et l'étape de réception, et même ajouter une étape distincte pour les obus, et penser aussi que d'abord toutes ces valeurs matérielles devraient être temporairement stockées quelque part, etc. et ainsi de suite.
Notons également que la question de l'origine des noix reste sans réponse : d'où viennent-elles et comment parviennent-elles à l'écureuil ? Et cette question (elle est surlignée en rouge dans la note - l'élément Note) nécessite une étude séparée ! C'est ainsi que fonctionne un analyste - collecter des informations petit à petit, faire des hypothèses et recevoir des « ok » ou « non-ok » de la part d'experts en la matière - des personnes très importantes et tout simplement irremplaçables au stade de la modélisation commerciale lors de la création de systèmes.

Notez également que l'étape de processus P5 se compose de deux parties.

De la modélisation des processus à la conception de systèmes automatisés (Partie 1)

Et nous allons décomposer chaque partie et l'examiner plus en détail (Figure 3, Figure 4), car les activités effectuées au cours de ces étapes particulières seront automatisées.

De la modélisation des processus à la conception de systèmes automatisés (Partie 1)

Figure 3. Diagramme d'activité - détails (partie 1)

De la modélisation des processus à la conception de systèmes automatisés (Partie 1)

Figure 4. Diagramme d'activité - détails (partie 2)

Étape 2. Sélectionnez ce qui peut être automatisé

Les étapes à automatiser sont mises en évidence en couleur sur les schémas (voir Figure 3, Figure 4).
De la modélisation des processus à la conception de systèmes automatisés (Partie 1)

Toutes sont exécutées par un seul participant au processus - le greffier :

  • Entre des informations sur le poids de la noix dans la déclaration ;
  • Saisit les informations sur le transfert de la noix dans la déclaration ;
  • Enregistre le fait de la transformation d'une noix en coque et en noyau ;
  • Entre des informations sur le noyau de noix dans la déclaration ;
  • Entre des informations sur les coquilles de noix dans la liste.

Analyse du travail effectué. Et après?

Nous avons donc fait beaucoup de travail préparatoire : nous avons collecté des informations sur le processus que nous allons automatiser ; a commencé à conclure un accord sur la modélisation (jusqu'à présent uniquement en termes d'utilisation du diagramme d'activité) ; effectué une simulation du processus et même décomposé plusieurs de ses étapes ; Nous avons identifié les étapes du processus que nous allons automatiser. Nous sommes maintenant prêts à passer aux étapes suivantes et à commencer à concevoir les fonctionnalités et l'organisation interne du système.

Comme vous le savez, la théorie sans la pratique n’est rien. Vous devriez absolument essayer de « modéliser » de vos propres mains, cela est également utile pour comprendre l'approche proposée. Par exemple, vous pouvez travailler dans un environnement de modélisation Modèle [3]. Nous n'avons décomposé qu'une partie des étapes du diagramme de processus global (voir Figure 2). A titre pratique, il pourra vous être demandé de répéter tous les schémas dans l'environnement Modelio et de réaliser une décomposition de l'étape « Transfert/Réception pour Stockage et Traitement ».
Nous n’envisageons pas encore de travailler dans des environnements de modélisation spécifiques, mais cela pourrait faire l’objet d’articles et de revues indépendantes.

Dans la deuxième partie de l'article, nous analyserons les techniques de modélisation et de conception nécessaires aux étapes 3 à 5 ; nous utiliserons les diagrammes de cas d'utilisation et de classes UML. À suivre.

Liste des sources

  1. Site "UML2.ru". Forum de la communauté des analystes. Rubrique générale. Exemples. Exemples de contes de fées sous forme de diagrammes UML. [Ressource électronique] Mode d'accès : Internet : http://www.uml2.ru/forum/index.php?topic=486.0
  2. Site Web de Sparx Systems. [Ressource électronique] Mode d'accès : Internet : https://sparxsystems.com
  3. Site Web Modelio. [Ressource électronique] Mode d'accès : Internet : https://www.modelio.org
  4. Grand dictionnaire encyclopédique. Processus (interprétation). [Ressource électronique] Mode d'accès : Internet : https://dic.academic.ru/dic.nsf/enc3p/246322
  5. Site "Organisation d'une gestion efficace". Blog. Rubrique "Gestion des processus métiers". Définition du processus métier. [Ressource électronique] Mode d'accès : Internet : https://rzbpm.ru/knowledge/pochemu-processy-stali-s-pristavkoj-biznes.html
  6. Certificat n° 18249 sur l'enregistrement et le dépôt d'un produit du résultat d'une activité intellectuelle. Alfimov R.V., Zolotukhina E.B., Krasnikova S.A. Le manuscrit du support pédagogique intitulé "Modélisation de la matière à l'aide d'Enterprise Architect" // 2011.
  7. Zolotukhina E.B., Vishnya A.S., Krasnikova S.A. Modélisation des processus métiers. - M. : KURS, NITs INFRA-M, EBS Znanium.com. — 2017.

Source: habr.com

Ajouter un commentaire