写点什么

Bob 大叔关于 Scrum 和敏捷的 7 条缺陷

  • 2010-02-13
  • 本文字数:1354 字

    阅读完需:约 4 分钟

Handwriting on Old Paper 在回应 Scrum/Agile 的固有缺陷这一问题时, Bob 大叔写下这“ 7 条”。他说 Scrum 天生有一些严重的缺陷(他强调说明:很多团队采用 Scrum 来避免这些问题):

  • 缺乏技术实践:Scrum 是一个项目管理框架,在技术方面没给任何建议。Bob 建议团队“需要从其他诸如 XP 的方法中借鉴技术实践。这套技术实践可能包括:TDD、持续集成、验收测试、结对编程、重构。”
  • 30天的冲刺周期太长:多数讲师现在建议冲刺周期 1-2 周,大多数团队采用的是 2 周。
  • Scrum 教练有时变成了项目经理: 有些 Scrum 教练把 Scrum 当作微管理和控制的一种形式。“这不是 Scrum 固有的问题,而是 Scrum 发展中遇到的问题。或者这要怪‘master’这个单词了。”
  • 对产品 Backlog 的指导太少:“经过多年实践,我们知道了 backlogs 有很多分层次的实体,包括史诗、主题、故事等等。我们学会了怎么对它们估计;学会了怎么把高层次的实体拆解成低层次:史诗 -> 主题 -> 故事 -> 任务。”
  • Scrum 暗中包含反管理:“Scrum 过度强调了团队自管理的角色。自组织和自管理的团队本身是好的, 但是具有局限性…Scrum 的描述并没有给与很好的平衡。”
  • 自动化测试:没有高质量的自动化测试,很难以短的迭代周期工作,很难知道故事是否真的做完了。
  • 多团队:Scrum 和通用的敏捷方法很少谈及怎样扩展,虽然很多实践者有一些想法,但是还没有达成广泛的一致。

MX Logic 的软件开发主管 Steve Ropa 说:“我个人的经验是:在一定层次上,团队和成员需要领导。有时候领导来自于团队,但有时候不行。我感觉 Bob 大叔是说在团队和业务的交流上会产生局限,而这正是我的经历。”

Mark Woyna 反击说“如果团队定期交付高质量的产品,客户比较满意,还要管理干什么?如果团队没有交付,尝试自我修正也不行,团队应该去寻求外部的帮助。”

《C#_ 极限编程_ 探险》一书的作者 Ron Jeffries 说:“多数 Scrum 团队所在的公司都有管理人员,并且在用他们。事实上这样对 Scrum 不但无益,而且经常由于管理人员的有意诋毁,使得 Scrum 被错误实施。”

Matt Heusser 软件工匠和测试专家,则建议:“更准确的说,应该把认证scrum 教练描述成‘介绍一种新的产品开发方法’。这能把课程从软件开发中扩展开来,吸引整个团队,而不是团队中的一两个人。课程结束时可以发给一个证书,而不使用华丽虚饰的单词,比如‘认证’”。

《精益和敏捷开发应用指南》的作者之一 Bas Vodde 对讨论内容做了修订:“不应该把它叫做缺陷,相反应该指出 Scrum 本身需要其他实践的支持”。此外他不认为 Scrum 暗中包含了反管理,相反:

我认为许多人采用 Scrum 都会遇到这样的困难,即怎样处理管理角色的变化。自管理的团队确实把职责派发到团队中,因此管理的角色会发生变化。但太多的时候管理层认为“他们”不需要变化就可以使用 Scrum 这个框架(而不是命令…“你来做 Scrum!”这已经意味着失败)。 我认为这不是 Scrum 特有的,如果深入研究自管理团队的历史和文献,会发现管理角色的变化是一个普遍的话题。然而,与任何其他角色类似,如果被告知当前的任务不需要再做,很容易把这理解成“反”的。

在你看来,Scrum 和敏捷有什么缺点呢?

InfoQ 之前的类似新闻: 失败的敏捷项目 12 Agile Adoption Failure Modes 为什么有些公司敏捷实施不成功参见英文原文: Scrum/Agile Failings or the Theses of Uncle Bob Martin

2010-02-13 04:0216768
用户头像

发布了 37 篇内容, 共 12.6 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

华为云大数据,帮助企业搭好数据底座

IT科技苏辞

关于部署策略的遐思

在天涯的海角

我们为什么喜欢看疯狂科学家开飞艇?

脑极体

React源码分析1-jsx转换及React.createElement

goClient1992

React

2022-11-28:给定两个数组A和B,比如 A = { 0, 1, 1 } B = { 1, 2, 3 } A[0] = 0, B[0] = 1,表示0到1有双向道路 A[1] = 1, B[1]

福大大架构师每日一题

算法 rust 福大大

支持向量机-二分类SVC中的样本不均衡问题:重要参数class_weight

烧灯续昼2002

Python 机器学习 算法 sklearn 11月月更

一文熟悉 Go 函数

陈明勇

Go golang 闭包 函数 11月月更

JXcore 打包在企业级项目里的合理运用和模块系统以及网络的配置详解【node.js】

恒山其若陋兮

前端 11月月更

React源码分析3-render阶段(穿插scheduler和reconciler)

goClient1992

React

CDH5部署三部曲之三:问题总结

程序员欣宸

大数据 hadoop CDH 11月月更

富士康智能制造加速营:解决行业当下问题,创造核心技术价值

B Impact

python任务调度利器-APScheduler

AIWeker

Python 任务调度 11月月更

Gradle入门了解

派大星

Gradle

Python基础库-json库

度假的小鱼

11月月更 Python操作json json语法规则

Python操作XML文件

度假的小鱼

11月月更 Python操作xml xml与html区别

华为云大数据BI 解决方案的超高性价比

IT科技苏辞

性能测试知识科普(七):监控能给你带来什么

老张

性能测试 监控指标

极客时间运维进阶训练营第五周作业

独钓寒江

【React技术】JSX在企业级项目的运用and一个元素渲染demo

恒山其若陋兮

前端 11月月更

CrossOver2023免费版虚拟机软件安装包下载

茶色酒

CrossOver2023

三分钟了解client-go

穿过生命散发芬芳

Client-go 11月月更

EasyRcovery2023绿色免费版U盘数据恢复软件

茶色酒

EasyRcovery2023

盘点入职时,那些常见但不合规的操作

石云升

职场 入职 11月月更

Flare Network,跨越互操作性三难困境

股市老人

以原子化服务为基石,面向三大场景打造鸿蒙软硬协同新体验

最新动态

Python 操作BeautifulSoup4(爬取网页信息)

度假的小鱼

正则 11月月更 Python BeautifulSoup4

C++学习---类型萃取---is_pointer && is_lvalue_reference/is_rvalue_reference

桑榆

C++ STL 11月月更

React源码分析2-深入理解fiber

goClient1992

React

mysql与redis的选型问题实践

苏格拉格拉

MySQL 数据库 持久化 redis'

【web 开发基础】PHP的匿名函数和闭包 (40)

迷彩

闭包 closure web开发基础 匿名函数 11月月更

Bob大叔关于Scrum和敏捷的7条缺陷_研发效能_Mark Levison_InfoQ精选文章