群组技术交流活动---在线交流:ClearCase在实际项目中的应用

火龙果软件工程技术中心 报名咨询热线: 北京 010-62670835 上海 021-50800371 深圳 0755-88849686

活动简介:

通过在线的方式交流关于IBM RationalClearCase在实际项目中的一些应用经验,并对先前发布的视频《ClearCase在实际项目中的应用》进行答疑,答疑范围包括但不限于本视频,参与讨论者可以提出自己既往在使用ClearCase过程遇到的任何问题。本次交流适用于一切对ClearCase或配置管理感兴趣的配置管理行业从业者。

此次讲座通过MSN群:scm@uml.com.cn ,请在讲座前加入群组,加入方法“在MSN中作为联系人加入”。

您可以先通过技术论坛说明感兴趣的议题和问题!

讲座内容

第1部分:配置管理的最佳实践

通过配置管理中存在的问题,以及配置管理的 ,说明配置管理的最佳实践。

第2部分:ClearCase在实际项目中的应用

根据配置管理员在实际项目中碰到的或者是关注的问题,结合配置管理最佳实践,交流作者的在实际项目中使用的应用经验。主要包括以下内容:

  • 统一标识工件,并存入安全的配置库
  • 控制和审计工件的变更
  • 在项目的里程碑处建立相应的基线
  • 支持对工件的并发变更
  • 设置测试环境
  • 历史数据迁移

第3部分:小结 对本次交流进行小结。

讲座资料:

《ClearCase在实际项目中的应用》讲座视频
《ClearCase在实际项目中的应用》讲义

讲座安排

回答大家对视频《ClearCase在实际项目中的应用》产生的问题,分享ClearCase使用中的小技巧。

讲座须知:

  • 主   讲: 沈雪芳
  • 在线讲座时间:2008年05月29日 下午 7:00-9:00
  • 交流地点: MSN群:scm@uml.com.cn ,请在讲座前加入群组。 您可以先通过技术论坛说明感兴趣的议题和问题!
  • 报名方式:填写报名表     如有疑问请致电:   (010)62670862

主讲简介:

沈雪芳,现任厦门东南融通测试中心主管,高级测试工程师,公司ClearCase/ClearQuest实施负责人。8年的IT经验,历任测试工程师、高级测试工程师和测试经理等职;已获得IBM Rational ClearCase Unix Administrator、ClearQuest Administrator、UCM Fundamental Administrator、Rational Unified Process Specialist认证、Rational RequisitePro认证。目前致力于测试管理、配置管理的研究。


交流实录:

主持人 说: 沈老师到了吗
Judy Shen 说: 到了
主持人 说: Judy Shen =沈雪芳
主持人 说: 大家记住了阿
【系统提示】Judy Shen将昵称更改为沈雪芳
沈雪芳 说: 呵呵,不用记住了,我改昵称了
主持人 说:
CHINA ln 说: 是语音还是文字啊》
主持人 说: 大家可以准备一下问题
主持人 说: 文字
主持人 说: 呵呵,便于阅读,记录
主持人 说: 还不乱
主持人 说: 否则很容易乱的
主持人 说:
主持人 说: 那我们准备开始了
主持人 说: 欢迎在线的所有朋友参加我们火龙果软件在2008-5-29日举办的线上活动。
本次交流由UML软件工程组织联合火龙果软件推出,目的是为了让大家有一个交流的平台,能够和专家在线直接沟通,交流经验,共享知识,同时,也欢迎每个人把自己的经验在讲座中与参与者分享。
主持人 说:
· 此次讲座采用在线文字聊天,目的是为了能够让更多地人看到具体的文字信息,相关讲义和视频:http://www.uml.org.cn/MyProcess/GuideView/ClearCaseyy.htm
· 相关技术资源请访问:http://www.uml.org.cn/pzgl/pzgl.asp
· 论坛交流清访问: http://www.uml.org.cn/dvbbs/index.aspx
主持人 说:
今天活动的主题是《ClearCase在实际项目中的应用》。
主讲是沈雪芳老师。
主持人 说:
沈雪芳,现任厦门东南融通测试中心主管,高级测试工程师,公司ClearCase/ClearQuest实施负责人。8年的IT经验,历任测试工程师、高级测试工程师和测试经理等职;已获得IBM Rational ClearCase Unix Administrator、ClearQuest Administrator、UCM Fundamental Administrator、Rational Unified Process Specialist认证、Rational RequisitePro认证。目前致力于测试管理、配置管理的研究。
主持人 说:今天的交流共设了三个部分
主持人 说:1.问题收集,请参加者提出感兴趣的问题
主持人 说:2.围绕问题的讲解和交流
主持人 说:3.发散讨论
主持人 说:好,现在让我们以热烈的掌声欢迎沈老师,也欢迎各位的积极参与
主持人 说:呵呵,说了不少,
主持人 说:现在有问题的提提吧
沈雪芳 说:,欢迎大家就视频提出问题,
沈雪芳 说: 我们共同交流与讨论。
shiquan123875@tom.com (E-mail Address Not Verified) 说:能问 clearquest的问题吗
主持人 说: 可以阿
沈雪芳 说: 你可以先提出来
沈雪芳 说: 我们先收集问题,
主持人 说: 工作中的问题多多吧
主持人 说: 可以举举具体的问题实例
主持人 说: 我这里有个问题,都说产品存在三个库:产品库,受控库,开发库,如何定义和协调这个3个库的关系呢
shiquan123875@tom.com (E-mail Address Not Verified) 说: 我现在想用perl实现改变ClearQuest Designer 的 amin用户密码,我改了半天也实现不了
田浩沛- 说: 视频用什么播》?
shiquan123875@tom.com (E-mail Address Not Verified) 说: 好,那我问个别的,能不能给我将将clearcase 的备份和恢复过程啊
主持人 说: 微软的就可以了
shiquan123875@tom.com (E-mail Address Not Verified) 说: 好,那我问个别的,能不能给我将将clearcase 的备份和恢复过程啊 是步骤吗?
倩女幽魂 说: 不用了吧,还是先大概定下交流的主题吧
shiquan123875@tom.com (E-mail Address Not Verified) 说:
主持人 说: 都说产品存在三个库:产品库,受控库,开发库,如何定义和协调这个3个库的关系呢 主持人 说: 先讨论这个吧
沈雪芳 说: OK
主持人 说: 给大家带来些思路
shiquan123875@tom.com (E-mail Address Not Verified) 说:
沈雪芳 说: 在创建配置库前,我们需要根据不同的管理需要,设置不同的库,例如:编辑库、测试库、产品库等。有的公司则划分为产品发布库、产品受控库、产品研发库。
沈雪芳 说: 不管采用哪种划分方式,实际都是类似的,都是依据项目开发管理需要来进行划分的。假设我们分为编辑库、测试库、产品库,那么这些库分别对应着项目成员工作区、测试人员获取测试程序的工作区、产品正式发布版本的存放位置。
沈雪芳 说: 在传统手工配置管理方式下,这些不同的配置库之间很多都是通过文件拷贝方式实现各个库的管理。这种方式存在两个问题
沈雪芳 说: 一是由于这些配置库之间不是孤立的库,而是相互联系的,它们之间不能通过简单的文件拷贝方式复制
沈雪芳 说: 二是,每个配置项在项目的配置库中应该只有一份,这种采用文件拷贝的方式违背了配置管理系统中配置项的唯一性要求。
在ClearCase中,我们可以使用分支或者流的方式进行映射。
主持人 说: 也就是实际只有一份
沈雪芳 说: 说到这里,对于不同库的管理,就涉及到一个权限的问题了。
沈雪芳 说: 是的
倩女幽魂 说: 产品库是一旦有集成产品时就会产生的吗?
沈雪芳 说: 嗯,
沈雪芳 说: 是的
沈雪芳 说: 产品库里存放的是产品或软件的稳定或发布办法。
倩女幽魂 说: 那是如何维护?
沈雪芳 说: 版本
倩女幽魂 说: 还是我们只需要维护开发库
shiquan123875@tom.com (E-mail Address Not Verified) 说: 概念没看明白 讲讲权限吧
沈雪芳 说: 你所指的维护是指什么?指日常操作吗?
沈雪芳 说: 如果是产品库,我们一般是通过ClearCase的deliver操作产生。
倩女幽魂 说: 不是,一旦模块集成在一起的时候,可能需要在集成好的系统上进行修改
倩女幽魂 说: 那样的系统才能达到产品级的要求
沈雪芳 说: 那这时还在编辑库或开发流上进行工作的。
沈雪芳 说: 出于管理需要,针对不同的配置库,我们需要有不同的安全设置或权限控制。例如,测试库和产品库,只能由配置管理员进行成果的提交;而编辑库作为项目成员的工作区,则不进行权限控制。但是假设项目由多个开发商负责开发,那么对于编辑库,我们则需要针对不同开发商就开发模块/子系统进行相应的权限控制。
倩女幽魂 说: 那么类似这种系统增加,就需要通过多个分支完成,会不会造成过多的分支而难以维护呢?
沈雪芳 说: 有可能。
主持人 说: 举个极端例子吧:4. 一个产品,有多个地区版本,每个地区版本还有多个历史版本,它们之间都存在一些共性和差异性,如何进行有效清晰的版本管理呢,有的时候,当又一个产品特性变更,要改很多地方,很容易混乱?
主持人 说: 有什么好办法么
倩女幽魂 说: 现在有一个情况就是,系统各个模块的耦合度有点高,但又要有旧版本的维护,新版本的开发,而且还是针对不同用户,那这个时候应该如何处理?
沈雪芳 说: 如果这对主持人所指的这种情况
沈雪芳 说: 可以考虑使用UCM的component方式,为共性部分设置为公共组件,然后通过不同项目使用这些公共组件,特性部分在各自项目中使用。
主持人 说: 恩,有道理
沈雪芳 说: 倩女指的这种情况
shiquan123875@tom.com (E-mail Address Not Verified) 说: 说说安全设置或权限控制
倩女幽魂 说: 但目前系统架构达不到这种理想化的要求啊?
沈雪芳 说: 倩女指的这种情况,可以考虑为发行版本、补丁集、新版本各设置一个开发分支。
沈雪芳 说: 没错,目前的系统架构确实存在倩女所指的问题。
主持人 说: 那是否就是放大组件的粒度,采用分支的策略,加上补丁集,
倩女幽魂 说: 还有一个情况就是,我们现在使用的是UCM的单流模式,即所有开发人员的视图都是基于集成流创建的
沈雪芳 说: 稍等,我找个图供倩女参考一下。
倩女幽魂 说: 这种模式是不是更加大了分支功能所需要承受的管理内容
沈雪芳 说: 你们项目规模多大啊,一般很少直接在集成流上开发的
倩女幽魂 说: 公司目前所有项目都是这样创建的,因为CC维护方便,使用也简单些
沈雪芳 说: http://image.it168.com/cms/2008-3-18/Image/2008318113618.jpg 维护项目流或分支的设置例子
沈雪芳 说: 这就是管理和使用上的平衡了。
倩女幽魂 说: 规模嘛,子功能模块大概十来个,3万的代码量吧
主持人 说: 不大阿
沈雪芳 说: 之前,我在深圳IBM沙龙时,有同行就问
主持人 说: shiquan123875@tom.com 的问题,说说安全设置或权限控制
田浩沛- 说: boland公司那个配置管理工具和CC比有什么优劣式
沈雪芳 说: 项目的流到底该怎么设置,是选择一个人一个流,还是整个项目都使用一个流。这就和公司管理需要有关了。 好的,倩女这个问题先到这里。
沈雪芳 说: 下面我们说说shiquan提到的安全设置和权限控制
shiquan123875@tom.com (E-mail Address Not Verified) 说:
沈雪芳 说: ClearCase通过以下四种类别的权限来进行安全控制:操作系统权限、VOB/View权限、目录权限和文件权限,这四种权限是逐层嵌套的。
倩女幽魂 说: CC提供了很细致的权限设置控制啊,要看公司管理权限要达到什么程度吧
沈雪芳 说: 是的
沈雪芳 说: 在你能访问clearcase的element时,要考虑到:
沈雪芳 说: 1.vob storage的权限
shiquan123875@tom.com (E-mail Address Not Verified) 说: vob storage 是不是大家共享的?
沈雪芳 说: 2.view的权限
3.是否有目录访问的权限
4.是否有访问element的权限
5.是否有触发器限制你访问
倩女幽魂 说: 等下讲讲CCRC的权限设置问题吧^_^
沈雪芳 说: 如果你没有在vobstorage设置的那个组里,你不能访问
China 空空 说: 具体如何设置呢?
China 空空 说: 是否组太多了也不行?
倩女幽魂 说: 对于VOB的storage共享我觉得是挺不安全的
沈雪芳 说: 是的,组太多了也不行。
shiquan123875@tom.com (E-mail Address Not Verified) 说: 我觉得不是很安全吧
沈雪芳 说: 为了安全,一般推荐vob server在linux或unix下
China 空空 说: vob多的话怎么控制比较好呢
shiquan123875@tom.com (E-mail Address Not Verified) 说: linux上如何设置共享?
沈雪芳 说: 指权限,还是指空间大小?
shiquan123875@tom.com (E-mail Address Not Verified) 说: 权限
沈雪芳 说: linux上,可以通过samba共享来实现windows用户的正常访问。
沈雪芳 说: vob的权限,你可以通过为不同项目组设置用户组,然后在创建vob之后
沈雪芳 说: 修改vob的aditional group
倩女幽魂 说: 对了,一台VOB server所能够承担的最多VOB数量是多少啊?
沈雪芳 说: 这个和vob server的机器性能有关啊。
沈雪芳 说: 还有vob里element的多少有关的。
shiquan123875@tom.com (E-mail Address Not Verified) 说: 要是超载该怎么办?
沈雪芳 说: 我们一台服务器支撑了2、30个的vob呢。
沈雪芳 说: 还和vob的使用频率有关。
沈雪芳 说: 如果超载了,表现就是vob的访问变慢了。
倩女幽魂 说: 如果能够有足够的硬盘空间,内存为2G的
shiquan123875@tom.com (E-mail Address Not Verified) 说: 多大硬盘呀300G
沈雪芳 说: 最多的vob数估计要ibm提供官方数字了。
沈雪芳 说: 我这里只能提供我在实际中碰到和看到的使用情况。
倩女幽魂 说: view server和VOB server处于同一台机器上,视图量对VOB访问的影响到底有多大?
沈雪芳 说: 30个VOB是没问题的。
沈雪芳 说: 你项目中的view是使用ccweb视图,还是cc 传统视图啊
shiquan123875@tom.com (E-mail Address Not Verified) 说: 超载了了是不是得想办法迁移啊,请问如何迁移?
沈雪芳 说: 超载的话,几个解决办法了
沈雪芳 说: 1.将没用的vob移走(具体迁移我们一会再说)
shiquan123875@tom.com (E-mail Address Not Verified) 说: OK
沈雪芳 说: 2.对vob执行scrubber,减少vob空间
沈雪芳 说: 3.增加硬件了
沈雪芳 说: 另外还有一种办法,将部分vob移到其他vob server上,也就是增加vobserver
倩女幽魂 说: 还想问下CC的环境能不能支持子域的模式啊?
沈雪芳 说: 倩女的意思是,是想在多个域中使用吗?
倩女幽魂 说: 不是,是有一个主控的域,下面建立子域的环境
沈雪芳 说: 我没有这么用过。
倩女幽魂 说: OK,谢谢
沈雪芳 说: 但是,我们有客户的环境是建立了多个域
沈雪芳 说: 开发人员进入不同项目时,需要切换到不同的域
shiquan123875@tom.com (E-mail Address Not Verified) 说: ( 同一域里) 如果我将vob copy到 我的另外一个硬盘 该怎么做
倩女幽魂 说: 多域环境需要用multisite吧
沈雪芳 说: 我想这应该和你所说的主域下建立子域的环境应该类似。
沈雪芳 说: 不用把。
沈雪芳 说: multisite是针对于分布式环境下才要用的。
沈雪芳 说: 呵呵,混淆了multisite的用处啦。
倩女幽魂 说: 那么在多域情况下,如何同步?讲讲吧^_^
沈雪芳 说: 我们先说说shiquan提出的迁移吧,轮流解答网友的问题,一会我们再来讨论倩女提出的多域
倩女幽魂 说: 同域环境下的迁移很简单吧
倩女幽魂 说: 直接ccopy,再重新注册下就可以了呀
沈雪芳 说: 数据迁移包括三种:
1.旧版本ClearCase的VOB数据
2.不同操作系统的VOB数据迁移
3.其他配置管理工具的数据迁移
沈雪芳 说: 倩女可以告诉大家改什么注册表信息呢。
shiquan123875@tom.com (E-mail Address Not Verified) 说: 对 说说具体步骤
倩女幽魂 说: 1.停止VOB服务
倩女幽魂 说: 2.ccopy VOB内容到新的位置
主持人 说: 倩女幽魂 看来很熟啊
倩女幽魂 说: 3.在服务于的registery处重新修改VOB的tag和Object信息
shiquan123875@tom.com (E-mail Address Not Verified) 说: 2.ccopy VOB内容到新的位置
能不能说的详细点
沈雪芳 说: 就是copy到目标位置啊
倩女幽魂 说: 命令有帮助提示的啊
shiquan123875@tom.com (E-mail Address Not Verified) 说: 那原位置,是指的vob原目录 拷贝到新的目录下吗
倩女幽魂 说: 我现在就是在头痛多版本维护的问题啊
沈雪芳 说: 上面倩女所说的迁移步骤很详细,针对相同操作系统下的迁移很适用。
倩女幽魂 说: CC的symblink是在什么情况下使用呢?
倩女幽魂 说: 这个功能似乎跟VSS的share很像,但似乎又没有那个好用啊?
沈雪芳 说: 如果需要在不同操作系统之间迁移,则需要增加执行reformatvob操作步骤。
沈雪芳 说: 按照我使用vss、pvcs还有cc的感觉
沈雪芳 说: share
沈雪芳 说: 你所说的share功能,我个人感觉更像cc的公共组件。
倩女幽魂 说: 如果只给你一个组建,使用一个组建中的目录结构来管理一个系统,这种模式下能够进行很好的CM吗?
沈雪芳 说: 对于多版本维护,这个确实是项目中很头疼的问题。
有旧版本的维护,新版本的开发,而且还是针对不同用户
可以考虑将新版本和旧版本按照不同的分支或流来实现啊。
倩女幽魂 说: 现在已经是单流了,没办法使用多流模式了啊
沈雪芳 说: 那很难管理像你说的这种情况啊。
倩女幽魂 说: 使用多project来管理如何?
沈雪芳 说: 因为新版本不见得是在旧版本基础上来,可能涉及重构等工作。
沈雪芳 说: 可以
沈雪芳 说: 但是,管理成本挺高
沈雪芳 说: 而且还很容易出错。
沈雪芳 说: 比如,某个缺陷在项目1(旧版本)中修正了,但是忘记在项目2(新版本)中也做相应修正。
倩女幽魂 说: 管理成本高?怎么一个说法
主持人 说: 怎么样避免这种遗漏呢
倩女幽魂 说: 我是指的CC中的project,不是实际的项目
沈雪芳 说: 是啊,我也是指cc中的project,
倩女幽魂 说: project间不是可以有同步的吗?
沈雪芳 说: 你指rebase吗?
倩女幽魂 说: 不是,是merge
倩女幽魂 说: 单流模式下没有rebase
沈雪芳 说: 我现在有些混淆你的场景了。
沈雪芳 说: 你不是在cc中,为不同的发行版本创建了一个cc项目
沈雪芳 说: 然后这每个cc项目都是单流
倩女幽魂 说: 整个系统是一个CC项目,工程只用了一个组建管理,子模块是通过目录来划分的
主持人 说: 有个关于变更的问题
主持人 说: 如果 变更还没有结束,例如已经评审接受,执行过程中这个变更又有变更,怎么办
倩女幽魂 说: 使用多project来管理如何?
这里的project对应到你刚才那句话中的哪个?
沈雪芳 说: 我的想法是提交新的变更活动
倩女幽魂 说: 就是想使用多project的模式来完成不同版本的维护
倩女幽魂 说: 就是说有新增功能系统时,从原有的project继承出一个新的project,然后继续开发
沈雪芳 说: 可以啊
沈雪芳 说: 那你这个做法,不就和新建流类似吗?
主持人 说: 原来的变更还没有完成,新的变更怎么算
主持人 说: 原来的变更还直行么
沈雪芳 说: 实际这时是对component进行创建分支操作了。
倩女幽魂 说: 好像是,可行的话就好
倩女幽魂 说: 我现在就是怕实际走不通
沈雪芳 说: 我刚才发的图的链接,就是针对component来创建分支的
沈雪芳 说: 主持人刚才提到的变更已经评审结束
主持人 说: 是啊
倩女幽魂 说: 嗯,我想我基本可以通了,谢谢
沈雪芳 说: 如果变更流程是针对评审结束的活动状态是关闭的话,一种就是刚才说的新建变更,另一个办法可以把变更重新打开。在执行变更时,增加第二次变更所花的工作量。
主持人 说: 第二个次变更评审的时候,是否打断第一次变更的执行呢?
沈雪芳 说: 如果这两个变更涉及内容相同的话,第一个变更我是觉得就可以直接关闭了;如果影响范围不同的话,第一个变更继续执行了。至于说影响范围是否相同,需要变更接受人进行范围分析时决策的了。
倩女幽魂 说: 之前提到了CCRC的权限问题,能不能说说呢
主持人 说: 变更如果影响了多个产品的版本,有没有好的分析方法
沈雪芳 说: CCRC的权限,能否具体一下?
倩女幽魂 说: 变更评审啊,这个不是一个人可以决定的吧
沈雪芳 说: 我知道一些大公司在变更这块,尤其是产品型的变更,都要开评审会决定的。
倩女幽魂 说: 就是使用CCRC,在CC web的服务器端有哪些权限控制
倩女幽魂 说: 通常CC web server会有暴露在net上,其安全需要评估
沈雪芳 说: 如果是你所说的这个,
沈雪芳 说: 我想是属于系统管理员或网络管理员的任务了。
沈雪芳 说: 因为他怎么保证放到公网上的机器不受攻击
沈雪芳 说: 这需要一个固定的外网IP
倩女幽魂 说: 哦,那web server的登陆用户管理权限是不是应该很高呢
沈雪芳 说: 说到这个,就涉及到经常有人问到的,ccrc和cc multisite,究竟应该怎么选择。
主持人 说: 变更的时候经常范围影响分析疏漏,利用Component的机制具体怎么分析
倩女幽魂 说: 就是说登陆veb server的域帐户是不是应该在clearcase管理组中?
主持人 说: 例如多个产品版本的公共 Component,关联的Component
沈雪芳 说: web server的登陆用户,和普通的cc用户一样,该有什么vob权限就设置什么权限。
沈雪芳 说: 域用户不用再管理组中
沈雪芳 说: 而且,使用ccrc,cc用户可以不用在域里。
倩女幽魂 说: 还有就是,创建web view的时候
倩女幽魂 说: 是不是web server端需要共享一个view的存储目录
沈雪芳 说: 不需要共享一个view的存储目录
沈雪芳 说: 主持人的问题是什么意思呢?
倩女幽魂 说: 使用ccrc,cc用户可以不用在域里?
登录连接的时候帐户还是域帐户吧?
主持人 说: 变更发生的时候,要分析都应想到哪个版本,怎么利用版本树,Component的关系分析呢
沈雪芳 说: 我的意思是,可以是域用户,也可以不用域用户。
主持人 说: 正在与们这个问题
主持人 说: 郁闷
主持人 说: 呵呵
主持人 说: 这个问题不知道配置管理方面有没有思路
倩女幽魂 说: 这个不应该是CM能够分析得了的吧
主持人 说: 是啊
主持人 说: 需求变更的问题
主持人 说: 我觉得配置管理有产品的配置项结构
主持人 说: 是否可以找到个思路呢
沈雪芳 说: 我的想法是,可以利用component的版本树,对于特定版本,我们需要打基线。而cc有个优点,就是他的基线关联到活动,可以知道每个基线包含的内容。我们可以通过活动内容,知道某个基线都有些什么。
goder (E-mail Address Not Verified) 说: 哦,原来这样
主持人 说: 嗯,我可以看到从一个组件追溯到有相关组件,所有的版本么?
沈雪芳 说: 我想可以通过编写脚本实现。
沈雪芳 说: cc的强大之处在于提供了很强大的二次开发功能。
沈雪芳 说: 只有想不到没有做不到,呵呵,为ibm做广告了。
倩女幽魂 说: 的确是
shiquan123875@tom.com (E-mail Address Not Verified) 说: 什么时候给讲下CC 的二次开发
主持人 说: 现在就介绍一下吧
goder (E-mail Address Not Verified) 说: 是啊
主持人 说: 哪些适合二次开发
沈雪芳 说: CC的二次开发,不像CQ那样,可以改到界面这些东西
沈雪芳 说: 我理解的二次开发,就是通过perl写脚本来实现一些管理功能。
沈雪芳 说: 例如触发器,或者管理需要的脚本。
沈雪芳 说: 触发器就没什么说了。
shiquan123875@tom.com (E-mail Address Not Verified) 说: 说说perl
沈雪芳 说: 至于管理需要的脚本,例如,我们还可以利用基线的版本识别功能,获取两次上线的增量差异包,用于制作产品上线发布包
沈雪芳 说: 我想今天时间有限,只能是方法和思路的交流和探讨了,至于perl的语法、怎么写,这个可以会后交流了。
倩女幽魂 说: 讲讲审计吧,总是说要进行配置审计,但到底我们应该审计些什么呢?
shiquan123875@tom.com (E-mail Address Not Verified) 说: 能不能用perl写个比较简单的脚本 举个列子
倩女幽魂 说: 物理审计?功能审计?
沈雪芳 说: 恩,包括这两种审计。
沈雪芳 说: 物理审计,比如,文档名符合标准了吗,
倩女幽魂 说: 那不是应该QA检查吗?
沈雪芳 说: QA审计两种,一个是工件有没有,一个是过程符合过程规范不
沈雪芳 说: 和CM审计不一样
沈雪芳 说: QA审计,不管文件名对不对的
倩女幽魂 说: 还有就是文档名符合标准与否对于项目会有什么影响呢?
沈雪芳 说: 物理审计:有没有,配置标识是否正确;有没有基线本身的发布记录。
功能审计,审计配置项的一致性。这主要通过在入库时,通过评审单来验证(别人的证据)。变更都关闭了吗?基线产物间的关系(如这个基线有测试报告),源码和设计的对应关系。
沈雪芳 说: 文档名是否符合规范,只是个例子。
倩女幽魂 说: 如果还在需求设计阶段的时候,功能审计应该关注些什么呢?
沈雪芳 说: 大家都遵循同一个规范才好做事啊。就像,源码是否要按要求命名,源代码编写按规范来编写一样,都是为了项目好管理,后续好维护。
主持人 说: 如果没有工件
主持人 说: 都归为不合理么?
倩女幽魂 说: 文档名规范性我们现在是要做的,但是我总觉得不能有很强的说服力要别人一定这样命名
沈雪芳 说: 问题很好啊。如果在需求阶段,功能审计,可以审计项目立项的一些信息。
主持人 说: 如果没有工件
沈雪芳 说: 指项目吗?
主持人 说: 是啊
沈雪芳 说: 工件是一个很大的概念啊
沈雪芳 说: 项目的产出物都是工件啊,包括文档、源码、可执行程序等。
主持人 说: 呵呵,文档
沈雪芳 说: 所以,项目都会有工件啊。就算项目刚立项,也要有立项相关的工件,例如立项评审记录
主持人 说: 如果规定文档了,因为特殊原因没有,这个特殊处理的程度怎么把握
沈雪芳 说: 过程的才叫
沈雪芳 说: 裁剪
倩女幽魂 说: 大多项目都存在这个问题的,有时候没有文档制品项目照常进行
沈雪芳 说: 如果裁剪被批准了,就可以了。至于裁剪的尺度,需要EPG组成员来把握,CMO没法掌控,也不是他的职责。
倩女幽魂 说: 所以强制的时候很没说服力啊
沈雪芳 说: 呵呵,超出CMO职责了啊。
沈雪芳 说: 这个不是工具的问题啊,是公司管理问题了。
主持人 说: 问个问题
沈雪芳 说: 什么呢。
倩女幽魂 说: 还有点,其实CC提供了很强的版本管理功能,那我们还需要统计来做什么呢?
倩女幽魂 说: 统计些什么呢?
主持人 说: 如果是团队开发,如何能够支持有效的开发与迭代
主持人 说: 配置管理方面
沈雪芳 说: 我个人的感觉是这样的,CC记录了很多信息,但是这些信息,是零碎的,或者说,不一定满足或符合具体公司的管理需要。所以这时,就需要有额外的统计了(就是CM过程的配置状态报告)
沈雪芳 说: 我们可以通过人工来统计,也可以根据需要编写脚本生成我们需要的统计报表。
沈雪芳 说: 我们可以根据公司配置管理过程的需要定义审计信息的表现形式,通常包括以下内容:
版本变更记录、配置状态报告、版本信息、版本差异统计、代码行统计等
沈雪芳 说: 主持人的这个问题,设置到对工件如何支持并行开发了
主持人 说: 我觉得迭代开发很重要的是持续发布
主持人 说: 这个就会产生多个发布版本问题
沈雪芳 说: 恩,持续构建
主持人 说: 而且发布会由增量,也必然会有变更
主持人 说: 配置管理的挑战应该挺大吧
主持人 说: 这个发布,每次发布纳入产品库?么
沈雪芳 说: 这种发布,每次发布不纳入产品库
主持人 说: 怎么处理?
主持人 说: 很想听听
主持人 说: 问题有点大了,呵呵
沈雪芳 说: 说说我个人看法了
倩女幽魂 说: 找台机器存着就行了
倩女幽魂 说: 呵呵
主持人 说: 倩女 呵呵很会开玩笑阿
倩女幽魂 说: 因为我现在就是这样做的啊
沈雪芳 说: 为什么不覆盖呢?
沈雪芳 说: 可以给每天的构建打个基线。
沈雪芳 说: 到了需要对外发布时,提交测试,当测试通过,才升级到产品库。
主持人 说: 如果是一个team,覆盖应该没问题,如果是多个team,不会是简单的覆盖吧
主持人 说: 因为大家的开发进度是不一样的
倩女幽魂 说: 嗯,针对不同版本的不能覆盖
沈雪芳 说: 恩,赞同。
沈雪芳 说: 但是,我有点不理解
沈雪芳 说: 发布到的这台机器,是测试环境吗
主持人 说:
主持人 说: 到了需要对外发布时,提交测试,当测试通过,才升级到产品库。
沈雪芳 说: 如果是测试环境,不同team或不同版本,应该是对应到不同的测试项目。
主持人 说:
主持人 说: 可以在测试后控制
主持人 说: 以后有机会讨论下配置管理和开发模式的问题
主持人 说: 呵呵
主持人 说: 今天的时间到了
主持人 说: 大家还有问题么
沈雪芳 说: 哦,你说的场景会不会类似,一个项目有多个子系统,然后每个子系统开发进度不同。
主持人 说: 是的
倩女幽魂 说: 之前的多域还想忘记讲了
沈雪芳 说: 我们一个客户,也是这样的情况
主持人 说: 哦?怎么处理的
沈雪芳 说: 解决办法是子系统自己测试通过了,才提交全系统进行测试。
主持人 说:
沈雪芳 说: 因为有些公共部分的程序,不能随意更新
主持人 说: 是啊
主持人 说: 这个配置项的分解应该挺关键的
沈雪芳 说: 是的,
沈雪芳 说: 在讲义里有一部分就是配置项分解
主持人 说: 好好看看
主持人 说: 多域还想忘记讲了,简单讲一下吧
主持人 说: 10分钟之内
主持人 说: 辛苦沈老师了吗
主持人 说: 呵呵
沈雪芳 说: 多域
沈雪芳 说: 倩女的问题是什么呢。
倩女幽魂 说: 同步
倩女幽魂 说: 如何同步
沈雪芳 说: 我没有听过多域的同步,孤陋寡闻了。
沈雪芳 说: 但是我想了解一下,为什么会提到多域的同步,是什么需求呢。
倩女幽魂 说: 多域使用不用同步吗?我没用过所以。。。
沈雪芳 说: 如果是管理员想看到其他域的内容,完全可以有个大域,可以看到所有vob storage的内容。
沈雪芳 说: multisite有同步,
沈雪芳 说: 域的同步有一个
沈雪芳 说: 那是针对windows和linux之间有域同步,
沈雪芳 说: 至于windows之间,多个域的同步,我是没有听过
倩女幽魂 说: 也就是说这里的多域情况,并不是我所想的一个项目在一个域中开发,还需要在另外一个域里开发咯?
沈雪芳 说: 使用多域,目的其实是为了隔离项目成员,是权限管理的一种方式。
倩女幽魂 说: 那我晓得了,谢谢
沈雪芳 说: 但是,如果说,开发人员知道域名,他也懂得使用CC nativer client的一些管理操作,他完全可以自己来回切换域
主持人 说: 呵呵,不错
主持人 说: 好的
沈雪芳 说: 不是的,一个项目只能在一个域中开发。
沈雪芳 说: 你之前提到的merge,
倩女幽魂 说: OK,知道了
沈雪芳 说: deliver和rebase操作中才会用到。
沈雪芳 说: ok
倩女幽魂 说: merge也可以在project间吧?
沈雪芳 说: 没听过。
沈雪芳 说: 呵呵,其实,你可以进入project explorer,在这里,并没有看到merge这个操作啊
主持人 说: 沈老师还有什么要交代的么
倩女幽魂 说: 我是在开始程序菜单里面用的
主持人 说: 好的
主持人 说: 今天就要结束了
主持人 说: 我在总结一下吧
倩女幽魂 说: 好的,谢谢沈老师了,今天真是辛苦了
沈雪芳 说: merge针对element的,包括目录和文件
主持人 说: 是啊,首先是感谢沈老师,
沈雪芳 说: 不客气。
主持人 说: 他的宝宝才满月吧
主持人 说: 是在很辛苦的情况下来参加这个交流的
主持人 说: 在此代表大家表示非常地感谢
主持人 说: 还有也谢谢大家的参与
主持人 说: 希望交流可以带给您收获与启发,
主持人 说: 好了,不早了,还有人在饿肚子吧,
goder (E-mail Address Not Verified) 说: 今天收获很多
主持人 说: 再次感谢沈老师,就到这里了
沈雪芳 说: 再见
主持人 说: 886
goder (E-mail Address Not Verified) 说: 88
倩女幽魂 说: 88

最新公开课计划

成功案例
配置管理实践(从组织级到项目级)
通号院 配置管理规范与应用
配置管理日构建及持续集成
丹佛斯 ClearCase与配置管理
中国移动 软件配置管理
中国银行 软件配置管理
天津华翼蓝天科技 配置管理与Pvcs
 
 
 

相关培训课程

产品发布管理
配置管理方法、实践、工具
多层次集成配置管理
使用CC与CQ进行项目实践
CVS与配置管理
Subversion管理员

火龙果软件/UML软件工程组织致力于提高您的软件工程实践能力,我们不断地吸取业界的宝贵经验,向您提供经过数百家企业验证的有效的工程技术实践经验,同时关注最新的理论进展,帮助您“领跑您所在行业的软件世界”。
版权所有:UML软件工程组织