Descrizione
RoundSplit è unâapp iOS che risolve un problema quotidiano: dividere il conto del ristorante in modo equo. Invece di dividere tutto in parti uguali (che non è mai veramente giusto), RoundSplit permette di scansionare lo scontrino, selezionare i partecipanti e far sĂŹ che ogni persona reclami i piatti che ha ordinato. Alla fine, ognuno sa esattamente quanto deve pagare.
Progetto collaborativo sviluppato allâApple Developer Academy di Napoli con un team internazionale.
Problema
Dividere il conto al ristorante tra amici è scomodo e soggetto a errori, specialmente con piatti condivisi e gruppi grandi. Le soluzioni esistenti sono troppo complicate o semplicemente dividono in parti uguali.
Il mio ruolo
Ho costruito il flusso completo del prototipo (6 schermate) come base per il team per lavorare in parallelo. Ho progettato i modelli di dati, implementato il ViewModel con la logica di validazione, scritto la documentazione di design e i diagrammi di flusso, e creato una guida di sviluppo per il team che mappava ogni feature futura a file specifici del progetto.
Decisioni tecniche
- Architettura MVVM: ViewModel osservabile con proprietĂ calcolate per la validazione (importo rimanente, utente corrente, stato di completamento).
- NavigationStack nativo: navigazione dichiarativa iOS con flusso a 6 schermate (Home â Fotocamera â Revisione â Selezione utenti â Assegnazione piatti â Riepilogo).
- Progettato per il handoff: la struttura del codice è pensata perchÊ ogni membro del team possa prendere ownership di una feature (OCR, pagamenti, persistenza, ecc.) senza influenzare il lavoro degli altri.
- Validazione visuale: il riepilogo è accessibile solo quando lâimporto rimanente è $0, validando il concetto di prodotto prima di investire in logica reale.
Apprendimenti chiave
- Prototipare lâintero flusso UX prima di scrivere logica di business fa risparmiare tempo e allinea il team.
- Progettare il codice pensando al handoff (struttura chiara, feature mappate a file, documentazione completa) è unâabilitĂ in sĂŠ.
- Un buon prototipo con dati simulati può validare lâidea di prodotto tanto bene quanto unâimplementazione completa.