NDA Digital Health Digital Health B2B2C · Telemedicina B2B2C · Telemedicine 2025 → 2026

Da bozza a sistema. From sketch to system.

Una piattaforma che collega pazienti, operatori sanitari e strutture in un unico percorso digitale, dalla prenotazione al referto. Tre superfici, otto ruoli e oltre ventimila utenti. Un unico sistema da rendere comprensibile per tutti. A platform that connects patients, healthcare providers and facilities in a single digital journey, from booking to report. Three surfaces, eight roles and over twenty thousand users. One system to make comprehensible for everyone.

Progetto Project
Telemedicina · 3 istituti · 3 città IT Telemedicine · 3 institutes · 3 IT cities
Anni Years
2025 PWA + Backoffice · 2026 App utenti 2025 PWA + Backoffice · 2026 User app
Ruolo Role
Lead Designer · team di 5 Lead Designer · team of 5
Stato Status
In produzione · live da dic 2025 In production · live since Dec 2025
Riconoscimento Recognition

Premio AIIC per AI e sanità digitale. Riconoscimento nazionale italiano per il contributo della piattaforma all'AI applicata in ambito sanitario. AIIC Award for AI in digital health. Italian national recognition for the platform's contribution to AI applied in healthcare.

NDA

Per ragioni contrattuali, nomi, schermate e dati sensibili sono stati anonimizzati. Il processo progettuale, le decisioni e le logiche di prodotto rimangono rappresentati fedelmente. For contractual reasons, names, screenshots and sensitive data have been anonymised. The design process, decisions and product rationale remain faithfully represented.

Atto 1 Act 1

Discovery Discovery

Un sistema cresciuto a strati. Sette voci per rileggerlo. A system grown in layers. Seven voices to re-read it.

La piattaforma è una. Le superfici sono tre. Servono lo stesso flusso clinico — dalla prenotazione alla prestazione — ma vivono in contesti, ruoli e dispositivi diversi. The platform is one. The surfaces are three. They serve the same clinical flow — from booking to delivery — but live across different contexts, roles, and devices.

Tutte e tre esistevano prima del mio ingresso. Ognuna funzionava, in parte. Nessuna era pensata in rapporto alle altre. Il mio lavoro è stato lavorarle come un sistema, non come tre prodotti separati che vivono sotto lo stesso brand. All three existed before I came in. Each one worked, partially. None was designed in relation to the others. My job was treating them as a system, not as three separate products living under one brand.

Mio perimetro My scope 01

Backoffice

Amministrazione, accettazione Administration, intake

  • Amministrazione, accettazione, pubblicazione Administration, intake, publishing
  • Gestione prenotazioni, pagamenti, ricette Bookings, payments, prescriptions
  • Tassonomia ruoli e dashboard differenziate Role taxonomy and per-role dashboards

Ridisegnato per intero — IA, dashboard, stati, flussi. Redesigned from scratch — IA, dashboards, states, flows.

Mio perimetro My scope 02

PWA Operatori Operator PWA

Medici, infermieri, operatori Doctors, nurses, operators

  • Adattiva su qualsiasi dispositivo, nessuna installazione Adaptive on any device, no install required
  • Modulare per ruolo: visite in sede, domicilio, videoconsulto Modular per role: in-office, home, video consult
  • Agenda, chiamata, no-show, turni massivi, spostamenti Agenda, calls, no-shows, bulk shifts, rescheduling

Ricostruita per intero — aveva la funzione, mancava la gestione. Rebuilt end-to-end — it had the feature, lacked the handling.

3 moduli 3 modules 03

App Utenti User App

Pazienti, caregiver Patients, caregivers

  • Modulo ricetta SSN — nuovo da zero (NRE, scansione, upload) SSN prescription module — built new (NRE, scan, upload)
  • Modulo visite specialistiche + videoconsulto Specialist visit + video consult module
  • Modulo prestazioni a domicilio — allargato a più prestazioni in una Home services module — extended to multi-service bookings

Modulo prelievi singolo preesistente — funzionante, non del tutto funzionale. Pre-existing single-blood-draw module — working, not fully functional.

3 istituti · 3 città italiane 3 institutes · 3 Italian cities 20.000+ utenti finali 20,000+ end users ~400 operatori interni ~400 internal operators Live dal dicembre 2025 Live since December 2025

La versione esistente faceva quasi tutto. Quasi non bastava. The existing version did almost everything. Almost wasn't enough.

I sintomi qui sotto non vengono da un'unica intervista, da un solo ticket o da un singolo walkthrough. Sono pattern ripetuti, osservati attraversando tre superfici con sette persone diverse e sei mesi di assistenza ai clienti. La griglia che segue li ordina per superficie, perché il modo in cui ognuna si rompeva era diverso — ma la radice era comune. The symptoms below don't come from one interview, one ticket, or one walkthrough. They are repeated patterns, observed across three surfaces, seven people, and six months of customer support logs. The grid groups them by surface, because each one broke in a different way — but the root cause was shared.

Backoffice · 4 sintomi Backoffice · 4 symptoms
Architettura informativa Information architecture

Schermate non scansionabili. L'occhio si arrendeva prima di trovare quello che cercava. Stessa logica di accumulo cresciuta con il prodotto, mai ridisegnata. Screens that resisted scanning. The eye gave up before finding what it was looking for. Layered accumulation, never redesigned.

