Réserver une Démo

SVP notez : Cette page d’aide n’est pas pour la dernière version d’Enterprise Architect. La dernière aide peut être trouvée ici.

Pré. Proc.

Statemachines

Statemachines d'état illustrent comment un élément (souvent une classe) peut se déplacer entre les States , en classant son comportement en fonction des déclencheurs de transition et des gardes contraignantes.

Vous générez des éléments et des connecteurs Statemachine à partir des pages ' State ' de la boîte à outils Diagramme .

Appellation

  • Statemachines d'état étaient autrefois connues sous le nom de diagrammes d' State
  • Statemachine représentations de machine d'état dans UML sont basées sur la notation de diagramme State Harel et sont donc parfois appelées diagrammes d' State

Tableaux State

Vous pouvez afficher une Statemachine sous forme de diagramme ou de tableau dans l'un des trois formats de relation.

Sélectionnez le format d'affichage

Marcher

Action

Voir également

1

Cliquez-droit sur le fond du diagramme et sélectionnez l'option 'Statechart Editor'.

2

Sélectionnez l'option d'affichage appropriée :

  • Diagramme
  • Tableau (état- State suivant)
  • Tableau (état-déclencheur)
  • Tableau (état du déclencheur)
Tableau Statemachine

Exemple Diagramme

Ce diagramme illustre quelques fonctionnalités des Statemachines .

UML StateMachine chart example in Sparx Systems Enterprise Architect.

States Diagramme composite

Le symbole de maillon de chaîne dans le coin inférieur droit de l' State enregistré indique qu'il s'agit d'un State avec un diagramme composite .

Vous avez deux options pour afficher le contenu d'un diagramme composite d' State . Tout d'abord, vous pouvez double-cliquer sur l'élément parent pour afficher son diagramme enfant séparément, comme illustré ici :

A Composite UML StateMachine chart using Sparx Systems Enterprise Architect.

Par défaut, le diagramme enfant s'affiche dans un cadre étiqueté qui représente l' object parent dans le contexte du diagramme enfant . Vous pouvez cliquez-droit sur l'arrière-plan et sélectionner l'option 'Hide Diagramme Frame' pour masquer le cadre, et sur l'option 'Show Diagramme Frame' pour afficher à nouveau le cadre.

Alternativement, vous pouvez cliquez-droit sur l'élément composite sur le diagramme principal et sélectionner l'option 'Avancé | Afficher l'option Diagramme composite ', qui affiche à nouveau le diagramme enfant dans un cadre étiqueté, mais cette fois dans le contexte du diagramme parent .

A Composite UML StateMachine chart using Sparx Systems Enterprise Architect.

ProtocolStateMachines

La spécification OMG UML ( UML Superstructure Spécification , v2.5, sect. 14.4) stipule :

"Les ProtocolStateMachines sont utilisées pour exprimer les protocoles d'utilisation. Les ProtocolStateMachines expriment les séquences légales d'occurrences d'événements auxquelles les Behaviors d'un BehavioredClassifier associé doivent se conformer. La notation Statemachine est un moyen pratique de définir l'ordre des invocations des fonctionnalités comportementales d'un Classifier. ProtocolStateMachines peut être associé à des classificateurs, des interfaces et des ports. "

Pour créer une ProtocolStateMachine, créez un élément Statemachine et ouvrez la fenêtre Propriétés de cet élément. Sélectionnez l'onglet 'Comportement' et, là-dessus, cochez la case 'Protocol Statemachine '. L'élément sur le diagramme maintenant a le mot <<protocol>> au-dessus du nom de l'élément.

Statemachine Diagramme à outils de l'élément de diagramme de machine d'état

Icône

Description

Voir également

State element

