作業項目の種類の追加または変更

Azure DevOps Server 2022 - Azure DevOps Server 2019

プロジェクトには、アジャイル、Basic、スクラム、CMMI など、プロジェクトの作成に使用されるプロセスに基づいて、多数の作業項目の種類が含まれています。 作業項目の種類は、さまざまな種類の作業を追跡するために使用する オブジェクトです

Note

Azure DevOps Services または継承されたプロセス モデルを使用するプロジェクト コレクションについては、「作業項目の種類の追加と管理」を参照してください

既存の作業項目の種類を変更したり、チームの追跡要件またはワークフロー プロセスに基づいてカスタム作業項目の種類を追加したりできます。 作業項目の種類を変更する最も一般的な理由は、フィールドまたはフィールド ルールのセットの追加または変更、ワークフローの変更、作業項目フォームのカスタマイズです。

ユーザー設定フィールドを追加する場合、または既存のフィールドのフィールド ルールまたは属性を変更する場合は、「フィールドの追加または変更」を参照してください

ほとんどの作業項目の種類のカスタマイズは作業項目の種類の XML 定義に対して行われますが、他のカスタマイズはプロセス構成定義または witadmin コマンド ライン ツールを使用して行われます。

Note

Azure DevOps Services または継承されたプロセス モデルを使用するコレクションについては、「作業項目の種類の追加と管理」を参照してください

作業項目の種類の定義

ProcessConfiguration の定義

コマンド ラインの変更

前提条件

  • 作業項目の種類を一覧表示するには、[許可] に設定されたコレクション内のプロジェクトに対するプロジェクト レベルの情報の表示権限が必要です。
  • プロセス テンプレートをカスタマイズして作業項目の種類を追加またはカスタマイズするには、Project Collection 管理istrators グループのメンバーであるか、[プロセスの編集] アクセス許可が [許可] に設定されている必要があります。

管理者として追加するには、「プロジェクト コレクション レベルのアクセス許可を変更する」を参照してください

作業項目の種類に対する変更は、既存の作業項目にどのように影響しますか?

次の表は、フィールドまたは作業項目の種類の定義を変更するときの既存の作業項目への影響をまとめたものです。

アクション 既存の作業項目への影響
作業項目の種類からフィールドを削除する 削除されたフィールドのデータは、データ ストア内のメイン。 ただし、作業項目の種類の定義から削除したため、新しいデータを追加することはできません。
フィールドの名前を変更する 名前が変更されたフィールドのデータはメインデータ ストア内の新しいフレンドリ名の下に再び表示されます。
フィールドを削除する 削除されたフィールドのデータは、データ ストアから削除されます。
作業項目の種類の名前を変更する すべてのデータはメイン新しい名前の下にそのまま残ります。
作業項目の種類を削除する 削除された作業項目の種類として作成された作業項目のすべてのデータは、回復の機会なしで完全に削除されます。

データ ストアからフィールドを完全に削除する場合は、コマンド ライン ツールを使用witadmin deletefieldします。

作業項目の種類の定義ファイルをインポートおよびエクスポートする

Note

Hosted XML プロセス モデルを使用する場合は、プロジェクトで使用されるプロセス テンプレートをインポートおよびエクスポートする必要があります。 詳細については、「作業項目追跡 Web フォームをカスタマイズする」を参照してください

  1. プロジェクトの管理アクセス許可がない場合は、 それらを取得します

    1. 「witAdmin: 作業を追跡するためにオブジェクトをカスタマイズおよび管理する」に記載されている手順に従って、コマンド プロンプト ウィンドウを開きます。 次に例を示します。
  2. フィールドを変更または追加する作業項目タイプ定義ファイルをエクスポートします。 作業項目の種類の名前とファイルの名前を指定します。

    witadmin exportwitd /collection:CollectionURL /p:ProjectName /n:TypeName /f:"DirectoryPath/FileName.xml"

    CollectionURL例を次に示しますhttp://MyServer:8080/tfs/TeamProjectCollectionName

  3. ファイルを編集します。 詳細については、XML 要素定義へのインデックスを参照してください

  4. 定義ファイルをインポートします。

    witadmin importwitd /collection:CollectionURL /p:ProjectName /f:"DirectoryPath/FileName.xml"

  5. Web ポータルを開くか、ページを更新して変更を表示します。

    使用witadminの詳細については、「作業項目の種類のインポート、エクスポート、管理」を参照してください

作業項目の種類の追加または変更

