Ajouter un type d’élément de travail à un backlog et à un tableau

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Important

Cet article s’applique à la personnalisation du projet pour les modèles de processus XML hébergé et LOCAL. Pour le modèle de processus d’héritage, consultez Personnaliser vos backlogs ou tableaux pour un processus. Pour obtenir une vue d’ensemble des modèles de processus, consultez Personnaliser votre expérience de suivi du travail.

Pour satisfaire les processus métier sélectionnés, votre équipe peut souhaiter suivre des types d’éléments de travail supplémentaires (WIT) en tant que conditions requises ou en tant que tâches. De cette façon, vous pouvez les ajouter et les suivre dans les backlogs de produit et sprint, ou kanban et les tableaux de tâches.

Par exemple, vous pouvez suivre différents types d’exigences en fonction de leur client cible ou de différents types de bogues en fonction de leur source. Ici, l’équipe Fabrikam Fibre a ajouté l’application WIT service pour suivre le travail qui prend en charge son équipe de service clientèle.

Ajoutez un WIT personnalisé, par exemple, Application Service, à la catégorie de conditions requises pour le suivre comme une exigence

Conseil

Si tout ce que vous souhaitez faire est d’ajouter des bogues à vos backlogs et tableaux, consultez Afficher les bogues sur les backlogs et les tableaux pour effectuer la sélection de votre équipe. Si vous souhaitez ajouter un autre backlog WIT et portefeuille, consultez Ajouter un niveau de backlog de portefeuille.

Pour ajouter un WIT pour effectuer le suivi des exigences, des tâches ou des bogues, effectuez les étapes correspondantes :

Remarque

Nous vous recommandons d’ajouter un WIT à une et une seule des catégories suivantes : Catégorie de conditions requises, Catégorie de tâche ou Catégorie de bogue. Le système vous empêche d’ajouter le même WIT à la fois à la catégorie de conditions requises et à la catégorie de tâche. Les WIT que vous ajoutez à la catégorie de bogues suivent le comportement de bogue défini pour l’équipe.

Séquence de personnalisation

Séquence de personnalisation du modèle de processus XML hébergé

Remarque

Utilisez les conseils suivants si vous personnalisez votre processus via l’importation/exportation de fichiers de définition. Sinon, si vous personnalisez votre processus via l’interface utilisateur administrateur, consultez Ajouter ou modifier un type d’élément de travail personnalisé pour un processus.

Vous allez apporter vos modifications à vos fichiers de définition de processus, puis importer ce processus pour mettre à jour des projets existants ou utiliser le processus pour créer un projet.

Séquence de personnalisation du modèle de processus XML local

Vous allez d’abord exporter vos fichiers de définition de suivi du travail, les mettre à jour, puis les importer dans votre projet.

Ajouter un WIT pour le suivre comme une exigence

