首页 理论教育 从分散到集中:优化配置管理系统的实施过程

从分散到集中:优化配置管理系统的实施过程

时间:2023-05-17 理论教育 版权反馈
【摘要】:系统的基本结构是以项目群的主配置库为中心,对分布在各地的交付物进行统一管控。现场项目定期将交付物上传到主配置库,同时从主配置库将所需内容的最新版本同步到本地。而系统的实施过程也是一个规模不小的IT项目,所以划分了清晰的实施阶段:■使用新的配置管理系统建立“主配置库”和“备份库”,并为各个项目组分配独立和共享空间。■内部项目直接切换到“主配置库”上。运行中发现,集中的配置管理系统主配置库负载很重。

从分散到集中:优化配置管理系统的实施过程

1.为什么需要集中的配置管理

为什么在单项目中执行得好好的配置管理过程,到了项目群中就不灵了呢?老Q也不是神仙,不是拍拍脑袋就能想出办法的。好在项目群中质量经理有好几个人,有个专业团队可以依赖。于是,老Q找来了各个项目的质量经理,想先弄清状况,再想办法解决问题。

还是人多力量大,通过大家讨论,很快发现现行的配置管理过程应用在项目群中的一些问题。

现行的配置管理过程是针对单个项目的开发过程和组织结构设计的,由每个项目独立地管理配置库。一般要等到项目结束后,才会把最终交付物提交出来;但是项目群中多项目并行开发,过程中就要及时地同步接口变化信息、共享中间结果。

其实,一个项目组多模块开发也有类似情况,但是数据都在一个配置库中,地理位置集中,问题容易解决。而现在每个项目独立,配置管理工具不统一,加上地域分散,客观上造成了相互之间信息交换困难。而项目群也没有相应的机制确保大家同步和共享信息,主观上大家没有想到要自觉地做这件事。

这样看来,问题的根本原因在于:项目群管理需要各个项目之间相互协同,但是与之对应的配置管理系统却相对孤立,又缺乏信息的同步和共享机制,所以造成了协同混乱。

解决问题的关键是在项目群级别建立统一的组织级“主配置库”,集中管理所有项目的知识资产;其中每个项目的子配置库是“主配置库”的一个子集,但可以按照权限访问指定的共享内容。通过一个虚拟空间内项目间信息的同步和共享,支持物理分布的协同开发。

为达到这个目的,必须改造现有配置管理体系,将分散的配置库升级为组织级的集中的配置管理系统。

2.集中的配置管理方案

工作思路很快获得了领导的同意。老Q带领一个团队负责设计具体方案和实现方法。系统的基本结构是以项目群的主配置库为中心,对分布在各地的交付物进行统一管控。集中的配置管理系统分成三个部分,如图9-1所示。

■主配置库:部署在公司的一台大型的服务器上,集中管理所有项目的交付物。内部的研发项目都直接连到主配置库上,实时地进行存取访问。

■项目配置库:客户现场的客户化项目组不能实时连接在主配置库上,需要建立本地的项目配置库。主配置库中有每个现场项目配置库的副本。

现场项目定期将交付物上传到主配置库,同时从主配置库将所需内容的最新版本同步到本地。

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

图9-1 集中的配置管理系统

■备份库:因为主配置库集中了项目群的所有交付物,对安全性和可靠性要求非常高,所以建立了一个异地的灾难备份库,通过专线将主配置库信息单向同步到备份库。这样,即使主配置库出了问题也能通过异地备份恢复过来。(www.xing528.com)

对于备份库的设计还有个小插曲:老Q觉得备份库成本比较高,向小M汇报的时候怕小M嫌贵,没想到小M答应得非常痛快,并为大家算了一笔账。项目群中有几百个开发人员,一个工作日的成本就将近几十万。因此,假设丢失1天的工作成果就相当于损失几十万。对比这个数字,几万的服务器和几千的网络专线费用就显得非常便宜了。

3.实施过程和效果

通过选型,公司采购了新的配置管理系统,该系统同时支持集中和分布结构。而系统的实施过程也是一个规模不小的IT项目,所以划分了清晰的实施阶段:

■使用新的配置管理系统建立“主配置库”和“备份库”,并为各个项目组分配独立和共享空间。主配置库和备份库均选用了高端服务器,以满足性能的需要。

■内部项目直接切换到“主配置库”上。

■客户化项目则分两步:首先更换新的配置管理系统,并移植老系统中的数据。这样,客户现场的项目配置库与主配置库就一致了,可以确保信息交换顺畅进行。然后,建立各个项目配置库与主配置库之间的网络连接,并将数据上传到主配置库。第一次上传时有些项目的数据量比较

大,因此通过光盘和或其他介质形式邮寄给老Q导入主配置库,以确保基础数据一致。

■制度化数据同步和备份机制,定期通过网络进行主配置库和项目配置库之间的信息同步,以及主配置库和备份库之间的备份操作。

运行中发现,集中的配置管理系统主配置库负载很重。为了减轻主配置库的负载,采取了一些必要的措施:

■对纳入配置库中的内容进行了限制,非自主知识产权的内容不纳入。例如,开发管理工具、参考资料等只要放在文件服务器上即可。这样每个项目的配置库大小一般仅几百兆字节,最大不超过1GB。

■主配置库和备份库之间的操作使用脚本自动进行控制,选择负载较低时段操作,并在传递前进行压缩处理。

■为了避免各项目配置库与主配置库同步的时间过于集中,同步操作提前

做好计划,选择相对空闲的时段分批进行。

集中的配置管理之后,项目之间信息同步的及时性得到很大的改善,配置管理员的工作变得简单多了,再也不用跑来跑去了。而且,项目群中任何人、任何时候都可以从主配置库获得最新的交付成果。这样,不但利于各个项目组的共享成果,而且利于管理者通过对交付物的查询和统计了解项目进展。

因为大家面对的是同一个主配置库,里面内容又是最新的,所以整个项目群就成了一个虚拟的“大项目组”,协同性有了明显提高。

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

我要反馈