カスタム作業項目の種類を追加したり、既存の作業項目の種類を変更したりするには、XML 定義ファイルを定義または変更し、使用するプロセス モデルに基づいてプロジェクトにインポートします。 作業項目の種類を変更するには、定義ファイルの 3 つのメイン セクション (FIELDS、WORKFLOWFORM) 内で定義されている要素を指定します。

作業項目の種類の要素の概要

新しい作業項目タイプを追加する最も簡単な方法は、既存の作業項目タイプをコピーしてから定義ファイルを変更することです。

フィールド、フィールド ルール、ラベル、または空のテキストを追加または変更する

データの追跡に使用するフィールドは、定義ファイルに追加する必要があります。 これは、システム フィールド (参照名が System で始まるフィールド) 以外の場合に当てはまります。 作業項目の種類の定義に含めるかどうかにかかわらず、すべての作業項目の種類に対してすべてのシステム フィールドが定義されます。 各フィールドの詳細については、「作業項目フィールドのインデックス」を参照してください

フィールドとフィールド ルールを FIELDS セクションに追加します。 作業項目フォームにフィールドを表示するには、そのフィールドを定義の FORM セクションにも追加する必要があります。

たとえば、作業項目 ID をフォームに追加するには、セクション内で次の XML 構文を FORM 指定します。

<Control FieldName="System.ID" Type="FieldControl" Label="ID" LabelPosition="Left" />

フィールドの定義の詳細については、「フィールドの追加または変更」を参照してください

ワークフローを変更する

ワークフロー内の STATES セクションと REASONS セクションでは、[状態] フィールドと [理由] フィールドで選択リストの値を指定します。 作業項目の状態を追跡します。 TRANSITIONS セクションでは、次の図に示すように、状態間の有効な遷移を指定します。 前方遷移と回帰遷移の両方を指定します。

ワークフロー状態図の例、アジャイル ユーザー ストーリー

ワークフローを変更して、次の目的を達成します。

  • 状態、理由、または遷移を追加または削除する
  • 状態、理由、または遷移の変更中に適用するフィールドの値を指定する
  • 状態、理由、または遷移の変化に基づいてフィールドの割り当てを自動化するカスタム ACTION を 指定します。

ワークフローをカスタマイズするときは、次の 2 つの手順に従います。

  1. 作業項目タイプ定義のワークフローを変更します。

  2. 新しいワークフローの状態をメタステートにマップするようにプロセス構成を変更します

    この 2 番目の手順は、アジャイル ツール ページに表示される作業項目の種類のワークフローを変更するときに必要です。 これらの作業項目の種類は、要件カテゴリまたはタスク カテゴリのいずれかに属します。

ワークフロー フィールド ルール

フィールド ルールは、状態の変更、理由の指定、またはワークフローの移行中に適用できます。

たとえば、状態が [アクティブ] に設定されているときに EMPTY ルールを追加することで、[終了日] フィールドと [終了日] フィールドを自動的に無効にし、読み取り専用にすることができます。 これは、作業項目を閉じた状態から再アクティブ化する場合に便利です。

<STATE value="Active">
   <FIELDS>
. . .
      <FIELD refname="Microsoft.VSTS.Common.ClosedDate"><EMPTY/></FIELD>
      <FIELD refname="Microsoft.VSTS.Common.ClosedBy"><EMPTY/></FIELD>
   </FIELDS>
</STATE>  

ワークフロー フィールド ルールを適用して、次のアクションを実行します。

  • CANNOTLO Standard Edition VALUE、EMPTY、FROZENNOTSAMEAS、READONLY、および REQUIRED を指定して、フィールドに含めることができる値を修飾します。
  • COPY、DEFAULTおよび Standard Edition RVERDEFAULT を使用してフィールドに値をコピーする
  • フィールドを変更できるユーザーを制限する
  • MATCH を使用して文字列フィールドにパターン マッチングを 適用する
  • WHEN、WHENNOT、WHENCHANGED、および WHENNOTCHANGED を使用して他のフィールドの値に基づいて規則を条件付きで適用する
  • 特定のユーザーまたはグループに適用するルールを制限します。 ほとんどのルールでは、ルールの対象となる属性と適用対象ではない属性がサポートされます。

ワークフロー フィールド ルールの適用の詳細については、「FIELD (Workflow) 要素リファレンス」および「ルールとルールの評価」を参照してください

作業項目フォームのカスタマイズ

次の図は、作業項目フォームの最も一般的な要素を強調しています。 タイトル領域とフォーム コントロールを除くすべてのコントロールをカスタマイズできます。 フォームのカスタマイズに使用する要素は、新しいフォームが管理者によって有効になっているかどうかによって異なります