Les WIT que vous ajoutez à la catégorie de conditions requises s’affichent sur le backlog du produit et le tableau Kanban. Vous devez vous assurer que la définition WIT contient les champs requis pour prendre en charge les outils de planification Agile.

  1. Exportez votre processus (XML hébergé) ou vos fichiers de définition (XML local) comme indiqué dans les premières étapes.

  2. Modifiez la définition WIT pour prendre en charge les outils de planification.

    Personnaliser / Syntaxe pour ajouter ou mettre à jour

    Champ Stack Rank (Agile, CMMI)

    <FIELD name="Stack Rank" refname="Microsoft.VSTS.Common.StackRank" type="Double" reportable="dimension">     
    <HELPTEXT>Work first on items with lower-valued stack rank. Set in triage. 
    </HELPTEXT>      
    </FIELD> 
    

    Champ Priorité du backlog (Scrum)

    <FIELD name="Backlog Priority" refname="Microsoft.VSTS.Common.BacklogPriority" type="Double" reportable="detail" /> 
    

    Champ Zone de valeur

    <FIELD name="Value Area" refname="Microsoft.VSTS.Common.ValueArea" type="String"> 
    <REQUIRED />   
    <ALLOWEDVALUES>    
    <LISTITEM value="Architectural" />   
    <LISTITEM value="Business"/>   
    </ALLOWEDVALUES>   
    <DEFAULT from="value" value="Business" /> 
    <HELPTEXT>Business = delivers value to a user or another system; Architectural = work to support other stories or components  
    </HELPTEXT>   
    </FIELD>
    

    Champ Type d’exigence (CMMI)

    <FIELD name="Requirement Type" refname="Microsoft.VSTS.CMMI.RequirementType" type="String" reportable="dimension">  
    <REQUIRED />  
    <ALLOWEDVALUES>  
    <LISTITEM value="Scenario" />  
    <LISTITEM value="Quality of Service" />  
    <LISTITEM value="Functional" /> 
    <LISTITEM value="Operational" />  
    <LISTITEM value="Interface" />  
    <LISTITEM value="Security" />  
    <LISTITEM value="Safety" />  
    <LISTITEM value="Business Objective" />  
    <LISTITEM value="Feature" />  
    </ALLOWEDVALUES> 
    <DEFAULT from="value" value="Functional" />  
    </FIELD>
    

    WORKFLOW section Mettre à jour ou vérifier la WORKFLOW section comme suit :

    • Agile, User Story : Ajouter des transitions de Active vers Removed et Resolved vers Removed; supprimer des règles qui remplissent Activated By et Activated Date champs quand state=Resolved
    • Élément du backlog de produit Scrum : Ajouter une transition de Committed vers Removed
      Si vous avez personnalisé le WORKFLOW, veillez à définir les mappages d’état à métastate requis dans la section ProcessConfigurationRequirementBacklog.

    FORM section Ajouter ou vérifier que les champs suivants ont été ajoutés à la FORM section :

    • Agile:
    <Control FieldName="Microsoft.VSTS.Scheduling.StoryPoints" Type="FieldControl" Label="Story Points" LabelPosition="Left" />  
    <Control FieldName="Microsoft.VSTS.Common.ValueArea" Type="FieldControl" Label="Value area" LabelPosition="Left" />  
    
    • CMMI:
    <Control Type="FieldControl" FieldName="Microsoft.VSTS.Scheduling.Size" Label="Size" LabelPosition="Left" />
    <Control Type="FieldControl" FieldName="Microsoft.VSTS.CMMI.RequirementType" Label="Type" LabelPosition="Left" /> 
    <Control FieldName="Microsoft.VSTS.Common.ValueArea" Type="FieldControl" Label="Value area" LabelPosition="Left" />  
    
    • Scrum:
    <Control FieldName="Microsoft.VSTS.Scheduling.Effort" Type="FieldControl" Label="Effort" LabelPosition="Left" />  
    <Control FieldName="Microsoft.VSTS.Common.ValueArea" Type="FieldControl" Label="Value area" LabelPosition="Left" />  
    
  3. Modifiez la définition Catégories. Ajoutez le WIT à la catégorie Conditions requises. Ici, nous ajoutons Service App.

    <CATEGORY name="Requirement Category" refname="Microsoft.RequirementCategory">
       <DEFAULTWORKITEMTYPE name="User Story" />
       <WORKITEMTYPE name="Service App" />
    </CATEGORY>
    
  4. Mettez à jour ou vérifiez la définition ProcessConfiguration : RequirementBacklog section pour le WIT que vous ajoutez. Plus précisément, assurez-vous que les conditions suivantes sont remplies :

    • Mapper le début de chaque état de flux de travail à type="Proposed"
    • Mapper chaque état de flux de travail intermédiaire que vous souhaitez afficher sur le tableau Kanban type="InProgress"
    • Mapper la fin de chaque état de flux de travail à type="Complete"
    • Vérifiez que vous n’avez qu’un seul état mappé à type="Complete"
      Par exemple, ajoutez l’état du flux de travail en attente :
    <States>    
         <State value="New" type="Proposed" />  
         <State value="Active" type="InProgress" />  
         <State value="Pending" type="InProgress" />  
         <State value="Resolved" type="InProgress" />  
         <State value="Closed" type="Complete" />  
    </States>   
    
  5. Ajoutez la définition de couleur WIT à la section ProcessConfiguration WorkItemColors . Par exemple :

    <WorkItemColor primary="FF33CC33" secondary="FFD6F5D6" name="Service App" />
    
  6. Mettez à jour votre projet :

Ajouter un WIT pour le suivre comme une tâche

