Ci si accorge del problema quando, a sistema rilasciato, alcune operazioni vengono rifiutate a valle senza un errore tecnico evidente, pur in assenza di malfunzionamenti applicativi.
Il sistema era progettato per generare e scambiare messaggi strutturati verso un dominio Finance esterno, secondo specifiche formalmente approvate e validate in fase di sviluppo.
Nella pratica, i messaggi prodotti contenevano microerrori semantici: campi corretti sintatticamente ma ambigui, valori formalmente ammessi ma operativamente incoerenti, sequenze valide ma non interpretabili nel contesto Finance.
Queste anomalie non erano state intercettate perché la batteria di test di sviluppo verificava la correttezza tecnica dei messaggi, non la loro semantica di dominio, non ancora conosciuta dal team al momento della costruzione.
Col tempo, la mancanza di controllo semantico ha prodotto un accumulo di eccezioni gestite manualmente, verifiche a posteriori e correzioni fuori flusso, non tracciate come difetti di sistema.
Il sistema è risultato formalmente completato e tecnicamente stabile, ma incapace di produrre messaggi affidabili senza un intervento umano di interpretazione.
Il problema non era la qualità dello sviluppo.
Era l’assenza di una validazione semantica del dominio.
Wolf
Interventi su sistemi complessi