Pagamenti Payments

L'importo dove non lo cercavi. Per inviare al paziente il link di pagamento si entrava in una tab interna con un nome poco parlante. Venti volte al giorno, venti volte da ricordare. The amount where you wouldn't look. To send a payment link, operators had to open an inner tab with a vague label. Twenty times a day, twenty times to remember.

Stati States

Stati incoerenti tra moduli. Le stesse parole cambiavano significato a seconda del posto. In attesa voleva dire cinque cose diverse. Inconsistent states across modules. The same words meant different things in different places. Pending covered five distinct conditions.

Dashboard Dashboard

Una dashboard per tutti. Stessa schermata di apertura per accettazione, amministrazione, editor, admin. Nessuno trovava la propria coda di lavoro all'apertura. One dashboard for everyone. Same landing screen for intake, admin, editors, system admins. None of them found their queue at first sight.

PWA Operatori · 4 sintomi Operator PWA · 4 symptoms
Chiamata paziente Patient call

Niente chiamata in app. Il numero del paziente era sulla scheda, ma per chiamarlo bisognava uscire, comporre, tornare indietro. Quando piove e sei sul portone, dieci minuti. No in-app call. The patient's number was on the chart, but calling meant leaving the app, dialing, returning. When it's raining and you're at the door, that's ten minutes.

No-show No-show

No-show non gestiti. Il mancato arrivo del paziente non era un evento del sistema: era un foglio di carta da rimettere insieme a fine giornata. No-shows not handled. A no-show wasn't a system event: it was a paper note to reconcile at end of day.

Spostamenti Rescheduling

Spostamento impossibile fuori sede. Riprogrammare un appuntamento richiedeva tornare al backoffice. Nel frattempo il paziente aspettava o se ne andava. No on-site rescheduling. Moving an appointment meant going back to the backoffice. Meanwhile, the patient waited or left.

Turni Shifts

Turni uno per uno. Inserire trenta turni significava trenta inserimenti. Nessuna funzione di assegnazione massiva. Shifts one at a time. Thirty shifts meant thirty entries. No bulk assignment.

App Utenti · 3 sintomi User App · 3 symptoms
Ricette SSN SSN prescriptions

Caricamento alla cieca. L'utente caricava una foto, il server decideva, il rifiuto arrivava senza spiegazioni. Una trentina di rifiuti a settimana solo per foto non lavorabili, nell'istituto più grande dei tre. Blind uploads. The user uploaded a photo, the server decided, the rejection came back without explanation. Around thirty rejections per week from unprocessable photos alone, in the largest of the three institutes.

Videoconsulto Video consult

Videoconsulto inesistente. Per la teleconsulenza non c'era una via in app. Tutta sull'agenda telefonica. No video consult. Telehealth had no in-app path. It lived on a phone agenda.

Domicilio Home services

Domicilio limitato al prelievo singolo. Una prestazione per volta. Per un prelievo + ECG + medicazione: tre prenotazioni separate o un giro di telefonate. Home limited to single blood draw. One service at a time. For blood draw + ECG + dressing: three separate bookings or a round of phone calls.

Un mese per leggere il sistema. Sette persone per capire dove faceva male. Sei mesi di ticket per riconoscere i pattern. One month to read the system. Seven people to understand where it hurt. Six months of tickets to recognize the patterns.

Il sample è piccolo ma denso: due operatori di accettazione, uno di amministrazione, tre operatori a domicilio, un medico. Tutti e tre gli istituti rappresentati. Nessuno shadowing formale — quello che mancava l'ho recuperato approfittando dei minuti prima delle riunioni, quando gli operatori raccontano davvero come funzionano le cose. The sample is small but dense: two intake operators, one administrator, three home-care operators, one doctor. All three institutes represented. No formal shadowing — what was missing I gathered in the minutes before meetings, when operators actually describe how things work.

01

Audit Audit

Ho mappato le tre superfici esistenti. Otto ruoli, decine di stati, una versione cresciuta a strati. I mapped the three existing surfaces. Eight roles, dozens of states, a version grown in layers.

02

Interviste Interviews

Sette persone, una al giorno. Stessa traccia, contesti diversi. Pre-riunioni come surrogato di shadowing. Seven people, one per day. Same script, different contexts. Pre-meeting chats as a shadowing surrogate.

03

Ticket Tickets

Sei mesi di assistenza letti per pattern. Quello che le interviste non dicevano, i ticket lo gridavano. Six months of support logs read for patterns. What interviews didn't say, tickets shouted.

04

Insight Insight

Da sintomi a pattern, da pattern a principi. Tre superfici pensate come una grammatica condivisa. From symptoms to patterns, from patterns to principles. Three surfaces conceived as a shared grammar.

Input Input

3 walkthrough 3 walkthroughs

Una per superficie. Mappare l'esistente prima di progettare il nuovo. One per surface. Map the existing system before designing the new one.

7 interviste · 1 mese 7 interviews · 1 month

Accettazione, amministrazione, domicilio, medico. Pre-riunioni come surrogato. Intake, admin, home-care, doctor. Pre-meetings as a surrogate.

6 mesi di ticket 6 months of tickets

Lettura sistematica per riconoscere pattern ricorrenti di errore e frustrazione. Systematic reading to recognize recurring patterns of error and frustration.

Cluster Cluster

11 sintomi · raggruppati per superficie 11 symptoms · grouped by surface

