求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
 
  
 
 
 
使用 IBM Rational Team Concert V2 管理 Scrum 项目,第 1 部分: 创建项目、团队和计划
Jazz 技术能够帮助进行敏捷规划和项目管理

2010-06-29 作者:Millard Ellingsworth,Thomas Starz 来源:IBM

 
本文内容包括:
在超过一年多的时间里,我们一直在使用 IBM® Rational Team Concert™ 来支持我们的 Scrum 团队,享用它的特性,与它的缺点共存,并发展它的下一个版本。使用 IBM Rational Team Concert V2,Jazz 和 Rational Team Concert 团队可以向 Scrum 和敏捷评估、规划支持交付显著的改进(更不要去提更加改进的 Web 客户端以及许多其他新的特性)。本文对 IBM Rational Team Concert V2 以及 Scrum 过程提供了高级的指导,并强调突出了对 Scrum 项目及其管理很重要的新特性和功能。本文更新了发表于 2008 年的文章“怎样在 IBM Rational Team Concert 和 Jazz 平台下应用 Scrum 项目管理方法”。

专业术语 scrum 起源于橄榄球运动,是 scrummage 或者 scrimmage 的简称。在软件开发中,scrum 是敏捷开发过程中管理项目的方法。其目的是在尽可能最短的时间内,向投资者交付最高的商业价值。Scrum 过程可以帮助剩余的最有价值特性在接下来得到创建,它强调工作会在快要交付时得到完成。工作构建于两到四周的冲刺,或者迭代,以及每个冲刺阶段末尾生产的软件。

为了学习怎样管理您的 Scrum 项目和 IBM® Rational Team Concert™ ,您可以创建一个项目,然后在它的第一次迭代中继续处理它。系统项目的数据来自 Mike Cohn 书籍中的扩展实例。Agile Estimating 以及 Planning(Prentice Hall,2005),它描述了 Bomb Shelter Studios 的 Scrum 团队,假设他们正在处理一个名为 Havannah 的新电脑游戏。范例中的数据,是文章中所含的文件“Rational Team Concert scrum sample data”(见于下载)。

本文基于您已经在 jazz.net 上注册过,而且已经根据其中的指导下载并安装有软件的假设。您需要了解 Rational Team Concert 客户端可以在什么地方链接到 IBM® Jazz™ 储存库。在对 Scrum 过程进行一个简单地介绍之后,我们将会开始创建基于 Rational Team Concert scrum 的项目。

scrum 过程的概述

scrum 框架由以下相关的方面组成:

  • 角色
    • 产品所有者
    • Scrum 管理员
    • 团队成员
  • 仪式(会集或者会议)
    • 日常的 Scrum
    • 冲刺规划
    • 冲刺评审
    • 冲刺回顾
  • 工件
    • 积压的产品
    • 待办冲刺
    • Burndown Chart
    • 干扰因素列表

Scrum 项目中的需求通过积压的产品项目来表达。这是 Scrum 团队中最重要工件中的一个。它是项目所有预期工作或者特性的优先列表。产品所有者对维护该列表,以及随着项目的发展和商业环境的变化校正优先级负责。理想条件下,Product Backlog 中的项目陈述于向投资者指示商业价值的项目中。

产品所有者对产品的成功负责。这个人负责定义特性以及工作日程,并对决定各种特性的商业价值负责。产品所有人会不断精简和重新设定 Product Backlog 的优先级。

scrum 管理员管理 Scrum 过程,确保 Scrum 操作得当了正确的执行,并且 Scrum 价值为所有的团队成员所理解。他或者她通过消除不利因素的影响,避免团队成员受到外部的干涉,来确保团队保持较高的生产效率(至少在一次冲刺阶段中是这样)。

scrum 团队应该是拥有各种技巧的多功能混合人才组成的团队,以完成项目(例如:开发员、测试员、交流设计员以及程序编写员)。团队成员应该全身心的投入到 Scrum 团队中,否则,会降低团队其他成员的速度。

团队会在每一次冲刺的开始阶段开一次冲刺规划会议。在这个会议上,产品所有者会阐述即将到来的冲刺最需要的特性,描述它们,这样团队才会明白接下来他们要做什么。产品所有者和团队会就冲刺阶段的目标达成一致意见。它关注的一般是接下来两到四周要做的工作。团队会决定怎样完成冲刺阶段的目标,并将特性分解成若干个可以完成的任务。