Les wits que vous ajoutez à la catégorie de tâche s’affichent sur les backlogs sprint et les tableaux de tâches. Le WIT que vous ajoutez doit spécifier les champs requis pour prendre en charge les outils de planification Agile.

  1. Exportez votre processus (XML hébergé) ou vos fichiers de définition (XML local) comme indiqué dans les premières étapes.

  2. Modifiez la définition WIT pour prendre en charge les outils de planification.

    Personnaliser / Syntaxe pour ajouter ou mettre à jour

    Champ Stack Rank (Agile, CMMI)

    <FIELD name="Stack Rank" refname="Microsoft.VSTS.Common.StackRank" type="Double" reportable="dimension">  
    <HELPTEXT>Work first on items with lower-valued stack rank. Set in triage.  
    </HELPTEXT>   
    </FIELD> 
    

    ** Priorité du backlog** champ (Scrum)

    <FIELD name="Backlog Priority" refname="Microsoft.VSTS.Common.BacklogPriority" type="Double" reportable="detail" />   
    

    Champ d’activité (Agile, Scrum)

    <FIELD name="Activity" refname="Microsoft.VSTS.Common.Activity" type="String" reportable="dimension"> 
    <HELPTEXT&gt;Type of work involved&lt/HELPTEXT> 
    <SUGGESTEDVALUES&gt;  
    <LISTITEM value="Development" />    
    <LISTITEM value="Testing" />    
    <LISTITEM value="Requirements" />    
    <LISTITEM value="Design" />    
    <LISTITEM value="Deployment" />    
    <LISTITEM value="Documentation" />    
    </SUGGESTEDVALUES>    
    </FIELD>    
    

    Champ discipline (CMMI)

    <FIELD name="Discipline" refname="Microsoft.VSTS.Common.Discipline" type="String" reportable="dimension">  
    <ALLOWEDVALUES&gt;  
    <LISTITEM value="Analysis" />    
    <LISTITEM value="User Experience" />   
    <LISTITEM value="User Education" />    
    <LISTITEM value="Development" />   
    <LISTITEM value="Test" />   
    </ALLOWEDVALUES>    
    </FIELD>    
    

    Champ Travail restant (tous)

    <FIELD name="Remaining Work" refname="Microsoft.VSTS.Scheduling.RemainingWork" type="Double" reportable="measure" formula="sum">    
    <HELPTEXT>    
    An estimate of the work remaining to complete the task (in person hours)  
    </HELPTEXT>
    </FIELD>    
    

    Champs de planification supplémentaires (Agile, CMMI)

    <FIELD name="Original Estimate" refname="Microsoft.VSTS.Scheduling.OriginalEstimate" type="Double" reportable="measure" formula="sum">    
    <HELPTEXT&gt; The original estimate of work required to complete the task (in person hours)</HELPTEXT>   
    </FIELD>    
    <FIELD name="Remaining Work" refname="Microsoft.VSTS.Scheduling.RemainingWork" type="Double" reportable="measure" formula="sum">    
    <HELPTEXT>An estimate of the work remaining to complete the task (in person hours)
    </HELPTEXT>  
    </FIELD>    
    <FIELD name="Completed Work" refname="Microsoft.VSTS.Scheduling.CompletedWork" type="Double" reportable="measure" formula="sum">    
    <HELPTEXT>    
    The work that has been completed for this task (in person hours)  
    <HELPTEXT>    
    </FIELD>    
    <FIELD name="Start Date" refname="Microsoft.VSTS.Scheduling.StartDate" type="DateTime" reportable="dimension" />   
    <FIELD name="Finish Date" refname="Microsoft.VSTS.Scheduling.FinishDate" type="DateTime" reportable="dimension" />   
    

    WORKFLOW section
    Mettez à jour ou vérifiez la WORKFLOW section comme suit :

    • Agile, User Story : Ajouter des transitions de Active vers Removed et Resolved vers Removed; supprimer des règles qui remplissent Activated By et Activated Date champs quand state=Resolved
    • Élément du backlog de produit Scrum : Ajouter une transition de Committed vers Removed
      Si vous avez personnalisé le WORKFLOW, veillez à définir les mappages d’état à métastate requis dans la section ProcessConfigurationTestBacklog.

    FORM section
    Ajoutez ou vérifiez que les champs suivants ont été ajoutés à la FORM section :

    • Agile:
    <Control FieldName="Microsoft.VSTS.Scheduling.StoryPoints" Type="FieldControl" Label="Story Points" LabelPosition="Left" />    
    <Control FieldName="Microsoft.VSTS.Common.ValueArea" Type="FieldControl" Label="Value area" LabelPosition="Left" />    
    
    • CMMI:
    <Control Type="FieldControl" FieldName="Microsoft.VSTS.Scheduling.Size" Label="Size" LabelPosition="Left" /&gt;    
    <Control FieldName="Microsoft.VSTS.Common.ValueArea" Type="FieldControl" Label="Value area" LabelPosition="Left" />    
    
    • Scrum:
    <Control FieldName="Microsoft.VSTS.Scheduling.Effort" Type="FieldControl" Label="Effort" LabelPosition="Left" />   
    <Control FieldName="Microsoft.VSTS.Common.ValueArea" Type="FieldControl" Label="Value area" LabelPosition="Left" />    
    
  3. Modifiez la définition Catégories. Ajoutez le WIT à la catégorie Tâche. Ici, nous ajoutons la tâche de service.

    <CATEGORY name="Task Category" refname="Microsoft.TaskCategory">
       <DEFAULTWORKITEMTYPE name="Task" />
       <WORKITEMTYPE name="Service Task" />
    </CATEGORY>
    
  4. Mettez à jour ou vérifiez la définition ProcessConfiguration : TaskBacklog section pour le WIT que vous ajoutez.
    Plus précisément, assurez-vous que les conditions suivantes sont remplies :

    • Mapper le début de chaque état de flux de travail à type="Proposed"
    • Mapper chaque état de flux de travail intermédiaire que vous souhaitez afficher sur le tableau des tâches type="InProgress"
    • Mapper la fin de chaque état de flux de travail à type="Complete"
    • Vérifiez que vous n’avez qu’un seul état mappé à type="Complete"

    Par exemple, ajoutez l’état du Blocked flux de travail :

    <States>  
       <State value="New" type="Proposed" />  
       <State value="Active" type="InProgress" />  
       <State value="Blocked" type="InProgress" />  
       <State value="Resolved" type="InProgress" />  
       <State value="Closed" type="Complete" />  
    </States>  
    
  5. Ajoutez la définition de couleur WIT à la section ProcessConfiguration WorkItemColors . Par exemple :

    <WorkItemColor primary="FFF2CB1D" secondary="FFF6F5D2" name="Service Task" />
    
  6. Mettez à jour votre projet :

  7. Vérifiez que vous pouvez ajouter le WIT au tableau des tâches. Ouvrez la page du tableau des tâches ou actualisez la page si elle est déjà ouverte.
    Vous devez être en mesure de sélectionner tâche ou tâche de service en tant qu’élément de travail lié à un récit utilisateur.
    Tableau de tâches avec le type d’élément de travail tâche de service ajouté

    Dans le tableau des tâches, faites glisser l’élément de travail pour mettre à jour son état. Vous remarquerez que vous ne pouvez pas faire glisser un élément vers une colonne pour laquelle l’état n’est pas valide. Par exemple, vous ne pouvez pas faire glisser la tâche vers l’état bloqué ou une tâche dans un état résolu. Si vous souhaitez utiliser ces états, ajoutez-les à la définition de flux de travail pour la définition WIT correspondante.