Pattern ripetuti che attraversano le tre superfici con forme diverse ma radice comune. Repeated patterns across the three surfaces, different shapes, shared root.

3 profili composito 3 composite profiles

Uno per superficie. Costruiti dalle interviste e — per l'app utenti — dai ticket di assistenza. One per surface. Built from interviews and — for the user app — from support tickets.

Output Output

6 principi guida 6 guiding principles

La grammatica condivisa che attraversa backoffice, PWA e app utenti. The shared grammar that runs through backoffice, PWA, and user app.

Tassonomia 8 ruoli Taxonomy of 8 roles

La mappa delle responsabilità che diventa l'architettura del backoffice. The responsibility map that becomes the backoffice architecture.

Sistema scoring ricette SSN SSN prescription scoring

L'idea di un controllo client-side prima del server: feedback subito, traffico ridotto. The idea of a client-side check before the server: instant feedback, reduced traffic.

Tre persone, tre code di errori diverse. Ognuna vede la piattaforma dal punto in cui le succedono le cose sbagliate. Three people, three different queues of errors. Each one sees the platform from the spot where things go wrong for them.

I primi due profili nascono dalle interviste. Il terzo — il caregiver in app — è composito: l'ho derivato leggendo sei mesi di ticket di assistenza e i log dei rifiuti SSN, non da una conversazione diretta. Lo dichiaro qui perché un profilo dichiarato è più affidabile di un profilo inventato. The first two profiles come from interviews. The third — the caregiver in the app — is composite: I built it by reading six months of support tickets and SSN rejection logs, not from a direct conversation. I declare it here because a declared profile is more reliable than an invented one.

01

Accettazione Intake

Riceve le prenotazioni che richiedono lavorazione manuale. Manda link di pagamento, gestisce le anomalie, telefona ai pazienti. Vede la piattaforma dalla coda degli errori. Handles bookings that need manual processing. Sends payment links, manages anomalies, calls patients. Sees the platform from the error queue.

"Quando lavoro in fretta, mi capita di non ricordarmi che gli importi stanno in quella tab lì dentro. Magari guardo la prenotazione, mi sembra a posto, e mi accorgo dopo cinque minuti che non ho mandato il link di pagamento." "When I'm in a hurry I sometimes forget the amounts live inside that tab. I look at the booking, it seems fine, and five minutes later I notice I never sent the payment link."

02

Specialista in mobilità Specialist on the move

Lavora in sede al mattino, in videoconsulto al pomeriggio, a domicilio quando serve. Stessa persona, tre contesti diversi. Stesso strumento, tre forme di utilizzo. Works on-site in the morning, video consult in the afternoon, home visits when needed. One person, three contexts. One tool, three modes of use.

"Se ho un appuntamento e il paziente non risponde al citofono, il suo numero ce l'ho — ma è sulla scheda. Devo segnarlo, uscire, comporre. Quando piove, fra una cosa e l'altra ho già perso dieci minuti." "If I have an appointment and the patient doesn't answer the intercom, I do have their number — but it's on the chart. I have to write it down, leave, dial. When it's raining, between one thing and the next I've already lost ten minutes."

03

Caregiver in app Caregiver in the app

Prenota visite per un parente anziano. Carica la ricetta SSN. Sceglie tra in-sede, a domicilio o videoconsulto. Profilo composito derivato da sei mesi di ticket di assistenza e log di rifiuto, non da intervista diretta. Books visits for an elderly relative. Uploads the SSN prescription. Picks between on-site, home, or video. Composite profile built from six months of support tickets and rejection logs, not from a direct interview.

"Ho caricato tre foto della stessa ricetta, da angolazioni diverse, e ogni volta mi dice che non va bene. Non capisco se è la foto, se è la ricetta, se è il telefono. Alla fine ho chiamato, e mi hanno detto di riprovare." "I uploaded three photos of the same prescription, different angles, and each time it tells me it's not good. I don't know if it's the photo, the prescription, the phone. In the end I called, and they told me to try again."

Atto 2 Act 2

Design Design

Una grammatica condivisa fra tre superfici. A shared grammar across three surfaces.

Sei principi che attraversano le superfici. Non sono linee guida visive: sono regole di sistema. Six principles that cut across surfaces. Not visual guidelines: system rules.

Sono nati dai sintomi raccolti in discovery. Ognuno risponde a una domanda diversa, ma tutti rispondono alla stessa: cosa rende queste tre superfici un sistema, e non tre prodotti che convivono. They came from the symptoms collected in discovery. Each answers a different question, but all answer the same one: what makes these three surfaces one system, rather than three products living side by side.

01

Una piattaforma, otto mestieri. One platform, eight crafts.

Identità visiva unica; dashboard, funzioni e flussi distinti per ruolo. Stessa grammatica, vocabolari adattati al mestiere. One visual identity; distinct dashboards, functions and flows per role. Shared grammar, vocabulary tailored to each craft.

02

Lo stato è grammatica, non decorazione. State is grammar, not decoration.

Stessi nomi, stessi colori, stessi significati ovunque appaiano. Sei stati per il ciclo di vita della prenotazione, validi per backoffice, PWA e app utente. Same names, same colors, same meanings wherever they appear. Six booking lifecycle states, valid across backoffice, PWA and user app.

03

Le funzioni vanno dove le mani le cercano. Functions live where hands look for them.

