DevOps Azure Boardsの作業項目のインポート

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:3分
  • Azure Boards作業項目は、インポート中に既定の ServiceNow DevOps の状態と種類にマップされます。DevOpsAzureDevOpsWorkItemHelper スクリプトインクルードを使用して、マッピングをカスタマイズできます。

    既定のAzure Boards作業項目マッピング

    作業項目の [ネイティブ状態] フィールドと [ネイティブの種類] フィールドには、ソース ツールの元の状態と種類の値が含まれています。

    表 : 1. 作業アイテムタイプのマッピング
    ServiceNow DevOps Azure Boards 基本 Azure Boards アジャイル Azure Boardsスクラム
    タスク タスク

    タスク

    テストケース

    タスク

    障害

    テストケース

    バグ 問題

    バグ

    問題

    バグ
    ストーリー -- ユーザーストーリー 製品バックログ項目
    Epic (エピック) Epic (エピック) Epic (エピック) Epic (エピック)
    機能 -- 機能 機能
    注:
    Azure DevOps作業アイテムの履歴インポートは、アジャイルボード CMMI プロセスではサポートされていません。
    表 : 2. 作業アイテムステータスのマッピング
    ServiceNow DevOps Azure Boards 基本 Azure Boards アジャイル Azure Boardsスクラム
    計画済み To Do New (新規)

    New (新規)

    オープン

    承認済み

    コミット

    To Do

    WIP 実行中

    アクティブ

    Design (デザイン)

    進行中

    Design (デザイン)

    完了 完了

    準備完了

    クローズ済み

    完了

    準備完了

    クローズ済み

    削除済み 削除済み

    完了

    削除済み

    削除
    注:
    インポートされたAzure Boards作業項目の種類または状態が認識されない場合、値は [その他] に設定されます。

    Azure Boardsの状態と種類のマッピングをカスタマイズする

    で DevOpsAzureDevOpsWorkItemHelper スクリプトインクルードにアクセスします システム定義 > スクリプトインクルード 移動します

    このスクリプトの例では、カスタムプロセス MyScrum と CustomBasic に新しい状況とタイプを追加します。CustomBasic は、基本プロセスに定義された状態とタイプを継承します。

    var DevOpsAzureDevOpsWorkItemHelper = Class.create();
    
    DevOpsAzureDevOpsWorkItemHelper.prototype = Object.extendsObject(DevOpsAzureDevOpsWorkItemHelperSNC, {
    	
    	setDefaultProcess: function (projectProcess){
    		
    		DevOpsAzureDevOpsWorkItemHelperSNC.prototype.setDefaultProcess.call(this, projectProcess);
    		
    		//set custom states and types
    		var newStates, newWITypes;
    		if (projectProcess == 'NPScrum'){
    			// no parent process set. So type and states avaibale will be linited to newStates
    			// and newWITypes
    			newStates = {
    				'Delayed': 'planned',
    				'Approved': 'wip'
    			};
    			newWITypes= {
    				'Request': 'story',
    				'Incident': 'task'
    			};
    			
    		} else  if (projectProcess == 'CustomBasic'){
    			//set parent process to Basic to inherit basic states and types
    			this.setParentProcess('Basic');
    			newStates = {
    				'Auto-Approved': 'wip'
    			};
    			newWITypes= {
    				'UserStory': 'story'
    			};
    		}
    		
    		this.setStates(newStates);
            this.setWorkItemTypes(newWITypes);
    	},
    	
    	type: 'DevOpsAzureDevOpsWorkItemHelper'
    });