Ajouter un WIT à la catégorie de bogues

Les WIT que vous ajoutez à la catégorie de bogues seront traités en fonction du paramètre d’équipe. Étant donné que ces WIT peuvent être traités comme des exigences ou des tâches, ils doivent répondre aux exigences de l’outil de planification Agile pour les exigences et les tâches.

  1. Exportez votre processus (XML hébergé) ou vos fichiers de définition (XML local) comme indiqué dans les premières étapes.

  2. Modifiez la définition WIT pour prendre en charge les outils de planification en répondant aux conditions répertoriées à l’étape 2 de l’ajout d’un WIT pour suivre les exigences et ajouter un WIT pour effectuer le suivi en tant que tâches.

  3. Modifiez la définition Catégories. Ajoutez le WIT à la catégorie de bogues. Ici, nous ajoutons deux WIT.

    <CATEGORY name="Bug Category" refname="Microsoft.BugCategory">  
       <DEFAULTWORKITEMTYPE name="Bug" />  
       <WORKITEMTYPE name="Service Bug" />  
       <WORKITEMTYPE name="Feedback" />  
    </CATEGORY>
    
  4. Mettez à jour ou vérifiez la définition ProcessConfiguration : BugWorkItems section pour le WIT que vous ajoutez.

    Plus précisément, assurez-vous que les conditions suivantes sont remplies :

    • Mapper le début de chaque état de flux de travail à type="Proposed"
    • Mapper chaque état de flux de travail intermédiaire que vous souhaitez afficher sur le tableau Kanban ou le tableau des tâches type="InProgress"
    • Mapper la fin de chaque état de flux de travail à type="Complete"
    • Vérifiez que vous n’avez qu’un seul état mappé à type="Complete"

    Par exemple, ajoutez l’état du Investigate flux de travail :

    <States>  
     <State value="New" type="Proposed" />  
     <State value="Active" type="InProgress" />  
     <State value="Investigate" type="InProgress" />  
     <State value="Resolved" type="InProgress" />  
     <State value="Closed" type="Complete" />  
    </States>  
    
  5. Ajoutez la définition de couleur WIT à la section ProcessConfiguration WorkItemColors . Par exemple :

    <WorkItemColor primary="FFF2CB1D" secondary="FFF6F5D2" name="Service Bug" />  
    <WorkItemColor primary="FFFF00FF" secondary="FFFFCCFF" name="Feedback" />  
    
  6. Mettez à jour votre projet :

  7. Choisissez le paramètre de votre équipe pour le suivi des bogues.

  8. Vérifiez que le WIT apparaît sur les backlogs et les tableaux comme prévu et que vous pouvez l’ajouter via les backlogs comme prévu.