Pagamento sulla schermata della prenotazione, non in una tab interna. Chiamata in PWA, non fuori dall'app. Stato della prestazione in lista, non in dettaglio. Payment on the booking screen, not in an inner tab. Calls in the PWA, not outside the app. Service status in the list, not in detail view.

04

Modularità dichiarativa. Declarative modularity.

I moduli della PWA si attivano dal ruolo, non da configurazione caso per caso. Aggiungere un mestiere significa dichiararne i permessi, non costruire una nuova app. PWA modules activate from the role, not from case-by-case configuration. Adding a craft means declaring its permissions, not building a new app.

05

Validare prima, chiedere dopo. Validate first, ask later.

Quando l'utente non può sbagliare — perché il dato è ufficiale, vincolante o sanitario — il sistema deve sbagliare al posto suo. Il controllo precede la richiesta. When the user cannot fail — because the data is official, binding, or clinical — the system must fail on their behalf. Validation precedes the request.

06

Trasparenza nel rifiuto. Transparency in rejection.

Quando una validazione fallisce, l'utente sa perché. Subito, in app, in lingua naturale — non in un codice errore restituito da un server lontano. When a validation fails, the user knows why. Right away, in-app, in natural language — not as an error code returned from a distant server.

Una dashboard generica per tutti diventa otto code di lavoro, una per ruolo. One generic dashboard for everyone becomes eight queues of work, one per role.

Il primo atto di architettura non è stato disegnare schermate. È stato decidere cosa ogni ruolo deve vedere quando apre il sistema al mattino. Il sistema vecchio mostrava la stessa schermata di apertura a tutti. Quello nuovo apre ognuno sulla propria coda specifica — alert per il SuperAdmin, configurazioni per l'Admin, pagamenti per l'amministrazione, prenotazioni in lavorazione per l'accettazione. The first act of architecture wasn't drawing screens. It was deciding what each role needs to see when they open the system in the morning. The old system showed the same landing screen to everyone. The new one opens each user onto their own queue — alerts for SuperAdmin, configurations for Admin, payments for administration, bookings in processing for intake.

Due ruoli — Specialista e Operatore a domicilio — non vedono questa schermata: la loro vita operativa è sulla PWA dedicata. Per loro il backoffice non esiste. Per tutti gli altri sei, la schermata di apertura è la coda specifica del proprio mestiere. Two roles — Specialist and Home-care operator — don't see this screen: their operational life is on the dedicated PWA. For them, the backoffice doesn't exist. For the other six, the landing screen is their craft's own queue.

Prima Before

Una dashboard, otto ruoli One dashboard, eight roles

  • Tutti i ruoli All roles Stessa landing indifferenziata. Lista di prenotazioni recenti, senza filtro per ruolo. Ognuno doveva costruirsi a mano la propria vista. Same undifferentiated landing. Recent bookings list, no role filter. Everyone had to manually carve out their own view.
Dopo After

Sei code, sei landing Six queues, six landings

  • SuperAdmin Stato globale piattaforma e accessi Global platform status and access
  • Admin Alert sistema e configurazioni System alerts and configuration
  • Amministrazione Administration Pagamenti sospesi e anomalie contabili Held payments and accounting anomalies
  • Accettazione Intake Prenotazioni in attesa di lavorazione Bookings pending processing
  • Op. di sala In-office op. Coda prelievi di oggi, in sede Today's in-office blood-draw queue
  • Editor Bozze e pubblicazioni in coda Drafts and pending publications

L'esempio del pagamento The payment example

Il singolo cambio che ha avuto l'impatto operativo più visibile: l'inserimento dell'importo per le prenotazioni a lavorazione manuale. Prima viveva dentro una tab interna della prenotazione, con un nome poco parlante. Adesso vive sulla schermata principale della prenotazione, accanto al pulsante "Invia link di pagamento". Il pattern è ovunque in backoffice: le funzioni vanno dove le mani le cercano, non dove l'architettura le ha lasciate. The single change with the most visible operational impact: entering the amount for manually processed bookings. It used to live inside an inner tab, with a vague label. Now it lives on the booking's main screen, next to the "Send payment link" button. The pattern recurs throughout the backoffice: functions go where hands look for them, not where architecture left them.

Gli stati come grammatica States as grammar

Il ciclo di vita di una prenotazione è uno e solo uno. L'ho normalizzato in sei stati canonici, validi in tutta la piattaforma — backoffice, PWA, app utenti. Stessi nomi, stessi colori, stessi significati. Non ci sono più "in attesa", "pending", "da fare" che parlano del medesimo stato con nomi diversi. The booking lifecycle is one and only one. I normalized it into six canonical states, valid across the whole platform — backoffice, PWA, user app. Same names, same colors, same meanings. No more "pending", "to do", "in queue" all referring to the same thing under different names.

Bozza Draft

L'utente sta completando la prenotazione dall'app. Lo slot è congelato — se non conclude entro 15 minuti, torna disponibile automaticamente. The user is completing the booking in-app. The slot is frozen — if not confirmed within 15 minutes, it becomes available again.

Da lavorare To process

Richiede lavorazione manuale per esigenze particolari — convenzioni assicurative, autorizzazioni, verifiche documentali. Requires manual processing for specific needs — insurance agreements, authorisations, document checks.

Confermato Confirmed

Lavorata e verificata. La piattaforma ha confermato la prenotazione — l'utente è atteso. Processed and verified. The platform confirmed the booking — the patient is expected.

