更新操作以“从此开始”的方式使用基线。因此,如果使用标准流程规则,将基线设置为包含多个组件中的项目或者不包含特定发布标识的所有项目,那么无法正确更新基线。支持以这种方式使用标准流程规则,但是必须定制流程规则以使其有效。
接下来的两个示例介绍如何正确设置基线,而最后一个示例则介绍了设置不正确的基线。正确使用基线可以提高更新项目时的绩效。
基线按其发布标识选择;因此,在基线中包含具有一致发布标识的项目就显得非常重要。基线中的项目用作项目分组集中项目的基线项目。在下表中,请注意项目分组集中的每个项目都映射到基线中的一个项目。该示例显示完整的基线。
CM/7.0 构建 1234 的基线 | <== 基线 | CM/7.1 集成测试的项目分组集 |
---|---|---|
cm_top-CM/7.0 | <== 基线项目 | cm_top-CM/7.1 |
cm_gui-CM/7.0 | <== 基线项目 | cm_gui-CM/7.1 |
cm_api-CM/7.0 | <== 基线项目 | cm_api-CM/7.1 |
cm_platform-CM/7.0 | <== 基线项目 | cm_platform-CM/7.1 |
在下表中,请注意对于具有混合组件的层次结构,需要两条单独的基线。此示例显示正确的基线。
CM/7.0 构建 1234 的基线 | <== 基线 | CM/7.1 集成测试的项目分组集 |
---|---|---|
cm_top-CM/7.0 | <== 基线项目 | cm_top-CM/7.1 |
cm_gui-CM/7.0 | <== 基线项目 | cm_gui-CM/7.1 |
cm_api-CM/7.0 | <== 基线项目 | cm_api-CM/7.1 |
cm_platform-CM/7.0 | <== 基线项目 | cm_platform-CM/7.1 |
TC/5.1 构建 5678 的基线 | <== 基线 | TC 5.2 集成测试的项目分组集 |
change_api-TC/5.1 | <== 基线项目 | change_api-TC/5.2 |
如果为具有混合组件的项目创建单一基线,那么当您使用标准流程规则时,项目无法正确找到基线项目。在以下示例中,名为 change_api-TC/5.1 的子项目包含在 CM/7.0 发布标识的基线中。
项目无法用作基线项目。它所属的基线(例如,CM/7.0 构建 1234 的基线)无法由可能使用该项目作为基线项目的任何项目分组集(例如,TC 5.2 集成测试的项目分组集)选择。此外,针对这两个发布标识的任务均包含在基线中。
如果基线中的所有任务并非由基线中的所有项目使用,那么在更新期间,项目分组集不会减去这些任务。最好是通过以下方式来收集由更新操作选择的新项目成员:
例如,您的基线中包含一个任务,该任务未由基线中的一个或多个项目使用。当计算要用于更新的任务时,不会减去该任务。
在下表中,第一列中的 change_api-TC/5.1 来自另一个组件,不应位于 CM/7.0 基线中。但由于该任务位于此基线中,因此与其关联的所有任务也包含在此基线中。此外,基线中的所有项目都不使用来自 CM/7.0 或 TC/5.1 的任务。因此,不会减去任何这些任务。这会对绩效产生影响。
在下表中,第一列中的缺失说明无法找到 TC 5.2 集成测试的项目分组集的基线。由于没有任何基线,因此 change_api-TC/5.1 不能有基线项目。当更新项目时,您可能无法获取期望的成员。
此示例介绍不适用于标准流程规则的基线。
CM/7.0 构建 1234 的基线 | <== 基线 | CM/7.1 的项目 分组集 |
---|---|---|
cm_top-CM/7.0 | <== 基线项目 | cm_top-CM/7.1 |
cm_gui-CM/7.0 | <== 基线项目 | cm_gui-CM/7.1 |
cm_api-CM/7.0 | <== 基线项目 | cm_api-CM/7.1 |
cm_platform-CM/7.0 | <== 基线项目 | cm_platform-CM/7.1 |
change_api-TC/5.1 | ||
缺失 | <== 基线 | TC 5.2 集成测试的项目分组集 |
无 | <== 基线项目 | change_api-TC/5.2 |