3.4 规范项目活动类别和颗粒度划分
采用UCM方式的好处之一,就是项目成员对于配置库的修改必须有活动关联,如果没有分配给操作用户的活动,用户就无法对配置库进行任何修改。这对于EIP这类的维护型项目而言,源码的修改获得批准是非常重要的。
为了规范公司项目活动分类,公司在ClearQuest上完善、开发了多个流程,包括缺陷流程、变更管理流程、任务流程、不一致问题流程、测试管理流程等。同时,针对每个流程,我们都定义了相应的批准人员。例如,由缺陷分配人角色进行缺陷的分配,由项目经理进行变更的分配。通过这种方式,可以保证项目成员处理的活动都是得到批准的。
除了规范活动类别外,我们还规范活动的颗粒度划分。在公司内,我们要求针对每个case提交一个活动。例如,对于EIP项目来说,不能将业务部门一次提出的十个变更通过一个变更活动来提交,也不能将测试过程中发现的多个缺陷通过一个缺陷活动提交。通过对活动颗粒度的限制,避免活动颗粒度过大导致活动生命周期过长,这就起不到活动控制的目的,同时也不利于项目管理人员掌握项目当前活动状态。
通过对活动类别和颗粒度划分的规范,项目管理人员就可以利用ClearQuest对各种记录类型数据进行分析得到的报表,来实时掌握项目的最新动态,合理分配资源和调度开发活动。
3.5 定义合适的变更控制和发布流程
我们针对EIP项目的特点,定义了符合维护型项目特性的变更控制和发布流程,流程图如下:
图二 变更控制和发布流程图
首先,规范维护项目的源码修改过程。通过使用CCRC,开发人员在处理活动时,可以使用CCRC的“处理活动”功能,快速切换当前处理的活动,使他们可以选择正确的活动进行源码修改。通过UCM,一个开发活动可以自动地同其变更集(封装了所有用于实现该活动的项目工件)相关联,这样避免了开发人员手动跟踪所有文件变更。
其次,规范维护项目测试过程。当开发人员完成活动的处理,需要提交测试时,由项目管理人员提交测试任务,配置管理员将需要测试对应的活动交付(deliver)到测试流,并打一条测试基线。配置管理员使用取基线差程序获取更新包,并将更新包更新到测试环境。测试人员在测试环境上进行冒烟测试,确认基本集测试通过后,然后对此次测试任务包含的活动进行验证。一旦测试通过,完成该测试任务后,测试人员提交测试报告给项目成员。如果测试不通过,则要求开发人员修改,并重新进行该测试过程。