作業項目 Web フォーム内のヘッダー要素のスクリーンショット。

フォームをカスタマイズして、次の目的を達成できます。

作業項目の種類をバックログまたはタスク ボードに追加または削除する

アジャイル計画ツール (製品バックログ、スプリント バックログ、タスク ボード ページ) には、プロジェクトの作成に使用したプロセス テンプレートに基づいて、特定の作業項目の種類が表示されます。 これらのページに表示する作業項目の種類を追加または削除できます。 たとえば、プロジェクトでスクラム作業項目の種類を使用している場合、製品バックログ項目とバグの両方がバックログ ページに表示されます。 ただし、アジャイル、CMMI、またはその他のプロセス テンプレートを使用してプロジェクトが作成された場合、バックログやタスク ボードにバグは表示されません。

たとえば、製品のバックログ ページからバグを追加できます。

作業項目の種類をバックログまたはタスク ボードに追加または削除する方法については、「作業項目の種類をバックログとボードに追加する」を参照してください。 ポートフォリオ バックログをサポートする新しい作業項目の種類を追加するには、「ポートフォリオ バックログ レベルの追加」を参照してください

作業項目の種類の色、アイコン、またはワークフロー状態の色を変更する

Web ポータルでは、作業項目がクエリ結果に表示され、アジャイル ツールのバックログページとボード ページに表示されます。 既存の作業項目の種類に関連付けられている色またはアイコンを変更したり、新しい作業項目の種類に使用する色を追加したりするには、 プロセス構成を編集します。 ワークフロー状態の色を変更するには、プロセス構成編集します。

作業項目の種類の色、アイコン、状態の色を示すクエリ結果のスクリーンショット。

既存の作業項目の種類を変更する

「作業項目の一括移動」を参照 し、プラットフォームに基づいて使用可能な機能の作業項目の種類 を変更します。

作業項目の種類を非アクティブ化または無効化する

特定の作業項目の種類の作成をユーザーのグループに制限する場合は、 作業項目の種類を [非表示のカテゴリ] グループ に追加して、大多数の共同作成者が作成できないようにします。 ユーザーのグループへのアクセスを許可する場合は、作業項目フォームを開き、 そのリンクを作成するチーム メンバーと共有するテンプレート へのハイパーリンクを作成できます。

Note

システム フィールドにルールを適用できないため、ワークフローを制限するフィールド ルールを追加することはできません。

作業項目の種類を削除する

チーム メンバーが特定の作業項目の種類を使用して作業項目を作成できないようにするには、プロジェクトから削除します。 使用 witadmin destroywitd*すると、その作業項目の種類と作業項目の種類自体を使用して作成されたすべての作業項目が完全に削除されます。 たとえば、チームで "Impediment" を使用していない場合は、Fabrikam Web サイト プロジェクトから "Impediment" というラベルの付いた作業項目の種類を削除できます。

witadmin destroywitd /collection:"http://FabrikamPrime:8080/tfs/DefaultCollection" /p:"Fabrikam Web Site" /n:"Impediment" 

カテゴリに属する作業項目の種類を削除する場合は、新しい名前を反映するようにプロジェクトのカテゴリ定義を更新する必要があります。 詳細については、「作業項目の種類のインポート、エクスポート、管理」および「カテゴリのインポートとエクスポート」を参照してください

作業項目の種類の名前を変更する

既存の作業項目の種類の名前を変更するには、 を使用 witadmin renamewitdします。 たとえば、"QoS 項目" というラベルの付いた作業項目の種類の名前を "サービス 契約" に変更できます。

witadmin renamewitd /collection:"http://FabrikamPrime:8080/tfs/DefaultCollection" /p:"Fabrikam Web Site" /n:"QoS Item" /new:"Service Agreement"

カテゴリに属する作業項目の種類の名前を変更する場合は、新しい名前を反映するようにプロジェクトのカテゴリ定義を更新する必要があります。 特に、 バックログとボード は、カテゴリ定義を更新するまで機能しません。

詳細については、「作業項目の種類のインポート、エクスポート、管理」および「カテゴリのインポートとエクスポート」を参照してください

この記事では、Hosted XML およびオンプレミス XML プロセス モデルの作業項目の種類を追加およびカスタマイズする方法について説明しました。 継承されたプロセス モデルの作業項目の種類を追加およびカスタマイズする方法については、「プロセスのカスタマイズ」を参照してください

その他の関連トピックまたはリソース: