Skip to main content

Elemento: Transizione di eccezione

Una transizione di eccezione controlla il passaggio allo stato successivo o allo pseudo stato se si verifica un errore o un'eccezione. La transizione dell'eccezione ha una condizione di guardia e facoltativamente un'azione.

Una transizione di eccezione interrompe l'elaborazione corrente. Innanzitutto, lo stato attualmente attivo viene elaborato fino alla fine del ciclo. Successivamente il sistema passa allo stato previsto come reazione a questa eccezione. In questo stato vengono eseguite la gestione degli errori e la gestione delle eccezioni. Lo stato di origine è solitamente uno stato composito e ortogonale.

_uml_img_exception_transition.png

Suggerimento

La transizione dell'eccezione viene utilizzata per uscire da uno stato composito da qualsiasi sottostato. Il suo stato viene valutato dopo l'esecuzione dell'azione DO per lo stato attivo. Anche quando la condizione per la transizione dell'eccezione è TRUE la prima volta che si entra in uno stato composito, viene eseguita l'azione DO del primo stato. Poiché le azioni ENTRY ed EXIT non sono collegate a condizioni, vengono sempre eseguite indipendentemente dalla transizione dell'eccezione.

È possibile interpretare una transizione di eccezione nella misura in cui non proviene da uno stato composto, ma direttamente da ogni sottostato. Le condizioni per le transizioni di eccezione vengono valutate dopo le loro azioni DO. Poiché le azioni ENTRY ed EXIT non sono collegate a condizioni, vengono sempre eseguite indipendentemente dalla transizione dell'eccezione.

Transizione pseudo-eccezione

Una transizione pseudo eccezione sostituisce lo stato finale in uno stato composito.

Figura 1. Notazione di una transizione pseudo eccezione
Notazione di una transizione pseudo eccezione


A volte è più ordinato utilizzare una transizione di eccezione invece di uno stato finale in uno stato composito. Questo viene quindi disegnato sul bordo dello stato composito. Quindi l'intero stato composito viene chiuso nella condizione della transizione dell'eccezione. Tuttavia, questo utilizzo non implica alcun comportamento di errore. Le proprietà della transizione di eccezione sono quindi definite come una transizione di pseudo eccezione. Non influisce sul comportamento dell'esecuzione ciclica.

Proprietà

Proprietà

Descrizione

Tipo

Exception transition

Priorità

La priorità definisce l'ordine di elaborazione.

Esempio: 3

Nota: se lo stato ha altre transizioni e si modifica la priorità, tutte le transizioni sono interessate dalla modifica e vengono adattate automaticamente.

Pseudo eccezione

  • _cds_icon_option_deactivated.png: Transizione di eccezione normale. Nell'editor questo è indicato da una linea rossa tratteggiata. Predefinito.

  • _cds_icon_checked.png: Transizione pseudo eccezione. Nell'editor, questo è indicato da una linea blu tratteggiata. Lo stato è terminato quando la condizione è soddisfatta. Tuttavia, questo non è un errore.

Bordo ascendente

  • _cds_icon_checked.png: Quando la condizione di guardia produce un fronte di salita, le transizioni vengono eseguite e viene eseguita la transizione di stato.

    Suggerimento: nell'editor, una transizione di eccezione che si comporta in questo modo è indicata da _uml_icon_transition_rising_edge.png simbolo.

  • _cds_icon_option_deactivated.png: Quando la condizione di guardia è TRUE, la transizione viene eseguita.

Input dell'utente

Azione

Descrizione

  1. Nel Cassetta degli attrezzi visualizzare, selezionare il Transizione d'eccezione elemento.

  2. Fare clic su uno stato composito.

  3. Fare clic su un altro stato (stato di destinazione).

Una transizione di eccezione con a TRUE condizione e viene generato un simbolo di azione.

Nota

Se non si fa clic su un elemento esistente, ma in un'area vuota, viene creato un nuovo stato (stato finale).

  1. Seleziona uno stato composito.

  2. Clicca il _uml_icon_tool_transition_exception.png simbolo.

  3. Fare clic su un altro stato (stato di destinazione).

Una transizione di eccezione con a TRUE condizione e viene generato un simbolo di azione.

  1. Fare doppio clic su _uml_transition_condition_default.png simbolo.

    Si apre un campo di immissione.

    _uml_icon_input_assistant.png

  2. Selezionare una variabile booleana o un'espressione booleana.

Quando questa condizione è soddisfatta, si passa alla transizione.

  1. Clic _uml_icon_sc_transition_action_2.png due volte.

    Si apre un editor in linea.

  2. Specificare il nome di un programma, metodo o azione.

Quando inizi a digitare, i componenti corrispondenti vengono visualizzati in una casella di riepilogo. È possibile fare doppio clic per selezionare l'oggetto.

Questo metodo o azione selezionato viene eseguito quando la transizione è stata cambiata.

  1. Fare clic una volta su una transizione, sul simbolo dell'azione o sul simbolo della guardia.

    La transizione è selezionata. Questo è indicato da una freccia blu.

  2. Sposta la transizione.

La linea di una transizione può essere spostata ovunque. Gli stati restano al loro posto.

  1. Fare clic all'inizio o alla fine di una transizione di eccezione.

    Il _uml_icon_reconnect_transition.png viene visualizzato il simbolo.

  2. Trascina il simbolo in un altro stato.

È possibile utilizzare questa funzione per spostare una transizione in un altro stato senza perdere la configurazione precedente. La condizione e l'azione corrispondenti rimangono invariate.