Définir les tâches racines à l'aide du ficher de plug-in de modèle de processus
En personnalisant ProcessTemplate.xml, vous pouvez ajouter, supprimer ou modifier l'ordre de traitement des fichiers de plug-ins de modèles de processus. ProcessTemplate.xml est le fichier racine qui définit l'ensemble du modèle de processus et tous les fichiers XML subordonnés. Ce fichier contient tous les groupes de tâches qui doivent s'exécuter pour créer un projet d'équipe. Chaque groupe de tâches référence un fichier XML subordonné (souvent dans un sous-dossier) où les tâches spécifiques sont définies. En général, vous spécifiez un seul groupe de tâches pour chaque plug-in.
Cliquez ici pour plus d'informations sur les modèles de processus TFS par défaut. Cliquez ici pour découvrir des fichiers de plug-in de modèles de processus.
Dans cette rubrique
Structure du fichier ProcessTemplate.xml
Définir les plug-ins et les groupes de tâches
Exemple de fichier de modèle de processus
Structure du fichier ProcessTemplate.xml
Dans chaque fichier ProcessTemplate.xml, vous définissez des métadonnées et des groupes de tâches. Les métadonnées décrivent le modèle et spécifient les plug-ins à traiter, comme le montre l'exemple suivant.
<metadata>
<name>MSF for Agile Software Development 2013</name>
<description>This template is flexible and will work great for most teams using Agile planning methods, including those practicing Scrum.</description>
<plugins>
<plugin name="Microsoft.ProjectCreationWizard.Classification" wizardPage="false" />
<plugin name="Microsoft.ProjectCreationWizard.Reporting" wizardPage="false" />
<plugin name="Microsoft.ProjectCreationWizard.Portal" wizardPage="true" />
. . .
</plugins>
</metadata>
Les groupes de tâches spécifient les dépendances et les tâches à exécuter pour chaque plug-in, comme le montre l'exemple suivant :
<groups>
<group id="Classification" description="Structure definition for the project." completionMessage="Project Structure uploaded.">
<dependencies></dependencies>
<taskList filename="Classification\Classification.xml" />
</group>
<group id="Groups" description="Create groups and assign permissions." completionMessage="Groups created and permissions assigned.">
<dependencies>
<dependency groupId="Classification" />
</dependencies>
<taskList filename="Groups and Permissions\GroupsandPermissions.xml" />
</group>
. . .
</groups>
Retour au début
Définir les plug-ins et les groupes de tâches
Vous personnalisez le fichier ProcessTemplate.xml à l'aide de l'élément ProcessTemplate et de ses éléments enfants. Pour plus d'informations sur la syntaxe de chaque élément, consultez Référence des éléments XML du modèle de processus.
Vous définissez les plug-ins et les tâches racine à traiter en spécifiant les informations suivantes dans l'ordre indiqué :
nom. Vous utilisez cet élément pour assigner une étiquette au modèle de processus. Dans l'Assistant Nouveau projet d'équipe, vous spécifiez le modèle de processus en fonction de son nom, comme le montre l'exemple suivant :
<name>Simplified Process</name>
Cet élément est obligatoire. Le nom s'affiche non seulement dans la liste des modèles de processus de l'Assistant Nouveau projet d'équipe, mais également dans la boîte de dialogue Gestionnaire de modèles de processus. Le nom de chaque modèle de processus doit être unique au sein d'une collection de projets d'équipe, et chaque nom de modèle ne peut pas comporter plus de 254 caractères Unicode. Si vous téléchargez un modèle qui porte le même nom qu'un modèle existant, ce dernier est remplacé.
description. Vous utilisez cet élément pour définir le texte qui décrit le modèle de processus dans l'Assistant Nouveau projet d'équipe, comme le montre l'exemple suivant :
<description>Choose the simple process for projects that require little or no overhead and have very low cost.</description>
Ce texte apparaît sur l'écran Sélectionner un modèle de processus de l'Assistant Nouveau projet d'équipe lorsqu'un coordinateur ou administrateur de projet décide du modèle de processus à utiliser. En général, essayez de décrire les genres de projets pour lesquels le modèle de processus est utile en termes de taille de l'équipe, de longueur, de coût et d'autres facteurs.
Plug-ins. Vous utilisez les éléments plugins et plugin pour définir l'ensemble de plug-ins que le modèle de processus utilise. Vous devez vous assurer que si un fichier XML subordonné fait référence à un plug-in, ce dernier apparaît dans cette liste. Vous devez également spécifier l'attribut wizardPage (une valeur true ou false) pour indiquer si le plug-in requiert une page sur l'Assistant Nouveau projet d'équipe. Vous devez spécifier l'ensemble de plug-ins qui sera traité lorsque vous créez un projet d'équipe et si le plug-in doit avoir une page visible dans l'Assistant Nouveau projet d'équipe.
L'élément XML suivant affiche les valeurs correctes à utiliser pour chacun des neuf plug-ins inclus dans Visual Studio Application Lifecycle Management (ALM).
<plugins> <plugin name="Microsoft.ProjectCreationWizard.Classification" wizardPage="false"/> <plugin name="Microsoft.ProjectCreationWizard.Reporting" wizardPage="false"/> <plugin name="Microsoft.ProjectCreationWizard.Portal" wizardPage="true"/> <plugin name="Microsoft.ProjectCreationWizard.Groups" wizardPage="false"/> <plugin name="Microsoft.ProjectCreationWizard.WorkItemTracking" wizardPage="false"/> <plugin name="Microsoft.ProjectCreationWizard.VersionControl" wizardPage="true"/> <plugin name="Microsoft.ProjectCreationWizard.TestManagement" wizardPage="false" /> <plugin name="Microsoft.ProjectCreationWizard.Build" wizardPage="false" /> <plugin name="Microsoft.ProjectCreationWizard.Lab" wizardPage="false" /></plugins>
Groupes de tâches. Vous utilisez les éléments groups et group pour définir des groupes de tâches. Chaque groupe de tâches définit les informations nécessaires au traitement de chaque plug-in. Chaque groupe de tâches spécifie le fichier qui contient l'ensemble de tâches à traiter et les dépendances facultatives du groupe vis-à-vis d'autres groupes de tâches. La stratégie la plus courante et la plus simple consiste à créer un élément taskList par groupe par plug-in.
L'exemple suivant montre comment un groupe de tâches crée les groupes et les autorisations par défaut. Les tâches spécifiques sont définies dans le fichier référencé (GroupsandPermissions.xml). Ce groupe de tâches comporte la dépendance suivante : les tâches du groupe Classification doivent se terminer avec succès.
<group id="Groups" description="Create groups and assign permissions." completionMessage="Groups created and permissions assigned."> <dependencies> <dependency groupId="Classification" /> </dependencies> <taskList filename="Groups and Permissions\GroupsandPermissions.xml" /></group>
Pour chaque groupe de tâches, vous définissez les informations suivantes :
ID. ID unique assigné au plug-in.
Description. Texte qui décrit les tâches de plug-in dans l'Assistant Nouveau projet d'équipe.
Message d'achèvement. Message à afficher dans l'Assistant Nouveau projet d'équipe lorsque toutes les tâches du plug-in s'achèvent correctement.
(Facultatif) Message d'échec. Message à afficher dans l'Assistant Nouveau projet d'équipe lorsque l'une ou plusieurs des tâches du plug-in échouent.
(Facultatif) Dépendances de plug-in. Vous utilisez les éléments dependencies et dependency pour définir le jeu de dépendances associé au traitement d'un plug-in. Une dépendance correspond à un plug-in qui doit s'achever correctement pour que les tâches de plug-ins actuelles puissent être traitées.
Fichier de tâche. Vous utilisez l'élément tasklist pour spécifier le fichier qui contient l'ensemble de tâches nécessaires au traitement du plug-in.
Retour au début
Exemple de fichier de modèle de processus
La syntaxe suivante illustre le contenu du fichier ProcessTemplate.xml pour Microsoft Visual Studio Scrum.
<?xml version="1.0" encoding="utf-8"?>
<ProcessTemplate>
<metadata>
<name>Microsoft Visual Studio Scrum 2013</name>
<description>This template is for teams who follow the Scrum methodology and use Scrum terminology.</description>
<version type="6B724908-EF14-45CF-84F8-768B5384DA45" major="3" minor="6" />
<plugins>
<plugin name="Microsoft.ProjectCreationWizard.Classification" wizardPage="false" />
<plugin name="Microsoft.ProjectCreationWizard.Reporting" wizardPage="false" />
<plugin name="Microsoft.ProjectCreationWizard.Portal" wizardPage="true" />
<plugin name="Microsoft.ProjectCreationWizard.Groups" wizardPage="false" />
<plugin name="Microsoft.ProjectCreationWizard.WorkItemTracking" wizardPage="false" />
<plugin name="Microsoft.ProjectCreationWizard.VersionControl" wizardPage="true" />
<plugin name="Microsoft.ProjectCreationWizard.TestManagement" wizardPage="false" />
<plugin name="Microsoft.ProjectCreationWizard.Build" wizardPage="false" />
<plugin name="Microsoft.ProjectCreationWizard.Lab" wizardPage="false" />
</plugins>
</metadata>
<groups>
<group id="Classification" description="Structure definition for the project." completionMessage="Project structure uploaded.">
<dependencies>
</dependencies>
<taskList filename="Classification\Classification.xml" />
</group>
<group id="Groups" description="Create groups and assign permissions." completionMessage="Groups created and permissions assigned.">
<dependencies>
<dependency groupId="Classification" />
</dependencies>
<taskList filename="Groups and Permissions\GroupsAndPermissions.xml" />
</group>
<group id="WorkItemTracking" description="Work item definitions uploading." completionMessage="Work item tracking tasks completed.">
<dependencies>
<dependency groupId="Classification" />
<dependency groupId="Groups" />
</dependencies>
<taskList filename="WorkItem Tracking\WorkItems.xml" />
</group>
<group id="VersionControl" description="Creating version control." completionMessage="Version control task completed.">
<dependencies>
<dependency groupId="Classification" />
<dependency groupId="Groups" />
<dependency groupId="WorkItemTracking" />
</dependencies>
<taskList filename="Version Control\VersionControl.xml" />
</group>
<group id="Build" description="Build default processes uploading." completionMessage="Build default processes uploaded.">
<dependencies>
<dependency groupId="VersionControl" />
<dependency groupId="Groups" />
</dependencies>
<taskList filename="Build\Build.xml" />
</group>
<group id="Lab" description="Creating Lab." completionMessage="Lab task completed.">
<dependencies>
<dependency groupId="Classification" />
<dependency groupId="Groups" />
<dependency groupId="WorkItemTracking" />
<dependency groupId="Build" />
</dependencies>
<taskList filename="Lab\Lab.xml" />
</group>
<group id="TestManagement" description="Test Management default configurations uploading." completionMessage="Test Management default configurations uploaded.">
<dependencies>
<dependency groupId="Classification" />
<dependency groupId="Groups" />
<dependency groupId="WorkItemTracking" />
</dependencies>
<taskList filename="Test Management\TestManagement.xml" />
</group>
<group id="Reporting" description="Project reports uploading." completionMessage="Project reporting tasks completed.">
<dependencies>
<dependency groupId="Classification" />
<dependency groupId="WorkItemTracking" />
<dependency groupId="VersionControl" />
</dependencies>
<taskList filename="Reports\ReportsTasks.xml" />
</group>
<group id="Portal" description="Creating project portal site" completionMessage="Project portal tasks completed.">
<dependencies>
<dependency groupId="Classification" />
<dependency groupId="Reporting" />
</dependencies>
<taskList filename="Windows SharePoint Services\WssTasks.xml" />
</group>
</groups>
</ProcessTemplate>
Voir aussi
Concepts
Vue d'ensemble des fichiers de modèle de processus
Personnaliser un modèle de processus