速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

现代化敏捷简介

  • 2016-11-14
  • 本文字数:6742 字

    阅读完需:约 22 分钟

主要结论

  • 了解现代化敏捷中“现代化”的含义
  • 掌握现代化敏捷的四项指导方针
  • 了解实现现代化敏捷的方法
  • 了解现代化敏捷与敏捷软件开发中“宣言”的差异
  • 考虑敏捷的未来

敏捷正在变得愈加现代化。多亏有了精益和敏捷领域的先驱和践行者,现在我们可以通过更简单、更安全、更快速的方式获得更出色的成果。由于是通过早期的敏捷方法脱胎换骨而来的,我们将这种新方法称之为“现代化敏捷”。

与充斥着各种企业级工具、缩放框架、让人质疑的认证,更重视“主义”而非最终结果的主流敏捷方法相比,现代化敏捷方法极度轻巧。

现代化敏捷无需定义角色和责任,也不“神化”实践,只需要定义四项指导方针:

这四个方针可以帮助我们阐述自己的意图,指引我们实现更出色的风险管理,更高的资本效率,增进同理心,降低工作量。

Massimo Bottura 等米其林三星大厨, Gary Vaynerchuk 等融资数百万美元的创业者,以及 Alcoa、亚马逊、谷歌以及 Etsy 等全球顶尖的组织身上,都可以看到这些方针产生的作用。

现代化敏捷方针势在必行,它们对长远成功至关重要。一起来看看这些方针吧。

塑造更出色的人员

虽然现代化敏捷不会告诉你要创造些什么,但会告诉你需要以“塑造更出色的人员”为意图。这一想法得到了 Kathy Sierra 的博客、讲话,以及图书的启发,《 Badass: Making Users Awesome 》。

Kathy 认为,我们的目标不是塑造伟大的产品或伟大的公司,而是帮助使用我们产品或服务的客户变得更棒。这意味着需要弄清楚客户面临哪些障碍,并通过必要的改变帮助他们实现出色的成果。

这个建议可以带你走得更远。亚马逊从 1997 年开始就以“客户至上”作为自己的指导方针,这种做法证明了如果你能让客户变得更出色,他们会自然而然地推荐你的产品或服务。只要遵循 Kathy 的建议,你的产品或业务就能更加兴旺。

如果你已经不顾一切地努力帮助客户变得更出色,但你的员工工作条件或工作关系极为堪忧,情况又会怎样?这样并不能帮你获得长远成功。为了在工作中做出最佳表现,帮助客户变得更出色,你的员工也必须变得非常出色。现代化敏捷建议我们需要努力让生态体系内的每个人,包括使用、制造、购买、销售,或投资我们产品和服务的人都变得更出色。

要做到这一点并不容易。实际上“塑造更出色的人员”可能需要奋力争取实现颠覆性创新或大胆的使命(Big Hairy Audacious Goal,出自《Built to Last》一书)。组建团队并定义一个你可能根本不知道如何实现的未来。Nicholas Negroponte 曾说过:“渐进主义是创新的最大宿敌(Incrementalism is innovation’s worst enemy)。”进行渐进式的改进固然很好(尤其是当你可以持续不断地改进时),然而重大创新通常需要截然不同的思维方式。

在《Smarter, Faster, Better》一书中,Charles Duhigg 介绍了日本子弹头列车的诞生,该列车在 1964 年就已实现了 120 英里 / 小时(约合 193 公里 / 小时)的高速度。当 Jack Welch(通用电气前 CEO)在二十世纪九十年代初听到这件事后,他要求通用电气的每个部门开始采用“子弹头列车思维”,确立虽不知该如何实现但足够宏大的目标。

让安全成为先决条件

如果安全无法保证,就无法塑造出色的人员。安全是最基本的人类需求,也是帮助人们做出最出色成绩的关键。现代化敏捷将其视作一种先决条件,一种实现成功的基础要素。

太多团队面临各种恐惧。人们害怕做出改变,害怕说出自己的意见,害怕犯错误。问题在于恐惧会影响人的表现。如果恐惧已经深入到文化中,再花哨的过程或实践也将于事无补。

Seth Godin 有一句名言:“人们害怕的不是失败本身,而是失败招致的指责(People aren’t afraid of failure, they’re afraid of blame)。”指责会加剧消极情绪,这对任何人起不到任何帮助。因此 Etsy 培养了一种“不指责的文化”,他们非常清楚地意识到,错误并不应该归咎于某一个人或团体,而是环境中可能存在已久且无法预见的问题造成的,只不过这样的问题恰好在某一天被某个人触发了。他们关注的重点是从失败中学习经验并快速改进。

