esempi di modellazione di situazioni particolari

10
Esempi di modellazione di situazioni particolari

Upload: nicoletta-manfredi

Post on 02-May-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Esempi di modellazione di situazioni particolari

Esempi di modellazionedi situazioni particolari

Page 2: Esempi di modellazione di situazioni particolari

Risorsa consumabile• Si puo’ pensare che sia gestita da un ruolo di Magazziniere che riceve la richiesta da piu’

(due) Clienti, verifica la disponibilita’ e a seconda di quest’ultima, consegna la merce al Cliente oppure ordina la merce ad un Fornitore.

Rich con C1

Rich con C2

Disponibile

Disponibile

Non Disponibile

Consegna con C1

Ordina merce

Ricevi merceMagazziniere

Fornitore

Produce

Non Disponibile

Consegna con C2

Page 3: Esempi di modellazione di situazioni particolari

Interazioni tra tre componenti

Comnunicano con skype

A CB

Vanno al cinema

Vanno al cinema

Fa altro

B racconta la trama d A

Fa altro

a2b1

ca1

b2

Tre amici A, B e B comunicano, insieme, via skype e lasciano a B la decisione se andare al cinema con A o con C. Nel secondo caso, B garantisce ad A che gli raccontera’ la trama.

Page 4: Esempi di modellazione di situazioni particolari

Costruire il Grafo di Raggiungibilita’

• Verificare che lo stato globale (marcatura)

<a1, b2, c>

e’ raggiungibile (generabile)

• Verificare invece che

<a1, b2, c>

non e’ raggiungibile.

Page 5: Esempi di modellazione di situazioni particolari

In questo modello: B decide davvero?

Comnunicano con skype

A CB

Vanno al cinema

Vanno al cinema

Fa altro

B racconta la trama ad A

decide

a

b

c

Fa altro

Page 6: Esempi di modellazione di situazioni particolari

Non sempre ….

• Se A e C decidono di fare altro la decisione di B non ha effetto.

• Costruire il Grafo di Raggiungibilita’ e verificare che lo stato globale (marcatura)

<a,b,c>

e’ raggiungibile (generabile).

• In questo stato globale B e’”bloccato” e non puo’ raggiungere nessuno suo stato finale (quelli blu, senza archi in uscita).

• Non e’ un modello ben costruito. Provare a trovare delle alternative per risolvere il problema.

Page 7: Esempi di modellazione di situazioni particolari

Gestione di interazioni “in parallelo”

• Una componente vuole interagire con altre due componenti, separatamente, per chiedere delle informazioni (una offerta) e attendere da entrambe la risposta (il preventivo) per poter decidere successivamente con quale delle due continuare a collaborare.

• Poiche’ un componente elementare non puo’ svolgere due azioni “simultaneamente”, le interazioni precedenti devono esser modellate in modo da poter essere svolte in qualunque ordine, una per volta.

• Per semplicita’, si presuppone che la prima risposta (il preventivo) avvenga sempre dopo l’invio di entrambe le due richieste.

• Il sistema precedente puo’ essere modellato come segue:

Page 8: Esempi di modellazione di situazioni particolari

Interazioni “simultanee” simulate di C con A e B

Offerta con B

Offerta con B

Offerta con A

Offerta con A

Preventivo con A

Preventivo con APreventivo con B

Preventivo con B

C

Offerta con C

Offerta con C

Preventivo con C

Preventivo con C

B

A

Page 9: Esempi di modellazione di situazioni particolari

Provare realizzare la T-composizione

• E’ necessario modificare le componenti A e B per poter avere le transizioni “giuste” da sovrapporre*

• Ad es. A diventa (e B e’ simile):

Preventivo con C

A

Offerta con C

Preventivo con COfferta con C

Solo adesso e’ possibile fare la T-composizione

* Si veda la terza clausola della regola di T-composizione

Provare a comporre A con C

Page 10: Esempi di modellazione di situazioni particolari

eliminiamo la semplificazione

• Come cambia la rappresentazione se togliamo l’ipotesi che la prima risposta arrivi dopo che entrambe le rivhieste sono state fatte?

• In questo caso, le quattro azioni (due di richiesta e due di risposta) in quant modi possono essere eseguite?

• Ovviamente, ogni comportamento deve iniziare con una richiesta ....