Nous précisons la description des fonctionnalités du système à l'aide d'un diagramme de séquence (suite des « Écureuils »)
Dans cet article, nous allons examiner comment détailler la description d'une fonction automatisable à l'aide d'un diagramme de séquence UML.
Dans cet exemple, j'utilise l'environnement Enterprise Architect de l'entreprise australienne [1].
Pour la spécification complète de l'UML, voir [2].
Pour commencer, je vais expliquer que nous allons détailler.
Dans nous avons modélisé les processus d'un domaine thématique « féerique » — des passages sur l'écureuil dans « Le Conte du Tsar Saltan » d'A.S. Pouchkine. Et nous avons commencé par le diagramme d'activité. Ensuite, nous avons développé un modèle fonctionnel à l'aide d'un diagramme use-case, dont un extrait est présenté sur la Figure 1.

Figure 1. Relation entre exigences et fonctions
Maintenant, nous voulons préciser des informations sur l'exécution de cette fonction automatisable :
- avec quels composants d'interface notre utilisateur interagira ;
- quels composants de contrôle seront nécessaires ;
- ce que nous allons stocker ;
- quels messages seront échangés entre l'utilisateur et les composants du système pour exécuter la fonction.
Les éléments principaux d'un diagramme de séquence sont les objets interagissants avec divers stéréotypes et les relations entre eux — les objets interagissent en échangeant certaines informations (Figure 2).

Figure 2. Éléments principaux du diagramme de séquence
Les objets sont disposés dans une séquence horizontale, et des messages sont échangés entre eux. L'axe du temps est orienté de haut en bas.
L'élément Acteur peut être utilisé pour représenter un utilisateur initiant un flux d'événements.
Chaque objet possède une ligne en pointillés, appelée « ligne de vie », où cet élément existe et participe potentiellement aux interactions. Le point de contrôle est indiqué par un rectangle sur la ligne de vie de l'objet.
Les messages échangés entre les objets peuvent être de plusieurs types, et les messages peuvent également être configurés pour refléter les opérations et les propriétés des éléments source et cible.
Des éléments stéréotypés tels que les frontières (Boundary), les contrôles (Control) et les entités (Entity) peuvent être utilisés pour modéliser l'interface utilisateur (GUI), les contrôleurs et les éléments de la base de données, respectivement.
Un flux répétitif d'échange de messages peut être désigné comme un fragment de type « boucle ».
Ainsi, nous prévoyons de préciser la description de la fonction « Ajouter à la feuille d'informations sur le nouveau noix ».
Convenons des résumés et des hypothèses supplémentaires suivants.
- La noix, le noyau et les coques sont toutes des valeurs matérielles des types correspondants (Figure 3).

Figure 3. Précision du diagramme des classes - L'utilisateur dans le registre saisira des informations sur toutes les valeurs matérielles.
- Précisons le nom du registre — «Registre des valeurs matérielles».
- Supposons que notre utilisateur, en travaillant avec l'interface graphique «Registre des valeurs matérielles», puisse ajouter une nouvelle valeur matérielle via l'interface graphique «Fiche de valeur matérielle».
- La structure des données et l'interface graphique changent en fonction du type de valeur matérielle.
- Lors du remplissage des champs de la fiche de valeur matérielle, une vérification de la validité des données saisies est effectuée.
Le diagramme tenant compte de ces hypothèses est présenté à la Figure 4.

Figure 4. Précision de la fonction «Ajouter dans le registre des informations sur la nouvelle noix»
Pour en savoir plus sur d'autres types de diagrammes UML, vous pouvez lire ici :
Liste des sources
- Site de Sparx Systems. [Ressources électroniques] Accès : Internet :
- Spécification UML Unifiée OMG (OMG UML). Version 2.5.1. [Ressources électroniques] Accès : Internet :
Source : habr.com