Un State représente une situation dans laquelle une condition invariante est vérifiée ; cette condition peut être statique (attente d'un événement) ou dynamique (réalisation d'un ensemble d'activités).

State
State Machine element

Un élément Statemachine est un conteneur pour des groupes d'éléments State associés.

Statemachine
Initial element

L'élément Initial représente un pseudo-état utilisé pour désigner l'état par défaut d'un State composite ; il peut y avoir un sommet initial dans chaque région de l' State composite.

Initial
Final element

L'élément Activité finale indique l'achèvement d'une activité ; en atteignant la finale, toute exécution dans le diagramme d'activité est abandonnée.

Final
History element

Il existe deux types de pseudo-états d'historique définis dans UML : l'historique superficiel et l'historique profond.

Histoire
Synchronize element

Un état Synchro est utile pour indiquer que les chemins concurrents d'une Statemachine sont synchronisés. Ils sont utilisés pour fractionner et rejoindre des périodes de traitement parallèle.

Synchronisation
Object element

Un Object est une instance particulière d'une Classe à exécuter donné.

Object
Choice element

Le pseudo-état Choice est utilisé pour composer des chemins de transition complexes, où le chemin de transition sortant est déterminé par des conditions d'exécution dynamiques.

Choix
Junction element

Les pseudo-états de jonction sont utilisés pour concevoir des chemins de transition complexes dans les diagrammes Statemachine . Une jonction peut être utilisée pour combiner ou fusionner plusieurs chemins dans un chemin de transition partagé.

Jonction
Entry element

Les pseudo-états Entry Point sont utilisés pour définir le début d'une Statemachine . Un point d'entrée existe pour chaque région, dirigeant la configuration initiale de l'état simultané.

Point d'accès
Exit element

Les points de sortie sont utilisés dans les éléments Statemachine et les diagrammes Statemachine pour indiquer le point où la machine est sortie et la transition générant ce point de sortie.

Point de sortie
Terminate element

Le pseudo-état Terminate indique qu'à l'entrée de son pseudo-état, l'exécution de la Statemachine se termine.

Mettre fin
Horizontal Fork/Join element

Un élément Fork/Join peut être utilisé pour : 1) diviser un flux unique en un certain nombre de flux simultanés, 2) joindre un certain nombre de flux simultanés ou 3) joindre et bifurquer un certain nombre de flux entrants vers un certain nombre de flux sortants.

Bifurquer/Joindre Fourchette Rejoindre
Vertical Fork/Join element

Un élément Fork/Join peut être utilisé pour :

1) Diviser un flux unique en plusieurs flux simultanés

2) Joindre plusieurs flux simultanés ou

3) Joindre et bifurquer un certain nombre de flux entrants vers un certain nombre de flux sortants

Statemachine Diagramme à outils du connecteur de diagramme de machine d'état

Icône

Description

Voir également

State Flow Transition connector

Un connecteur Transition représente le mouvement logique d'un State à un autre dans un diagramme Statemachine .

Transition
Object Flow connector

Un flux d' Object relie deux éléments, traversés par des données spécifiques, modélisation une transition active.

Flux Object

Notes

  • Les éléments d' State peuvent s'afficher avec ou sans ligne les traversant ; la ligne - comme indiqué - s'affiche lorsque l'élément a des fonctionnalités telles que des opérations (qui peuvent être masquées) ou lorsque la case à cocher "Afficher le compartiment d' State " est cochée dans la page "Objets" de la boîte de dialogue "Préférences"
  • Il est possible d'ajouter des éléments Entry Point et Exit Point à la bordure d'un élément State ou Statemachine - cliquez-droit sur l'élément dans le diagramme et sélectionnez l'option 'New Child Element| l'option "Point d'entrée" ou "Point de sortie" ; si l'élément est un élément composite et représenté par un cadre, vous pouvez également cliquez-droit sur le cadre sélectionné et ajouter les éléments Point d'entrée ou Point de sortie
  • Si vous avez des points d'entrée et/ou des points de sortie sur une Statemachine qui est un classificateur pour un autre State , vous pouvez créer des références de point de connexion au classificateur à partir de l'autre State
  • Il est également possible d'ajouter des régions à un élément State ou à un cadre d'élément Statemachine ; cliquez-droit sur le cadre sélectionné et sélectionnez l'option 'Définir les sous-états concurrents'
  • Vous pouvez effectuer des simulations de modèles sur des modèles Statemachine , et le modèle que vous simulez peut contenir des éléments de plus d'un Paquetage ; pour inclure les éléments externes dans la simulation, il faut créer un diagramme Paquetage contenant le Paquetage 'parent' et les Paquetage ' Paquetages ' contenant les éléments externes, puis créer un connecteur d'Import de Paquetage du Paquetage parent vers chaque Paquetage externe

Apprenez Plus