抖音技术能力大揭密!钜惠大礼、深度体验,尽在火山引擎增长沙龙,就等你来! 立即报名>> 了解详情
写点什么

由 J. Sutherland、K. Schwaber、D. Star、M. Lacey 及 D. J. Anderson 撰写的关于敏捷的文章合集

2012 年 4 月 15 日

微软公司为 Visual Studio 开发者汇总了很多资源,包括敏捷软件开发的原则、实践和准则。这些资源浓缩了Jeff Sutherland、Ken Schwaber、David Star、Mitch Lacey 和David J. Anderson 这些有影响力的敏捷开发领袖的文章,内容涵盖很多敏捷方法论的精华并对所有软件开发者都有助益。

这些资源分为下面三个部分:敏捷原则、敏捷实践、精益与 CMMI。

敏捷原则

敏捷原则和价值

Jeff Sutherland 详细说明了在敏捷软件开发宣言中描述的四个核心价值:

  1. 个体及交互

  2. 交付可工作的软件

  3. 客户合作

  4. 拥抱变化

他同时区分了敏捷、方法论和实践,详细讲述了 Scrum 及 XP 的含义及它们之间的互补关系。

敏捷十年回顾:我们在下个十年如何改进

在这篇文章中,Jeff Sutherland 回忆了 2011 年在犹他州 Snowbird 举行的敏捷 10 年回顾会议,一些当年敏捷宣言签署者与敏捷思想领袖会面,庆祝这 10 年来敏捷所取得的成绩,并指出在接下来的 10 年中继续保持成功的四个关键因素:

  1. 追求技术卓越

  2. 鼓励个体改变并引领组织转型

  3. 组织的知识及改进教育

  4. 在整个过程中最大化价值创造

中列举了几个通向成功之路的几个阻碍之后,Sutherland 总结道:

对于敏捷团队来说,最重要的是改进团队的实践以解决世界范围内敏捷社区最大的问题——技术卓越准备好产品的 backlog 需要专业的产品经理,他们能够理解用户的需要,也需要团队的能力及交付卓越软件的激情。在一次 sprint 中完成产品 backlog 需要对工作进行优先级排序、持续集成进行中的任务并不容许缺陷。追求技术卓越是未来十年(敏捷社区)最重要的事情。

完成和未完成

运用实际或假想的案例,Ken Schwaber 及 David Starr 探讨了认为完成实际完成,解释了如何区分这两者及为什么混淆它们会对项目的成功产生影响。他们详细的描述了透明性技术债交付计划及两种能够让事情真正做完的技术手段:针对 Scrum 的 Scrum持续集成

敏捷实践

构建和管理产品的Backlog

在这篇文章中,Mitch Lacey 探讨了产品 backlog 的重要性,给出了创建及维护一份良好的产品 backlog 的实践。文中他包含了下述主题:用户故事、估算、优先级排序保持 backlog 整洁,文章的最后写道:

一份良好的产品 backlog 有助于确保构建出来的软件包含了最重要的功能,这些功能是你在与客户及项目干系人沟通的时候发现的,并采用用户故事记录下来。为了创建并维护一份好的产品 backlog,你需要保持与项目干系人 / 客户及项目团队持续的沟通——每个 sprint 都要进行。

构建良好的 backlog 不能保证交付一个良好的软件系统,但是如果没有好的 backlog,几乎可以肯定的是,最终交付的软件系统不是客户需要的。换句话说,不保持 backlog 持续更新几乎可以肯定导致项目失败。

Product owner 是一份全职工作,backlog 就是他们的职责所在。认真的对待这个角色。让产品 backlog 保持良好状态——你的客户会感谢你的。

优先级排序

Mitch Lacey 接着前一片文章《构建和管理产品的Backlog》写道,如何采用三种方法进行backlog 优先级排序:

Lacey 视 backlog 为“有生命的”,需要不断的投入精力并不断重新调整优先级,以便获得成功。

估算

在这篇文章中,Mitch Lacey 指出了项目估算中的问题,解释了为什么做出准确的估算很困难,也谈及故事点作为度量单位,并提出两种估算技术:计划扑克,和估算墙。Lacey 最后总结说:

估算是困难的,因为在项目开始时有太多的不确定性。Product Owner 和敏捷项目经理试图尽早让价值最大化,通过与他们的 product owner 和项目干系人沟通进行学习,产出可工作的软件,并不断将对软件的反馈集成进来以便能够达到可发布的状态。但是即使是敏捷项目,也必须给出某种估算,说明功能集何时能够交付。

Sprint 计划

Mitch Lacey 以一篇针对Sprint计划的文章作为他关于敏捷实践的系列文章的结尾。在本文中,他开篇探讨了预测承诺,接下来说明了计划及如何达成目标,在此过程中伴随着解释了一些常见的问题和解决方案。Lacey 认为 Sprint 计划“不需要如此具有挑战性。(计划)通常是有趣的,并且这是一个让整个 Scrum 团队通过在一起工作建立友谊的机会”。

精益和 CMMI

精益软件开发

