接着上次会议ClearQuest+ClearCase+Jazz+RTC宣讲会后的一些个人记录 后。继续宣讲RTC。
所以提前做些预习工作
稍微search 发现IBM的RTC的东西都帮你整理好了。BM 官方RTC学习路线图都出来了。地址 。
所以说。根本上不用自己劳心找资料了。
第一部分:掌握基础知识
要注册个jazz。net的账号。
有点变态的是:Password must have a minimum of 3 alphabetic characters (这是我第一次看到这么变态的密码规则。目前未知IBM为什么要这么做。****e123*56)
入门中文文章:使用 Rational Team Concert 进行软件配置管理 。
Rational Team Concert 是 Jazz 平台的基于 Eclipse RCP 的客户端,是一个为软件开发团队创造协同工作环境的软件。
Rational Team Concert 除了小组联合 Jazz 环境中的性能之外,还包括整合的工作项目跟踪, 源代码控制和构建管理支持。它将为敏捷小组提供开发环境中高度协作的经验, 尤其是对那些小型和中等规模的团队。
update 2010-08-12
RTC的5个功能
1 :包括大部分ClearCase的功能,继承改进了UCM。(使用过UCM的人会很容易上手)
2 :包括大部分ClearQuest的功能,并且糅合了ALM package的思想.( 使用过 ClearQuest 的人会很容易上手,不过阉割版的。比 ClearQuest会差很多。别期望太高 )
3 :自动构建功能,类似 Rational Build Forge 功能。(具体不清楚它的power程度,待观察)
4 :项目管理功能,敏捷的项目管理。其实就是一些数据的统一展示。和简单的时间划分。(具体不清楚它的power程度,待观察)
5 :报表,仪表盘等功能.(IBM一直鼓吹的BIRT 报表。具体没用过。不知道power程度,待观察)
未来3.0版本会加入
6 :需求管理功能,从Doors那边继承过来的。
7 :测试管理功能,从RQM那边继承过来的。
其实就是ALM+UCM+Jazz三大概念的融合。
ALM的研究见地址: ALM研究实录 。ALM本身不是个新的概念,只是IBM这次的ALM有点较新。因为重新包装过。
UCM的研究见地址:ClearCase完全攻略目录 。UCM是个还算复杂的概念。值得试验体会。
Jazz的研究见地址:ClearQuest+ClearCase+Jazz+RTC宣讲会后的一些个人记录 ,Jazz我也不是特别深入理解。皮毛而已
RTC这个产品得天独厚的糅合了自己家的精兵强将的绝技。不知道能够成为武林高手不。还待观察。
几个基本概念为:(IBM的一个新产品就会附带很多新概念。要习惯。 )
1.Repository :用来存储 Jazz 的相关数据,每项数据有一个唯一的 ID 所标识。Repository 组件的 API 提供了创建,更新,追踪和删除数据项的功能。
Repository 由关系数据库来支持,目前 Jazz 支持两种关系数据库系统,分别是 Apache Derby 和 IBM DB2 数据库 。 (这个比较悲剧)
update 2010-08-12
收到消息说可以支持oracle等数据库了。。(不过只有企业版支持大部分数据库。还好有60天的全功能试用期。其他版本基本上脑残 )
查证官方资料:
IBM® Rational® Team Concert 标准版支持Oracle 10g R2,DB2 9.1/9.5。地址 。
IBM® Rational® Team Concert 易捷版支持Apache Derby。
IBM® Rational® Team Concert Express-C免费版支持Apache Derby
IBM® Rational® Team Concert Enterprise企业版支持 Apache Derby IBM DB2 Microsoft SQL Oracle
2.项目域 (Project Area) :项目域是项目在系统中的表示,提供了对项目流程,进度安排,团队架构等的定义。总之,项目域可以管理项目相关的方方面面和项目各要素之间的联系,范围涵盖项目的开发和维护。
3.团队域 (Team Area) :团队域是团队在系统中的表示,提供了对团队成员,成员的角色,权限,团队所要完成的开发任务,团队基于项目流程的定制等方面的定义。一个项目域可以包含有一个或多个团队域。
4.工作项 (Work Item) :工作项是对用户要完成工作的描述,涉及项目不同的模块或功能工作项可以被集合在 Work Item Caretory 里面,便于查看。
Work item 有不同的类型,可以是一个需求变更,一项开发任务,一个需要解决的缺陷或者是任何一种自定义的工作。开发人员的信息交流和协作就围绕 work item 展开。
5.流程 (Process) :流程在项目域中定义,不同团队可以根据自身情况在团队域中进行定制。流程可以根据项目复杂度,规模的不同而不同。与流程相关的还有两个比较重要的概念 ::
(1)流程模板 (Process Template) :不同的流程模版提供了不同侧重的对流程的详细说明以及迭代结构的描述,用户可以在流程模版的基础上稍作修改以得到适合自身项目的流程定义。
(2)流程行为 (Process Behavior) :不同的流程,有对操作的先决条件及后续操作的不同定义,流程行为用来定义流程中操作的先决条件及可能的后续操作。
活动:定义工作细分以及工作流
能力模式:描述一组可复用的活动
交付流程:描述用于执行特定项目类型的完整和集成的方法,例如迭代流程或瀑布式交付流程
描述符:描述活动中的具体内容元素如任务,角色和工作产品
Jazz 平台提有两种预先定义好的流程 可供使用,另外用户也可以根据项目特点自行修改或者创建流程。
Jazz 提供两种流程模板,分别是 Eclipse Way 和 openUP ,Eclipse Way 流程是一套适用于敏捷开发的迭代式流程, openUP 流程则保留了 Rational Unified Process(RUP) 中的很多元素,
6.开发基线 (Development Line) :代表项目域中一组独立的开发活动,这些开发活动有自己的目标,可交付程序,团队,流程,进度安排等。比如一个项目域中包含对某项目新版本的开 发以及旧版本的支持和维护,就可以定义两条开发基线,一条描述新版本的开发,一条描述对旧版本的支持和维护。
7.迭代 (Iteration) :项目开发由不同的开发周期组成,迭代定义了不同开发基线下不同的开发周期。
8.角色和权限 (Roles and Permissions) :在项目域和团队域中都可以对角色进行定义,一个团队成员可以被分配一个或多个角色。权限主要定义了用户所能够执行的操作,不同的权限,可执行的操作也不同。
如何使用 Rational Team Concert 开始软件开发的工作,
包含以下几个步骤:
1. 创建 Repository 连接
2. 构建项目
连接到 Repository 后,可以创建项目域,项目域主要被用来管理项目的发布,团队的结构,项目流程和进度安排等。
(ps:想知道自定义流程在哪里? )
update 2010-08-12
从ClearQuest那边继承过来状态矩阵图思想,可以定制流程。
3. 构建团队
创建项目后,可以创建团队域,部署团队人员,分配团队成员在项目流程中的角色,定义团队在完成项目的过程中所需要的信息。
(ps:想知道创建团队域为什么要关联一个开发基线? )
update 2010-08-12
从ClearCase那边继承过来UCM思想。什么隐含基线之类都有。这样想就明白了。
创建用户的时候,可以上传个相片。比较神奇。。。哈哈。
全部用户,这样确实非常好找。一目了然。并且团队之间都好认识。(如果使用真实相片的话)
4. 为团队配置项目流程
创建项目后,可以根据自身项目的特点对项目流程进行配置,项目流程一般由开发基线 (Development Line),迭代 (Iteration),项目角色及工件类型组成。 在 Rational Team Concert 中用户可以修改或创建开发基线及迭代以完成对项目流程的配置,通过修改迭代的起止时间来安排项目的进程。
通过对 Process Specification 的编辑,用户可以从多个方面对项目流程进行创建,修改,定制自己的流程,更好地服务于项目开发。
(ps:感觉可定制性太差。 )
update 2010-08-12
阉割版的ClearQuest功能不能够期望太高
用 Rational Team Concert 进行变更管理及版本控制
一些相关概念。(IBM的一个新产品就会附带很多新概念。要习惯。 )
1.工作区 (WorkSpace) :工作区是提供给用户来浏览或修改组件的地方,我们可以在 My Repository Workspaces 选项上单击右键来创建,创建的过程中需要选择 Repository Connection 和项目相关的流,方可创建成功。
2.组件 (Component) :组件由一个或多个工件组成,比如一些描述网页内容的文档,一些项目中的 Eclipse 插件。创建工作区后,可以选中工作区,单击右键来创建组件,
3.流 (Stream) :流由一个或多个组件组成,流和组成它的组件可以和一个或多个变更集相关联。流还和项目域相关联,在项目域创建成功后,会自动生成缺省的流和组件。
4.变更集 (Change Set) :顾名思义就是一些相关变更的集合,变更集只能描述针对一个组件进行的变更,其中的变更会被一起交付给某个流。变更集通常会和某一个工作项 (Work Item) 相关联,比如 Defect,Enhancement(这些工作项可以在项目域中的 Project Configuration 中定义),和工作项相关联的目的是基于工作项给出具体的关于变更的描述。通常用户要做出变更时,会创建变更集,可以在 Pending Changes 选项卡中选中某个组件,单击右键进行创建。创建后会出现一个 Outgoing 文件夹,里面是生成的变更集,为 Joshua Bell 创建的变更集,单击右键和某个工作项关联后,关于工作项的修改就会反映在变更集中。选中变更集单击右键可以选择交付,挂起,忽略或者撤销当前的变更。变更 集一共分为三类:
1) Outgoing 为当前用户创建,只能选择交付,挂起,撤消或者回滚当前的变更。
2) Incoming 另一用户创建,当前用户浏览时会显示为 Incoming,当前用户只能选择接受变更,
3) Suspended 为挂起的变更,挂起变更的目的是用户停止对变更集的更改,当不同用户的变更出现冲突时,可能会将变更挂起做进一步的调研,对于挂起的变更只能进行撤销或者恢复动作,
交付变更
通过交付操作,可以使团队的其他用户看到某用户做出的变更。通常来说交付变更的全过程为:
1. 创建变更集
2. 为变更集关联工作项
3. 修改工作项中的描述或相关文件
4. 标记变更集为完成状态
5. 直接交付变更或提交变更给某些团队成员审查
(ps:这个概念类似ClearCase的deliver? )
update 2010-08-12
一模一样
版本控制机制
Jazz 采用乐观锁模型来控制版本,用户无需对要修改的文件进行检出或锁定。用户每交付一次变更,就会增加一个版本。如果两个用户都同时对同一个文件进行了修改,在这种情况下,交付时会有可能发生潜在的冲突。
看完这个文章。大概有个认识了。
接着看Rational Team Concert Express (RTCE) 入门简介 是一个项目完整例子。非常不错。RTCE居然自带截屏功能。这个赞一个。
安装的文章:安装 IBM Rational Team Concert Express-C ,
使用 IBM Rational Team Concert 进行实时协作和开发 是一个项目完整例子。非常不错。(需要IBM的账号登陆。注册个就行了)
并且还有在线试用。在线试用
企业版可以下载 60 天试用期的免费 试用版 。
试用的时候好像也可以技术支持,不知道有没有回复。哈哈。简体中文技术支持
一个很重要很直观的RTC太透明了。杀伤力非常大。IBM的自圆其说。
update 2010-08-12
收到的一些其他信息:
- RTC用户管理:自己管理,或者集成LDAP管理
- 多了个web 2.0的RSS Feed功能。订阅功能非常强大。值得期待
- 可以集成聊天工具,IBM自己的,jpore(开源的,这个不清楚全写),GTalk。目前不支持集成QQ,MSN
- RTC用户权限分两层,一层是RTC系统的权限。分5级。一层是RTC系统里面创建的项目里面配置的权限。自己随便配置
- RTC创建用户会默认密码同用户名,新用户第一次登录会提示修改密码。以后用户自己也可以修改密码。
- RTC支持java代码自定义类似Clearquest,Clearcase的trigger功能(具体不清楚)
- work item工作项,可以定义很多工作类型。比如defect,requirement,plan等。这个和传统的不一样。需要消化。
- 加入web2.0的tag功能。搜索的时候可以搜tag
- RTC流程定制直接修改就生效。无须 类似Clearquest的desinger升级
- 增加了个审计功能。不过需要人手工调配。