Se un sistema espone qualcosa — un’API, un database, un file, una porta — si collega. E per quelli che non espongono niente, quasi sempre si collega lo stesso.
Il problema
Due sistemi che devono scambiarsi dei dati, e nessuno dei due fornitori considera casa propria il pezzo in mezzo. Il risultato è quasi sempre lo stesso: c’è una persona che copia, oppure c’è un foglio di calcolo, oppure ci sono tutti e due.
Non è un problema di tecnologia. È che ogni sistema è stato progettato per stare da solo, e nessuno è stato pagato per farlo stare insieme agli altri.
Cosa collego
Qualunque cosa parli, e qualche cosa che non parla.
- Gestionale ↔ e-commerce — anagrafiche, listini, giacenze, ordini, nei due sensi.
- Gestionale ↔ gestionale — SAP, Microsoft Dynamics, e i gestionali di settore che in Italia usano poche aziende e conoscono ancora meno fornitori.
- Macchine di produzione — OPC UA, Modbus, API dei costruttori, socket diretti. E per le macchine senza protocollo dichiarato, reverse engineering.
- Identità e accessi — single sign-on federato, SAML, Identity Provider e Service Provider.
- Firma e documenti — tavolette di firma, piattaforme documentali, archivi aziendali.
- Sistemi che non hanno documentazione pubblica — si parte da quello che il sistema fa vedere e si ricostruisce il resto.
La domanda giusta non è «si può integrare?», ma «quanto costa, e quanto è fragile quello che ne esce?». La prima ha quasi sempre risposta sì.
Come si fa
Quattro fasi, sempre le stesse, e nessuna si salta.
- Studio. Cosa espone ciascun sistema e cosa non espone, quali dati devono passare, in che direzione, quanto spesso, e cosa deve succedere quando i due non sono d’accordo. Esce un documento che leggi, correggi e approvi.
- Realizzazione. Il collegamento, la gestione degli errori e il registro di quello che è passato. Un’integrazione senza registro è un’integrazione che non si può controllare.
- Collaudo. Su un ambiente separato, con i tuoi dati veri. È qui che si scoprono i casi che nessuno aveva raccontato, e ce ne sono sempre.
- Messa in produzione. Con i due sistemi accesi. Nessuna finestra di fermo, e la possibilità di tornare indietro se qualcosa non torna.
Poi resta accesa, e la mantengo io.
Dove si rompe davvero
Quasi mai sul far parlare due sistemi. Si rompe prima, sul flusso.
Chi chiede un’integrazione sa benissimo cosa vuole ottenere. Quello che quasi sempre non è ancora stato deciso è come ci si arriva: quali dati partono e da quale dei due sistemi, in che momento, ogni quanto, cosa succede se uno dei due risponde di no, chi ha ragione quando i due non sono d’accordo, e cosa deve vedere la persona che intanto sta lavorando.
Non è una mancanza del cliente. Quelle decisioni non si prendono guardando il proprio lavoro: si prendono guardando i due sistemi insieme — ed è esattamente la cosa che nessuno ha mai avuto motivo di fare, perché ognuno conosceva bene solo il suo pezzo.
Per questo la prima fase non è tecnica. Si ricostruisce il flusso, passo per passo, finché non è chiaro cosa deve succedere — e finché non lo è, non si scrive niente. Dopo, l’integrazione viene quasi da sé.
Saltare quel passaggio è il modo più affidabile di costruire qualcosa che funziona in prova e si rompe il primo lunedì, quando arrivano i casi veri che nessuno aveva raccontato.
L’altra variabile, quella che non dipende da nessuno dei due: la disponibilità di chi sta dall’altra parte. Sull’integrazione più difficile che ho fatto il problema peggiore non è stato tecnico, erano i consulenti dell’altro fornitore. Chi ha gestito un progetto a due fornitori sa che è quella la variabile vera.
Le prove
- Venti clienti diversi sulle integrazioni fra gestionali ed e-commerce: ripetibilità e metodo, non un colpo di fortuna.
- Sette sistemi gestionali diversi, alcuni standard mondiali, altri no.
- Decine di migliaia di articoli per singolo catalogo, con sincronizzazioni da 2 a 10 volte al giorno.
- Un Identity Provider SAML scritto a mano per una multinazionale delle telecomunicazioni, in produzione dal 2019.
- Un sistema di officina nato per una sola tipologia di macchina che oggi ne parla una ventina.
Le prove, per esteso
Il primo passo è una chiacchierata, non un preventivo.
Raccontami il problema. Se posso risolverlo te lo dico, e se non posso ti dico chi può.