# Data Quality Firewall

Il Data Quality Firewall è un software che protegge un sistema informatico dalla ricezione di dati errati, incompleti e di bassa qualità.

## Definizione di qualità

Viene considerato dato di qualità, un dato che ha delle caratteristiche valide e che è in grado di soddisfare l'uso cui è destinato. Al fine di soddisfare questo scopo, i dati devono essere accurati, aggiornati, rilevanti, completi, capiti, e di fidata credibilità. La qualità dei dati è anche lo stato di completezza, coerenza, tempestività e accuratezza che rende i dati appropriati ad un uso specifico. Questa qualità istituzionalizza una serie di processi ripetibili allo scopo di monitorare continuamente i dati e di migliorarne la rilevanza. Dunque, è necessario e molto importante assicurarsi, sin dall'inizio, che solo dati validi e utili vengano inseriti in un database.

## Caratteristiche e funzionalità

Le caratteristiche di accuratezza e coerenza di un database possono essere garantite dal Data Quality Firewall: un programma che permette solo ai dati della più alta qualità di entrare nella banca dati di una organizzazione. Questa applicazione assicura la sola immissione di dati validi e di qualità, ciò significa che esso obliquamente protegge il database dal venire danneggiato, il tutto risulta molto importante dal momento che l'integrità e la sicurezza di un database sono davvero essenziali. Il Data Quality Firewall protegge un database o un computer fornendo informazioni in tempo reale riguardo alla qualità dei dati che vengono inseriti nel sistema.
Laddove vengano trovati errori nel formato o nel contenuto, i dati possono venire rifiutati perché riconosciuti come non validi; saranno, quindi, i dati corretti gli unici a circolare all'interno di una organizzazione.
Lo scopo principale di un processo volto a conseguire la correttezza dei dati, consiste nel catturare quelli errati e non validi, trasformare ed eliminare duplicati di questi e, infine, esportare verso l'utente dati validi senza trascurare di conservarne una copia nel database. Il Data Quality Firewall agisce in maniera simile ad un firewall di rete; esso permette ai pacchetti di passare attraverso determinate porte bloccando quei dati che presentano problemi e permettendo che gli altri vengano conservati nel database. In altre parole, il firewall siede tra i dati di origine ed il database ed opera in connessione con l'estrazione, l'elaborazione ed il caricamento delle informazioni.
L'assenza di controllo sui dati informativi potrebbe condurre al diffondersi di dati inaccurati e frammentati all'interno di un sistema, e ciò potrebbe mettere a rischio, come afferma Gartner, le relazioni con i principali stakeholders aziendali: clienti, fornitori e soci d'affari.
I flussi di dati devono superare molti controlli di validità prima di essere considerati corretti o attendibili. I controlli in questione sono di tipo temporale, formale, logico e previsionale.

## Tipologie