任务的列表就成了所谓的代办冲刺。代办冲刺中的项目通过小时来评价,这样团队才能明白该项目是否能够按时完成。如果没有足够的时间,特性可以从 Sprint Backlog 移至 Product Backlog。评估是作为团队活动进行的,而不是由 Scrum 管理员或者产品所有者决定的。代办冲刺代表了冲刺期间团队需要完成的工作。

日常 Scrum会议期间,团队需要回答下列三个问题:

  • 我昨天都干了些什么?
  • 今天我要做什么?
  • 发展过程中有什么不利因素(如果有的话)?

这并不是一个状态的会议,而不是规划和承诺的会议。整个过程所花时间最多不应该超过 15 分钟。关于每一个人在做些什么、他们面临什么问题的规范讨论,能够消除其他会议的需要,并帮助团队成员更有效地工作。

在每一次冲刺的结尾阶段,团队会冲刺评审会议阶段展示所完成的工作。这是一种简单和不规范的会议,任意感兴趣的团队都可以参加这个会议。它的目的是验证工作软件(或者其他有价值的工件,例如潜在产品结构的概述),并从参与者和投资者那里得到关于工作软件的回馈信息。

在冲刺评审之后,团队会自发地召开冲刺回顾(有时也叫做 Reflection)。在这个会议期间,他们会讨论关于项目什么进展良好—以及什么不好—。这个会议会导致迎接下一个冲刺阶段所做工作的一些转变,因为他们会不断工作以提高团队的实践效率。既然 Rational Team Concert 对于团队的过程调整是可以配置和适应的,那么通过更改 Rational Team Concert 中的进程,这些会议可能会导致工作上的一些改进。

Product Backlog 中的项目会在冲刺规划会议期间得到完成,它们成为积压冲刺的一部分。Sprint Backlog 包含有与 Product Backlog 相关特性的特定任务。在冲刺期间,Sprint Backlog 中工作项目的状态每日都会得到更新。更新的状态使得生成 Sprint Burndown 表格变得可能。这种 burndown 表格在图表中显示了项目中剩余的工作量。它还含有一条“理想”线,以指示冲刺阶段从开始到结束的平滑过渡。理想线指示了如果在冲刺的每一天工作都得到了完成,那么工作将会怎样发展。尽管实际的工作进展可能不会遵守这条线,显著的偏移会导致人们的关注,特别是在实际进展继续偏移理想条件时更是这样。

当有不利因素阻碍工作的进一步发展时,Scrum 管理员可能会维护一个 Impediments List (或者 Blocks List),作为额外的 Scrum 工件。所有的工件应该位于可以使用它们的地方,并且所有的团队成员都能看见它 。

Rational Team Concert Scrum Process 模板支持所有重要的 Scrum 角色、仪式以及工件。Rational Team Concert 通过基于 Eclipse 客户端用户界面(UI)以及 Web UI,提供了对这些特性的方便访问方式。

通过使用 Scrum 方法来管理项目,您需要维持项目的工作描述,一般叫做 stories tasks。尽管您可以简单地把卡片放到公告牌上,使用软件可能会更加合适,特别是当团队成员分散在不同地理位置时更是这样 。

Rational Team Concert 提供了一种简单地方式来管理所有的需要,在一个项目区域中,您可以管理您的构建、源、计划以及其他更多。该文关注于 Scrum 过程的规划和管理。在执行第一步之后,链接储存库,以及为使用工具的人们定义用户 IDs,我们解释了在项目发布的迭代时期,怎样创建 plans work items 并管理它们。

创建 Rational Team Concert 储存库和用户

在您准备查看 Rational Team Concert 和 Jazz Scrum Process 模板怎样支持 Scrum 团队之前,您需要处理基本的项目创建问题。

创建一个储存库链接

  1. 确保 Jazz 服务器已经启动,而 Rational Team Concert 客户端已经打开。
  2. 为了创建一个新的储存库链接,在 Team Artifacts 视图中右键点击 Repository Connections (见于图 1),然后选择 New > Jazz Repository Connection。
  3. 输入 URI 以及用户 ID 还有相应的密码。

提示:
当您在本地系统上使用 Jazz 服务器的安装文件时,例如,URI 可能会是 https://localhost:9443/jazz/,初始的用户 ID 是 ADMIN 而密码是 ADMIN(两项都是区分大小写的)。

