首页 理论教育 从文件到任务:提高配置管理系统关联性

从文件到任务:提高配置管理系统关联性

时间:2023-05-17 理论教育 版权反馈
【摘要】:但目前使用的基于“文件”配置管理工具只记录文件的版本变化,不记录修改的“文件”和“任务”之间的关联。图9-2 基于文件和基于任务的区别2.基于“任务”配置管理系统方案老Q满心欢喜将想法向小M作了介绍,没想到小M却犯了难。在不到两个月的时间里,项目群再次升级配置管理系统,完成了从基于“文件”到基于“任务”的转变。

从文件到任务:提高配置管理系统关联性

1.为什么要基于“任务”进行配置管理

集中的配置管理系统上线之后最明显的改进是信息同步的即时性,但并不是所有的问题都迎刃而解了。各项目发布出来的版本还是经常有差错,遗漏文件的情况时有发生。这到底是怎么回事?老Q再次与质量经理一起深入实践,分析现有的工作流程,希望找到原因。

通过调查发现,一个新版本包括的“特征”都是各种开发任务结果,开发任务种类包括功能增强、变更请求和缺陷修改等。工程师在进行这些开发“任务”的时候,极少局限于单一文件,一般情况下会涉及多个文件。

比如,为完成一个变更任务,可能需要修改两个源文件、一个头文件、一个表单文件和一份帮助文档,这五个文件中任何一个没有包含在配置项中都会导致错误。但目前使用的基于“文件”配置管理工具只记录文件的版本变化,不记录修改的“文件”和“任务”之间的关联。为此,工程师需要手工记录为完成一个“任务”修改了哪些文件以及修改之后的版本号是什么,并通过电子邮件、电话,甚至用口头方式通知配置管理员,以便将这些文件包含在新版本中。

当开发设计的源文件上升到几千甚至几万量级的时候,假设一个新版本包括几十项“任务”,而一个任务又涉及5~10个文件,那么配置管理员就要精确地抓出几百个版本正确的文件构建新版本。这个过程工作量大、环节多,中间任何一个地方出错,都可能造成发布的错误,而且出错之后非常难查。

看来,现在系统的规模和复杂度已经大大提高,原来手工管理任务和文件关联的方法已经不能适应,需要进行改进。通过查找资料,老Q找到了一些基于“任务”的配置管理系统,一些功能对解决现有问题非常有帮助,例如:

■这种系统能够自动建立并管理开发“任务”与被修改的“文件”之间的关系。

■能够根据多个“任务”之间依赖关系,控制众多“文件”的演变和依赖关系。

■发布新版本的时候,可以自动根据“任务”准确获得所需文件,避免遗漏和错误。

基于“任务”的配置管理系统最大的好处是免去了手工记录和零散收集“任务”和“文件”的关联信息所带来的麻烦,因此大大降低了中间环节出错的可能。两个系统的区别如图9-2所示。

978-7-111-56792-9-Chapter09-2.jpg

图9-2 基于文件和基于任务的区别

2.基于“任务”配置管理系统方案

老Q满心欢喜将想法向小M作了介绍,没想到小M却犯了难。

原来,项目群刚刚投资升级了配置管理系统,并进行了大范围的集中管理改造,耗费了大家很多时间和精力。虽然集中管理之后确实给项目群层面带来了很多好处,但是一线开发人员感觉变化不大,而且对额外增加的工作有一定抱怨。(www.xing528.com)

现在,系统刚刚稳定下来才几个月马上又要换,抛开资金因素不说,再次让大家投入时间精力就太折腾了!但是,随着老Q的不断鼓动,小M也觉得基于“任务”的系统是解决问题的有效方法,左右为难还真拿不定主意了,于是与老Q一起找到S总商量。

S总的想法跟小M类似。经过大家的讨论,确定了一个折中的方案:这次不要急急忙忙上来就搞“大工程”,可以先找几个项目小范围试点一下。如果试点效果好就推广,这样钱花得值,风险也小。

按照这个策略,老Q与质量团队一起制定了先试点、再推广的两步走方案。具体的路线是这样的:

■先找几个有代表性的项目做试点,使用两套系统并行运行。这样确实增加了一定的工作量,但毕竟影响范围小。

■为了确保试点工作顺利进行,由厂家技术人员和试点项目的质量经理、配置管理员一起组成联合小组。联合小组不但要负责系统的实施、项目组成员的培训,还要负责新老两个配置库之间的代码同步,减少对开发人员的影响。

■试点之后联合小组会同试点项目组进行评估,通过对比两个系统在效率、准确性等方面的数据,为是否推广提供量化决策依据。

工作很快就启动了。几个试点项目中有的配置管理已经非常成熟,对于基本的操作并不陌生,有很好的“群众基础”;有的是项目管理基础相对薄弱,自己没有太多想法,有人帮助实施新的配置管理系统自然是“何乐而不为”呢?

通过几个月的试点,发现基于“任务”配置管理系统确实给大家带来了好处,几方面人员均有反馈:

■开发人员认为,因为不必去硬记为完成某个“任务”都修改或创建了哪些文件,省去了大量烦人的操作,而且还能保证正确,所以非常支持。

■集成和测试人员反馈,系统能自动生成新版本的层次分明的发布清单,其中包含新版本完成的工作以及任务之下的变更集(文件和目录),工

作起来省时省力。

■项目管理者觉得,新系统的任务列表说明了新版本需要完成的“任务”,以及任务的优先级和最后时限,项目组成员能够从整体上了解任务之间的依赖关系,开发工作进展非常有序。

■其他项目组反馈,项目之间的协同性也得到了很大改善。如果一个开发人员想使用其他项目的工作成果更新自己的工作空间,可以直接根据需要的特征查找“任务”,然后根据“任务”提取对应文件就能构建一个新的版本分支。

最后,通过联合小组和试点项目组的评估,认为基于“任务”的配置管理系统在准确性和工作效率方面都显著提高,组间协同有很大改进,试点工作得到了大家的认可。这下小M、S总心里有底了,于是决定将系统推广到整个项目群。在不到两个月的时间里,项目群再次升级配置管理系统,完成了从基于“文件”到基于“任务”的转变。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