분류 플러그 인 정의

Azure DevOps Server 2022 - Azure DevOps Server 2019 | TFS 2018

분류를 통해 관련 제품 기능, 제품 중요 시점 등의 유용한 범주를 기준으로 작업을 쉽게 추적, 그룹화 및 보고할 수 있습니다. 논리적, 물리적 또는 기능적 범주로 작업 항목을 구성하는 영역을 정의합니다. 작업 항목을 중요 시점 또는 시간 주기 범주로 그룹화하는 반복을 정의합니다. 예를 들어 팀에서는 제품 작업을 클라이언트 영역, 서버 영역 및 확장성 영역으로 구성할 수 있습니다. 정의하는 반복에 따라 팀에서 계획, 개발, 테스트 등의 특정 주요 활동 집합을 반복하는 횟수가 결정됩니다.

다음 그림에서 프로젝트 수준 영역 경로 설정 및 프로젝트 수준 반복 경로 설정에 설명된 대로 정의한 분류가 영역반복 페이지에 표시됩니다. 관리 웹 포털에서 이 페이지에 액세스합니다.

참고

웹 포털에서 표시되는 이미지는 이 문서에 표시되는 이미지와 다를 수 있습니다. 이러한 차이는 Azure DevOps Services 또는 온-프레미스 배포에 대한 업데이트로 인해 발생합니다. 그러나 명시적으로 언급하지 않는 한 사용할 수 있는 기본 기능은 동일하게 유지됩니다.

영역, 프로젝트에 대해 정의된 기본값

웹 포털 사용에 대한 개요는 웹 포털 탐색을 참조하세요.

프로젝트를 만든 후 웹 포털 에서 영역반복을 수정합니다 . 프로젝트 영역 또는 반복 액세스를 제어하는 권한을 정의할 수도 있습니다.

영역과 반복 외에 분류 플러그 인 및 프로세스 템플릿 속성 내에서 업로드할 Microsoft Project의 매핑 파일도 지정합니다.

분류 플러그 인 이름 및 위치

파일, 폴더 및 플러그 인의 이름은 다음과 같습니다.

파일 이름: Classification.xml
폴더 이름: 분류
플러그 인 이름: Microsoft.ProjectCreationWizard.Classification

참고

XML 파일과 폴더의 이름은 변경할 수 있지만 플러그 인 이름은 변경할 수 없습니다. TFS에는 클라이언트 쪽 플러그 인, 정책 또는 다른 수정 사항의 배포 메커니즘이 포함되어 있지 않습니다. 이러한 종류의 기능을 배포하려면 고유한 배포 및 설치 프로그램을 사용해야 합니다.

분류 작업 및 종속성

분류 플러그 인 파일은 Css.xsd 파일에 지정된 스키마 정의를 준수해야 하며 자체 파일에 지정되어 있어야 합니다.

XML 파일에서 하나 이상의 작업 및 해당 종속성을 지정합니다. 일반적으로 프로젝트에 필요한 모든 반복 및 노드를 지정하려면 하나의 작업만 필요합니다.

참고

프로세스 템플릿의 영역이나 반복을 수정하는 경우에는 프로세스 템플릿에 정의된 작업 항목 쿼리 또는 작업 항목에 사용되는 할당이 해제되지 않도록 해야 합니다. 예를 들어 Agile 프로세스 템플릿에 대한 Iteration1Backlog.wiq 작업 항목 쿼리는 반복 1을 참조합니다. 자세한 내용은 작업 항목 쿼리 추가를 참조하세요.

초기 영역 경로 지정

다음 구문을 사용하여 영역 루트 노드를 지정합니다.

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

자식 노드를 지정하지 않거나 프로세스에 사용할 영역 수만큼 지정합니다. Node 요소를 사용하여 각 영역을 지정하고 특성을 .로 ProjectModelHierarchy설정합니다StructureType.

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

다음 예에서는 Client 및 Server의 두 영역을 지정하는 방법을 보여 줍니다.

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

초기 반복 경로 지정

다음 구문을 사용하여 반복 루트 노드를 지정합니다.

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

자식 노드를 지정하지 않거나 프로세스에 사용할 반복 수만큼 지정합니다. Node 요소를 사용하여 각 반복을 지정하고 특성을 ProjectLifecycle.로 설정합니다StructureType.

기본 프로세스 템플릿은 영역 노드를 지정하지 않지만 반복 노드(반복 1, 반복 2 및 반복 3)를 지정합니다. 반복 노드는 작업 항목 쿼리 정의에서 참조되며 작업은 WorkItemTracking 및 포털 플러그 인에서 정의됩니다.

다음 예에서는 Milestone 1, Milestone 2, Beta, RTM의 4개 반복을 지정하는 방법을 보여 줍니다.

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

프로세스 템플릿 속성 지정

이 섹션에는 두 가지 속성, 즉 프로젝트-TFS 필드 매핑 파일과 프로세스 템플릿을 지정합니다. 매핑 파일은 TFS의 필드가 Project에 정의된 필드에 매핑되는 방식을 지정합니다. 두 번째 속성은 프로세스 템플릿을 고유한 값에 연결합니다. 다음 예제에서는 이 항목에 대한 구문 구조를 보여 줍니다.

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

FileMapping.xml 파일을 사용자 지정하려면 Microsoft 프로젝트 필드 매핑을 참조하세요.

분류 플러그 인 요소 참조

분류 플러그 인 파일의 taskXml 컨테이너 요소 내에서 다음 요소를 지정합니다. 에 대한 taskXml자세한 내용은 플러그 인을 처리하는 작업 정의를 참조하세요.

중첩된 노드와 자식 노드의 트리 경로를 지정하여 영역과 반복을 정의합니다. 자세한 내용은 영역 및 반복 경로 사용자 지정을 참조하세요.

요소

설명 및 구문

Children

Node의 선택적 자식 요소입니다. 자식 영역 또는 반복의 정의를 포함합니다.

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

Node

노드식의 선택적 자식 요소입니다. 트리 구조를 정의합니다. 반복 및 ProjectModelHierarchy 영역에 사용합니다ProjectLifecycle. 노드 이름은 255자를 초과할 수 없습니다.

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

노드

분류 플러그 인에 taskXml 의 필수 자식 요소입니다. 영역 및 반복 정의를 포함합니다.

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

properties

분류 플러그 인에 대한 taskXml 의 선택적 자식 요소입니다.

<properties>
<property />
</properties> 

property

속성의 필수 자식 요소입니다. Microsoft Project의 XML 매핑 데이터와 같은 프로젝트 관련 데이터를 정의합니다.

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

여기서 각 특성에는 다음 정의가 적용됩니다.

  • name: 필수 사항입니다. 속성의 이름을 정의합니다. 유효한 이름은 다음과 Process Template같습니다MSPROJ.
  • value: 필수 사항입니다. 의 경우 MSPROJ필드 매핑 파일에 대한 상대 경로를 정의합니다. 의 경우 Process Template프로세스 템플릿과 연결된 프로세스의 이름을 포함합니다. 이 속성은 호스트된 XML에 대한 프로세스를 가져올 때 분류 파일에 추가됩니다.
  • isFile: 선택 사항입니다. 파일에 속성이 정의되어 있는지 여부를 지정합니다. 값이 true이면 파일이 있어야 합니다. 파일이 없으면 프로세스 템플릿 유효성 검사가 실패합니다.