Actions (MOO)

Une action est la spécification d'une instruction pouvant être calculée. Elle se produit dans une situation spécifique et peut comprendre plusieurs événements prédéfinis (entry, do et exit) ainsi que des transitions internes.

Une action peut être créée dans les types de diagramme suivants :

Les transitions internes peuvent être définies sur un état, elles sont internes pour cet état et ne provoquent pas de changement d'état ; elles effectuent des actions lorsqu'elles sont déclenchées par des événements. Les transitions internes ne doivent pas être confondues avec les transitions réflexives sur l'état car les valeurs entry et exit ne sont pas exécutées lorsque l'événement interne se produit.

Une action comporte une propriété Evénement déclencheur qui contient la spécification de l'événement qui déclenche l'action.



Pour plus d'informations sur les événéments, voir Evénements (MOO).

Action sur l'état et sur la transition

Dans un MOO, une action est utilisée dans le diagramme d'états-transitions en association avec des états : l'action est exécutée dans l'état lors du traitement de entry ou exit. L'action est aussi utilisée en association avec des transitions : l'action est exécutée lorsque la transition est déclenchée.

Dans UML, la différence repose sur le fait qu'une action apparaît dans les diagrammes d'interaction (en association avec les messages) et dans les diagrammes d'états-transitions.

Lorsque vous définissez une action sur un état, le nombre d'actions que vous pouvez définir n'est pas limité. En revanche, vous ne pouvez définir qu'une seule action sur une transition, car la transition ne peut exécuter qu'une seule action. Une action définie sur un état peut contenir l'événement qui la déclenche ; la feuille de propriétés de l'action contient la feuille de propriétés de l'événement. Une action définie sur une transition ne contient pas l'événement qui la déclenche : vous ne pouvez que saisir l'action dans une zone de texte.

Dans l'illustration suivante, vous pouvez voir des actions définies sur des états, et des actions définies sur des transitions avec l'ordre d'exécution des actions :



L'icône d'action dans l'Explorateur d'objets est un symbole formé de deux roues, il est défini sous un état mais ne s'affiche pas sous une transition.