高效使用 Rational Team Concert 进行每日例会(Daily Scrum)
 

2010-02-03 作者:Steve Speicher 来源:IBM

 
本文内容包括:
敏捷、Scrum 以及精益方法都关注于团队意识(Team Awareness)对项目任务及优先级方面的核心需要。拥有合适工具支持这种交流以及优先级管理是走向成功的关键所在。本文从积极参与者的角度来阐述每日例会(Daily Scrum)方面的内容,以及如何最佳地使用 IBM® Rational® Team Concert 来有效地交流进度以及已经完成的工作。

IBM® Rational® Team Concert (RTC)对于团队来说,已经被证明是一种在软件开发项目上进行协作的有效方式。RTC 使得源代码管理与工作项管理方面的功能实现了完美的集成。因为它可以结合工作项管理以及敏捷规划和报告,所以它可以提供一种有效的框架来支持每日例会(Daily Scrum)。

本文的写作基于实际的操作经验,其中涉及了一个延续四个月且至少有四个全身心投入的全职团队成员的项目。团队成员总是处于变动之中,因为在各个不同的时期他们还要参与其他的项目。该团队在极短的时期内必须交付一种全新的功能,同时还要协调各种跨机构间的因素。通过应用本文所介绍的技术,以及使用 Rational Team Concert,我们实现了开发人员只需简单地关注自身的工作任务,并让软件来产生迭代计划更新,以及外部投资者们所需要的报告。

关于迭代以及计划的概述

首先,快速浏览一下迭代计划视图,以确定您充分理解了当前的任务分配情况。本文的关注点不是展示怎样创建一个迭代计划(或者 scrum 术语中的 sprint[冲刺] ),而是解释怎样使用 Rational Team Concert 来为每日例会报告作准备。您可以查看 参考资料 以得到其他文章以及指南的具体信息,以帮助您从使用该工具来开始进行迭代计划。

每日例会(或 standup[站立会议] 及团队会议)的关键方面是关注团队现在正在做什么工作。对此有一个很有用的视图就是叫做“Planned Time”的迭代计划视图。按照以下方式进行操作:

  1. 切换至项目区域的计划中(在本例中是 JUnit Spring Backlog 项)。
  2. 然后在“View As”部分(右上角)中,选择 Planned Time 选项(参见图 1)。

在右下角的 Exclude 部分中,您可以看到额外的实用过滤器。为了删除那些没有分配迭代的规划项目的团队成员,选中 Empty Groups。 为了查看除当前工作项之外的完整(关闭的)工作项,取消 Resolved Items 的选择。

从 Planned Time 视图中,您可以查看谁拥有当前迭代、那些任务状态以及效力估计还有完成进展的计划项目(任务)。

图 1. 迭代计划编辑器,“View As”之下选中的 Planned Time 视图
JUnit Sprint Backlog 视图

每日例会的规划

最佳的方式是在每天中相同的时间里召开每日例会(通常采取 daily standup[站立式会议]的方式),并准时召开,每次不超过 15 分钟。为了最大程度的利用这些 scrums,并结合运用 Rational Team Concert 实现有效的团队意识及协作,scrum 团队通过思考并讨论以下这些常见的 scrum 问题,可以评审并更新他们的当前任务情况:

  • 昨天都做了些什么?
  • 今天打算做些什么?

当每一个团队成员都使用 Rational Team Concert 中的 My Work 视图时,这一点就可以轻松满足了(参见图 2)。

图 2. My Work 视图
当前用户的积极任务活动

这种集成化的视图,向团队成员提供了关于任务的简单视图(计划项目,工作项目,以及其他内容),以及这些操作的轻松访问方式。例如,为了更新每日例会的工作项目,他们可以只选择一些工作项,或者 Plan for > Today 这样的工作操作,如图 3 所示。

图 3. 使用 My Work View 来规划工作
含有描述的下拉菜单

通过追踪他们的工作项,团队成员可以更好地理解优先级,这样他们可以更加有效地关注团队的工作进展情况。在这一点上,团队成员甚至可以为剩余的工作项,规划工作并且更新估计。

通过切换至迭代计划编辑器(Planned Time 视图),您可以从 Rational Team Concert 直接得到关于每日例会的信息。这些工作项会与最近完成的工作项一起,按照升级的顺序显示在列表的底部(查看标为“Most recently completed”的蓝色箭头,它指向图 4 中 Past 之下的工作项)。这就回答了每日例会问题:“昨天您都干了些什么?”

接下来,您可以查看完全位于 Today 或者 Later This Week 之下工作项的列表。这可以帮助您回答这个问题“今天我打算做什么?”

您可以通过使用 Move Up (参见图 4)或者 Move Down 特性,以更改这些项目的顺序,来强调显示优先级,或者给完成的内容进行排序。

图 4. 迭代计划,以及每日例会的 Planned Time 视图
Sprint Backlog 视图

scrum 管理员不应该依赖这种单方面交流的视图。语言交流的每日例会现在还没有替代品。迭代计划视图能够很好地验证讨论的内容,并为那些缺掉某次每日例会活动的团队成员,提供了关于项目的视图。

地理分布上分散的团队

有时会遇到一种情况,那就是团队的成员在某个时间没有处于相同的位置。日常的 scrums 通常需要通过电话或者视频会议进行。使用这种方法会获取软件支持的每日例会,在这些情况下会变得更有价值。

获取以及处理模块

当您使用 Rational Team Concert 来为每日例会做准备时,进展模块可以立即被转化为获取的工作项,或者得到定位以及重新设定优先级。对于 scrum 管理员来说,没有必要重新设定节奏。团队可以通过使用工作项评论特性来进行协作,然后完成或者如有需要则重新分配工作。

总结

使用 Rational Team Concert 来获取并验证每日例会的信息,是一笔巨大的资源,不仅仅对于参与者以及 scrum 管理员是这样,对于那些不能或者不易参加每次日常会议的人来说,也是这样。现在每一个人都可以快速查看团队工作项目优先级以及进展的当前状态,因为您可以在每一次 scrum 之后在 Rational Team Concert 中将其更新。这种方法对于交流来说,已经被证明是一种十分有效的方式,而且使用它的团队可以轻松采用这种方式。

面对面进行每日例会以让每一个人意识到当前工作,仍然是十分必要的。坚持这个原则还有其他的好处,例如确保团队速度是十分精确的,这样就使得以后的迭代工作(在 scrum 术语中是指冲刺)变得更有预测性。

参考资料

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

资源网站: UML软件工程组织