Importer et exporter des fichiers de définition (XML local)

Utilisez les commandes witadmin pour importer et exporter des fichiers de définition. Pour plus d’informations, consultez wit Administration : Personnaliser et gérer des objets pour le suivi du travail.

Conseil

Avec witadmin, vous pouvez importer et exporter des fichiers de définition. D’autres outils que vous pouvez utiliser incluent l’éditeur de processus (nécessite que vous ayez installé une version de Visual Studio). Installez l’éditeur de modèle de processus à partir de la Place de marché Visual Studio.

  1. Ouvrez une fenêtre d’invite de commandes en fonction des instructions fournies dans witAdmin : Personnaliser et gérer les objets pour le suivi du travail. Par exemple :
  1. Entrez la witadmin commande, en remplaçant vos données par les arguments affichés. Par exemple, pour importer un WIT :

    witadmin importwitd /collection:CollectionURL /p:"ProjectName" /f:"DirectoryPath\WITDefinitionFile.xml"
    

    Pour CollectionURL , spécifiez l’URL d’une collection de projets et, pour ProjectName , spécifiez le nom d’un projet défini dans la collection. Vous devez spécifier l’URL au format suivant : http://ServerName:Port/VirtualDirectoryName/CollectionName.

    Pour DirectoryPath, spécifiez le chemin d’accès au WorkItem Tracking/TypeDefinitions dossier qui contient le modèle de processus que vous avez téléchargé. Le chemin du répertoire doit suivre la structure suivante : Drive:\TemplateFolder\WorkItem Tracking\TypeDefinitions.

    Par exemple, importez le ServiceApp WIT :

    witadmin importwitd /collection:"http://MyServer:8080/tfs/DefaultCollection"/p:MyProject /f:"DirectoryPath/ServiceApp.xml"
    

Utilisez ces commandes pour exporter et importer des WIT, des catégories et une configuration de processus :

witadmin exportwitd /collection:CollectionURL /p:"ProjectName" /n:TypeName /f:"DirectoryPath\WITDefinitionFile.xml"  
witadmin importwitd /collection:CollectionURL /p:"ProjectName" /f:"DirectoryPath\WITDefinitionFile.xml"  
witadmin exportcategories /collection:"CollectionURL" /p:"ProjectName" /f:"DirectoryPath/categories.xml"  
witadmin importcategories /collection:"CollectionURL" /p:"ProjectName" /f:"DirectoryPath/categories.xml"   
witadmin exportprocessconfig /collection:"CollectionURL" /p:"ProjectName" /f:"DirectoryPath/ProcessConfiguration.xml"  
witadmin importprocessconfig /collection:"CollectionURL" /p:"ProjectName" /f:"DirectoryPath/ProcessConfiguration.xml"  

Nous venons de montrer comment ajouter un autre WIT à vos backlogs ou tableaux. Toutefois, si vous souhaitez ajouter un autre WIT pour agir en tant que backlog de portefeuille, consultez Ajouter des backlogs de portefeuille.

Consultez Personnaliser votre expérience de suivi de travail pour obtenir une vue d’ensemble de toutes les options disponibles pour personnaliser les objets de suivi de travail.

Pour savoir comment les éléments hiérarchiques ou imbriqués sont affichés sur un backlog ou un tableau, consultez Comment les backlogs et les tableaux affichent des éléments hiérarchiques (imbriqués).