Definir las tareas raíz mediante el archivo de complemento de plantilla de proceso

Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 - TFS 2013

Importante

Este artículo se aplica a la personalización de proyectos para los modelos de proceso XML locales. Para obtener información general sobre los modelos de proceso, consulte Personalización de la experiencia de seguimiento de trabajo.

Al personalizar ProcessTemplate.xml, puede agregar, quitar o cambiar la secuencia en la que se procesan los archivos de complemento de plantilla de proceso. ProcessTemplate.xml es el archivo raíz que define la plantilla de proceso completa y todos los archivos XML subordinados. Este archivo contiene todos los grupos de tareas que deben ejecutarse para crear correctamente un proyecto. Cada grupo de tareas hace referencia a un archivo XML subordinado (a menudo, en una subcarpeta) donde se definen las tareas concretas. En general, se especifica un grupo de tareas para cada complemento.

Para obtener más información sobre las plantillas de proceso predeterminadas, vea Elegir un proceso. Para obtener información sobre los archivos de complemento de plantilla de proceso, consulte Introducción a los archivos de plantilla de proceso.

Estructura del archivo ProcessTemplate.xml

En cada archivo ProcessTemplate.xml, se definen los metadatos y los grupos de tareas. Los metadatos describen la plantilla y especifican los complementos que se procesarán, como se muestra en el ejemplo siguiente

<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>  

Los grupos de tareas especifican las dependencias y las tareas que se van a realizar para cada complemento, como se muestra en el ejemplo siguiente:

<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>  

Definir complementos y grupos de tareas

Puede personalizar el ProcessTemplate.xml mediante el elemento ProcessTemplate y sus elementos secundarios. Para obtener más información sobre la sintaxis de cada elemento, vea Referencia de elementos XML de plantilla de proceso.

Defina las tareas de complementos y de raíz que se procesarán especificando la siguiente información en la secuencia indicada:

  1. name. Utilice este elemento para asignar una etiqueta a la plantilla de proceso. En el Asistente para nuevo proyecto de equipo, especifique la plantilla de proceso por su nombre, como se muestra en el ejemplo siguiente:

    <name>Simplified Process</name>  
    

    Este elemento es obligatorio. El nombre aparece no solo en la plantilla de proceso mostrada en el Asistente para nuevo proyecto de equipo sino también en el cuadro de diálogo Administrador de plantillas de proceso. El nombre de cada plantilla de proceso debe ser único dentro de una colección de proyectos y cada nombre de plantilla no debe contener más de 254 caracteres Unicode. Si descarga una plantilla con el mismo nombre que una plantilla existente, se sobrescribirá esta última.

  2. description. Utilice este elemento para definir el texto que describe la plantilla de proceso en el Asistente para nuevo proyecto de equipo, como se muestra en el ejemplo siguiente:

    <description>Choose the simple process for projects that require little or no overhead and have very low cost.</description>  
    

    Este texto aparece en la pantalla Seleccionar una plantilla de proceso en el Asistente para nuevo equipo Project cuando un administrador o responsable de proyecto decide qué plantilla de proceso usar. En general, intente describir para qué tipos de proyectos es útil la plantilla de proceso en cuanto a tamaño del equipo, duración, costo y otros factores.

  3. Complementos. Los complementos y los elementos del complemento se usan para definir el conjunto de complementos que usa la plantilla de proceso. Si un archivo XML subordinado hace referencia a un complemento, asegúrese de que ese complemento aparece en esta lista. También debe especificar el atributo wizardPage (un valor verdadero o falso) para indicar si el complemento requiere una página en el Asistente para nuevo proyecto de equipo. Debe especificar el conjunto de complementos que se procesarán al crear un proyecto y si el complemento debe tener una página visible en el Asistente para nuevo equipo de Project.

    Importante

    Al crear un proyecto desde el portal web, se omiten varios archivos de plantilla de proceso. En concreto, no se admiten los archivos que crearían Administrador de informes sitio web y SharePoint portal de proyectos.

    Si desea que estas características estén disponibles en su TFS local, cree el proyecto desde Visual Studio o Team Explorer. Para obtener más información, consulte Plantilla de proceso y archivos de complemento, Compatibilidad con el cliente para la creación de proyectos.

    En el siguiente XML se muestran los valores correctos que se deben usar para cada uno de los nueve complementos que Visual Studio Application Lifecycle Management (ALM) incluye.

    <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>  
    
  4. Grupos de tareas. Los grupos y los elementos de grupo se usan para definir grupos de tareas. Cada grupo de tareas define la información necesaria para procesar cada complemento. Cada grupo de tareas especifica el archivo que contiene el conjunto de tareas de procesamiento y las dependencias opcionales del grupo con otros grupos de tareas. La estrategia más común y más sencilla es crear un elemento taskList por grupo por complemento.

    En el ejemplo siguiente se muestra cómo un grupo de tareas crea los grupos y los permisos predeterminados. Las tareas concretas se definen en el archivo de referencia (GroupsandPermissions.xml). Este grupo de tareas tiene una dependencia que las tareas del grupo Classification completan correctamente.

    <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>  
    

    Para cada grupo de tareas, defina la siguiente información:

    1. Id.. Identificador único asignado al complemento.

    2. Descripción. Texto que describe las tareas del complemento en el Asistente para nuevo proyecto de equipo.

    3. Mensaje de finalización. Mensaje mostrado en el Asistente para nuevo proyecto de equipo cuando todas las tareas del complemento se completan correctamente.

    4. (Opcional) Mensaje de error. Mensaje mostrado en el Asistente para nuevo proyecto de equipo cuando una o más tareas del complemento da error.

    5. (Opcional) Dependencias del complemento. Use las dependencias y los elementos de dependencia para definir el conjunto de dependencias de un complemento que se va a procesar. Una dependencia corresponde a un complemento que se debe completar correctamente para que se puedan procesar las tareas del complemento.

    6. Archivo de tarea. Use el elemento tasklist para especificar el archivo que contiene el conjunto de tareas para procesar el complemento.

Archivo de plantilla de proceso de ejemplo

En la sintaxis siguiente se muestra el contenido del archivo ProcessTemplate.xml 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>    

Referencia de elementos XML de plantilla de proceso
Introducción a los archivos de plantilla de proceso
Personalizar un proceso