Eseguito Performed

La prestazione è stata erogata. Resta da chiudere la pratica clinica. The service was delivered. Clinical record still to close.

Concluso Closed

Pratica archiviata, referto consegnato, ciclo completo dal punto di vista del sistema. Record archived, report delivered, cycle complete from the system's standpoint.

Rifiutata Rejected

La prenotazione non è stata accettata — dato non valido, prestazione non disponibile o documentazione insufficiente. The booking was not accepted — invalid data, service unavailable or insufficient documentation.

La tassonomia dei ruoli The role taxonomy

Otto ruoli con responsabilità distinte. Sei lavorano in backoffice. Due — Specialista e Operatore a domicilio — vivono interamente sulla loro PWA dedicata. Eight roles with distinct responsibilities. Six live in the backoffice. Two — Specialist and Home-care operator — live entirely on their dedicated PWA.

01

SuperAdmin

Vista globale, accessi cross-istituto, ruoli e permessi. Global view, cross-institute access, roles and permissions.

02

Admin

Configurazioni di sistema, listini, anagrafiche, regole. System configuration, pricing, registries, rules.

03

Amministrazione Administration

Gestisce pagamenti, fatturazione, anomalie contabili. Manages payments, invoicing, accounting anomalies.

04

Accettazione Intake

Riceve, valida e lavora le prenotazioni in arrivo. Receives, validates, and processes incoming bookings.

05

Specialista Specialist PWA

Medico — visite in sede, videoconsulto, a domicilio. Doctor — on-site visits, video consults, home visits.

06

Operatore di sala In-office operator

Esegue prelievi e prestazioni in sede. Performs on-site blood draws and services.

07

Operatore a domicilio Home-care operator PWA

Esegue prestazioni a casa del paziente, in mobilità. Performs services at the patient's home, on the move.

08

Editor

Pubblica notizie, contenuti editoriali, comunicazioni. Publishes news, editorial content, communications.

Una PWA che cambia forma in base a chi la apre, dove la apre, e per fare cosa. A PWA that changes shape based on who opens it, where, and to do what.

Il principio sotto è modularità dichiarativa. Tutti i moduli sono presenti nella PWA — agenda, cartella, chiamata, videoconsulto, checklist itinerante, no-show, spostamento. Chi vede cosa dipende dal ruolo dichiarato sull'account, non da una configurazione settata di volta in volta da un amministratore. Aggiungere un mestiere alla piattaforma significa dichiarare quali moduli attivare per quel ruolo, non costruire una nuova applicazione. The principle underneath is declarative modularity. All modules are present in the PWA — agenda, chart, calls, video consult, itinerant checklist, no-show, rescheduling. Who sees what depends on the role declared on the account, not on a configuration set case-by-case by an admin. Adding a craft to the platform means declaring which modules to activate for that role, not building a new application.

Modulo Module
Specialista in sede On-site specialist
Specialista videoconsulto Video-consult specialist
Operatore a domicilio Home-care operator
Agenda del giorno Daily agenda
Cartella paziente Patient chart
Chiamata in app In-app call
Videoconsulto Video consult
Checklist itinerante Itinerant checklist
Gestione no-show No-show handling
Spostamento appuntamenti Appointment rescheduling

Agenda del giorno Daily agenda

  • In sede On-site
  • Videoconsulto Video consult
  • A domicilio Home-care

Cartella paziente Patient chart

  • In sede On-site
  • Videoconsulto Video consult
  • A domicilio Home-care

Chiamata in app In-app call

  • In sede On-site
  • Videoconsulto Video consult
  • A domicilio Home-care

Videoconsulto Video consult

  • In sede On-site
  • Videoconsulto Video consult
  • A domicilio Home-care

Checklist itinerante Itinerant checklist

  • In sede On-site
  • Videoconsulto Video consult
  • A domicilio Home-care

Gestione no-show No-show handling

  • In sede On-site
  • Videoconsulto Video consult
  • A domicilio Home-care

Spostamento appuntamenti Appointment rescheduling

  • In sede On-site
  • Videoconsulto Video consult
  • A domicilio Home-care
Attivo Active Contestuale Contextual Non attivo Not active

Tre esempi narrati Three narrated examples

Videoconsulto. Presente per il medico abilitato al consulto a distanza, assente per gli altri. Quando il medico ibrido passa dalla mattina in sede al pomeriggio in video, è lo stesso account, lo stesso dispositivo, la stessa PWA — ma il modulo videoconsulto compare solo nei pomeriggi. Video consult. Present for doctors enabled for remote consulting, absent for everyone else. When the hybrid doctor moves from morning on-site to afternoon video, it's the same account, same device, same PWA — but the video consult module only surfaces in the afternoon.

Checklist itinerante. Esclusiva di chi va a domicilio. È il modulo che organizza il giro — indirizzi, prestazioni per paziente, conferma dell'esecuzione. Per chi sta in sede sarebbe rumore: non compare. Itinerant checklist. Exclusive to home-care operators. It's the module that organizes the route — addresses, services per patient, execution confirmation. For on-site staff it would be noise: it doesn't appear.

Gestione no-show. Presente per tutti. Il mancato arrivo del paziente è un evento del sistema, registrato con un tap. Nessun ruolo è esonerato — l'evento conta in cinque mestieri diversi, dalla riprogrammazione fino al consuntivo amministrativo. No-show handling. Present for everyone. A patient's no-show is a system event, recorded with one tap. No role is exempted — the event matters across five different crafts, from rescheduling to administrative reporting.

