Den Projektfortschritt zu Überwachen ist eine der wichtigsten Aufgaben eines Projektmanagers. Die Messung des Projektfortschritts findet dabei auf Basis von eingetragenen Arbeitszeiten für die definierten Aufgaben statt. Im TFS werden Aufgaben in Form von Work Items abgebildet und verwaltet. Doch wie kommen die Daten in die Work Items? Geht man nach der Produktdokumentation, öffnet man die Aufgabe zum Beispiel im Visual Studio und trägt dort die Zeiten ein – das sollte natürlich am besten nach jeder abgeschlossenen Aufgabe passieren. Leider passiert es allzu häufig, dass dies schlichtweg vergessen wird. Kennzahlen und Bericht, wie zum Beispiel der Burn-Down-Report für den Projektfortschritt lassen sich dann nur unvollständig generieren und werden nutzlos. Für Entwicklungsaufgaben gibt es nun Abhilfe…
Eine der Stärken von TFS ist die Verknüpfung von Code mit Aufgaben um eine lückenlose Nachverfolgbarkeit (Traceability) zwischen Code-Änderungen und den Aufgaben und Anforderungen zu ermöglichen. Die Funktion zur Verknüpfung zwischen Code und Arbeitsaufgabe ist beim Team Explorer (Visual Studio) bereits im Standard-Eincheckdialog integriert:
Bild 1: Eintragen eines Kommentares
Bild 2: Verknüpfung mit einem Work Item
Als Entwickler ist die zuvor beschriebene Verknüpfung zwischen Eincheckvorgang und Work Item optional. Dies kann mithilfe einer Checkin-Policy in einen verpflichtenden Schritt umgestellt werden. Als Projektmanager haben Sie damit schon einen Teil ihrer Anforderungen, und zwar die Nachverfolgbarkeit von Code und Aufgaben erfüllt. Ein wichtiger Punkt hat uns als AIT an dieser Stelle aber in der Vergangenheit in eigenen Entwicklungsprojekten gefehlt. Die Problemstellung war, dass die Work Items der Entwickler auch realistische Fortschrittsdaten (geleistete Arbeit, verbleibende Arbeit, aktuelle Schätzung des Gesamtaufwandes) widerspiegeln sollten. Ohne Erweiterungen haben Sie als Projektmanager nur die Möglichkeit ihre Entwickler per Arbeitsanweisung zu bitten, die Felder geleistete Arbeit und verbleibende Arbeit in den Work Items täglich auszufüllen.
Diese Methodik hat in der Praxis aber mehre Probleme:
– der Entwickler hat einen hohen manuellen Aufwand, weil er alle verknüpften Work Items nochmals im Visual Studio öffnen muss,
– der Entwickler vergisst die Erfassung, weil im Projektstress die tägliche Erfassung von geleisteter Arbeit im Projektstress untergeht oder
– der Entwickler ignoriert die Arbeitsanweisung, weil Nebentätigkeiten wie die Erfassung von Arbeitszeiten eine niedrige persönliche Priorität haben.
Wir haben nach einer Lösung gesucht und den CheckinTimeTracker entwickelt. Der CheckinTimeTracker ermöglicht die Erfassung von Arbeitszeiten während des Checkin-Vorganges ohne Störung des Entwickler-Arbeitsprozesses. Im Rahmen des neuen AIT TeamSystemPro Productivity Tools Releases haben wir jetzt den CheckInTracker als Checkin Policy für Sie kostenlos freigeben (Download siehe [1]).
Im Folgenden lernen Sie die notwendigen Schritte zum Einrichten und zur Nutzung der CheckinTracker Policy kennen.
Einrichtung durch den Team Projekt Administrator
1. Hinzufügen der Checkin-Policy über Team Projekt –> Source Control –> Checkin-Policies
2. Öffnen der Konfiguration über Edit (Achtung: Beim Hinzufügen der Policy öffnet sich der Dialog automatisch.)
3. Zuordnen von Work Item Feldern zu den Checkin-Policy Feldern (Completed Work, Remaining Work und Original Estimate).
Hinweis: Die Working Hours haben keine direkte Entsprechung in den Work Items, weil Sie nur die geleistete Arbeit widerspiegeln. Der erfasste Wert wird durch die Checkin-Policy mit den Work Item Feldern verrechnet.
4. Zuordnen von beschreibenden Beschriftungen zu den Checkin-Policy-Feldern (Completed Work, Remaining Work, Original Estimate und Working Hours).
5. Auswählen der zu aktualisierenden Work Item Typen
6. Optional: Auswählen von zusätzlich anzuzeigenden Work Item Felder aus.
Hinweis: Wir unterstützen aktuell nur die Feldtypen String, Integer und Double Work Item.
7. Speichern der Einstellungen durch Drücken von OK.
Nutzung als Entwickler beim Einchecken
1. Öffnen es Eincheckdialoges (Pending Changes )
2. Auswählen von Work Items
3. Erfassen der Arbeitsstunden für alle ausgewählten Arbeitsaufgaben in der Spalte Working Hours.
Hinweis: Nach Eingabe der Working Hours werden die Felder Remaining Work und Completed Work automatisch berechnet. Für die Berechnung verwenden wir folgende Formeln.
Remaining Work = Original Remaining Work – Working Hours
Completed Work = Original Completed Work + Working Hours
4. Optional: Anpassen der verbleibenden Arbeitsbudgets, wenn die Werte aufgrund von veränderten Rahmenbedingungen nicht mehr stimmig sind.
5. Optional: Anpassen der Werte der Zusatzfelder, wenn die Werte aufgrund von veränderten Rahmenbedingungen nicht mehrstimmig sind oder die Aufgabe dies erforderlich macht (z.B. Kollege soll ein Review der Ergebnisse durchführen).
6. Bestätigen der Eingaben mit “OK”
Ergebnis:
Fazit:
Mit dem neuen CheckinTimeTracker aus unseren AIT TeamSystemPro Productivity Tools können Sie als Entwickler ohne Störung Ihres Arbeitsflusses sehr einfach Ihre Arbeitsstunden auf Work Items verbuchen und damit Ihrem Projektmanager das Leben signifikant vereinfachen. Als Projektmanager bekommen Sie nun täglich aktuelle Daten zum Projektfortschritt und können damit proaktiv und erfolgreich ihre Projekte managen.
Links und weiterführende Informationen
[1]: AIT TeamSystemPro Productivity Tools: http://visualstudiogallery.msdn.microsoft.com/d127b275-b7b6-4504-b01e-58b4a010ff53
Hallo,
ich habe das Tool mit VS2013 (Update4) und TFS2013 (Update4) ausprobiert.
Im Dialog werden die Daten richtig verrechnet. Jedoch sehe ich im Workitem keine Änderung (weder die Berechnung in den Felder, noch in der Historie).
Das Mapping habe ich identisch umgesetzt (lt. eurer Abbildung). Mein Processtemplate ist CMMI Process 4.0 (Standard).
Eine weitere überblicksmäßige Beschreibung dieser Toolsammlung wäre auch nicht schlecht. Dazu habe ich im Web (Visualstudio Gallery) nichts finden können. Ich suche noch etwas, um Versionshistorie bei Branch-Merge zu sehen und habe gehofft, dass ich etwas dazu hier finde.
Viele Grüße,
Ronald