UCM での ALM

ALMActivity レコードには、[Unified Change Management] タブが含まれています。 これは、UCM を使用しているチームのためのオプションの設定です。
Unified Change Management (UCM) は、Rational® ClearCase® の機能の 1 つで、以下のことを行います。

ClearCase/ClearQuest UCM 統合が ClearQuest® ALM で使用されると、開発者がファイルのチェックアウトやチェックインを行う際に、完了した作業を ALMActivity レコードが追跡します。ALMActivity レコードは、特定の ALMProject を指す ALMTask と関連しています。ALMActivity レコードは UCM アクティビティに類似しており、すべてのアクティビティ タイプが UCM に対応しています。

ALMActivity は UCM アクティビティに、ALMBaseline は UCM ベースラインに、BTBuild は実際のビルドにそれぞれマップされます。アクティビティが 完了したら、UCM ベースラインを作成し、次に必要に応じて ALMBaseline を作成します。 最新の ALMBaseline を使用してビルドを作成する場合は、対応する BTBuild レコードを作成する必要があります。BTBuild レコードには、ビルドの作成元の ALMBaseline への参照が含まれています。

UCM 統合を使用するプロジェクトの場合は、[プロジェクト] > [UCMProject] と設定します。UCM 統合が UCM プロジェクトについてオンになると、すべての UCM アクティビティが ALMActivity レコードによって追跡されます。UCM アクティビティが UCM プロジェクトのインテグレーション ストリームにデリバーされると、対応する ALMActivity が完了します。

ALMBaseline レコード タイプを使用して UCM ベースラインをマップすることによって、ベースラインが UCM に作成されたときに、ベースラインで新規アクティビティを検出できます。この UCM アクティビティのリストを、ALMBaseline レコードに取り込むことができます。UCM を使用していない場合は、クエリーを使用してアクティビティのリストを識別してから、そのアクティビティを手動でベースライン レコードに追加できます。

ALMBaseline レコードは、最後のベースラインが作成されてからインテグレーション ストリームにデリバーされた ALMActivities をリストします。次に、リリース エンジニアが、最後のベースラインを使用してビルドを作成します。対応する BTBuild レコードも作成されます。 BTBuild レコードは、このビルドの作成に使用されるベースラインをリストします。このレコードは、最終ビルド以降に組み込まれた ALMActivities もリストします。
注: UCM におけるストリームは、他のアセットやソフトウェア構成管理システムにおけるブランチと類似しています。ベースライン レコードは、順序付けを行うストリームでスレッド化されます。
デリバー後に完了状態に遷移させるプロジェクト ポリシーを使用して、アクティビティをいずれかのストリームにデリバーすると、開発者がアクティビティでの作業をまだ続ける必要があっても、アクティビティは完了状態に遷移します。この状態遷移によって、追加のチェックアウトを防ぎます。開発者は、次のことができます。
例えば、UCM を使用する開発者は、ログインして UCM アクティビティを検出し、デフォルトのアクティビティを指定するか、ファイルを開発ストリームに追加して、ソース コントロールに追加します。開発者は、ClearQuest で ALMActivity としてアクティビティを表示することもできます (状態 = アクティブ)。

ベースラインと ALMBaseline レコードの作成

マイルストーン ビルドやナイトリ ビルドでは、UCM ベースラインを作成してから、新規の ALMBaseline レコードを作成します。ALMBaseline レコードの作成では、作成された最後のベースライン レコードを検査します。これが指定の PVOB とストリーム上の 2 番目のベースラインであれば、最初のレコードが初期ベースラインになります。現在のベースラインが指定された状態で、最後のベースラインが見つかると、ClearCase UCM 比較 (diffbl 操作) を使用して、2 つのベースラインを比較します。最後のベースライン レコード以降にデリバーされたすべての ALMActivities は、新規ベースライン レコードに追加されます。

UCM プロジェクトの場合は、初期ベースラインを作成してから、初期 ALMBaseline レコードを作成して、UCM ストリームと PVOB を、一連の ALMBaseline レコードに固定します。

ベースラインの命名に関して、 分かりやすい規則を定義してください。ベースライン名には次の情報の一部またはすべてを 組み込むことをお勧めします。
  • プロジェクト名
  • コンポーネント名
  • マイルストーンまたは開発スケジュールのフェーズ
  • 作成日付

ベースライン命名テンプレートの設定の詳細については、http://publib.boulder.ibm.com/infocenter/cchelp/v7r0m1/index.jsp?topic=/com.ibm.rational.clearcase.cc_proj.doc/c_u_pln_bl_nm_cnvntn.htm を 参照してください。

既存の UCM プロジェクト

ALM プロジェクトとして作成されなかった旧プロジェクトは、既存のアクティビティとベースラインを複数持っていることがあります。その一部またはすべてをインポートできます。インポートするベースラインは、ストリームから順番にインポートする必要があります。すべてのベースラインをインポートする必要はありませんが、作成された順にインポートする必要があります。ベースラインが指定されると、create_baseline_record.pl スクリプトは、同じストリームの ALM 内の前のベースライン レコードとそのベースラインを比較することで、そのベースライン内の新規アクティビティを検出します。

新規アクティビティのみを追跡したい場合は、新規 ALMBaseline レコードを同じストリームに作成できます。この新規ベースラインが (旧プロジェクトの元のベースラインではなく)、新規の比較における前のベースラインになります。この新規の初期ベースライン以降に作成されたアクティビティのみが、新規に渡されるベースライン レコードに表示されます。この初期ベースライン レコードは、以下のいずれかの方法で作成できます。
  • create_baseline_record.pl スクリプトで検出できるように、PVOB または [ロケーション] や [ストリーム] フィールドに入力して、ALM で手動で作成します。
  • create_baseline_record.pl を使用して、初期ベースラインを作成します。create_baseline_record.pl は、適切なオプションで渡すことによって、初期のシード ベースライン レコードを作成できます。 -nodiffbl オプションは、渡されるベースラインを作成し、前のベースラインの検索や、比較の実行は行わないことを指定します。このオプションはベースラインを検査しないので、-ucmstream stream_name 引数の情報を含める必要もあります。例を次に示します。
    ratlperl create_baseline_record.pl -user RE -pw secret -dbname ALM -dbset CQ.ALM.HOST -projectid ALM00000123 -nodiffbl -pvob "¥pvob01" -ucmstream "proj_01_int" -baseline "proj_01_02_24_2008"
    このコマンドは、次の値を指定して、ALMBaseline レコードを作成します。
    Project id: ALM00000123 
    Name: proj_01_02_24_2008 
    ucm_stream: proj_01_int 
    PVOB or Loc:¥pvob01

初期 ALMBaseline レコードを作成した後で、必須指定のオプションと新規のベースライン名を指定して create_baseline_record.pl を呼び出すことで、ストリームに作成された順序で、より新しいベースライン レコードを作成できます。 検出された前のベースライン レコードとベースラインが比較され、新規アクティビティが新規のベースライン レコードに追加されます。


フィードバック