Réserver une Démo
Pré. Proc.

Rapportage d’une Statemachine

L' Analyseur d'Exécution peut enregistrer un diagramme Séquence , nous le savons. Ce que vous ne savez peut-être pas, c'est qu'il peut utiliser en même temps une Statemachine pour détecter les transitions State qui pourraient survenir en cours de route. Ces States sont représentés à un instant donné sur la ligne de vie de l' object . Les transitions sont également apparentes à partir des lignes de vie. Toute transition invalide ou illégale sera mise en évidence par une bordure rouge. Jetez-y un œil.

Processus

Tout d’abord, vous modélisez une Statemachine pour l’élément de classe approprié.

Vous composez ensuite les expressions qui définissent chaque State en utilisant l'onglet « Contraintes » de chaque State .

Ces expressions simples sont formées à l'aide de noms d'attributs issus du modèle de classe et de la base de code réelle. Ce ne sont pas des instructions OCL. Chaque expression doit apparaître sur une ligne distincte.

m_strColor == "Bleu"

Vous utilisez ensuite la fenêtre Enregistreur pour lancer le débogueur.

Le bouton Exécuter de la fenêtre Enregistreur est différent du bouton des autres barres d'outils du débogueur.

La fenêtre Enregistreur vous permettra de rechercher une Statemachine si vous ne connaissez pas Statemachine nom. La dialogue « State Transition » présente une liste de Statemachines pour l'ensemble du modèle, dans laquelle vous pouvez localiser et sélectionner le diagramme approprié (voir l'exemple).

Lorsque vous générez le diagramme Séquence , il décrit non seulement la séquence mais également les changements d' State aux différents points de la séquence ; chaque instance de classe participant au processus de détection est affichée avec sa propre ligne de vie.

Exemple

La Statemachine des stations montre les différents States du système de métro Melbourne Underground Loop.

Un train circulant sur le réseau de métro peut être arrêté à n'importe laquelle des stations représentées sur la Statemachine .

La Statemachine des stations est un enfant de la classe CTrain.

Lorsque vous recherchez le diagramme dans la dialogue « Enregistreur de transition State », la hiérarchie affiche uniquement le Paquetage racine, la classe parent et la sous-machine enfant et diagramme ; aucun autre composant du modèle n'est répertorié.

Apprenez Plus