Nell'ambito di questo lavoro di tesi abbiamo analizzato lo stato dell'arte dei database temporali relazionali ed il problema dell'evoluzione nel tempo delle strutture dei dati. Con l'evolversi del dominio applicativo e delle necessità di elaborazione dei dati acquisiti, si rendono necessari dei sistemi che riescano ad avvicinare la realtà al suo modello. Abbiamo visto come questa operazione porti al problema di garantire la possibilità di introdurre nuovi elementi nel modello ed al contempo mantenere i dati precedentemente inseriti. I vari sistemi analizzati si pongono ipoteticamente al centro di questi due requisiti contrastanti, avvicinandosi ad uno dei due estremi a seconda delle ipotesi prese in considerazione. Nel campo della business intelligence e dei data warehouse, la necessità di mantenere i dati anche in presenza di importanti modifiche alla loro struttura è primaria, ed una semplice gestione attraverso l'evoluzione spesso può portare a perdite consistenti di informazioni preziose.
Attraverso l'approccio introdotto in questo lavoro di tesi, si è dimostrato dal punto di vista formale la possibilità di gestire versioni diverse degli schemi che modellano il data warehouse. Successivamente sono state mostrate la progettazione dei meta-dati corrispondenti alle versioni degli schemi e la progettazione di un prototipo che dimostra la validità delle tesi introdotte.
Il prototipo è stato implementato con successo, come dimostrato dagli esempi di funzionamento presenti in alcune immagini utilizzate nel precedente capitolo. Alcune delle scelte progettuali iniziali sono state modificate sulla base di alcuni requisiti introdotti dai due framework utilizzati (JGraph e Dom4J), ma nel complesso la modellazione iniziale non ha subito variazioni sostanziali.
L'enorme flessibilità di questo approccio sconta solamente il difetto di richiedere un grosso intervento da parte del progettista. Alcune operazioni, infatti, non possono essere totalmente automatizzate, come per esempio la propagazione delle modifiche negli schemi aumentati delle versioni precedenti. D'altra parte questo tipo di operazioni non è molto frequente, perché coinvolge solamente le modifiche a livello strutturale del data warehouse: sta quindi al progettista capire quando è necessario introdurre una nuova versione ed adattare il sistema alle mutate esigenze. Anche in un ambiente molto dinamico, questo per fortuna non accade quotidianamente, quindi la maggior parte dell'utilizzo del sistema introdotto in questo lavoro di tesi riguarderà l'interrogazione delle diverse versioni.
La gestione delle versioni attraverso gli schemi aumentati e gli schemi comuni rende totalmente trasparente il sistema e le elaborazioni necessarie all'utente finale, e quindi soddisfa pienamente il requisito iniziale della semplicità d'uso per l'analista che utilizza il nostro sistema.
I possibili sviluppi futuri del prototipo progettato ed implementato attraverso questo lavoro di tesi potranno riguardare la gestione delle sessioni ROLAP per l'interrogazione delle sorgenti di dati e la gestione delle operazioni di migrazione dei dati estensionali corrispondenti alle diverse versioni degli schemi. Le operazioni di migrazione, in particolare, non potranno essere totalmente automatizzate, ma si dovrà prevedere un supporto al progettista che permetta di determinare le azioni da effettuare, possibilmente nascondendone i dettagli implementativi ed i controlli sulla consistenza dei risultati.