Pré. | Proc. |
Spécification du flux d' Item avec des flux d' Object
Les activités et les actions qui les composent fonctionnent généralement en traitant les éléments qui arrivent sur les nœuds d'entrée et, lorsque le travail est terminé, en plaçant les éléments résultants sur les nœuds de sortie. Comme nous l'avons vu précédemment, la modélisation d'activité dans SysML est basée sur une branche des mathématiques appelée réseaux de Petri, qui s'intéresse aux systèmes d'événements d' State discrets. Les éléments qui arrivent aux structures d'entrée doivent passer par le graphe des activités et leurs actions contenues de manière ordonnée et systématique. Le passage est créé par des flux d' Object qui agissent comme des conduits pour transporter les jetons d'un nœud à un autre. Les jetons représentent un certain nombre de différents types de « chose », y compris des informations, des structures ou des éléments physiques tels que des solides, des liquides et des gaz. Il y a donc deux parties importantes dans la façon dont les éléments traversent l'activité - les nœuds qui agissent comme origine et destination des jetons, et les connecteurs (conduits) qui transmettent les éléments.
Enterprise Architect prend entièrement en support la modélisation de ces flux, et lorsqu'un diagramme est créé ou ouvert pour modification, la boîte à outils contient les nœuds d' Object comme indiqué :
Il contient également une section qui répertorie les relations de flux d' Object qui peuvent être utilisées pour connecter les nœuds, créant ainsi le conduit permettant aux jetons de circuler d'un nœud à un autre.
Orchestrer le flux de jetons
Lors modélisation de systèmes complexes, il est souvent nécessaire de créer des chemins plus élaborés (conduits) pour le flux de jetons, tels que des chemins de dérivation et de jonction pour permettre aux jetons d'être envoyés à un certain nombre de nœuds d' object afin que le travail puisse être effectué simultanément, ou pour permettre aux jetons d'être acheminés vers un chemin particulier en fonction de certaines conditions. Ces nœuds de contrôle contrôlent le flux et sont regroupés sur une page de la boîte à outils Diagramme .
Enterprise Architect permet aux connecteurs d'être manipulés pour créer n'importe quel chemin requis. Cela peut être fait en utilisant les styles de ligne du menu contextuel d'un connecteur ; le plus flexible d'entre eux est le style de ligne personnalisé, mais il existe plusieurs autres styles très utiles. Un modélisateur peut également fixer les extrémités du connecteur à une partie spécifique de l'élément source ou cible.
Stockage des jetons en transit
Lors de l'exécution d'une activité, il est parfois nécessaire de stocker des jetons pendant une période plus longue que ce qui est possible avec les paramètres d'activité et les Pins Action , qui agissent simplement comme des périphériques de stockage temporaires. Une circonstance courante est lorsqu'un certain nombre d'actions nécessitent l'accès à un flux de jetons - les jetons peuvent être stockés dans un tampon central et mis à la disposition des nœuds qui en ont besoin. Le tampon central accepte tous les jetons sur ses flux entrants, puis met les jetons à la disposition des nœuds en aval ; une fois acceptés, les jetons sont alors retirés du tampon.
Le Central Buffer peut être créé en faisant glisser l'icône 'Central Buffer' de la Toolbox sur un diagramme d'Activité ouvert ; il peut ensuite être connecté à d'autres nœuds d' object à l'aide de flux d' Object .
Ainsi le Central Buffer peut, lors de l'exécution de l'Activité, être rempli de jetons ou vide selon la consommation de jetons. Un autre type de nœud est le magasin de données, une spécialisation du tampon central où, à mesure que les jetons sont consommés par des actions en aval, une copie est effectuée et stockée dans le tampon. Cela a pour effet que le magasin de données a l'apparence d'un magasin permanent, mais uniquement pour la durée de vie de l'exécution de l'activité.
Le magasin de données peut être créé en faisant glisser l'icône 'Data Store' de la boîte à outils sur un diagramme d'activité ouvert ; il peut ensuite être connecté à d'autres nœuds d' object à l'aide de flux d' Object .