Coreografie
Legenda
Nome | Sigla | Note |
---|---|---|
ACME | ACME | Indica l'azienda AcmeSky |
Airline service | AIRk | Indica la k-esima compagnia aerea |
Rent service | RENTt | Indica la t-esima compagnia di noleggio |
Prontogram | PTG | Indica il servizio di messagistica |
Bank service | BANK | Indica il servizio bancario |
Geodistance service | GEO | Indica il servizio di calcolo distanze |
User | USERx | Indica l'x-esimo utente |
Coreografie globali
( requestInterest: USERₓ -> ACME ; responseInterest: ACME -> USERₓ )*
|
( queryFlights: ACME -> AIRₖ ; responseFlights: AIRₖ -> ACME )*
|
( sendLastMinute: AIRₖ -> ACME ; responseLastMinute: ACME -> AIRₖ )*
|
( offerToken: ACME -> PTG ; notifyUser: PTG -> USERₓ ;
notifyResponse: USERₓ -> PTG ; messageSended: PTG -> ACME )*
|
(
confirmOffer: USERₓ -> ACME ;
(
(
responseOfferOk: ACME -> USERₓ ;
requestPaymentLink: USERₓ -> ACME ;
bookTickets: ACME -> AIRₖ ;
(
(
responseTickets: AIRₖ -> ACME ;
requestBankLink: ACME -> BANK ;
responselink: BANK -> ACME ;
paymentLink: ACME -> USERₓ ;
(
(
payment: USERₓ -> BANK ;
successPaymentBank: BANK -> ACME ;
(
// Richiesta a Geodistance se costo > 1000€
1
+
(
requestDistance: ACME -> GEO ;
responseDistance: GEO -> ACME ;
( // Richiesta a Rent service se distanza <30Km
1
+
(
(
requestDistanceRent: ACME -> GEO ;
responseDistanceRent: GEO -> ACME ;
)* ;
requestRent: ACME -> RENTₜ ;
responseRent: RENT