注意:
注意“https”中的字母 S 是小写的,它意味着 Jazz 使用了安全的链接。取决于您自己的浏览器,如果您忘了包含“s”,那么您将会遇到不可预料的情况。

图 1. 创建一个新的储存库链接
显示步骤的 3 个屏幕截图
  1. 点击 Finish

取决于 Jazz 服务器安装的系统,当您第一次链接它的时候可能会花一定的时间,直到储存库链接得到创建为止。

添加或者导入用户

接下来的步骤,是创建 Rational Team Concert 中的用户。用户属于 Jazz 储存库,这样他们可以参与超过一个 Project Area,并使用服务器上其他基于 Jazz 的工具。如果您使用外部的用户储存库来配置 Jazz (例如您集成了 LDAP 服务器),那么可以导入用户,而不用创建用户,就像工具栏中解释的那样。在这里,让我们假设您使用的是默认的 Tomcat 程序服务器,以及在新储存库中您需要创建的用户。

  1. 为了创建新的用户,您可以右键点击储存库链接,然后选择 New > User
  2. 当决定是否导入用户时,选择 No(图 2)。
图 2. 创建一个新用户
显示屏幕和菜单上的选择
  1. 为第一个用户输入用户信息。
    1. 因为我们遵循的是 Mike Cohn 的范例,所以 Sasha 是第一个用户。
    2. 您可以选择,如果有的话添加一张照片。
    3. 电子邮件地址是一个需要的区域,因为 Jazz 可以发送关于团队活动的 e-mail 通知。对于 Sasha,输入 sasha@bombshelterstudios.com。
    4. 用户的初始密码会自动设置成与用户 ID 相同的值。
  2. 为用户选择合适的 Jazz 安全组。管理项目的用户必须位于叫做 JazzAdmins 的储存库组中(在本例汇中,Sasha 必须成为一个 JazzAdmin;否则,他就不能执行所有需要的配置活动了)。
    • JazzUsers 在 Project Area 中拥有默认的许可权。它会允许用户创建并添加至 Work 项目,以查看报告,并使用其他项目安全设置定义的其他特性了。
    • JazzAdmins 可以访问与 Jazz 服务器和项目相关的各种设置了。
  3. 为用户选择合适类型的许可证。
    • Developer 许可证,创建或者部署过程模板的用户需要它,以便创建 Project Areas 或者计划,然后创建或者编辑附属的页面。开发员许可证适用于编写代码和运行构建的团队成员。
    • BuildClearCase Connector 许可证一般只分配给管理性的用户了。
    • Contributor 许可证适用于所有的团队成员,这些团队成员只需要对储存库进行读取访问。使用 contributor 许可证,一个用户才可以创建工作项。

图 3 显示了结果界面。

图 3. 指定用户细节信息
 Sasha 带有年轻人相片的用户项
  1. 点击 Save

注意:
稍后,用户需要配置他们的工作环境,并输入他们的日程安排(在屏幕的底部查找),这样他们可以花在项目上的时间就能得到合适的计算了。稍后我们将会显示一个范例。

对于本例中使用的 Havannah 项目,需要按照相同的方式为 Sasha 添加更多的用户。

  1. 添加其他名为 Allan、Delaney、Frank、Prasad 和 Rose 的其他用户
  2. 向拥有 Developer 许可证的 JazzUsers 组分配用户。
  3. 作为 ADMIN 用户检出。

作为默认的 ADMIN 用户现在您已经完成了条目。Jazz 安全模型给与了这个用户基本的管理员特权,而不是给定 Project Area 内特定的权利。例如,ADMIN 用户不能在user cannot create and save new iteration plans in the Project Area 创建和保存新的迭代计划,因为它是为 scrum 管理员或者产品所有者准备的。对于 ADMIN 用户您可能不再需要储存库链接;因此,对于 Sasha 您可以再次使用它。

  1. 右键点击储存库链接并选择 Properties(图 4)。
图 4. 指定注册属性
Team Artifacts 视图和下拉菜单
  1. 更改 User ID 和 Password 区域以匹配 Sasha 的凭证(sashasasha,因为默认的密码和用户 ID 使用相同的值)。您还可以选择(或者不选择)“Remember my password”以及“Automatically log in at startup”复选框,如图 5 所示。
