2012-03-14 4 views
9

C'è un modo nei rapporti di TFS che è possibile ottenere la quantità di tempo impiegata per la transizione di un elemento di lavoro tra stati?Come ottenere il tempo tra due stati degli articoli di lavoro TFS in SSAS (o qualsiasi altro report)?

Guardando i dati nel database Tfs_Warehouse Vedo che c'è una registrazione di ogni revisione di un oggetto di lavoro e, usando TSQL, potrei scrivere una query per ottenere lo ChangedDate di ogni cambiamento di stato e differirli. Purtroppo non so come funziona SSAS e al momento non abbiamo uno specialista di BI.

Questo può essere eseguito in modo che sia possibile generare un rapporto da TFS senza durante la scrittura di query TSQL/API?

Per chiarire mi piacerebbe sapere quanto tempo è necessario per un Bug (o una media per un sottoinsieme di bug) per spostarsi da Active -> Resolved (ad esempio). Abbiamo più stati rispetto al modello Agile di MSF, quindi non posso semplicemente utilizzare i campi Microsoft ActivatedDate/ResolvedDate per questo.

Modifica: Ho aggiunto una taglia per cercare di ottenere una risposta.

+0

Sei ancora interessato a ricevere e rispondere a questo? – Nock

+0

@Nockawa - Sì, per favore, il "management" potrebbe assumere presto uno sviluppatore BI, quindi questo non sarà più una mia responsabilità, ma non conto i miei polli prima che si schiudano :). – DaveShaw

risposta

0

In sostanza ciò che si vuole è recuperare i campi ActivatedDate e ResolvedDate (o altri quelli a base di data) Info per ogni bug quindi calcolare il periodo per ogni elemento di lavoro e fare un po 'per schermo elemento di lavoro o di media. Ho ragione?

Quindi, sono presenti campi nel Cubo OLAP per ActivatedDate e ResolvedDate, il tipo segnalabile è impostato su Dimension, il che significa che non è possibile eseguire ciò che si desidera con questi campi perché non possono essere utilizzati as values in Excel (che è quello che avresti bisogno di fare la matematica). Per rendere la questione più complessa sembra che tu abbia solo la data e non l'ora, il che non sarebbe abbastanza preciso per te.

In breve: SSAS/Olap/SSRS non vi aiuterà in questo caso ...

Beh, SSRS potrebbe aiutare, ma si dovrebbe sviluppare un TFS warehouse adaptor per iniettare i dati desiderati in il magazzino TFS: buona fortuna! (può essere fatto, ma la prima volta sarà doloroso).

Se davvero bisogno di queste informazioni:

è possibile scrivere un piccolo programma che utilizzerà l'API TFS per fare una query elemento di lavoro quindi ottenere il valore dei campi desiderati e sviluppare la logica che si desidera . Può essere un componente aggiuntivo di Excel se vuoi popolare una griglia e generare un grafico da esso.

Se sei interessato a TFS e hai intenzione di continuare a lavorare con esso: vale la pena investire migliaia di volte. Scrivere le app è facile e la cosa buona è che una volta che ne hai fatto uno puoi facilmente modificarlo per nuove esigenze.

+0

Grazie, ma la data risolta e attivata non sarà di aiuto in tutti i casi. Speravo di trovare la differenza di data tra ChangedDate per diverse revisioni dello stesso oggetto di lavoro - solo quando lo stato cambia. Come ho detto alla fine, so come farlo in T-SQL e tramite l'API. Speravo che qualcuno potesse fare solo usando le funzionalità out of the box di TFS.Cheers – DaveShaw

+0

Se vuoi sapere quanto tempo ci vuole per risolvere un bug quei due campi sono quelli che dovresti usare, giusto? ChangedDate viene modificato ogni volta che viene creata una revisione, è possibile ottenere il ChangedDate per tutte le revisioni utilizzando l'API, ma non con SSAS. Tutto sommato, dovrai fare affidamento sull'API per certo ... – Nock

+0

Abbiamo un flusso di lavoro personalizzato e i poteri che vorremmo poter riferire per quanto tempo alcuni elementi di lavoro sono stati spesi in ogni fase, ovvero per quanto tempo in attesa di test, ecc. Se non è possibile con SASS, abbastanza giusto, mi è stato solo chiesto di considerarlo come un lavoro secondario, e nessuno mi ha richiesto un po '. – DaveShaw