03 - Esercizio Sync vs Async
Scenario "Studio medico"
Il contesto
Un piccolo studio medico privato. I pazienti prenotano visite online, pagano alla conferma, ricevono promemoria. I medici vedono la propria agenda.
I servizi
- Frontend — usato sia dai pazienti (app web/mobile) sia dai medici (app web)
- Booking API — gestisce prenotazioni e agenda dei medici
- Payment Service — integrazione con Stripe per pagare la visita
- Notifications — manda email e SMS
Le interazioni da analizzare
Per ognuna delle 5 interazioni qui sotto, decidete: **comunicazione sincrona (request/response) o asincrona (event-based)?
- Il paziente conferma la prenotazione → Booking salva l'appuntamento → al paziente arriva un'email di conferma.
- Durante la prenotazione il paziente paga la visita → Booking chiede a Payment di addebitare la carta.
- 24 ore prima della visita parte un promemoria SMS al paziente.
- Il medico apre la sua app la mattina e vede la lista dei pazienti del giorno.
- Il paziente cancella una visita → l'agenda del medico si aggiorna e arriva un avviso al medico.
Cosa dovete produrre
- Rappresentazione del flusso e della comunicazione per ogni scenario o gruppo di interazioni.
- Motivazione delle scelte fatte