实现高效ClearCase配置管理支持的实践
上一篇 / 下一篇 2012-08-14 10:21:59 / 个人分类:杂谈
RationalClearCase软件已经有二十多年的历史了,他已经成为大型软件研发公司的首选配置管理工具,不仅是这样,Rational软件产品已经连续多年居市场第一位。51Testing软件测试网!UN dW~
51Testing软件测试网3rE U4C5Y&O X$m-i由于ClearCase软件的复杂性,不同公司对ClearCase软件定制了不同的配置策略。本文内容描述了一套独特的对ClearCase的定制方 案,在全球性软件研发公司提供统一的用户管理的实践。以本实践为基础可以提供一套高效的低成本的24小时配置管理服务。
@7I|t M9o051Testing软件测试网M"r s;_ UJS全球性研发团队需要什么样的软件配置管理服务?51Testing软件测试网!g-k.{Oa1w
51Testing软件测试网F"t$ewzF F6X2u3G有了优秀的配置管理软件不一定能提供优秀的配置管理服务,只用配合适当的流程和有目的性的对Rational Clearcase 进行配置才能显著提高工作效率。本实践就是针对一个大型软件产品(以下简称S软件产品)如何提高效率降低成本的一次实践。
9L? z%a G051Testing软件测试网C5i9^b\ E|开发什么样的产品就需要有什么样的配置管理模式相配合,首先介绍一下S产品发产品研发团队的规模。S产品的研发团队是一个分布在多个国家具有500人规模的团队。这对配置管理服务工作提出了一些特殊要求。
'B}"U1C{051Testing软件测试网!QyKF"p7d7@首先,开发团队分布跨越了24个时区,对配置管理的服务也会是24小时,配置管理支持人员经常会对异地开发提供支持。51Testing软件测试网Q%K.yJj3AX7VVC|
51Testing软件测试网r\%JkC1hnm其次,S产品分为很多模块这些模块在全球的不同地区开发,开发模式不尽相同导致对配置管理支持的方式差异很大51Testing软件测试网V~p0lA
$p2BF[ v7R0 最后,有些模块是很多site之间紧密合作完成的,一个site出现的问题可能影响到其他site。这要求多个site的配置管理人员沟通十分紧密。51Testing软件测试网$Q oGw9e"puJ]
51Testing软件测试网"P*X1D{e首先我们可以先借鉴一些传统公司的一些配置管理经验
*A2C}c7k o0G04q&Y9a S~` j y1];v0 国内的一些有规模的公司还是比较重视软件配置管理工作的,这样得到公司一般会做作CMMI的认证,对公司的配置管理流程有一套完备的配置管理工作的章程,指导书和模板,也会按照CMMI的各个过程域建立一个过程改进的组织架构。
+Y's?X Ci8Jz051Testing软件测试网 g[R v-^这样的公司在开发团队地理位置分布上基本都是以一个site为主,少有的Multi site模式也只是单方向的提交代码,并非团队协同开发。51Testing软件测试网9vn#jH&T
51Testing软件测试网"bLi&Fm配置管理工作特点:51Testing软件测试网?'Ah-he*B*A.O
51Testing软件测试网Z!e1JM%L R1. 这样的配置管理工作很难做到24小时服务和远程配置管理的支持。51Testing软件测试网7ct(|%i@GB%t X|O
2~y RaE}2vyt0 2. 不同产品线的开发流程差异很大,对配置管理支持工作要求差异也很大。只能为项目配置专门的配置管理员。
(k`7T"_$a051Testing软件测试网f`&T4l1| h,Y(|o3. 开发模式基本上是single site模式,没有异地协同开发形式。51Testing软件测试网o.y(p,U+`wP
51Testing软件测试网6A3z3~:DC传统的跨国软件公司一般会有一套比较完善的流程来保证质量,这些流程是靠一些关键岗位资深员工执行的,虽然没有研发规程和完整的过程改进的组织架构,但还是会有完善的流程图和产出物模板。51Testing软件测试网 s!RR+rO\/CR~\
r*] r|0iuy8F0 配置管理工作特点:
%Fd1x._L!Nqu0OUC-It;k8k9R0 1、这样的配置管理工作在不同时区都有对应的配置管理支持人员。但很难做到跨时区的配置管理支持。51Testing软件测试网\{ i8i\{
*]7ZmT G%|M;{0 2、不同产品开发流程差异较大,项目和配置管理支持人员基本上是单独配置,简单说项目的配置管理工作由特定的配置管理人员完成。51Testing软件测试网0A2Y2nM3V[])S4L
a MG3EB1BN^0 3、开发模式以multi site 为主,几个site协作完成一个产品。有明确的集成策略来指导开发工作,但是不同site的配置管理员相对独立沟通也较少51Testing软件测试网*?.W$\?%G/Go
\&MV]1ZMM:?#~/N(m-{0 传统的multi site用户管理模式是在不同的site维护独立的用户认证机制,这样为异地提供配置管理支持带来很大麻烦,并且因为对同一产品维护多套用户认证机制增加很多成本。
X*xM.R"|F3S0p3O3A w$F[0 分布式统一用户管理
'ZB aQ-H/q9BO8jd03fDC5c8U6T}Fx0 实现分布式用户管理的前提是对产品的不同组件(或VOB)分配特定的用户组,如果有必要可以分配只读用户组。以此来保证每一次对配置项的改动都是被授权的。
_M ]5k}Sf*s&t0`&m,gYO*~y0 用户的申请特点VOB访问权限请求需要用户的Profile Manager(人事经理)和Access Approver(VOB业务所属经理)双重审批审批。图1-1是用户请求流程图,在流程工具中只有通过双重审批的请求才会被用户管理员执行。51Testing软件测试网'y)F4v|r'P5@w3w
0J8S&x\K2Ij/}#S0▲图1-151Testing软件测试网 {[4Z#XN
%J"DQ7]-jD8PH C0 通过流程工具来统一用户管理流程,这样不仅打破的不同模块用户权限流程的差异,而且还可以统一不同产品在用户管理的流程的差异。51Testing软件测试网 q*m } a-@
+zzsO0l(k0 使用Windows Active Directory(活动目录)进行统一的权限管理,通过分布在不同的时区的域控制器进行管理。并且由统一的账户管理流程工具来实现流程控制。这样会大大减少维护多套用户组的成本,也可以方便的通过一个账号提供远程的配置管理支持。51Testing软件测试网&V