Sto mettendo i miei primi passi nel settore della Business Intelligence e sto cercando dei buoni modi per testare i sistemi di BI. ho intenzione di provare a spiegare in cosa consiste il mio sistema anche le persone che non conoscono i sistemi di BI possono dare un consiglio.
Per quelli di voi che non hanno familiarità con i sistemi di BI, ecco come appare un sistema di BI nello stack MS:
- I dati sono in MS SQL DB, file di testo, file XML, ecc.
- I dati vengono inseriti in un singolo MS SQL DB ( il data warehouse ) utilizzando (an) Sql Server Integration Services (SSIS) pacchi). (ETL, Extract - Transform - Carica)
-
Un "cubo" contenente Le misurazioni, i KPI ecc. Vengono elaborati nel data warehouse, utilizzando Sql Server Analysis Services (SSAS)
-
I report possono essere creati sul cubo utilizzando Excel, servizi di segnalazione, ecc.
Ci sono più cose che puoi / devi testare:
- I dati vengono inseriti correttamente nel data warehouse
- Le misurazioni e i calcoli sono eseguiti correttamente
Penso che sia possibile creare un ambiente di test in .NET usando database vuoti con la stessa struttura dei database di produzione e del data warehouse.
I test potrebbero essere scritti in questo modo:
- Inserisci dati fittizi nei database di produzione di cui sai che dovrebbero produrre determinate misurazioni, valori KPI. Ad esempio: inserire un'auto con un costo di 100 e un profitto 110 venduti nel 2008. un'altra auto con un costo di 100 e un profitto di 120 venduti nel 2009. il margine di profitto nel 2008 dovrebbe essere del 10% e nel 2009 del 20%.
- Esegui i pacchetti SSIS. Ho cercato questo e il suo possibile in. Net
- Esegui i calcoli SSAS. Devo ancora cercare come farlo, ma dovrebbe essere possibile.
- Recupera i dati KPI dal database di Analysis Services e verifica se corrisponde ai risultati previsti.
Alcuni aspetti negativi mi aspetto questo approccio:
- L'impostazione dei database di test, la sicurezza per lo script di test, ... richiederà un po 'di tempo.
- Le modifiche ai database di produzione e al data warehouse dovranno essere copiate nell'ambiente di test.
- La creazione delle istruzioni di inserimento per i dati di test potrebbe essere difficile. Nel mio esempio di auto è semplice, ma per calcoli più complessi questo potrebbe richiedere molto tempo
- Molto probabilmente i test funzionano piuttosto lentamente
- I test sono soggetti a errori, nelle istruzioni INSERT o nella parte in cui si recuperano i dati KPI. Capire cosa è andato storto potrebbe essere difficile.
Riassumendo, scrivere e mantenendo questi test potrebbe essere molto utile.
D'altro canto, avresti un buon approccio basato sui test dove scrivi prima il test, inoltre la logica di business è spiegata e documentata nei test.
Dato che non ho molta esperienza pratica con lo sviluppo della BI non sono sicuro se questa è la strada da percorrere e quali alternative ci sono. Forse qualcuno più esperto potrebbe spiegare in che modo i sistemi di BI vengono solitamente testati e documentati?