L'adattività è separata dalla modularità. La PWA si reflowa automaticamente su web, tablet e smartphone — stesso codice, layout coerenti, nessuna installazione necessaria. La modularità decide quali moduli ti compaiono; l'adattività decide come ti compaiono. Adaptivity is separate from modularity. The PWA reflows automatically across web, tablet, and smartphone — same code, consistent layouts, no install required. Modularity decides which modules appear; adaptivity decides how they appear.

Trenta rifiuti a settimana per foto non lavorabili. Una telefonata di assistenza ogni tre. Un utente frustrato per il resto. Il sistema vecchio decideva sul server: la decisione arrivava dopo l'attesa, senza spiegazioni. Thirty rejections a week from unprocessable photos. One support call out of three. A frustrated user for the rest. The old system decided on the server: the verdict came after the wait, without explanations.

La ricetta SSN è un documento ufficiale. L'utente non può modificarla. Non può rifarla. Non può sapere, dal proprio smartphone, se la foto che ha appena scattato è leggibile o no. Quando l'utente non può sbagliare, il sistema deve sbagliare al posto suo. Questo è il principio. Tutto il resto è ingegneria. An SSN prescription is an official document. The user can't modify it. Can't redo it. Can't know, from their phone, whether the photo they just took is readable or not. When the user cannot fail, the system must fail on their behalf. That's the principle. Everything else is engineering.

Tre modalità di input Three input modes

Per accomodare l'eterogeneità degli utenti — chi ha la ricetta cartacea sotto mano, chi l'ha ricevuta come PDF via email, chi ha solo il codice NRE annotato — ho previsto tre vie di input distinte. Tutte e tre convergono nello stesso pipeline di validazione. To accommodate user heterogeneity — those holding the paper prescription, those who received a PDF via email, those who only have the NRE code jotted down — I designed three distinct input paths. All three converge into the same validation pipeline.

Quattro controlli, una soglia Four checks, one threshold

Il scoring lavora su quattro segnali estratti dall'immagine — o, nel caso del codice diretto, dal solo NRE. Quattro segnali eterogenei, valutati insieme, che producono un punteggio. Sopra una soglia tarata empiricamente: passa al server. Sotto: rifiuto immediato in app, con la spiegazione del perché. Scoring works on four signals extracted from the image — or, in the direct-code case, from the NRE alone. Four heterogeneous signals, evaluated together, producing a score. Above an empirically tuned threshold: passes to the server. Below: instant in-app rejection, with the reason.

Input · 01 Input · 01

Codice NRE NRE code

Inserimento manuale del codice. Bypassa l'estrazione dall'immagine. Manual code entry. Bypasses image extraction.

Input · 02 Input · 02

Scansione fotocamera Camera scan

Cattura con correzione prospettica e enhancement automatici. Capture with automatic perspective correction and enhancement.

Input · 03 Input · 03

Upload PDF o foto PDF or photo upload

Documento ricevuto via email o foto già scattata in galleria. Document received via email or photo already in gallery.

Check · 01 Check · 01

Termini ricorrenti Recurring terms

I termini sempre presenti su una ricetta SSN sono nella foto? Are the terms always present on an SSN prescription in the photo?

Check · 02 Check · 02

Verifica leggibilità Legibility check

Il testo è leggibile su tutta la superficie, o solo in alto? Is text readable across the whole surface, or only at the top?

Check · 03 Check · 03

Lettura codice NRE NRE code reading

Necessario e non sufficiente. Senza, niente passa. Necessary and not sufficient. Without it, nothing passes.

Check · 04 Check · 04

Rapporto testo / area Text-to-area ratio

La foto contiene solo la ricetta, o anche la scrivania intorno? Is the photo only the prescription, or also the desk around it?

Sotto soglia Below threshold

Rifiuto immediato, in app Instant in-app rejection

Spiegazione del perché. Nessuna richiesta al server. Reason explained. No request to the server.

Sopra soglia Above threshold

Invio al server Sent to server

Il sistema può fidarsi. Passa al secondo livello di controllo. The system can trust. Passes to the second control level.

Secondo livello Second level

Controllo server Server check

Validazione complessa, accesso a dati di anagrafica, verifica del codice NRE contro fonte autoritativa. Complex validation, registry data access, NRE verification against authoritative source.

✓ Ricetta accettata, prenotazione confermata ✓ Prescription accepted, booking confirmed

La soglia, e il peso del NRE The threshold, and the weight of the NRE

Lo scoring client è calibrato su una soglia alta, tarata empiricamente sui dati di lettura: sotto questo livello il rischio di interpretazione inaffidabile diventa significativo, sopra il sistema può fidarsi e passare il documento al server per il secondo controllo. Non tutti i check pesano allo stesso modo: la lettura del codice NRE è il più diagnostico — una sua mancata lettura non è compensabile da nessuno degli altri. Gli altri tre si compensano fra loro; l'NRE no. Client-side scoring is calibrated on a high threshold, empirically tuned to reading data: below this level the risk of unreliable interpretation becomes significant, above the system can trust and pass the document to the server for the second check. Not all checks weigh equally: NRE code reading is the most diagnostic — its failure is not compensable by any of the others. The other three compensate among themselves; the NRE does not.

