写点什么

敏捷是如何使你跑得更快?

  • 2013-03-11
  • 本文字数:1337 字

    阅读完需:约 4 分钟

对于为何采用敏捷软件开发这个问题,企业经常提到的原因之一是希望能够更快地交付软件。研究表明敏捷项目能够进行地更快,例如《敏捷项目的成功证据》一文中描述的哥伦布市敏捷工作效率基准项目。

在博文《谁说敏捷项目不能更快一些》中,Matthew Heusser 分享了他在Agile Testing Days 大会上的讨论:

2012 年 11 月在德国波茨坦举行的 Agile Testing Days 大会上,《敏捷测试:实用指南》的作者 Lisa Crispin 和 Janet Gregory 大胆声称“敏捷意味着更快”是无稽之谈。

会后,Janet Gregory 向 Matthew Heusser 解释了她这么说是什么意思:

她说,敏捷的关键不是速度。速度的提升可能是附带产生的结果,但是不是一开始就会这样。向敏捷转型这个过程会托你后腿,至少短期内如此。并且这个期限不是一两个礼拜,它可能有一两年之久。

Matthew 提供了为何他认为敏捷可以更快的几个论据。他讲解了如何构建正确的事情,忽略那些不值一提的需求以便节省时间。使用敏捷的另外一个原因是“老办法也不快”。

对比敏捷团队和传统团队,前者一年中无法完成的事情,后者可能能够完成,但这么比较他们不合适。一年中,传统团队也许能够完成 12 个半需求,但却搞得一团糟最终啥也没有发布。

他在博文结尾解释了为何不同意这个观点,并阐述了对敏捷能够帮助团队更快交付软件的看法。

还遗留一个问题:是否是更快了?Crispin 和 Gregory 可能认为这个无所谓,如果只关注短期的进度,长远看来这么做只会导致过度简化,带来的是痛苦和低效。我认为团队能够在流程改进过程中尽量杜绝浪费,工作效率也会随之提升。

《让敏捷跑得更快》一文中,Chris Turner 讨论了敏捷项目可能变慢的一些原因。他描述了经常遇到的四个原因,并给出了一些处理意见。

  • 不合适的人:从团队中剔除那些不遵循良好工程规范或是正在把事情搞复杂的人。
  • 先定义流程:建立可以开放的沟通、自组织、授权的团队。
  • 使用了不当的技术:让团队有权决定使用什么技术,如果该技术妨碍了发布,允许团队重新做选择。
  • 架构太复杂:重构,使软件尽可能保持简单。

Neil Killick 在他的博文《交付软件最快的方式是保持可持续的节奏》描述了为何让敏捷团队加快交付速度会给软件开发拖后腿。他讲诉了关于敏捷团队的一个故事,在为期两周的Sprint 中该团队平均能够交付10 个用户故事,但待交付的用户故事却增加了。

现在想象一下,我们让团队每个Spring 只完成一个用户故事。那么,即便不能打包票,我们也能相当确信能够交付这个用户故事。我们还能相当肯定可以完成得很出色。

现在我们要求这个团队每个Sprint 交付两个用户故事。即使该团队极有可能能够交付这个2 个用户故事,成功的概率也要比只要求团队每个Sprint 交付一个用户故事时要低一些。所以我们就有了一点不确定性。

现在再想象一下,合同大限将至,我们还在努力赶工,是不是该加把劲了。所以我们要求预计能够交付10 个用户故事的团队交付12 个用户故事(现在我们超负荷了)。甚至是14 个?要求团队步伐越快(或者说是越糟),交付软件时无法预料的事情就会越多,最后交付的软件很可能质量更差。

他建议允许团队保持一个可持续的节奏:

让团队找到一个合适的平衡点、在他们能力范围内交付高质量软件,那么就创建了一个成功的软件开发周期。

查看英文原文 How can Agile make you Faster?

2013-03-11 03:142635
用户头像

发布了 27 篇内容, 共 90798 次阅读, 收获喜欢 4 次。

关注

评论

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

有关 TiDB 升级的二三事——教你如何快乐升级

PingCAP

一个cpp协程库的前世今生(十八)空闲与等待

SkyFire

c++ cocpp

云计算服务滥用安全防范

明亮安全观

云计算 网络安全 信息安全 云安全 安全加固

1月月更|推荐学Java——Maven初识

逆锋起笔

maven javase Java后端 java 编程

【伙伴故事】智慧厨电接入华为云+HarmonyOS,你的未来厨房长这样

华为云开发者联盟

华为云 HarmonyOS iotda 智慧厨电 厨房

今儿新学会一个写日志技能:双缓冲机制

华为云开发者联盟

线程 日志 应用程序 双缓冲区 Web程序

疫情下的口罩生活,演绎出了哪些心理剧场?

脑极体

字节码增强技术之 Java Agent 入门

zuozewei

性能分析 埋点 javaagent 性能监控 1月月更

解析HetuEngine实现On Yarn原理

华为云开发者联盟

sql 大数据 hadoop HetuEngine On Yarn

记录一下童慧琦正念练习

wood

300天创作

构建云端智慧厨电 呵护人间烟火之智慧云厨房的那些事儿

坚果

华为云 1月月更

一文了解数据库事务和隔离级别

Ayue、

MySQL 事务 1月月更

大数据实践:数据指标中心的建设思路

五分钟学大数据

大数据 1月月更

大画 Spark :: 网络(1)-如何构建起基础的网络模型

dclar

大数据 spark 源代码 框架原理

一次ATDD的团队实践

Bruce Talk

敏捷 Agile User Story Product Owner Coach/Facilitate

万字长文带你漫游数据结构世界

秦怀杂货店

Java 数据结构 算法

ReactNative进阶(十二):本地存储 AsyncStorage 及 Realm 使用

No Silver Bullet

React Native 1月月更 realm AsyncStorage

3 【精】TOGAF认证报考指南(一文讲透)

企业架构知识体系

企业架构 架构师 培训 TOGAF

DevOps 需要更多的自动化

飞算JavaAI开发助手

前端开发之jQuery的常用方法

@零度

jquery 前端开发

使用 Visual Studio Code 编写和激活 ABAP 代码

汪子熙

vscode abap 1月月更 vs-code

11 Prometheus之日志及探针监控

穿过生命散发芬芳

Prometheus 1月月更

华为云VSS漏洞扫描服务之开源组件漏洞检测能力

华为云开发者联盟

安全 华为云 漏洞 漏洞扫描 VSS漏洞扫描服务

当时间管理碰上大数据,从此,悠悠时光也终不再那么漫长

华为云开发者联盟

MySQL 数据库 云原生 App 云数据库RDS for MySQL

人类视觉计算理论经典著作,豆瓣评分9.7,中文版惊鸿面世!

博文视点Broadview

虎年前迎来脑科学新锐:脑虎科技的创生故事

脑极体

模块九作业-设计电商秒杀系统

deng

架构实战营

被忽视的NTP安全

喀拉峻

网络安全 安全 信息安全

高并发下如何实现对象的共享?

JavaEdge

1月月更

记EVO 使用error

Ayosh

EVO

不会一致性hash算法,劝你简历别写搞过负载均衡

程序员小富

Java 面试 算法 架构设计 一致性算法

敏捷是如何使你跑得更快?_架构_Ben Linders_InfoQ精选文章