谷歌也是这样做的。谷歌的一位工程师曾经承认说:“我写错的一行代码导致公司损失上百万美元收入。”有问题的代码存在于谷歌利润最高的 AdWords 软件中,在很多组织里,类似这样的错误有可能造成进一步损失,例如某人丢掉工作,企业失去用户的信任或尊重等。但在谷歌并不会出现这种情况。

Laszlo Bock 在自己的《Work Rules》一书中也提到,犯下这个错误的工程师的上司是谷歌广告和应用部门的资深副总裁 Jeff Huber,Jeff 打造了一种允许人们放心承认错误,从错误中学习经验,但无需承担任何后果的文化。他会通过“我们能从中学到什么?”的会话组织团队成员讨论各种错误和解决方法,以及从中学到的经验。

在针对这位工程师造成的代价高达百万美元的错误进行过讨论后,Jeff 询问该团队:“从这个错误中获得的经验,价值是否超过一百万美元?”团队给出肯定的回答后,会议结束,大家带着重要的收获返回工作岗位。实际上这次会议帮助他们节约了不止一百万美元,因为敢于承担风险的精神和“敢于犯错的文化”这一想法是无价的。

我对于“安全”的执念始于 2012 年,当时 Charles Duhigg 出版了一本神作《The Power of Habit》。Duhigg 在书中讲到了 Paul O’Neill 和铝业巨头 Alcoa 的故事。O’Neill 先生从 1986 年开始担任铝业巨头 Alcoa 的 CEO,当时这家有着 100 年历史的公司正面临困境,员工很担忧,生产的铝材质量很糟,工会正在和 Alcoa 的管理层进行激烈斗争,创新全面停摆。O’Neill 先生采取一种不走寻常路的方法解决所有这些问题:狠抓员工安全性。

O’Neill 先生并没有将安全性作为工作重点,毕竟重点总在变化。相反他鼓励员工将安全性视作一种先决条件。这一变化立刻获得了难以置信的效果。随着员工们做出各种改变,工作也变得更安全更高效。解决了积压已久的问题后,员工开始提出新的创新式建议,产品质量大幅提高。通过让安全性成为员工的先决条件,Paul O’Neill 成功推开了通往卓越的大门。

在 O’Neill 先生担任 CEO 的 13 年间,以及他 2000 年离职后的很长一段时间里,Alcoa 的股价突飞猛进,工伤和工时损失骤降,Alcoa 的员工和客户比以往任何时候更快乐。

让安全成为先决条件,意味着要在从事有潜在危险的工作前培养安全意识。如果经历过不同事故或侥幸脱险之后没能改进安全性,卓越表现从何谈起?因此在任何失败或侥幸脱险的事件之后,都需要采取措施防止同样的问题再度发生。

为了让安全成为先决条件,必须提供安全的协作、产品和服务。我们需要尽力保护人们的时间、金钱、健康、信息、声誉,以及关系。与其每天鼓吹类似“安全重于一切”这样的陈词滥调,我们更该将安全视作通往卓越的大门,塑造更出色人员的关键。

更快速的尝试和学习

人力驱动的飞机曾是一个老大难问题。1959 年,一位富裕的商人提供了大额现金奖励,征集能通过人力驱动的飞机在天上绕八字飞行一英里的人。18 年来始终无人应战。随后 Paul MacCready 接受了这个挑战,在研究过他人的做法后,他认为“问题的关键在于我们不知道问题到底在哪(The problem is we don’t know what the problem is)。”

随后 MacCready 设计了一种流程,借此在保障安全性的前提下迅速解决了人力驱动飞机的这一问题。他和他的团队使用铝管、聚酯薄膜和线缆快速制造了一架尝试性的飞机。这架飞机的速度很慢很低,就算坠机也不会造成安全问题,同时飞机的修理工作也变得更简单。他的竞争对手需要花费数周甚至数月的时间进行试飞,MacCready 和他的团队在几小时内就可以完成试飞、失败、学习经验教训、应用新学到的知识,重新进行尝试的全过程。首次试飞人力驱动的飞机不到一年的时间里,他和他的团队打造的蝉翼秃鹫(Gossamer Condor)终于获得了成功。

