lundi 15 avril 2013

Ajouter l'effort au type Bogue

A plusieurs reprises, des clients m'ont demandé : comment intégrer le temps estimé, complété et restant sur une anomalie ? Vous pouvez traiter cette question facilement de 2 manières :
  1. ajouter une tache liée sur laquelle vous gérer les temps
  2. modifier le type Bug/Bogue pour y ajouter les champs nécessaires
Pour les modèles de processus Scrum v2.x et CMMI v2.x, je conseille d'utiliser la première (la seconde ne suivant pas la démarche et les principes de ces processus). Pour le modèle Msf Agile v5.x ou 6.x, les 2 approches peuvent être utilisées. La première est triviale à mettre en place. Pour la seconde, vous trouverez ci-dessous les étapes vous permettant d'intégrer la gestion des temps au type Bug/Bogue.
Pour réaliser les opérations, vous devez disposer des autorisations nécessaires le projet d'équipe. Les membres du groupe Project Administrators (ou plus) ont les autorisations nécessaires. Vous devez aussi installer Visual Studio 2012 Team Explorer sur votre machine.
Vous pouvez aussi effectuer les modifications à l'aide du Process Template Editor inclus dans les TFS Power Tools.

Télécharger en local les types Bug et Task

Ouvrez une console de commande en tant qu'administrateur et tapez les commandes suivantes pour télécharger les définitions des types Bug et Task:
cd %programfiles(x86)%\Microsoft Visual Studio 11.0\Common7\IDE
witadmin exportwitd /n:Bug /f:C:\Bug.xml /collection:http://tfsserveur:8080/tfs/DefaultCollection /p:TestProj
witadmin exportwitd /n:Task /f:C:\Task.xml /collection:http://tfsserveur:8080/tfs/DefaultCollection /p:TestProj

Modifier le type Bug/Bogue

D'abord, vous copiez les 3 définitions de champs de référence Microsoft.VSTS.Scheduling.xxx depuis le fichier Task.xml et les collez dans le fichier Bug.xml sous le noeud FIELDS.
<FIELD name="Remaining Work" refname="Microsoft.VSTS.Scheduling.RemainingWork" type="Double" reportable="measure" formula="sum">
        <HELPTEXT>An estimate of the number of units of work remaining to complete this task</HELPTEXT>
      </FIELD>
      <FIELD name="Original Estimate" refname="Microsoft.VSTS.Scheduling.OriginalEstimate" type="Double" reportable="measure" formula="sum">
        <HELPTEXT>Initial value for Remaining Work - set once, when work begins</HELPTEXT>
      </FIELD>
      <FIELD name="Completed Work" refname="Microsoft.VSTS.Scheduling.CompletedWork" type="Double" reportable="measure" formula="sum">
        <HELPTEXT>The number of units of work that have been spent on this task</HELPTEXT>
</FIELD>
Puis, vous copiez aussi la définition de l'interface pour ces 3 champs depuis le fichier Task.xml (cherchez Effort). Vous collez ensuite ces définitions dans le fichier Bug.xml  dans une nouvelle colonne sous le même Group que la colonne Planning. Vous pouvez remaniez l'interface comme vous le souhaitez.
Pour le type Bug de la version Msf Agile v5.x, indiquez 50 pour les attributs percentwidth des 2 colonnes contenant Planning et Effort (Hours).
(Pour le type la version Msf Agile v6.x, indiquez 25 pour les attributs percentwidth des 4 colonnes  du groupe contenant Planning et Effort (Hours) )
        <Group>
          <Column PercentWidth="50">
            <Group Label="Planning">
              <Column PercentWidth="33">
                <Control FieldName="Microsoft.VSTS.Common.StackRank" Type="FieldControl" Label="Stack Ran&amp;k:" LabelPosition="Left" NumberFormat="DecimalNumbers" MaxLength="10" />
              </Column>
              <Column PercentWidth="33">
                <Control FieldName="Microsoft.VSTS.Common.Priority" Type="FieldControl" Label="&amp;Priority:" LabelPosition="Left" />
              </Column>
              <Column PercentWidth="33">
                <Control FieldName="Microsoft.VSTS.Common.Severity" Type="FieldControl" Label="Se&amp;verity:" LabelPosition="Left" />
              </Column>
            </Group>
          </Column>
          <Column PercentWidth="50">
            <Group Label="Effort (Hours)">
              <Column PercentWidth="33">
                <Control FieldName="Microsoft.VSTS.Scheduling.OriginalEstimate" Type="FieldControl" Label="Original &amp;Estimate:" LabelPosition="Left" />
              </Column>
              <Column PercentWidth="33">
                <Control FieldName="Microsoft.VSTS.Scheduling.RemainingWork" Type="FieldControl" Label="Re&amp;maining:" LabelPosition="Left" />
              </Column>
              <Column PercentWidth="33">
                <Control FieldName="Microsoft.VSTS.Scheduling.CompletedWork" Type="FieldControl" Label="Comp&amp;leted:" LabelPosition="Left" />
              </Column>
            </Group>
          </Column>
        </Group>

Mettre à jour le type Bug/Bogue dans TFS 

Ouvrez une console de commande en tant qu'administrateur et tapez les commandes suivantes pour télécharger sur le serveur la nouvelle définition du type Bug/Bogue dans le projet d'équipe :
cd %programfiles(x86)%\Microsoft Visual Studio 11.0\Common7\IDE
witadmin importwitd /f:C:\Bug.xml /collection:http://tfsserveur:8080/tfs/DefaultCollection /p:TestProj

have a nice day.

Aucun commentaire:

Enregistrer un commentaire