视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
敏捷项目管理工具初探
2025-10-02 14:55:39 责编:小OO
文档
文本Tag: Scrum 项目管理 敏捷开发 

【IT168 管理文章】

    "工欲善其事,必先利其器"

    ——《论语·魏灵公》

    敏捷开发的潮流并不是由敏捷工具来推动的,因为你可以仅使用命令行接口、单元测试工具和需求卡片来展开敏捷开发。但近年来,为了更好地支持敏捷开发,敏捷工具也有了很大的发展。其中部分工具是直接面向新型项目管理方式的,特别是有些种类的工具已与敏捷开发密不可分。根据Forrester研究公司(Forrester Research)高级分析师Carey Schwaber的研究结果,面向敏捷开发的项目管理工具、持续集成构建工具和自动测试工具已是敏捷开发不可或缺的工具。

    Schwaber等人也指出,当敏捷成为大型团队开发进行大型项目的主流开发方式时,这些自己临时组织起来的技术,如仅靠白板、电子表格和WIKI等将难以满足需求。

    Scrum作为当前业界最流行的敏捷软件开发方法之一,受到越来越多的关注。对于一个新的Scrum敏捷团队而言,选择合适的Scrum工具是保证成功实施Scrum的关键一环,然而了解市面上种类繁多的各种工具并做出选择,是一件费时费力的事情。为帮助新团队更好地选择和使用Scrum工具,笔者最终选定了一批国内外用户常用的Scrum工具,进行了简单比较,由于篇幅有限,不能详尽,希望能对中国的敏捷开发者有所帮助。

    基础工具

    白板

    这是实施Scrum最简单直接的方式,用于每天的跟踪汇报,还是非常不错的,但是对Product Backlog支持明显不够,也没办法保留历史纪录,而历史纪录对于回顾还是非常重要的,毕竟Scrum的核心理念之一就是通过短期回顾,达到持续不断的改善。

    Excel

    我们最初也用过,有很多现成的模板可以用,曾经写过一个Script,自动提取每天的Burndown Chart,自动发给指定的邮件地址列表。主要问题是当成员比较多的时候,同时修改一个共享Excel文件,会相互冲突,不好同步。如果需要模板,可以到"敏捷软件开发随笔"http://scrumxp.blogspot.com 下载。

    免费/开源工具

    ScrumWiki

    这个最初在一个项目上也用过,一开始感觉还不错。因为采用wiki模式,每个人都可以随时编辑,更新任务状态,比较适合分布式开发。但当你的需求变多变复杂时,就不容易用了。后台脚本是用Perl写的,我们的一个外国同事还专门对它进行了修改,增加了好多功能,这样才好用起来。作为免费开源的软件,目前已经没有人支持和维护,也不能支持中文。

    XPlanner

    最牛的祖父级的开源工具,完全免费,业界使用率排名第四,真的是穷人的项目管理工具!对于Scrum也有很好的支持。作为一个基于Web的XP团队计划和跟踪工具,只需要 Apace Tomcat即可。

    XP独特的开发概念如iteration、user stories等,XPlanner都提供了相对应的的管理工具,XPlanner支持XP开发流程,并解决利用XP思想来开发项目所碰到的问题。 XPlanner特点包括:简单的模型规划,虚拟笔记卡(Virtual note cards),iterations、user stories与工作记录的追踪,未完成stories将自动迭代,工作时间追踪,生成团队效率,个人工时报表,SOAP界面支持。

    XPWeb

    另一个基于Web的分布式方案。

    使用PHP+MySql,可运行于Linux、Windows或Mac。但其提供的在线演示在IE7下工作不怎么样,没法详细测试。

    Scarab

    Java Server平台,对于统计查询、报表、自动邮件通知、评论协作、依赖关系跟踪等都有很好的支持,可以灵活定制,支持多种语言,包括中文。

    Double Chocco Latte

    基于PHP,支持Apache或IIS、MySQL或SQL Server、Web客户端,虽然也有人用于Scrum,但对Scrum的支持并不好,缺乏最基本的Burndown Chart。

    GNATS

    GNATS 传统来讲,属于缺陷跟踪工具, 但根据Jeff Sutherland讲,已经支持 Scrum,没有仔细研究。

    厂商工具

    VersionOne

    最早的商业化产品,基于ASP.NET、IIS和SQL。没什么好说的,业界使用率排名第一。

    从功能上看,的确非常新颖,贯彻了敏捷中的User Story为先的原则和VSTS类似,将Issues、Defect、Task合并概念成为Task(在VSTS中更加优雅,叫做WorkItem), 并且必须挂在UserStory下,这个工具值得看看,有试用版可以下载,或者可以使用他们在线提供的试验平台。

    团队可以使用“V1:敏捷团队”来管理产品和sprint backlog,通过交互式的“任务板(taskboards)”和“测试板(testboards)”进行每日开发活动,藉由报表和燃烧图查看进度,以及其他活动。

    通过这些功能,“V1:敏捷团队”的用户可以做到:

    ·从电子表格中快速导入故事与缺陷,管理合并后的产品backlog。

    ·利用简单的多条目拖放操作,方便地完成计划制定、对故事划分优先级。

    ·使用电子白板界面同时制定多个版本的发布计划,提高效率。

    ·通过交互式的任务板(Taskboard)、测试板(Testboard)、每日Scrum dashboard来对版本和sprint进行可视化追踪。

    ·针对版本和sprints的关键敏捷度量数据生成图表,如Burndown、Velocity、Estimate trends、Cumulative Flow Reports。

    唯一的问题就是提供的选择过多,对于寻求简单明了工具的人,并不是一个好产品.

    Rally

    业界使用率排名第二位!支持用户需求的筛选、扩展的筛选标准、改进版本剩余时间表、新的通知规则(notification rules),以及用于Eclipse和CruiseControl.NET的连接器。

    如果想了解更多,可以参考免费在线试用体验版本。

    ScrumWorks

    个人认为是对Scrum各个方面支持最好的商业产品,业界使用率排名第三位。可支持不同的团队工作于不同的项目上,非常灵活。既有简单的web客户端,也有强大的java客户端。

    有免费使用版,且无时间,我们一直在用。

    商业版ScrumWorks Pro支持对Bugzilla和Jira的集成,带有主题过滤功能的burndown图表,以及其他辅助了解项目状况和走势的功能,还有众多别的特性。

    ScrumWorks Pro与Bugzilla和Jira的集成,体现在它可以导入两者中的条目作为backlog条目,并且可以像对其他backlog条目一样,对这些条目进行操作。可以使用搜索来选择感兴趣的条目,并进行单独或多项导入操作。

    Burndown图表现在可以按照主题进行分组。将backlog按照主题进行组织后(类似于web 2.0中使用标签),你可以高亮或是过滤这些backlog,并且能够使用同样的主题针对burndown图进行过滤。

    Mingle

    Mingle在ThoughtWorks官方站点可以免费下载,且5个用户以下的可以永久免费使用。Mingle是用纯Ruby打造的且运行在JRuby上的一个产品,由于ruby是一门脚本语言,所以其移植性就很好,用其编写的程序安装起来也甚是容易,在Windows、Mac和Unix多种主流平台上跑都是没有问题的;但也正是由于采用ruby编写,Mingle对硬件的要求也甚高,在我这台512M内存的机器上跑是超慢的、让人闹心的,建议还是放到性能好的、单独的服务器上,内存容量官方建议是2G。在试用时,还遇到了好几次IE错误,只好放弃了。

    Mingle后台存储采用数据库方式,目前仅支持mysql和Postgres两种数据库版本,不能支持其它大型数据库,这点比较遗憾。

    简单用了一下,发现如下很好的功能:

    - 支持建立"个性化"项目模板,便于复用;

    - 附带项目wiki,便于"项目知识积累和管理";

    - 丰富的card properties,使需求驱动的管理流程更加清晰;

    - 支持card和源代码之间的link。

    Select Scope Manager

    商业化产品,有试用版可下载。定制性比较差.

    XP Plan-it

    仅仅支持把你的数据放在他的Server上,你通过下载的客户端更新和查看数据。好像对大多数人来讲意义不大。

    ProjectCards

    ProjectCards 维持项目管理的索引卡片,精确的具体内容,一个项目控制盘,搜寻和过滤能力和拖放反复计划。六十日免费的试用。

    基于Client/Server结构,支持plug-in for Eclipse。

    TargetProcess

    是一个敏捷项目管理与Bug跟踪系统。企业版提供很多定制的功能。

    这个工具挺适合小项目团队的。

    ExtremePlanner

    一个基于web的工具,它的功能几乎与ProjectCards完全一样,但是它添加了在任务级别进行评估的功能,这一改进非常棒。由于是基于web的, 所以它的界面可能不够漂亮,但是由于基于浏览器,它获得了一些灵活性(例如,当项目成员想在线查看状态报告时,如果是使用ExtremePlanner,就无需安装任何东西。)

    我还在进一步考察这个工具,但是它看起来相当不错。

    TRICHORD

    这个名为“TRICHORD”的敏捷项目管理工具,是基于精益思想的,对Scrum也适用。TRI指的是三种视角(时间、任务和团队),CHORD则是和谐的意思。

    它作为全团队分享项目状态的一个工作空间来运作,里面提供三种层次的看板图--特性看板(发布-特性)、故事看板(故事-迭代)和任务看板(工作日-任务)。特性看板用停车场图来归纳,故事和任务看板用延烧图来归纳。

    后记

    每一个Scrum工具,都有自己的特点,都有自己的过人之处,进行选择时,需要谨记这样一条基本原则:“适合自己的,才是最好的”。毕竟每个团队、每个项目、每个产品,以及在不同的时间段,都会展示出不同的需求。一般而言,可以从如下几个方面进行考虑:

    1.可利用的功能

    作为一个Scrum工具,一定要考虑是否支持Scrum框架所必需的基本元素,如Product Backlog、Sprint Backlog、Burndown chart等?是否支持多个用户?

    2.安装要求

    这里主要考虑运行该工具软件对计算机硬件和软件的要求:存储器、硬盘空间容量、处理速度和能力、图形显示类型、打印设置以及操作系统等。

    3.经济性

    这个无需多言,毕竟,贵的并不一定就是最好的。

    4.操作简易性

    主要应考虑系统的"观看"和"感觉"效果、菜单结构、可用的快捷键、彩色显示、每次显示的信息容量、数据输入的简易性、现在数据修改的简易性、报表绘制的简易性、打印输出的质量、屏幕显示的一致性,以及熟悉系统操作的难易程度。

    5.可维护性

    作为一个敏捷开发支持工具,一定要维护简单,有备份功能。此外,还要看是否有人继续支持,做后续产品新功能的不断开发及Bug修复。

    6.安全性能

    有些公司可能认为安全问题很重要,那么就要特别注意对工具软件、每个项目文件及每个文件数据资料的访问方式。

    目前,由于Scrum工具的使用越来越容易和有趣,再加上提供的大量很有吸引力的特性,可能使得项管理人员过分依赖于工具。其实,任何软件仅仅是帮助你更有效率、有效果地工作的一个工具,工具自己并不能管理项目。你进行项目管理,一定要依靠你自己的技能,依靠你的团队的技能。如果没有掌握Scrum敏捷项目管理的基本概念,对敏捷缺乏基本知识,只知道使用工具,但却不知道工具的真正用途,工具就没有什么意义了。

    此文首次发表在《程序员》2008年第11期杂志。下载本文

显示全文
专题