图 5. 指定注册属性
 Jazz 存储库链接的属性页面
  1. 在您点击 OK 时,您可以注册到 Sasha,他是 Bomb Shelter Studio 的 scrum 管理员。

为您的项目和成员创建区域

创建一个 Project Area

接下来的一步,是创建一个 Project Area,它作为容器,容纳了所有的计划、工作项以及与创建项目相关的其他事情 。

  1. 为了创建一个新的 Project Area,右键点击 Team Artifacts 视图中的储存库链接,然后选择 New > Project Area
  2. 为项目输入一个名字(本例中是 Havannah,然后点击 Next
  3. 当您首次创建 Project Area 时,您需要部署前面包裹的过程模板,所以点击 Deploy Templates。可能需要一定的时间来完成。
  4. 在 Available Process Templates 下面,选择 Scrum 模板并点击 Finish(查看图 6)。
图 6. 通过使用 Scrum 模板来创建 Project Area
Create Project Area 界面和选择

Project Area 在服务器上初始化需要花费一定的时间。当这个过程完成之后,您可以看到一个与图 7 相似的界面。

图 7. Havannah 项目的 Project Area
Project Area 界面

在 Team Artifacts 视图的左列中,您可以查看新的 Project Area,以得到 Builds、Plans、Reports、Source Control (streams)以及 Work Items 的文件夹。本文只关注 Plans 。在 Project Area 编辑器中,有一个 Description 区域,它会提供关于项目的信息。

注意:
在 Project Area 中,添加附件还有一个部分。它是为 Scrum Process 模板准备的,并不是存放项目附件的合适地方。

添加成员并指定他们的角色

作为 Project Area 的创建人,您就是初始的管理员。但是,Scrum Process 模板内编辑项目结构的大多数许可证,属于 Scrum 管理员和产品所有者。因此,您需要做的第一件事情,就是向项目添加成员,并设置他们的角色(至少对 Scrum 管理员和产品所有者来说是这样)。一般来说,Project Area 层次的成员拥有管理责任。您需要向 Team Area 添加另一个团队成员。

在本例中,Sasha 创建了 Project Area,这样他成为该区域的初始管理员,并对 Project Area. Frank 作出任何更改,Havannah 产品所有者,是一个合适的 Project Area 层次的成员,所以现在添加它 。

  1. 点击 Members 左边的箭头以展开这个面板。
  2. 点击 Add 以启动 Add Team Members 向导。
  3. 为了添加 Frank 作为产品所有者,您可以在用户名字区域内输入一个 f (字母 F)以搜索匹配的名字。因为 Frank 已经作为 Rational Team Concert 用户添加,他的名字将会出现在 Matching Users 列表中。
  4. 点击 Select 以将其移动到 Selected Users 列表。
  5. 然后点击 Next
  6. 选择 Product Owner 角色,然后将其添加到 Assigned Roles 列表,然后点击 Finish(见于图 8)。
图 8. 添加团队成员
Add Team Members 界面和选择

如图 9 所示,Frank 是作为项目的产品所有者添加的。

图 9. 向 Havannah 项目添加成员
 显示添加的 Frank 项目的成员区域
  1. 保存 Project Area (使用 Project Area 编辑器右上角的 Save 按钮或者 File > Save)。

在保存您的更改之后,将会出现一个新团队成员的列表,询问您是否想要通过 e-mail 来向他们发出邀请。如果您已经配置了 e-mail 支持(在您创建服务器时),并同意这一点,那么项目的成员将会收到一封欢迎的电子邮件信息,以及对项目的链接信息和链接方式。

  1. 因为这里用户都是虚构的,所以取消所有的选择,然后点击 OK。(您还可以使用对话框中的 Cancel,因为它只会发送一封电子邮件。)

总结发布的日期限

接下来的一步,是为项目规划时间限制,这意味着您要为发布和冲刺指定起始和截止日期。在您创建自己的 Project Area 时,根据您的需要调整日期。以后再选择一个起始也是可以的。

提示:
更改项目您需要得到认证。创建项目的用户拥有管理员权限,并作出上面描述的更改。在您创建自己的项目时,您必须确定,要么您是 Project Area 的管理员,要么您是 scrum 管理员或者产品所有者角色的成员之一。否则,当您试着更改时间限时,会遇到一个“许可证禁止”的错误。

在 Project Area 编辑器窗口的右边,Timelines (见于图 10)之下,您可以看到默认的占位符迭代,在您创建 Project Area 时,过程模板将会创建该迭代,其中包括了版本 1.0 之下的 Sprint 1 和 Sprint 2 。

  1. 选择 Process Iterations 之下的 Release 1.0,并点击 Edit Properties 以打开如图 10 所示的 Edit Iteration 下拉菜单。
图 10. 指定版本以及冲刺时间日期限
显示步骤的各个界面
  1. 保持 Iteration Type 为默认值不变。
  2. Identifier 必须是独一无二的,但是您可以根据您的需要将其更改。
  3. 为发布设置起始和截止日期(见于 Note),确定复选框“A release is schedule for this iteration”被选中了,然后点击 OK

您可以为已存在的迭代按照相同的方式来编辑属性。

注意:
因为工作追踪十分的费时,所以日期基于您处理本例的时间。在今天或者未来的某一天开始发布和第一次迭代。为接下来的六周时间设置发布和截止时间。每一次冲刺至少需要延续两周左右的时间(一般从周一到下周的周五,除去非工作日)。

注意:
Release 1.0 图标和 Sprint 1 图标中的小蓝色三角形装饰符,意味着它们是 当前的 Release 和 Iteration。

提示:

  • 稍后您可以对 Project Area 作出一些更改。如果您想打开它,右键点击它并选择 Open(双击只会展开或者收缩它)。
  • Project Area 是可配置的。在 Process Configuration 项上,Project Configuration 下,有很多选项可以满足您各方面的需要。随着您对 Rational Team Concert 越来越熟悉,您将可能想让您的团队适应它(例如,Reflections 会议期间讨论的结果)。过程定制对于使过程满足您的需求方面,是一款强大的工具,而不仅仅是约束团队成员的行为去适应过程。
图 11. 项目配置
Project Area 区域内的 Configuration 视图

指定 Team Area 并添加成员

Jazz 技术可以使用多种时间限和子团队来支持相对较大的团队。在 Project Areas 内,有 Team Areas 可以组织团队成员。只有 Team Area 成员有权分配有与其团队相关的任务。就算例子中只有一个团队,它仍然需要引入一些成员。

  1. 点击左边窗格中的 Team Organization 项。如果它没有打开,那么就使用 Window > Show View > Team Organization 来将其打开。
  2. 展开 Havannah 文件夹(在您创建 Project Area 时该文件夹会得到自动创建)。
  3. 当项目被分配给团队 1 时默认的名字会分配给团队。右键点击 Team 1 并打开 Team Area 编辑器。
  4. 输入 Havannah Team 作为团队的名字。
  5. 添加 AllanDelaneyPrasad,以及 Rose 作为团队成员。当您向 Project Area 添加 Frank 时,按相同的方式进行操作。在 Add Team Members 向导中,您可以使用 *(星号)通配符来返回所有的成员(如果您使用的是集成的 LDAP 服务器就不要这样做),并在分配 Team Member 角色之前,将其全部选中。
  6. 添加 Sasha Scrum Master 的角色,并且可以选择,向他分配 Team Member 的角色,因为在 Rational Team Concert 中,scrum 管理员并不会自动被分配 Team Members 的角色。
  7. 点击 Save
图 12. 向Team Area 添加成员
显示所做选择的屏幕界面

提示:
大型的团队一般都有很多子团队组成。您可以通过根据项目的规模,添加许多附加的子团队来反映团队的结构。

指定团队成员的出勤情况

对于团队成员工作负荷的计算问题,您可以调整团队成员的出勤情况。也许某位团队成员在外面拥有业务,或者在休假,因此限制了他的出勤率。可以在用户的页面上对其作出调整。一般来说,用户会期望让这个区域能反映他们当前的真实情况,但是因为它是计算 Team Load重要的一部分,所以我们将会在这里介绍它。

  1. 如果您没有看到它,那么请点击左边窗格中的 Team Organization 项,并展开 Havannah folder 以及 Havannah team
  2. Rose 打开用户编辑器。您可以双击一个用户名以为该用户打开细节信息。
  3. Rose 此时对团队的出勤率只有 75%。因此,点击底部的 Work Environment 项,然后在 Work Assignment 部分中,点击 Havannah Team 线以及 Change 选项(见于图 3)。
  4. 默认条件下,如果一个用户只被分配给了一个团队,那么他或她 100% 的时间(资源)都被分配给了该团队。为了降低 Rose 的任务量,选择任务并点击 Change。将任务量降低到 75%(见于图 13)。
  5. 点击 OK

这将会调整 Rose 可用的工作时间。

图 13. 为某位用户调整工作环境
Work Environment 中的 Change Assignment 窗口
  1. 她有一个即将到来的假期。切换至 Scheduled Absences,点击列表右边的 New 项,并为她的假期时间输入一个描述和日期(见于图 14)。
  2. 点击 OK
  3. 点击 Save 以更新 Rose 的状况信息。
图 14. 为用户输入日程安排中的缺席情况
  Scheduled Absences 中的 New Absence 窗口

为项目创建 Product Backlog

Scrum 方法中最重要工件之一就是 Product Backlog。

  1. 为了构建它,切换至 Team Artifacts 视图(查看图 15 左上部),并在 Havannah 项目中,选择 Release 1.0,右键点击内容菜单,然后选择 New > Plan

提示:
您可能需要打开一个或者多个节点,以查看 Release 1.0 迭代。附加的版本和冲刺规划(如果有的话)位于开发线之下(在本例中,是 Main Development),但是在 Plans 层次为了方便访问,可以看到当前的版本和冲刺。

  1. 在打开的 New Plan 窗口中,输入 Product Backlog 作为名字。
  2. 选择 Product Backlog 作为 Plan Type。
  3. 对于剩余的 Team Members,Timeline,以及 Iteration,保持默认值不变。
  4. 点击 Finish

提示:
如果您不能保存计划,那么您可能需要切回并为 Sasha 的设置添加 Scrum Master 角色。

一个多页面的编辑器将会为 Product Backlog 迭代计划打开(见于图 15)。

  1. Overview 页面上,您可以使用 wiki 形式的格式来输入关于产品的信息。
  2. 编辑器视图底部的 Attachments 区域(只是在页面处于编辑模式下才可见),就是向该版本添加任意需求或者其他与版本相关通用文件的地方,这样所有的团队成员都能看到它们了。根据需要,页面区域可以包含对 Web 站点或者外部文件存储库的链接。
  3. 点击 Planned Items 项以开始添加积压项。
图 15. 编辑积压
显示步骤和结果的屏幕界面

查看计划有几种方式,叫做 模式。在窗口的右边,您可以指定怎样对计划中的项目分组,以及应该将什么样的项目排除出视图。这些预定义的视图,有 Backlog、Iterations、Teams、以及 Work Breakdown。您可以定义自己的视图模式。如果您想这样做,您可以使用右边窗格中的 Edit | Copy 选项,它位于“View As”之下。其他的模式存储在服务器上,其他的团队成员也能使用这些模式,并对更改模式并保存后,将会影响到 Project Area 所有用户的使用。

用工作项填充 Product Backlog

在积压的 Planned Items 项上,开始添加积压项。对于 Scrum 项,产品积压中的项目叫做 stories,如果它们很大的话,就叫做 epics(您可以查看 Mike Cohn 的书籍,User Stories Applied 或者 Agile Estimating and Planning,这两本书在 Resources 中都有列出)。所谓的 事例就是产品中执行功能的描述,通常陈述于特性支持什么样的用户角色以及它能提供什么样商业价值的术语中。一个合适描述的事例包括概括、特性讨论的一些概括,以及 Product Owner 接受特性的状况。在 Havannah 的范例中,所有的项目都叫做事例,所以您可以使用事例来填充积压 (简单来说,本例中使用的大多数事例只包含了一个概括,所以不要把它和真实构筑的事例混淆)。

  1. 将新项目的默认值设置成 Story。通过使用键盘快捷键 Ctrl+Enter,您可以快速输入一个新的工作项。
    1. 右键点击 Havannah Team 文件夹。
    2. 选择 Add Work Item > Set Default > Story
  2. 再次右键点击 Havannah Team 文件夹,选择 Add Work Item 然后选择 Story (或者使用 Ctrl-Enter 快捷键)。
  3. 为新项目输入总结,如图 16 中下部界面所示。
图 16. 积压中的 Planned Items
总结开始:'As a player, I can play against….'
  1. 根据产品所有者的需要添加所有的项目。
  2. 不时的点击 Plan 项右上角的 Save 以保存您所做的工作。
  3. 在添加所有的事例之后,产品所有者接下来要做的,是为事例设置优先级。优先级属性有 High、Medium 和 Low 三个值。您可以使用列表中嵌入下拉菜单来轻松分配优先级(见于图 17)。

提示:
如果预定义的优先级并不适用于您的项目需求,那么您可以在 Project Area 中轻松编辑可用优先级的列表。

  1. 您还可以在优先级内进行分级。通过拖拉项目然后在优先级分组内为 它们排序,来反映这种级别。系统将会通过拖拉操作而记住这种排序(或者使用 Alt+Cursor Up 和 Down 快捷键)。如果您拖拉了一个事例(例如一个级别为“中”的事例),到一个不同的分组,并放到不同优先级两个事例之间,那么 Rational Team Concert 将会自动分配优先级以适应它的前后事例的级别。
图 17. 为工作项设置优先级
显示可用属性列表的下拉菜单
  1. 当团队在为项目复杂性添加估计时,通过使用如图 9 所示的下拉菜单来输入(同样见于 Mike Cohn 的书籍,User Stories Applied 或者 Agile Estimating and Planning 通用列于 Resources 中,因为关于估计和 Story Points 的讨论已经超出了本文的阐述范围)。
图 18. 为工作项设置复杂性
显示可用点的下拉菜单

当然,如果我们只拥有 Story Summaries,那么就不会有多少的 Product Backlog。

  1. 双击一个事例以打开它的编辑器(在本例中,如图 19 所示,该事例声称“As a player, I can play against a weak engine that recognizes rings”)。
  2. 在 Description 区域内,提供关于事例预期情况的细节信息(在将 Story 添加致规划时可以添加一个描述)。在这种情况下,它会引用(想象的)附属于 Project Area 的文件。
  3. 项目的创建者会自动被分配该项目。如果您不需要该项目,那么您可以点击左下部 Quick Information 部分的 Subscribers 链接,并选择 Unsubscribe Me

图 19. 项目的细节信息
Story 9 细节信息的屏幕截图

  1. 点击底部的 Acceptance Test 项目。由产品所有者或者团队所有者添加接受测试,以作为事例成功完成或者满足投资者预期需要的证明。

提示:
在构建列表的同时,处理添加细节的另一个好的方法,是打开迭代规划编辑器中的 Preview 模式、点击工具栏中的眼镜图标(见于图 20),而编辑器将会分开显示,以分两边展示迭代规划和当前选中的项目。

图 20. Previewing 项
分边显示项目和视图的列表

提示:
如果您想要在积压中按照层级结构组织和查看 Epics 及 Stories,那么您就必须使用树形视图中显示工作项的视图模式。Work Breakdown 模式会以树形视图模式显示工作项,但是您可以根据您的需要配置任意一个其他模式。

接下来是什么

本系列文章的后续部分,将会涉及到冲刺的规划和管理(“本系列的更多信息”),以及敏捷软件开发估计和规划细节。

致谢

我们想要感谢 Dirk Baeumer、Jazz Agile Planning Team Lead 对本文所做的技术性评审,以及 avid L. Schmidt、Technical Lead of Tivoli Software Engineering 对本文所做的概括评审、注释和鼓励。

下载

描述 名字 大小 下载方法
Rational Team Concert Scrum 示例数据 ScrumSampleData.pdf 54 KB

参考资料

学习 获得产品和技术

讨论



Java 中的中文编码问题
Java基础知识的三十个经典问答
玩转 Java Web 应用开发
使用Spring更好地处理Struts
用Eclipse开发iPhone Web应用
插件系统框架分析
更多...   


Struts+Spring+Hibernate
基于J2EE的Web 2.0应用开发
J2EE设计模式和性能调优
Java EE 5企业级架构设计
Java单元测试方法与技术
Java编程方法与技术


Struts+Spring+Hibernate/EJB+性能优化
华夏基金 ActiveMQ 原理与管理
某民航公司 Java基础编程到应用开发
某风电公司 Java 应用开发平台与迁移
日照港 J2EE应用开发技术框架与实践
某跨国公司 工作流管理JBPM
东方航空公司 高级J2EE及其前沿技术
更多...