← Tutti gli approfondimenti

Sistemi e dati /

Integrare due sistemi significa chiarire la responsabilità dei dati

Prima di collegare API e database, servono regole su origine, significato, errori e interventi umani.

Collegare due applicazioni può sembrare un compito tecnico limitato: inviare un dato e ricevere una risposta. Nella pratica, il punto difficile è spesso decidere che cosa rappresenta quel dato, quale sistema ne è responsabile e come continuare a lavorare quando i sistemi non sono d’accordo.

01 / Stabilire la fonte autorevole

Per ogni informazione importante bisogna sapere dove nasce e chi può modificarla. Se cliente, prezzo o stato di un ordine esistono in più sistemi, occorre una regola per i conflitti. Senza questa decisione, la sincronizzazione può rendere più veloce la diffusione di un errore.

02 / Concordare il significato dei campi

Due colonne con lo stesso nome non rappresentano necessariamente la stessa cosa. Stato, data, importo e identificativo possono avere regole diverse. Una mappa dei campi dovrebbe descrivere non solo il formato, ma anche il significato e gli esempi di valori validi.

03 / Progettare i casi di errore

Una richiesta può essere rifiutata, arrivare in ritardo o essere ripetuta. Il progetto deve indicare quali operazioni si possono riprovare, come riconoscere i duplicati e quando serve un intervento. Messaggi e registri utili permettono di capire che cosa è successo senza indovinare.

04 / Dare visibilità alle persone

Un’integrazione non dovrebbe essere una scatola nera per chi gestisce il servizio. È utile mostrare lo stato delle operazioni, distinguere gli errori temporanei da quelli che richiedono una correzione e definire chi riceve un avviso. Le persone responsabili devono poter recuperare il lavoro sospeso.

05 / Rilasciare e verificare per passi

Prima di automatizzare tutto, si possono provare casi rappresentativi, controllare i dati nei due sistemi e osservare le eccezioni. Un avvio graduale aiuta a scoprire differenze nei processi che una specifica tecnica non aveva reso evidenti.

DA PORTARE NEL PROGETTO

Tre domande da chiarire.

  1. Quale sistema è autorevole per ogni informazione?
  2. Cosa succede se una sincronizzazione fallisce o si ripete?
  3. Chi vede e risolve le eccezioni?