I firewall di rete giocano un ruolo importante nella protezione del sistema impedendo l'accesso non autorizzato proveniente dall'esterno. D'altra parte, le decisioni d'affari devono essere prese rapidamente e chi decide spesso necessita di un accesso immediato ad informazioni accurate, si parla quindi di data reliability (affidabilità del dato) e data availability (disponibilità del dato). Le misure di sicurezza adottate dal classico firewall non sono in grado di impedire che gli addetti all'inserimento dati o sistemi automatici di esportazione dati mal progettati possano immettere dati in grado di causare danni, o dati inutili, all'interno del database. Dunque, il Data Quality Firewall è progettato in modo tale da assicurare la fruizione dei soli dati validi e utili sin dall'inizio.
In base all'uso cui viene impiegato ed alle sue implementazioni, il Data Quality Firewall si presta ad essere raggruppato in:
Batch Validation Application (applicazione che convalida una serie di dati in un'unica operazione) ed in Real-Time Integration (Integrazione in Tempo Reale).
La Batch Validation Integration è un'applicazione fruibile da un utente (anche mediante browser), che riceverà (attraverso i più disparati sistemi di comunicazione come webservices, enterprise messaging system, HTML GET/POST, FTP, etc) dei file o dei tracciati record (chiamati anche flussi informativi o data stream) contenenti i dati e li convaliderà automaticamente in base ad un processo volto a stabilirne la qualità. Un resoconto contenente in dettaglio ogni errore trovato relativo ai dati verrà comunicato all'utente in modo tale che questi possa correggere e reinserire le informazioni o le regole in maniera corretta. Una volta che i dati saranno completamente convalidati, ulteriori processi potranno venire azionati a seconda di quanto richiesto per la standardizzazione dei dati ed il conseguente caricamento di questi nel database.
Il Real-Time Integration, invece, è disegnato in modo tale da evitare quei problemi relativi alla qualità dei dati come i dati non validi, la duplicazione dei record, ecc. Mediante l'integrazione di Data Quality Firewall nell'applicazione dell'utente, questi potrà mettere in campo processi volti all'ottenimento di dati qualitativamente validi e il tutto in tempo reale.
Un'ulteriore comune classificazione si basa sulla esatta ubicazione e sui bisogni dei dati. In tal caso, è possibile fare una nuova classificazione del Data Quality Firewall nel seguente modo:
* Backend Data Quality Firewall
* Frontend Data Quality Firewall
* Double Data Quality Firewall
Il Backend Data Quality Firewall è la tipologia di Data Quality Firewall maggiormente usata e più facilmente disponibile. Qui, i dati vengono scrutinati e convalidati durante il loro trasporto dal database temporaneo a quello permanente, comunemente chiamato Master Database, ciò implica l'esistenza di due centri di memoria.
La ragione principale per installare un Backend Data Quality Firewall consiste in primo luogo nel collocare la protezione il più vicino possibile ai dati essenziali.
La sfida maggiore che si incontra adottando il Backend Data Quality Firewall, invece, consiste nell'incapacità che esso presenta di impedire la creazione di dati nocivi e non validi. Questo perché il firewall viene situato lontano dal punto in cui i dati inutili vengono creati, vale a dire dal punto della fase di immissione dei dati. Tuttavia, l'ubicazione del Backend Data Quality Firewall vicina ai dati essenziali, assicura la protezione della banca dati.
Nel caso del Frontend Data Quality Firewall, i dati che vengono inseriti sono controllati e possibilmente convalidati nella fase della loro immissione. Se il firewall viene posto nella fase di immissione dei dati, la quantità di dati nocivi sarà drasticamente ridotta. In particolare, questo concetto viene usato nella convalida dei dati inseriti, nei formulari elettronici e sui siti web.
L'idea dietro al Double Data Quality Firewall è semplicemente quella di assicurare che esigenze diverse vengano affrontate in modi diversi. Al fine di raggiungere tale risultato, sia il Frontend che il Backend Data Quality Firewall vengono integrati insieme. Il primo firewall, che di solito è il Frontend, si occupa dei rischi che si possono verificare nella fase dell'inserimento dati e può interagire con l'utente.
Il secondo firewall, invece, verrà impostato nel backend, ed il suo corso operativo ha come fine quello di affrontare i rischi che si presentano durante il trasferimento di grandi quantità di dati dal frontend verso il Master Database. Questo firewall opera senza alcuna interazione con l'utente.
Il Double Data Firewall è altamente efficiente e fornirebbe il miglior guadagno sull'investimento (ROI – Return On Investment) ed i migliori risultati tra le soluzioni considerate.
Al momento, il termine Data Quality Firewall, se paragonato ad altri componenti del ICT (Information Communication Technology), è relativamente sconosciuto, anche a molti professionisti dell'informatica. Tuttavia, l'idea dietro il Data Quality Firewall viene ampiamente adoperata nel campo dello sviluppo e progettazione di siti web. In tal caso, gli utenti che riempiono un modulo online sono forzati dal codice di programmazione web ad inserire solo dati validi specificati dall'amministratore del sito web. Il Data Quality Firewall in senso stretto, però, prevede l'uso di software per assicurare che solo i dati validi vengano inseriti, e non l'uso di codici di programmazione web.
Per concludere, il Data Quality Firewall assicura il miglioramento nel processo di inserimento dati, la riduzione dei costi di mancato successo nelle operazioni, la crescita nella produttività e, nello spirito d'azienda, migliora l'utilizzazione dei beni a disposizione, permette il recupero e la creazione di profitti, riduce i costi ordinari, rende più veloci i miglioramenti, e garantisce maggiori guadagni sugli investimenti nell'ambito della tecnologia informatica.

## Implementazioni

* jValidator - The Open Source Data Quality Firewall