Attribuzione: l'enhancement Attribution: the enhancement

La libreria di correzione prospettica e enhancement è stata sviluppata e affinata dal team dev. Io ho contribuito alla calibrazione e alla verifica degli output sui pattern individuati in fase di research. Il design del flusso, lo scoring, la soglia e i check sono il mio perimetro; la pipeline tecnica di pre-processing è del team dev. The perspective correction and enhancement library was developed and refined by the dev team. I contributed to calibration and to verifying outputs against the patterns identified during research. Flow design, scoring, threshold and checks are my scope; the technical pre-processing pipeline is the dev team's.

Perché funziona: due livelli, due logiche Why it works: two levels, two logics

Il controllo client non sostituisce il server, lo precede. Il client serve a dare feedback immediato all'utente — niente attesa, niente errori opachi — e a ridurre il traffico di documenti illeggibili che bloccavano la coda lato server. Il server fa quello che il client non può fare: validazione complessa, verifica contro fonte autoritativa, integrazione con i flussi di prenotazione. Due livelli, due logiche, una stessa promessa all'utente: se sei arrivato a vedere "in elaborazione", la tua ricetta è valida. The client check doesn't replace the server, it precedes it. The client gives instant feedback to the user — no wait, no opaque errors — and reduces the flow of unreadable documents clogging the server-side queue. The server does what the client can't: complex validation, verification against authoritative source, integration with booking flows. Two levels, two logics, one promise to the user: if you've made it to "processing", your prescription is valid.

Atto 3 Act 3

Impact Impact

I numeri raccontano la metà della storia. L'altra metà è una giornata. The numbers tell half the story. The other half is a workday.

La differenza non sta nelle metriche. Sta nei minuti di un infermiere al lavoro. The difference isn't in the metrics. It's in the minutes of a nurse at work.

La giornata che racconto qui è quella di un operatore a domicilio — il profilo che ha guadagnato più tempo dal rework, perché era quello con più frizioni nel sistema vecchio. Quattro momenti: l'apertura, una chiamata, un no-show, la chiusura. Stessi quattro momenti, due grammatiche diverse. The day I describe here is a home-care operator's — the profile that gained the most time from the rework, because it had the most friction in the old system. Four moments: opening, a call, a no-show, closing. Same four moments, two different grammars.

Prima Before
Dopo After
08:00 Inizio giornata Day starts

Lista cartacea, da decifrare Paper list, to decipher

Ricevo il foglio del giro. Trascrivo a mente l'ordine, organizzo gli indirizzi in macchina. Mezz'ora prima di partire. I receive the route sheet. I memorize the order, organize the addresses in the car. Thirty minutes before leaving.

PWA, giro già ordinato PWA, route already ordered

Apro la PWA. Il giro di oggi è ordinato, con indirizzi cliccabili e prestazioni dettagliate per ogni paziente. Salgo in macchina. I open the PWA. Today's route is ordered, with clickable addresses and detailed services per patient. I get in the car.

09:30 Paziente non risponde Patient doesn't answer

Esci, copia, componi Exit, copy, dial

Il numero è sulla scheda. Esco dall'app, ripeto a mente le ultime cifre, compongo. Ogni tanto sbaglio. Quando piove, dieci minuti. The number is on the chart. I leave the app, repeat the last digits in my head, dial. Sometimes I get it wrong. When it rains, ten minutes.

Un tap, zero errori One tap, zero errors

Tap sull'icona "chiamata" nella scheda paziente. Una azione, nessuna possibilità di sbagliare numero. Trenta secondi. Tap on the "call" icon in the patient chart. One action, no way to misdial. Thirty seconds.

11:00 Un no-show A no-show

Foglio, e mi ricorderò Paper, I'll remember

Niente da registrare in app. Appunto su un foglio, mi ricorderò a sera di comunicarlo. A volte dimentico. Nothing to record in app. I jot it on paper, I'll remember to report at night. Sometimes I forget.

Tap, e il sistema reagisce Tap, and the system reacts

Tap su "no-show". L'evento è già nel sistema. Il backoffice lo vede, l'avviso di pagamento parte automaticamente, il successivo paziente sa che arrivo prima. Tap on "no-show". The event is already in the system. The backoffice sees it, the payment notice fires automatically, the next patient knows I'll arrive earlier.

17:00 Fine giornata Day ends

Rimettere insieme la giornata Reassemble the day

Torno in sede con il foglio. Compilo report, trasferisco no-show, riconcilio con l'amministrazione. Un'ora di lavoro a freddo. I get back to the office with the paper. Fill reports, transfer no-shows, reconcile with administration. An hour of cold work.

Verifica, firma, chiudi Verify, sign, close

La giornata è già nel sistema. Verifico gli eventi, firmo, chiudo. Quindici minuti invece di un'ora. The day is already in the system. I check the events, sign, close. Fifteen minutes instead of an hour.

Questi quattro momenti non sono casi-limite. Sono quattro tipici, ripetuti ogni giorno da decine di operatori, su tre istituti. Quando si moltiplicano, diventano tempo restituito al lavoro clinico — quello che il sistema vecchio assorbiva in attriti, quello nuovo lo libera. These four moments aren't edge cases. They're four typical ones, repeated daily by dozens of operators, across three institutes. When they multiply, they become time returned to clinical work — what the old system absorbed in friction, the new one releases.