在这篇文章中,David J. Anderson 介绍了精益思想,及与敏捷之间的关系,并解释了精益的价值、原则和实践。Anderson 讲述了精益的价值在于:

  • 承认个人的条件

  • 承认复杂性和不确定性是知识工作的本质

  • 共同工作以得到更好的经济效益

  • 并得到更好的社会效益

  • 探索、接受并怀疑来自各个学科的想法

  • 以价值为主导的社区,增强积极改变的速度和深度

定义一个精益开发流程的原则是:

  • 遵从系统化思考和设计方式

  • 自发的产出可以被构架一个复杂的适应性系统的上下文所影响

  • 尊重个人(作为系统的一部分)

  • 采用科学方法(来引领改进)

  • 鼓励领导力

  • 创造可视性(在工作、工作流和系统运营中)

  • 减少流动时间

  • 减少浪费以提升效率

Anderson 说道,精益软件开发“没有规定实践”,然而社区接受了很多精益实践,包括:累积流图、可视化控制、可视化看板系统、小批量 / 小件流、自动化、改善事件、每日站立会议、回顾会议和运营回顾。

Anderson 总结说:

没有单独的精益软件开发流程。如果一个流程很明确的符合精益软件开发的价值和原则,那么这个流程就能被认为是“精益的”。精益软件开发没有规定实践,但是很多活动已经很常见……

采用精益软件开发流程的组织,如果展示出所有三种类型的浪费(不均衡、浪费及负荷过重)都很少,并显示出能够通过更有效的风险管理来优化价值的交付,则可以被称为精益的。在精益中追求完美是个不断的旅程。对完美的追求没有终点。真正的精益组织总是不断寻求更进一步的改进。

精益软件开发仍然是一个新型的领域,并且我们可以预期在下一个十年中仍会不断演进。

CMMI 原则和价值

这篇文章总结了这一系列有关敏捷的文章资源所谈到的内容,David J. Anderson 断言,经理、流程工程师和项目干系人能够通过采用能力成熟度模型集成(CMMI)获得对一个组织有价值的洞见。Anderson 解释了组织的成熟度是什么、CMMI 模型、一个组织如何能够沿着各成熟度层次不断进步,以及 CMMI 成熟度是如何评定等级的。

查看英文原文: A Collection of Agile Resources by J. Sutherland, K. Schwaber, D. Star, M. Lacey, and D. J. Anderson

2012 年 4 月 15 日 08:551181
用户头像

发布了 32 篇内容, 共 73501 次阅读, 收获喜欢 0 次。

关注

评论

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

ARTS打卡计划_第二周

叫不醒装睡的人

ARTS 打卡计划

GoF 23种设计模式

无心水

设计模式 GoF 23种设计模式

ARTS Week4

丽子

小师妹学JavaIO之:用Selector来发好人卡

程序那些事

io nio 「Java 25周年」 小师妹 selector

程序员陪娃系列——叛逆小娃回归

孙苏勇

程序员人生 陪伴

个人编程技能全景图

南山

大话设计模式 | 2. 策略模式

Puran

C# 设计模式

架构师训练营第一讲-学习总结

索隆

国内首个区块链电子档案平台上线

CECBC区块链专委会

区块链技术 防伪 溯源 电子档案

ARTS Week 3

时之虫

ARTS 打卡计划

软件设计原则作业

qihuajun

软件设计原则学习总结

qihuajun

OFD 版式技术解析系列(二):OFD的颜色显示

华宇法律科技

为什么软件交付要快?因为要有赢的感觉!

刘华Kenneth

DevOps 敏捷 MVP 最小可用产品 持续交付

Flink 源码分析之写给大忙人看的 Flink Window原理

shengjk1

flink flink源码 flink window

【在云端 001】欢迎来到云原生

Bora.Don

云计算 云原生

1. 版本管理工具及 Ruby 工具链环境

Edmond

rubygems CocoaPods VersionControl PackageManager Git Submodule

架构师训练营总结-20200614

caibird1984

编程基础

南山

仓储控制系统(WCS)软件可靠性设计

阿喜伯

仓储控制系统 WCS 可靠性设计 容错性 易恢复性

硬核!30 张图解 HTTP 常见面试题

小林coding

https 计算机网络 计算机基础 HTTP

官方源、镜像源汇总

JackTian

镜像源 官网源

你了解 SpringBoot java -jar 的启动原理吗?

猴哥一一 cium

Spring Boot Java 面试 Fat-JAR JAR URL Java 25 周年

愚蠢写作术(4):怎么让写作从开始到放弃

史方远

读书笔记 个人成长 写作 随笔杂谈

架构师课程第二周作业

杉松壁

思维模型 - 单一要素最大化

石云升

思维模型 第一曲线 单一要素

Shell的技巧小总结(MIT Missing Semester)

AndersonKim

Shell MIT 计算机 Computer Science 计算机工具

推荐几款有意思的小众 App(06.13)

静陌

产品 App

利用工作日志提高效率

Janenesome

思考 工作方式

架构训练营作业-20200614

caibird1984

ARTS|Week 3 本周的主题可能是乱

Puran

ARTS 打卡计划

Study Go: From Zero to Hero

Study Go: From Zero to Hero

由J. Sutherland、K. Schwaber、D. Star、M. Lacey及D. J. Anderson撰写的关于敏捷的文章合集-InfoQ