ALMActivity レコードには、[Unified Change Management] タブが含まれています。
これは、UCM を使用しているチームのためのオプションの設定です。
Unified Change Management (UCM) は、Rational
® ClearCase
® の機能の 1 つで、以下のことを行います。
- アクティビティと関連するアセット全体での変更を管理するための、柔軟ですぐに使用可能なソース コード管理 (SCM) モデルを提供します。
- コード アセットに役立つ抽象化のレベルを提供します。
- ClearCase 環境でスクリプトを開発して保守する必要をなくします。
- プロジェクトと開発者ワークスペースのセットアップを自動化します。
- 開発プロセスを強化するための一連の開発ツールを提供する、その他の Rational ツールとの統合を実現します。
ClearCase/ClearQuest UCM 統合が ClearQuest® ALM で使用されると、開発者がファイルのチェックアウトやチェックインを行う際に、完了した作業を ALMActivity レコードが追跡します。ALMActivity レコードは、特定の ALMProject を指す ALMTask と関連しています。ALMActivity レコードは UCM アクティビティに類似しており、すべてのアクティビティ タイプが UCM に対応しています。
ALMActivity は UCM アクティビティに、ALMBaseline は UCM ベースラインに、BTBuild は実際のビルドにそれぞれマップされます。アクティビティが完了したら、ALMBaseline を作成します。これにより、UCM ベースラインも作成されます。最新の UCM ベースラインを使用してビルドを作成すると、対応する BTBuild レコードが作成されます。
BTBuild レコードには、ビルドの作成元の ALMBaseline への参照が含まれています。
UCM 統合を使用するプロジェクトの場合は、 と設定します。UCM 統合が UCM プロジェクトについてオンになると、すべての UCM アクティビティが ALMActivity レコードによって追跡されます。UCM アクティビティが UCM プロジェクトのインテグレーション ストリームにデリバーされると、対応する ALMActivity が完了します。
ALMBaseline レコード タイプを使用して UCM ベースラインをマップすることによって、ベースラインが UCM に作成されたときに、ベースラインで新規アクティビティを検出できます。この UCM アクティビティのリストを、ALMBaseline レコードに取り込むことができます。UCM を使用していない場合は、クエリーを使用してアクティビティのリストを識別してから、そのアクティビティを手動でベースライン レコードに追加できます。
ALMBaseline レコードは、最後のベースラインが作成されてからインテグレーション ストリームにデリバーされた ALMActivities をリストします。次に、リリース エンジニアが、最後のベースラインを使用してビルドを作成します。対応する BTBuild レコードも作成されます。
BTBuild レコードは、このビルドの作成に使用されるベースラインをリストします。このレコードは、最終ビルド以降に組み込まれた ALMActivities もリストします。
注: UCM におけるストリームは、他のアセットやソフトウェア構成管理システムにおけるブランチと類似しています。ベースライン レコードは、順序付けを行うストリームでスレッド化されます。
デリバー後に完了状態に遷移させるプロジェクト ポリシーを使用して、アクティビティをいずれかのストリームにデリバーすると、開発者がアクティビティでの作業をまだ続ける必要があっても、アクティビティは完了状態に遷移します。この状態遷移によって、追加のチェックアウトを防ぎます。開発者は、次のことができます。
- 別の開発者と変更内容を共有するためにのみ代替デリバーを行い、同じアクティビティを使用して引き続き変更を行います。
- 同じ機能を処理するチームと変更内容を共有するために、機能ストリームに対してデリバーします。
たとえば、UCM を使用する開発者は、ログインして UCM アクティビティを検出し、デフォルトのアクティビティを指定するか、ファイルを開発ストリームに追加して、ソース コントロールに追加します。開発者は、ClearQuest で ALMActivity としてアクティビティを表示することもできます (状態 = アクティブ)。
- 開発者は、ClearCase クライアントを使用して、変更をデリバーしてから、デリバーを完了できます。アクティビティが完了したら、リリース エンジニア (またはビルダー) がコードのベースラインを作成します。
- ビルダーは、ClearQuest にログインして、新規 ALMBaseline を作成します。ビルダーは、プロジェクト VOB、プロジェクト、リリース値、新規のベースラインのアクティビティ ID を指定します。
- UCM ベースラインが指定されると、そこから 1 つ以上のビルドを作成できます。各ビルドごとに、ビルダーが BTBuild レコードを作成します。
- テスト担当者は テスト タイプ アクティビティを完了します。テスト アクティビティには、開発者のフィックスを含む BTBuild への参照が含まれます (ビルドが作成された場合)。
テスト担当者は、ビルドをインストールし、テスト アクティビティを完了します。
ベースラインと ALMBaseline レコードの作成
UCM プロジェクトの場合は、初期ベースラインを作成してから、初期 ALMBaseline レコードを作成して、UCM ストリームと PVOB を、一連の ALMBaseline レコードに固定します。
マイルストーン ビルドやナイトリ ビルドでは、UCM ベースラインを作成してから、新規の ALMBaseline レコードを作成します。ALMBaseline レコードの作成では、作成された最後のベースライン レコードを検査します。これが指定の PVOB とストリーム上の 2 番目のベースラインであれば、最初のレコードが初期ベースラインになります。現在のベースラインが指定された状態で、最後のベースラインが見つかると、ClearCase UCM 比較 (diffbl 操作) を使用して、2 つのベースラインを比較します。最後のベースライン レコード以降にデリバーされたすべての ALMActivities は、新規ベースライン レコードに追加されます。
既存の 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 を呼び出すことで、ストリームに作成された順序で、より新しいベースライン レコードを作成できます。
検出された前のベースライン レコードとベースラインが比較され、新規アクティビティが新規のベースライン レコードに追加されます。