次の方法で共有


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

Azure DevOps Server |Azure DevOps Server 2022

すべてのプロジェクトには、そのプロセスによって定義された一連の作業項目の種類 (アジャイルBasicスクラムCMMI) が含まれます。 作業項目の種類を使用して 、さまざまな種類の作業を追跡します。 既存の型を変更するか、チームの追跡要件とワークフローに合わせてカスタム型を追加します。

手記

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

作業項目の種類をカスタマイズする一般的な理由は次のとおりです。

  • フィールドやフィールド ルールの追加・変更
  • ワークフローの変更 (状態、理由、遷移)
  • 作業項目フォーム レイアウトのカスタマイズ

フィールドのみを変更するには、「 フィールドの追加または変更」を参照してください。

作業項目の種類は、XML 定義ファイル、プロセス構成定義、または witadmin コマンドライン ツールを使用してカスタマイズできます。 次の一覧は、各アプローチで実行できる操作を示しています。

作業項目の種類の定義

プロセス構成定義

コマンド ラインの変更

前提 条件

カテゴリ 必要条件
アクセス許可 - 作業項目の種類を一覧表示するには: プロジェクト レベルの情報 のアクセス許可を [許可] に設定して表示します。
- 作業項目の種類を追加またはカスタマイズするには、[ プロジェクト コレクション管理者 ] グループのメンバー、または [ プロセスの編集] 権限セットを [許可] に設定します。

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

作業項目の種類に対する変更が既存の作業項目に与える影響

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

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

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

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

手記

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. ファイルを編集します。

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

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

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

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

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

カスタム作業項目の種類を追加したり、既存の作業項目を変更したりするには、XML 定義ファイルを定義または変更してから、 使用するプロセス モデルに基づいてプロジェクトにインポートします。 定義ファイルには、 FIELDSWORKFLOW、FORM の 3 つの主要なセクション があります

作業項目の種類の要素の概要のスクリーンショット。

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

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

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

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

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

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

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

ワークフローを変更する

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

アジャイル ユーザー ストーリーのワークフロー状態図のスクリーンショット。

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

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

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

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

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

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

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

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

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

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

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

  • CANNOTLOSEVALUEEMPTYFROZENNOTSAMEASREADONLYREQUIRED を指定して、フィールドに含めることができる値を修飾します。
  • COPYDEFAULTおよび SERVERDEFAULT を使用してフィールドに値をコピーします。
  • フィールドを変更できるユーザーを制限します。
  • MATCH を使用して、文字列フィールドにパターン マッチングを適用します。
  • WHENWHENNOTWHENCHANGED、および WHENNOTCHANGED を使用して、他のフィールドの値に基づいてルールを条件付きで適用します。
  • 特定のユーザーまたはグループに適用するルールを制限します。 ほとんどの ルールでは、 ルールが適用されるユーザーまたは適用 されない ユーザーを指定する for 属性と not 属性がサポートされています。

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

作業項目フォームをカスタマイズする

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

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

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

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

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

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

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

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

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

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

プラットフォームに基づいて使用できる機能については、「 作業項目を一括移動し、作業項目の種類を変更する」を参照してください。

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

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

手記

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

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

チーム メンバーが特定の作業項目の種類を使用して作業項目を作成できないようにするには、プロジェクトから削除します。 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"

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

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