Definir el complemento de clasificación

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.

Las clasificaciones facilitan el seguimiento, la agrupación y los informes en el trabajo basado en categorías útiles, como las características de producto relacionadas y los hitos de proyecto. Debe definir áreas en las que organizar los elementos de trabajo en categorías lógicas, físicas o funcionales. Debe definir iteraciones para agrupar elementos de trabajo en hitos o categorías de ciclo de tiempo. Por ejemplo, un equipo puede organizar el trabajo de un producto en un área de cliente, un área de servidor y un área de extensibilidad. Las iteraciones definidas determinan la cantidad de veces que un equipo repetirá un conjunto determinado de actividades importantes, como las de planeación, desarrollo y prueba.

Las clasificaciones que defina aparecen en las páginas Áreas e Iteraciones, como se muestra en la ilustración siguiente y se describe en Establecer rutas de acceso de área de nivel de proyecto y Establecer rutas de iteración de nivel de proyecto. Se accede a esta página desde el portal web de administración.

Nota

Las imágenes que se ven en el portal web pueden diferir de las imágenes que se ven en este artículo. Estas diferencias son el resultado de las actualizaciones realizadas Azure DevOps Services o la implementación local. Sin embargo, la funcionalidad básica disponible sigue siendo la misma a menos que se menciona explícitamente.

Áreas, valores predeterminados definidos para el proyecto

Para obtener información general sobre el uso del portal web, consulte Navegación por el portal web.

Una vez creado un proyecto, se modifican las áreas y las iteraciones desde el portal web. Además, puede definir permisos para controlar el acceso a un área de proyecto o iteración.

Además de las áreas y las iteraciones, debe especificar el archivo de asignación de Microsoft Project para subirlo en el complemento Clasificación y en la propiedad de la plantilla de proceso.

Nombre y ubicación del complemento Clasificación

El nombre del archivo, la carpeta y el complemento son:

Nombre de archivo:Classification.xml
Nombre de carpeta:Clasificación
Nombre del complemento:Microsoft.ProjectCreationWizard.Classification

Nota

Puede cambiar los nombres del archivo XML y de la carpeta pero no el del complemento. TFS no incluye ningún mecanismo para la implementación de complementos de cliente, directivas u otras modificaciones. Si desea implementar este tipo de funcionalidad, debe utilizar su propio programa de instalación y distribución.

Tareas y dependencias de Clasificación

El archivo del complemento Clasificación debe adherirse a su definición de esquemas, tal como se especifica en el archivo Css.xsd. El complemento debe especificarse en su propio archivo.

En el archivo XML, especifique una o más tareas y sus dependencias. En general, solo necesita una tarea para especificar todas las iteraciones y nodos que requiere un proyecto.

Nota

Si modifica las áreas o las iteraciones de una plantilla de proceso, asegúrese de no romper ninguna asignación usada para las consultas de elemento de trabajo o los elementos de trabajo definidos en la plantilla de proceso. Por ejemplo, la consulta del elemento de trabajo Iteration1Backlog.wiq correspondiente a la plantilla de proceso de Agile hace referencia a la iteración 1. Para obtener más información, vea Agregar consultas de elementos de trabajo.

Especificar las rutas de acceso de área iniciales

Especifique el nodo raíz de las áreas utilizando la siguiente sintaxis:

<Node StructureType="ProjectModelHierarchy" Name="Area" xmlns="">  

Especifique cero o más nodos secundarios para tantas áreas como desee para su proceso. Use el Node elemento para especificar cada área y establezca el atributo en StructureTypeProjectModelHierarchy .

<Node StructureType="ProjectModelHierarchy" Name="NodeName" xmlns=""></Node>  

El siguiente ejemplo muestra cómo especificar dos áreas, Cliente y servidor:

<?xml version="1.0" encoding="utf-8" ?>  
<tasks>  
   <task  
      id="UploadStructure"  
      name="Creating project structure"  
      plugin="Microsoft.ProjectCreationWizard.Classification"  
      completionMessage="Portfolio project structure created.">  
      <taskXml>  
         <Nodes>  
            <Node StructureType="ProjectModelHierarchy" Name="Teams" xmlns="">  
               <Children>  
                  <Node StructureType="ProjectModelHierarchy" Name="Client"></Node>  
                  <Node StructureType="ProjectModelHierarchy" Name="Server"></Node>  
               </Children>  
            </Node>  
         </Nodes>  
      </taskXml>  
   </task>  
</tasks>  

Especificar las rutas de iteración iniciales