Un sistema ricette che funziona. Due ticket di assistenza in tre mesi. Una giornata di lavoro che ha smesso di sprecare la sua coda. A prescription system that works. Two support tickets in three months. A workday that stopped wasting its tail.

I numeri qui sotto sono dell'istituto più grande dei tre, dove la scala rende i pattern più nitidi. Sono in range smussati rispetto al dato interno, e rappresentano la finestra di tre mesi successivi alla messa in produzione del modulo ricette SSN. The numbers below are from the largest of the three institutes, where scale makes patterns sharpest. They're in conservative ranges relative to internal data, and represent the three-month window following the SSN prescription module's release.

0 Rifiuti per foto non lavorabili Rejections from unprocessable photos Da una trentina a settimana · oggi nessuna From around thirty a week · today none
−85% Rifiuti totali ricette SSN Total SSN prescription rejections Cumulativo · cause foto + altre Cumulative · photo + other causes
Da 1–3 al giorno a 2 in 3 mesi From 1–3 a day to 2 in 3 months Ticket di assistenza correlati alle ricette Support tickets related to prescriptions Pre-intervento · vs · 3 mesi in produzione Pre-rework · vs · 3 months in production
Pagamento in evidenza · no-show registrato · giro ordinato Payment surfaced · no-show logged · route ordered Backoffice + PWA, qualitativo Backoffice + PWA, qualitative Non misurato direttamente · comportamenti verificabili Not directly measured · verifiable behaviors
Riconoscimento Recognition

Premio AIIC per AI e sanità digitale. Riconoscimento nazionale italiano per il contributo della piattaforma all'AI applicata in ambito sanitario. AIIC Award for AI in digital health. Italian national recognition for the platform's contribution to AI applied in healthcare.

Una nota su quello che non posso pubblicare A note on what I cannot publish

Per il backoffice e la PWA le metriche numeriche dirette esistono nei dati interni della piattaforma — tempi di lavorazione pratica, completamento turni, riduzione tap per gestire un no-show — ma non sono pubblicabili sotto NDA. Quello che posso dire con certezza è che oggi l'importo di pagamento si configura dalla schermata principale della prenotazione, non da una tab interna; che il no-show si registra in PWA con un tap, non su un foglio di carta; che gli operatori a domicilio aprono la giornata con il giro già ordinato. Sono fatti, non stime — verificabili da chi usa il sistema ogni giorno. For the backoffice and PWA, direct numerical metrics exist in the platform's internal data — case processing times, shift completion, tap reduction for no-show handling — but cannot be published under NDA. What I can say with certainty is that today the payment amount is configured from the booking's main screen, not from an inner tab; that no-shows are recorded in the PWA with one tap, not on paper; that home-care operators open the day with the route already ordered. These are facts, not estimates — verifiable by anyone who uses the system daily.

Tre verità di sistema che porto via dal progetto. Non valgono solo nel dominio sanitario. Three system truths I take away from the project. They hold beyond the healthcare domain.

01

La validazione non è una risposta. È un filtro. Validation is not an answer. It's a filter.

Il sistema vecchio aspettava l'errore e poi lo restituiva all'utente. Quello nuovo lo anticipa, lo intercetta, lo spiega in tempo reale. Vale per le ricette SSN, vale per qualsiasi flusso dove il dato in ingresso è vincolato — dati anagrafici, documenti ufficiali, codici fiscali, IBAN. In dominio sanitario il principio diventa etico, non solo UX: un errore non gestito non è un fastidio, è dato clinico corrotto. The old system waited for the error and then handed it back to the user. The new one anticipates it, intercepts it, explains it in real time. It applies to SSN prescriptions, to any flow where input data is constrained — registry data, official documents, tax codes, IBANs. In healthcare, the principle becomes ethical, not just UX: an unhandled error isn't a nuisance, it's corrupted clinical data.

02

La modularità non è separazione: è disciplina dei ruoli. Modularity isn't separation: it's discipline of roles.

Una piattaforma per otto mestieri non significa otto applicazioni. Significa una applicazione che dichiara, sui propri moduli, chi vede cosa. Quando la modularità è dichiarativa — e non configurabile caso per caso — l'aggiunta di un nuovo mestiere diventa un atto di amministrazione, non di sviluppo. La PWA cresce senza diventare un mostro, e il sistema rimane uno. A platform for eight crafts doesn't mean eight applications. It means one application that declares, on its modules, who sees what. When modularity is declarative — not case-by-case configurable — adding a new craft becomes an administrative act, not a development one. The PWA grows without becoming a monster, and the system stays one.

03

Normalizzare gli stati è il primo atto di architettura, non l'ultimo. Normalizing states is the first act of architecture, not the last.

Le schermate vengono dopo. Prima viene il vocabolario degli stati — il loro nome, il loro colore, il loro significato condiviso fra tutte le superfici. Quando ci si arriva da fuori, gli stati sembrano un dettaglio. Quando ci si arriva da dentro, sono la cosa che tiene insieme tre superfici, otto ruoli e una stessa promessa: questa parola vuol dire questo, ovunque. Tutto il resto è UI. Screens come later. First comes the state vocabulary — their names, their colors, their meaning shared across all surfaces. Seen from outside, states look like a detail. Seen from inside, they're what holds three surfaces, eight roles, and one same promise together: this word means this, everywhere. The rest is UI.