Tabelle dei fatti
Aggiornamento: novembre 2007
Ogni data warehouse include una o più tabelle dei fatti. Centrale in uno schema a "stella" o "fiocco di neve", una tabella dei fatti acquisisce i dati che misurano le operazioni del team. Le tabelle dei fatti sono costituite in genere da numerose righe, in particolare quando contengono uno o più anni di cronologia per un grande progetto Team.
Una caratteristica chiave di queste tabelle consiste nel fatto che contengono dati numerici (fatti) che possono essere riepilogati per offrire informazioni relative alla cronologia dell'operazione dell'organizzazione. Ogni tabella dei fatti include inoltre un indice multipart che contiene, come chiavi esterne, le chiavi primarie delle tabelle delle dimensioni correlate e gli attributi dei record dei fatti. Le tabelle dei fatti non devono contenere informazioni descrittive o dati diversi dai campi di misura numerici e dai campi di indice che correlano i fatti alle voci corrispondenti nelle tabelle delle dimensioni.
Tabelle dei fatti nel cubo dei dati
La tabella riportata di seguito illustra le tabelle dei fatti contenute nel database relazionale di Team System.
Tabella |
Descrizione |
---|---|
Insieme di modifiche generazione |
Contiene una riga per ogni insieme di modifiche incluso in questa generazione, ma non in una generazione precedente dello stesso tipo. In questo modo, è possibile correlare le informazioni sulla generazione alle archiviazioni nonché agli elementi di lavoro associati a queste ultime. |
Build Coverage |
Contiene una riga per ogni codice di orario corrispondente alla raccolta della metrica per una generazione. |
Dettagli generazione |
Contiene una riga per ogni esecuzione di generazione. |
Genera progetto |
Contiene una riga per ogni generazione di progetto all'interno di una generazione. |
Varianza del codice |
Contiene una nuova riga per ogni revisione di qualsiasi file. |
Elemento di lavoro corrente |
Contiene una riga per ogni elemento di lavoro attualmente nel sistema. |
Contatore test di carico |
Informazioni riepilogative per ogni valore di contatore delle prestazioni letto per ciascun test di carico eseguito. Contiene ID contatore, valore e computer da cui proviene. |
Dettagli test di carico |
Contiene una riga per ogni esecuzione di test di carico. |
Test di carico Riepilogo pagine |
Contiene una riga per ogni URL visitato durante ogni test di carico. Riepiloga informazioni per ogni pagina di livello superiore, ma non include informazioni dettagliate per le richieste dipendenti, ad esempio le immagini. |
Riepilogo test di carico |
Contiene una riga per ogni test eseguito come parte di un test di carico. Contiene il numero di esecuzioni del test, il numero di tentativi non riusciti, la durata media di un'esecuzione e così via. |
Transazione test di carico |
Contiene la durata media per ogni transazione. Se ad esempio gli unit test vengono eseguiti sotto carico, i timer nei test sono riportati qui come media di ogni transazione. |
Esecuzione code coverage |
Contiene una riga per ogni esecuzione di test che raccoglie metrica di code coverage. |
Risultati test |
Contiene una riga per ogni esecuzione di ogni test. Contiene il risultato del test, l'ora di inizio e di fine e i metadati relativi al test (categoria, nodi CSS e così via). |
Insieme di modifiche elemento di lavoro |
Contiene una riga per ogni relazione tra una revisione di elemento di lavoro e un insieme di modifiche. |
Cronologia elementi di lavoro |
File con versione di elementi di lavoro che utilizzano conteggio transizioni e conteggio record per aggregare informazioni in un determinato punto nel tempo. |
In tutte le tabelle dei fatti vengono visualizzati cinque campi:
ID
ID gestione logica
LastUpdatedTime
LastUpdatedBy
TrackingId
È inoltre presente un insieme di chiavi esterne collegate alle tabelle delle dimensioni.
Registrazione della cronologia nella tabella dei fatti
Elementi di lavoro e risultati di test implicano fatti che si modificano nel tempo. È utile aggregare informazioni relative a questi elementi e visualizzare la tendenza dei totali nel tempo o gli elementi in un determinato punto nel tempo. Il data warehouse di Team System acquisisce ogni revisione di un elemento di lavoro o ogni esecuzione di un test in modo da consentire ai calcoli nel cubo OLAP di aggregare informazioni in un qualsiasi momento. La tabella riportata di seguito descrive le due colonne integer nel database relazionale che registra le modifiche.
Colonna |
Descrizione |
---|---|
Conteggio record |
Ogni volta che si apporta una modifica a un record, ad esempio quando la priorità di un errore viene modificata, vengono scritti due record nel database. Il primo, denominato record di compensazione, imposta la colonna Conteggio record su -1, annullando o compensando gli eventi precedenti nel tempo. Il secondo record registra i nuovi valori associati al fatto e imposta il conteggio record su 1. Nel cubo l'aggregazione di tutti i record tra due punti nel tempo dà come risultato l'annullamento di ogni record, tranne l'ultimo record in quel determinato punto nel tempo. Conteggio record costituisce la base per la visualizzazione dei totali parziali di un giorno. |
Conteggio modifiche stato |
Poiché le modifiche dello stato sono un aspetto importante da segnalare, ogni volta che lo stato di un elemento di lavoro o il risultato di un test viene modificato, un flag speciale, denominato "Conteggio modifiche stato" viene impostato su true. Conteggio modifiche stato costituisce la base per la visualizzazione dell'attività di un giorno. |