Especifique el nodo raíz de las iteraciones utilizando la siguiente sintaxis:

<Node StructureType="ProjectLifecycle" Name="NodeName" xmlns="">  

Especifique cero o más nodos secundarios para tantas iteraciones como desee para su proceso. Use el elemento Node para especificar cada iteración y establezca el atributo en ProjectLifecycle .

Las plantillas de proceso predeterminadas no especifican ningún nodo de área, pero sí los nodos de iteración, que se denominan Iteración 1, Iteración 2 e Iteración 3. Se hace referencia a los nodos de iteración en la definición de consultas de los elementos de trabajo, mientras que las tareas se definen en los complementos WorkItemTracking y Portal.

En el ejemplo siguiente se muestra cómo especificar cuatro iteraciones: Milestone 1, Milestone 2, Beta y RTM.

<?xml version="1.0" encoding="utf-8" ?>  
<tasks>  
   <task  
      id="UploadStructure"  
      name="Creating project structure"  
      plugin="Microsoft.ProjectCreationWizard.Classification"  
      completionMessage="Project structure created.">  
      <taskXml>  
         <Nodes>  
            <Node StructureType="ProjectLifecycle" Name="Iteration" xmlns="">  
               <Children>  
                  <Node StructureType="ProjectLifecycle" Name="Sprint 1"></Node>  
                  <Node StructureType="ProjectLifecycle" Name="Sprint 2"></Node>  
                  <Node StructureType="ProjectLifecycle" Name="Sprint 3"></Node>  
                  <Node StructureType="ProjectLifecycle" Name="Sprint 4"></Node>  
               </Children>  
            </Node>  
         </Nodes>  
      </taskXml>  
   </task>  
</tasks>  

Especificar propiedades de la plantilla de proceso

En esta sección se especifican dos propiedades: el archivo de asignación de campos de Project a TFS y la plantilla de proceso. El archivo de asignación especifica cómo se asignan los campos de TFS a los campos definidos en Project. La segunda propiedad asocia la plantilla de proceso a un valor único. En el ejemplo siguiente se muestra la estructura de la sintaxis de esta entrada:

<properties>  
   <property name="MSPROJ"   
             value="Classification\FileMapping.xml"   
             isFile="true" />  
   <property name="Process Template" value="Agile"/>  
</properties>  

Para personalizar el archivo FileMapping.xml, consulte Asignación de Microsoft Project campos.

Referencia del elemento del complemento Clasificación

Especifique los siguientes elementos dentro de un taskXml elemento contenedor en el archivo de complemento Clasificación. , vea Define the tasks to process a plug-in (Definir las tareas para procesar un complemento) para obtener información sobre .

Defina áreas e iteraciones especificando una ruta de árbol de nodos anidados y nodos secundarios. Para más información, consulte Personalización de las rutas de acceso de área e iteración.

Element

Descripción y sintaxis

Children

Elemento secundario opcional de Node. Contiene las definiciones de las áreas o iteraciones secundarias.

<Children />
<Node> . . . </Node>
</Children>

Node

Elemento secundario opcional de Nodes y Children. Define la estructura del árbol. Se ProjectLifecycle usa para iteraciones y ProjectModelHierarchy para áreas. Los nombres de nodo no deben superar los 255 caracteres.

<Node StructureType="ProjectLifecycle | ProjectModelHierarchy" Name="NodeName">
<Node> . . . </Node>
<Children> . . . </Children>
</Node>

Nodos

Elemento secundario obligatorio de taskXml para el complemento Classification. Contiene las definiciones de área y de iteración.

<Nodes>
<Node> . . . </Node>
</Nodes>

properties

Elemento secundario opcional de taskXml para el complemento Classification.

<properties>
<property />
</properties> 

property

Elemento secundario requerido de las propiedades. Define datos relacionados con el proyecto, como los datos de asignación XML para Microsoft Project.

<property name="property name" value="Classification | FileName" isFile="true | false" />

Donde las siguientes definiciones se aplican para cada atributo:

  • name: Necesario. Define el nombre de la propiedad. Los únicos nombres válidos son MSPROJ y Process Template .
  • value: Necesario. Para MSPROJ , define la ruta de acceso relativa al archivo de asignación de campos. Para Process Template , contiene el nombre del proceso asociado a la plantilla de proceso. Esta propiedad se agrega al archivo de clasificación al importar un proceso para XML hospedado.
  • isFile: Opcional. Especifica si la propiedad se define en un archivo. Si el valor es true, debe existir el archivo. De lo contrario, fallará la validación de la plantilla de proceso.