Paul MacCready 被公认为 20 世纪最伟大的工程师之一。以快速安全的方式失败,这是他最终成功所不可或缺的。快速尝试和学习也是现代化敏捷的一项指导方针,这样做可以确保我们不会浪费时间,更快速获得成功。

我们的尝试必须可以“安全地承受失败”,这样才能无所畏惧地开展更多尝试。有位记者曾经询问亚马逊 CEO Jeff Bezos 对他们公司彻底失败的 Amazon FirePhone 手机有什么看法。Bezos 先生不假思索地回应说:“我们目前还在经历更大的失败。”Bezos 先生在用一种类似于风投注资的方式经营亚马逊,可以在诸多领域勇于尝试并压赌,只要在部分领域获得足够大的成功,就可以为所有其他失败买单。Bezos 先生很自豪地认为亚马逊是一个“失败的起”的公司。

如果受困或没能学到足够的经验,我们会认为这意味着需要进行更多尝试。对这个方针来说,速度是关键。我们希望能在最短时间里从失败中学到经验,我们希望能尽量快速地失败并快速恢复参与到新的尝试中。快速的尝试和学习可以帮助我们获得持续不断的改进。

持续不断地提供价值

新入职 Airbnb 的工程师要用多久才能放心地将自己的代码发布到生产环境?对很多企业来说,答案可能是数周甚至数月。人们普遍认为不能放心新手发布至生产环境,需要先进行大量培训和指导才能让新手进行首次生产部署。

但是在 Airbnb,新员工入职 2 天后就可以生产发布。这是怎么做到的?

Airbnb 非常重视持续部署,以至于他们直接将这一做法融入到员工入职过程中。每个新员工将被分配一位指导员,指导员负责找出需要修复的内容或需要实现的小功能。新员工第一天上班时,指导员会帮助他们配置工作用计算机(整个过程可自动完成,因此花不了太多时间)。随后指导员会帮助新员工理解自己的任务并放手让员工自己搞定。

这样的体验让每位新员工有机会理解 Airbnb 的部署流程,以及将自己的想法变为生产环境中代码所必需的步骤。如果他们有任何问题,可以向指导员求助。

这种做法变得可行的关键在于 Airbnb 真正重视价值的持续交付。他们通过各种方式确保部署流程足够安全,这样开发者也将可以更容易地为客户提供价值。

如果不能经常交付,就不能及时了解客户到底想要什么。价值的交付并不一定意味着要将产品或功能发布给普通大众。有时候可能只是简单地将不完善的想法告诉某人,并快速从对方那里获得反馈。

你肯定也想在这样一种能够持续不断地提供价值的环境中工作。如果你的任务是关闭不再使用的 AWS 实例,借此帮助公司省钱,那么就要用尽可能快的速度找到这样的实例,让公司立刻获得节约,这时候用两个月制定计划肯定是不行的。

任何有价值的东西,如果还没交付,那么价值也就无从谈起。在现代化敏捷方法中,我们需要经常问问自己“如何能更快速地交付恰当的成果?”这就需要我们能够发现可以立刻安全地部署,而无须等待以后进行的小幅度改进。持续地交付价值可以让客户更快乐和安全(例如快速为客户发布瑕疵修复)。

持续地交付价值也使得我们能快速尝试和学习。在软件开发的世界里,安全的持续部署流程使得发布工作变成一种简单易行甚至略显无聊,但可自动化实现的过程,进而可以降低我们的压力。当你可以快速简单地进行回滚或推进部署和发布时,这样的安全保障也就随之而来了。

“实现”现代化敏捷

那么到底该如何“实现”现代化敏捷?答案有很多。具体步骤或规定是什么?四个方针恐怕不够吧?

假设你打算写本书。如果遵循现代化敏捷方针,你需要快速确定这本书能否让读者变得更出色。如果没人对你的书感兴趣,你在时间方面进行的投入就显得不那么安全。因此为了了解大家对你想写的主题是否普遍感兴趣,你可能需要快速进行尝试和学习。为此你需要向一些人提供某种价值,并快速地从对方的反应中学习经验。也许你可以先写几页,写一个简短的章节甚至一小篇文章,依次从你的核心交际圈和更广泛的受众中收集反馈。随着写作和学习,你还需要使用工具对作品进行备份,确保工作成果安全无虞。如果写书过程中需要采访某些重要人士,你可能需要用多个录音机对采访进行全程录音,这样就算一个录音机坏了或者存储空间不足,也可以通过足够的容错机制确保录音不受影响。

