Pré. | Proc. |
Transition interne
Si vous avez besoin de définir une transition interne dans un State , vous pouvez le faire en créant un connecteur d'auto-transition externe (où la source et la cible sont le même State ), puis en modifiant la propriété 'kind' du connecteur. Le connecteur auto-transition est alors supprimé du diagramme et la transition interne s'affiche dans un compartiment à l'intérieur de l'élément State .
Définir une transition interne
Marcher |
Action |
Voir également |
---|---|---|
1 |
Dans la fenêtre Navigateur , double-cliquez sur le diagramme Statemachine contenant l'élément State pour l'ouvrir. |
|
2 |
Sur l'élément State , créez un connecteur Transition sortant de et se terminant dans l'élément (une 'self Transition'). Dans la boîte à outils Diagramme , sélectionnez le connecteur Transition, puis cliquez et relâchez sur l'élément State . |
|
3 |
Cliquez-droit sur le connecteur et sélectionnez l'option ' Propriétés ' pour afficher la boîte de dialogue ' Propriétés '. |
|
4 |
Sélectionnez l'onglet "Contraintes" et définissez une garde, un effet et un déclencheur pour la transition. |
Transition |
5 |
Sélectionnez l'onglet 'Général', puis sélectionnez l'onglet enfant 'Avancé'. Cliquez sur la flèche déroulante dans le champ valeur de la propriété kind et sélectionnez 'interne'. |
|
6 |
Cliquez sur le bouton OK . Les transitions s'affichent dans le même compartiment que les activités internes (sortie/, faire/, entrée/). |
Notes
- Pour afficher ou modifier les propriétés de la transition interne, double-cliquez sur l'entrée dans le compartiment de l' State
- Si vous avez besoin de plusieurs transitions internes, y compris celles avec le même déclencheur mais des gardes différentes, vous les créez séparément avec chaque transition ayant sa propre garde
- Vous pouvez créer d'autres transitions et déclencheurs internes en cliquant sur l'élément State , en affichant la fenêtre Fonctionnalités dans l'onglet 'Déclencheurs internes', en cliquant avec le bouton droit sur l'onglet et en sélectionnant l'option 'Nouveaux déclencheurs internes'
Spécification OMG UML :
La spécification OMG UML ( UML Superstructure Spécification , v2.4.1, p.362) stipule :
[A TransitionKind of internal ] Implique que la transition, si elle est déclenchée, se produit sans sortir ni entrer dans l' State source (c'est-à-dire qu'elle ne provoque pas de changement d'état). Cela signifie que la condition d'entrée ou de sortie de l' State d'origine ne sera pas invoquée. Une transition interne peut être effectuée même si la SateMachine se trouve dans une ou plusieurs régions imbriquées dans l' State associé