다음을 통해 공유


프로세스 템플릿 플러그 인 파일을 사용하여 루트 작업 정의

업데이트: 2011년 4월

ProcessTemplate.xml을 사용자 지정하여 프로세스 템플릿 플러그 인이 처리되는 순서를 추가, 제거 또는 변경할 수 있습니다. ProcessTemplate.xml은 전체 프로세스 템플릿과 모든 하위 XML 파일을 정의하는 루트 파일입니다. 이 파일에는 팀 프로젝트를 성공적으로 만들기 위해 실행해야 하는 모든 작업 그룹이 포함됩니다. 각 작업 그룹은 특정 작업이 정의되어 있는 하위 XML 파일을 참조합니다. 이 XML 파일은 대개 하위 폴더에 있습니다. 일반적으로 각 플러그 인에 작업 그룹을 하나씩 지정합니다.

항목 내용

  • ProcessTemplate.xml 파일의 구조

  • 플러그 인 및 작업 그룹 정의

  • 프로세스 템플릿 파일 예

프로세스 템플릿의 콘텐츠에 대한 개요는 프로세스 템플릿 파일 작업을 참조하십시오.

ProcessTemplate.xml 파일의 구조

각 ProcessTemplate.xml 파일에서 메타데이터와 작업 그룹을 정의합니다. 메타데이터는 다음 예제와 같이 템플릿을 설명하고 처리할 플러그 인을 지정합니다.

<metadata>
    <name>MSF for Agile Software Development v5.0</name>
    <description>You can use this template to organize and track the progress and health of a small-to-medium sized agile project.</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>

작업 그룹은 다음 예제와 같이 각 플러그 인에 대해 수행할 작업과 종속성을 지정합니다.

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

맨 위로 이동

플러그 인 및 작업 그룹 정의

ProcessTemplate 요소 및 해당 자식 요소를 사용하여 ProcessTemplate.xml 파일을 사용자 지정합니다. 각 요소의 구문에 대한 자세한 내용은 ProcessTemplate XML 요소 참조를 참조하십시오.

다음 정보를 표시된 순서대로 지정하여 처리할 루트 작업과 플러그 인을 정의합니다.

  1. name. 이 요소를 사용하여 프로세스 템플릿에 레이블을 할당합니다. 새 팀 프로젝트 마법사에서 다음 예제와 같이 이름을 기준으로 프로세스 템플릿을 지정합니다.

    <name>Simplified Process</name>
    

    필수적 요소로, 이 이름은 새 팀 프로젝트 마법사의 프로세스 템플릿 목록뿐 아니라 프로세스 템플릿 관리자 대화 상자에도 표시됩니다. 각 프로세스 템플릿의 이름은 팀 프로젝트 컬렉션 내에서 고유해야 하며 각 템플릿 이름이 254자를 넘지 않는 유니코드 문자여야 합니다. 기존 템플릿과 이름이 같은 템플릿을 업로드할 경우 기존 템플릿을 덮어씁니다.

  2. description. 이 요소를 사용하여 다음 예제와 같이 새 팀 프로젝트 마법사에서 프로세스 템플릿을 설명하는 텍스트를 정의합니다.

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

    이 텍스트는 프로젝트 책임자 또는 관리자가 사용할 프로세스 템플릿을 결정할 때 새 팀 프로젝트 마법사의 프로세스 템플릿 선택 화면에 표시됩니다. 일반적으로 팀의 규모, 기한, 비용 및 기타 요인의 관점에서 프로세스 템플릿이 어떠한 종류의 프로젝트에 유용한지를 설명합니다.

  3. 플러그 인. pluginsplugin 요소를 사용하여 프로세스 템플릿에서 사용되는 플러그 인 집합을 정의합니다. 하위 XML 파일에서 플러그 인을 참조하는 경우에는 해당 플러그 인이 이 목록에 표시되는지 확인해야 합니다. 또한 wizardPage 특성 값을 true 또는 false로 지정하여 플러그 인에 새 팀 프로젝트 마법사의 페이지가 필요한지 여부도 나타내야 합니다. 팀 프로젝트를 만들 때 처리할 플러그 인 집합과 새 팀 프로젝트 마법사에 플러그 인 관련 페이지를 표시할지 여부를 지정해야 합니다.

    다음 XML에서는 Visual Studio ALM(Application Lifecycle Management)에 포함된 9가지 플러그 인에 각각 사용할 올바른 값을 보여 줍니다.

    <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. 작업 그룹. groupsgroup 요소를 사용하여 작업 그룹을 정의합니다. 각 작업 그룹은 각 플러그 인을 처리하는 데 필요한 정보를 정의합니다. 각 작업 그룹은 처리할 작업 집합이 들어 있는 파일 및 다른 작업 그룹에 대한 그룹의 선택적 종속성을 지정합니다. 가장 일반적이고 쉬운 전략은 플러그 인 및 그룹당 taskList 요소를 한 개 만드는 것입니다.

    다음 예제에서는 기본 그룹 및 권한을 만드는 방법을 보여 줍니다. 특정 작업은 참조된 파일(GroupsandPermissions.xml)에서 정의됩니다. 이 작업 그룹에는 분류 그룹의 작업이 완료되어야 하는 종속성이 있습니다.

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

    각 작업 그룹에 대해 다음 정보를 정의합니다.

    1. ID. 플러그 인에 할당되는 고유 ID입니다.

    2. 설명. 새 팀 프로젝트 마법사의 플러그 인 작업을 설명하는 텍스트입니다.

    3. 완료 메시지. 플러그 인의 모든 작업이 완료된 경우 새 팀 프로젝트 마법사에 표시할 메시지입니다.

    4. (옵션) 오류 메시지. 플러그 인의 작업을 하나 이상 완료하지 못한 경우 새 팀 프로젝트 마법사에 표시할 메시지입니다.

    5. (옵션) 플러그 인 종속성. dependenciesdependency 요소를 사용하여 처리할 플러그 인의 종속성 집합을 정의합니다. 종속성은 현재 플러그 인 작업을 처리하기 전에 완료되어야 하는 플러그 인에 해당합니다.

    6. 작업 파일. tasklist 요소를 사용하여 플러그 인을 처리할 작업 집합이 들어 있는 파일을 지정합니다.

맨 위로 이동

프로세스 템플릿 파일 예

다음 구문은 Visual Studio Scrum 1.0에 대한 ProcessTemplate.xml 파일의 내용을 표시합니다. Microsoft 웹 사이트의 Microsoft Visual Studio Scrum 1.0 페이지에서 이 템플릿에 액세스할 수 있습니다.

<?xml version="1.0" encoding="utf-8"?>
<ProcessTemplate>
  <metadata>
    <name>Microsoft Visual Studio Scrum 1.0</name>
    <description>By using this template, you can organize and track the progress and health of a small-to-medium sized Scrum project.</description>
    <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>

맨 위로 이동

참고 항목

개념

프로세스 템플릿 파일 작업

기타 리소스

ProcessTemplate XML 요소 참조

프로세스 템플릿 사용자 지정

변경 기록

날짜

변경 내용

이유

2011년 4월

루트 구문을 정의하는 순서와 ProcessTemplate 구문 구조의 예제를 제공하기 위해 수정되었습니다.

향상된 기능 관련 정보