デリバー操作でのベースラインに関する考慮事項

デリバー操作におけるアクティビティの依存関係と同様に、状況によってはベースラインもデリバー操作に影響を及ぼすことがあります。ソース ストリームの基本ベースラインがターゲット ストリームの基本ベースラインと異なる場合、基本ベースライン内のアクティビティに加え、基本ベースラインの後に作成されたすべてのアクティビティもデリバーされます。 このようにベースラインが異なる場合、選択した変更のみをデリバーすることはできません。

たとえば、次の図の「機能」ストリームにはベースライン 0 が設定されています。「開発者 1」ストリームで作業をしている開発者が「アクティビティ 1」のアクティビティを「機能」ストリームにデリバーします。

半分に分かれた三角形は、インテグレーション ストリームを表します。これはバージョン 0、初期バージョンです。その右にある半分に分かれた三角形は、機能ストリームのバージョン 0 を表します。さらにその右にある半分に分かれた三角形は、開発ストリームのバージョン 0 を表します。この開発ストリームから、「アクティビティ 1」が機能ストリームにデリバーされます。「アクティビティ 1」がデリバーされると、機能ストリームにベースライン 1 が作成されます。開発ストリームから、「アクティビティ 2」が機能ストリームにデリバーされますが、これをインテグレーション ストリームに個別にデリバーすることはできません。

「機能」ストリームの所有者は、そのストリーム内にベースライン 1 を作成します。 「アクティビティ 1」はベースライン 1 に含まれます。「開発者 1」ストリームの開発者は新しいアクティビティで作業を続け、「アクティビティ 2」のアクティビティを「機能」ストリームにデリバーします。

「機能」ストリームの統合により、「統合」ストリームに作業をデリバーする場合、「アクティビティ 2」に加えて、ベースライン 1 に含まれるアクティビティもデリバーする必要があります。統合担当者は「アクティビティ 2」のみをデリバーすることはできません。

次の図に示すように、別のターゲット ストリームにデリバーする場合も、ベースラインを考慮する必要があります。

半分に分かれた三角形は、「統合 2」ストリームのバージョン A を表します。その右にある半分に分かれた三角形は、「統合 1」ストリームのバージョン 0 を表します。さらにその右にある半分に分かれた三角形は、開発ストリームのバージョン 0 を表します。この開発ストリームから、「アクティビティ 1」が「統合 2」ストリームにデリバーされます。開発者ストリームでは、「アクティビティ A」の下にベースライン D が作成されます。ベースライン D の下には、「アクティビティ 2」が作成されます。「アクティビティ 2」は、「統合 1」ストリームに個別にデリバーすることはできません。

「開発者 1」ストリームは、「アクティビティ 1」を代替ターゲットである「統合 2」ストリームにデリバーします。中間手順として、デリバーでは「開発者 1」ストリーム内に隠しベースライン D (デリバー ベースラインと呼ばれます) が作成されます。 「開発者 1」ストリームから「統合 2」ストリームに「アクティビティ 2」のみをデリバーするには、デリバー ベースライン (「アクティビティ 1」) に関連付けられた変更もデリバーする必要があります。 この場合、「アクティビティ 2」のみをデリバーすることはできません。デリバー ベースラインに含まれる「アクティビティ 1」もデリバーする必要があります。

関連概念
プロジェクトについて
ストリームについて
UCM でのソフトウェア開発
アクティビティをデリバーするためのワークフロー (複数ストリームの UCM プロジェクトの場合のみ)
デリバー操作でのアクティビティの依存関係について

フィードバック