看到这些方针如何推动着你达成目标了吗?

另一种学习如何应用现代化敏捷方针的方法是,从其他通过一种或多种方针获得成功的人身上学习经验。我是在 2007 年了解到持续部署,当时 Timothy Fitz 讲了他自己公司(IMVU)的故事:“不可行之事,一天可做50 遍。”

从别人的成功中学习,是在特定框架内实现所需步骤或遵循方针细节的一种很棒的备选方法。他人的成功远比方针或规则本身能给人留下更深刻的印象。ModernAgile.org 的详细了解一节列出了很多通过现代化敏捷四项方针获得成功的参考视频、图书以及文章。

除了他人的成功,在遵循着四项方针的过程中你也可以问自己几个问题。例如“在确保内部和外部安全的过程中最大的威胁到底是什么?”、“大家在工作中是否害怕什么事?”、“关于如何让大家更出色,我们是否有清晰的愿景?”、“今天能在哪些方面进行尝试?”、“我们的尝试是否能够安全地应对失败?”

回答这些问题可以帮你确定正确的方向,但为了掌握现代化敏捷的四项方针,你还有更多工作要做。

现代化敏捷雷达图可以为你提供帮助。距离来说,如果愿意,可以衡量一下自己在“让安全成为先决条件”这条方针方面做得如何,首先可以针对这条方针的不同要素进行头脑风暴。最近与我合作的一个团队确定的要素包括心理安全感、人身安全、软件安全、环境安全、金融安全,以及失败后的安全保障。该团队还通过雷达图对每个要素用五分制进行了评分:

雷达图是了解特定方针实现程度的好方法。

此外很多对现代化敏捷方针感兴趣或正在从事相关工作的人还组建了社区。大家可以在这些社区中学习他人的现代化敏捷故事,或者讲述自己的故事。详情请访问ModernAgile.org 的 Slack 社区 Facebook 社区

现代化敏捷和敏捷软件开发宣言

现代化敏捷的四项方针适用于不同领域:制造业、HR、销售、营销、节目监制,甚至餐厅的经营。而敏捷软件开发宣言只侧重于软件开发工作。

随着敏捷这一想法的日益流行,也许是时候对更新我们的建议,使其适用于包含人类活动的其他领域了。

在对我有关现代化敏捷的第一篇博客文章发表的评论中,Karl Scotland 问到如果宣言的价值陈述(“我们重视 x 或 y 的价值”)更具战略性,就像现代化敏捷的四条方阵一样,结果将会是怎样的。随后他进行了这样的对比:

敏捷软件开发宣言 – 我们重视…

现代化敏捷方针

客户协作胜过合约谈判

塑造更出色的人员

个人和交互胜过过程和工具

让安全成为先决条件

对变化进行响应胜过遵循计划

更快速地尝试和学习

可工作的软件胜过面面俱到的文档

持续不断地提供价值

越深入考虑这个对比,我就越深入地意识到 Karl 提出了一个很棒的观点:现代化敏捷的四条方针为普通大众(而不仅仅是软件领域)提供了更清晰的战略。借助这些战略,人们可以在工作中实施更有效的操作。这也使得我将最初写的第一篇博客文章中提到的实践替换成了不同人或公司为实现更出色的结果实现这些实践的故事。

敏捷的未来

虽然敏捷本身也在逐渐现代化,但软件行业接受敏捷方法的主流人群依然在采用着缓慢的过程,纠结于各种官僚主义的工具、框架和认证中。

现在的年轻人已经开始认为“敏捷”是老年人的专利。负责产品的人都认为敏捷的关键在于故事点和速度而非最终用户的需求。热衷于敏捷的程序员开始抛弃软件工艺。设计师更喜欢设计化思维。企业家和创业者更愿意接受精益创业。

与此同时,敏捷行业联合体(包括工具供应商、销售和营销人员、顾问、认证机构、认证讲师等)也开始遭遇敏捷方法自身变化带来的挑战,因为这些变化需要更新他们的学习目标、培训材料、考试内容、工具、网站等。虽然我们可以他们更重视的是敏捷方法的货币化,但我们不应让他们挡在我们自己的现代化之路上。

卓越的,在历史上产生过重要影响,但已日渐陈旧的过程和实践应该功成身退了。是时候回归一种更轻巧,更有乐趣,能够帮助人们获得更出色结果的敏捷方法了。现代化敏捷正当时。

