Conversazioni

Le conversazioni rappresentano due o più scambi di messaggi nello stesso processo che sono correlati dal sistema, ad esempio, una conversazione tra un processo e i suoi clienti, o tra un processo e il suo servizio back-end.

Le conversazioni sono utilizzate per processi stateful, che possono consistere in una o più operazioni.

In un processo stateful, il sistema gestisce lo stato e aiuta a correlare i messaggi con il processo; non è necessario correlare lo stato delle operazioni. In un processo senza stato, lo stato è gestito dal job stesso.

Una conversazione viene definita nell’ ambito di un processo. Le conversazioni iniziano sempre da un’ activity e per unire altre activity. L’ activity che avvia una conversazione genera un ID di conversazione. Le attività che si uniscono a questa conversazione utilizzano l’ ID conversazione generato durante lo scambio di messaggi.

Considerare il processo “Mortgage Service Provider” mostrato nel seguente linguaggio. L’ activity di risposta SubmitMortgageAppOut, avvia una conversazione, genera un ID di conversazione, quindi restituisce questo ID in
il messaggio di risposta. L’ activity di ricezione, SubmitFinDocIn, si aggiunge alla conversazione avviata dall’ activity di risposta, SubmitMortgageAppOut.

Al momento dell’ invio dei documenti ufficiali, il client deve utilizzare l’ ID conversazione restituito dall’activity di risposta. Il sistema utilizza l’ ID conversazione per correlare i messaggi con il processo e garantisce che i documenti siano associati all’ applicazione corretta.

Durante la progettazione di un’ applicazione, il supporto migliore per le conversazioni può essere ottenuto definendo quanto segue:

      1. Numero di conversazioni a cui partecipa un processo.

Definizione delle attività che fanno parte della stessa conversazione.

Sequenza di messaggi per ogni conversazione