关于本文作者

strong>Joshua Kerievsky 是 Industrial Logic 的创始人兼 CEO,这是一家致力于帮助全球组织实现产品开发现代化的先驱型顾问公司。在二十世纪九十年代中期,Joshua 加入了一家旨在通过“轻量级方法”帮助人们更好地开发软件的实验性小规模实践社区。从那时起,他已经帮助数百家组织的数千名员工改进产品开发方式。目前他正在努力通过剔除过时的实践,利用软件社区和其他行业在获得出色工作成果的过程中所获得的经验实现更为现代化的敏捷方法。现代化敏捷的实践者需要塑造更出色的人员,让安全成为先决条件,更快速地尝试和学习,持续不断地提供价值。Joshua 经常在各地大会上演讲,他也是曾经获得 Jolt Cola 奖的畅销书《 Refactoring to Patterns 》、大量敏捷方法学习课程,以及广受欢迎的文章,例如 Anzeneering 足够的设计,以及别再使用故事点的作者。他同时还活跃在 Twitter 、Snapchat,以及新成立的 ModernAgile.org 社区。

作者: Joshua Kerievsky 阅读英文原文: An Introduction to Modern Agile

2016-11-14 17:164078
用户头像

发布了 283 篇内容, 共 107.5 次阅读, 收获喜欢 62 次。

关注

评论

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

Java基础知识面试题(2020最新版)

Java架构师迁哥

架构师训练营第一期-第一周课后-作业一

AWS在线技术峰会2020探班回顾,四大看点不容错过

有只小耳朵

云计算 AI 云原生 金融 医疗

我擦~字符串转字节切片后,切片的容量竟然千奇百怪

Gopher指北

后端 Go 语言

Apache Pulsar 社区周报|09-05 ~ 09-11

Apache Pulsar

开源 云原生 Apache Pulsar 消息中间件

Rust闭包的虫洞穿梭

袁承兴

rust 函数式编程 闭包

百度大脑助力旅游场景智能解决方案落地

百度大脑

2020年6月最新iOS面试题总结

iOSer

ios 2020 面试 经验总结

跨专业学习6个月,成功上岸阿里|滴滴,分享学习路线供大家参考

小Q

Java 学习 架构 面试 基础

GrowingIO 智能运营产品微前端实践

GrowingIO技术专栏

大前端 智能运营

餐卡系统设计文档

龙卷风

Copy攻城狮辛酸史:含泪“一分钟”跑通MindSpore的LeNet模型

华为云开发者联盟

学习 程序员 mindspore

HTTP必知必会

陈靓-哲露

当代开发者的好帮手,浅析.NET敏捷开发框架的优势与特点

Philips

敏捷开发 软件开发 .net core 开发工具

Code Like Sync, Works Like Async

滴滴普惠出行

学习笔记丨浮点数探究

Liuchengz.

C语言 基本数据类型

百度大脑事件图谱:洞察复杂世界中的事件知识

百度大脑

架构师训练营第一期-第一周课后 - 作业二

OBS鉴权实现的宝典秘籍,速拿!

华为云开发者联盟

OBS 签名

智能门禁的音视频技术应用

anyRTC开发者

音视频 WebRTC 直播 RTC

分布式系统:数据一致性解决方案

马迪奥

分布式事务 一致性

正则表达式

菜鸟小sailor 🐕

爬虫

面试官:哪些场景会产生OOM?怎么解决?

艾小仙

Java 架构 面试 编程语言 JVM

卧槽!牛逼了!40K+Star!Mall电商实战项目开源回忆录!附源码、教程合集

学习 程序员 架构师 计算机

入行架构师之前,这7项技能你要先了解一下

华为云开发者联盟

架构 架构设计 架构师

食堂就餐卡系统设计 UML 练习

escray

学习 极客大学架构师训练营 UML

git的几种实用操作(合并代码与暂存复原代码)

良知犹存

git

JDK15正式发布,划时代的ZGC同时宣布转正

YourBatman

ZGC JDK15

同城快递订单系统架构设计方案

周冬辉

第一周作业,UML图

等燕归

实战案例丨GaussDB for DWS如何识别坏味道的SQL

华为云开发者联盟

数据库 sql 算子

现代化敏捷简介_研发效能_Joshua Kerievsky_InfoQ精选文章