开篇词 敏捷是互联网时代的超级管理术

你好,我是莫敏。自 2006 年开始接触敏捷,到 2010 年参与组织每年一届的敏捷大会,再到 2012 年加入腾讯先后从事项目管理和产品管理工作,可以说从过去到现在,我一直身处敏捷实践的前线,对于敏捷理论如何有效地在公司落地有切实的体会和认识。

而无论是在腾讯帮助游戏工作室、游戏研发部与安全中心进行效率提升,还是后来通过敏捷导入工作帮助上百家企业(如腾讯、平安、华润)的产研团队完成业绩和效率的双向提升,这些经历都让我发现:只要你工作中涉及协作,就一定需要项目管理能力,而敏捷在当下具有天然优势 。

而工作中我看到,仍然有很多人并未真正认识到敏捷的价值所在,不知道敏捷可以在很多地方帮到我们,并被一些能由敏捷轻松解决的问题困扰着,比如:

  • 你虽然每天都在加班,似乎有干不完的活,却很难达到公司给设定的目标;

  • 你的团队虽然投入大量营销费用,但业务却停滞甚至下滑,业务数据总不见明显上升;

  • 你们的公司产品,用户满意度不高,问题被归咎于产品经理,但是产品经理进行了培训也没有多大起色。

而这些,其实是可以通过敏捷方法解决的。

互联网时代的超级管理术

敏捷项目管理中的“价值驱动”和“快速试错”思维,特别符合当下的互联网业务,也正是基于这点,敏捷在国内最早为 BAT 公司所采纳,并在更多互联网公司中生根发芽,逐渐成为互联网超级管理术。

腾讯就职期间,我曾作为欢乐斗地主的项目经理,带领团队运用敏捷的核心思想“价值驱动”和“快速试错”,实现了这款手游从 0 到 1 的突破,并且获得了腾讯五星游戏、棋牌游戏突破奖的殊荣,可以说,欢乐斗地主能够成为中国棋牌游戏中的常青树,这与我将敏捷导入团队不无关系。

后来,我帮助一家互联网金融公司做敏捷导入,当时他们的产品功能和竞品差异不大,在市场上没有明显亮点,虽然投入了很多广告费用但销售数据仍然乏力,产品负责人对此非常困惑。于是依据敏捷思想,我首先成立了用户体验组,专门针对用户体验进行研究和打磨;然后成立跨职能团队,攻坚用户需求,每周一个版本,快速验证用户需求;需求一旦被验证,便让营销市场配合提炼亮点进行推广。最终,这款产品营收翻了 3 倍。

这并不是个案,很多互联网公司都面对着这样的问题,不懂用户、不了解用户需求,在一味地搞规模、推扩张的过程中使获取用户的成本越来越高,但是公司收入却没有明显增长,结果就是公司规模大了,却并不盈利

因此,越来越多的管理者注意到了敏捷项目管理方法,越来越多的企业(包括网易、京东、迅雷、新浪、滴滴、唯品会、招商银行等)不断以敏捷思维去运营公司,并引入敏捷课程作为项目管理必修课。

而要为公司导入敏捷,这就要求你必须了解敏捷项目管理方法,尤其是实践方式和技巧。

这些年里,我见证了腾讯从 PC 到移动时代的转变,也见证了敏捷的发展,从互联网行业到传统行业通过导入敏捷方法完成蜕变。我的从业经历,让我可以更好地来帮助你从敏捷实践中受益。在这个课程中,我希望把敏捷的理念推广给更多人,用腾讯的故事来带你建立对敏捷的知识体系,用真实的案例帮助你在工作当中落地实践,最后达成公司和个人的双赢结果。

我怎么帮你学习敏捷项目管理呢

理论是学习时翻阅的字典,真正的掌握寓于实践。

我刚开始拥抱“敏捷”也曾踌躇满志,感觉收获满满,但是一落到公司里就不行了,比如敏捷所倡导的“自组织管理”让项目经理完全不敢在项目进行时请假,生怕项目突然出问题被领导怪罪,一个小团队中实践都不行,更不要说放手让整个大团队来“自组织”了。

这个问题一度让我很是头疼,于是向领导要方法,向很多“大神”取经,后来我才知道原来自组织团队需要一个循序渐进的过程。我们要先帮团队理清楚团队目标,再教团队解决问题的方法,在适当的地方做出引导,锻炼团队解决问题的能力,才可慢慢放手让团队自组织。

所以,理论是一回事,如何把理论变成可落地的实践又是另一回事。而很多人做不好敏捷,无法在公司实践业务中发挥敏捷的效用,一个很大的原因就在于敏捷多是一些抽象的概念(比如MVP、TDD),不好消化吸收,这也是我将截取腾讯的真实案例,以及提炼我的实践落地过程渐进式带你走进敏捷项目管理的一个原因,希望给你最一线的借鉴经验。

课程主要分为 3 部分,共 11 讲:

  • 认知篇:带你探究腾讯的敏捷历程,通过剖析腾讯内部敏捷案例如欢乐斗地主如何从 PC 端转手游,来分析腾讯到底具有怎样的敏捷基因。这个模块还会帮你了解敏捷的方法(比如 Scrum 、DSDM 等),从起源到理论框架来带你系统化地理解敏捷。

  • 实战篇:帮你解决一系列的敏捷导入问题。比如,公司是否适合做敏捷导入、如何找到适合公司的敏捷方法、如何让团队具备敏捷思维、如何让团队自组织、如何做好敏捷的实践落地。

  • 提高篇:聚焦敏捷导入者常见问题的解决方案,比如敏捷团队的绩效度量怎么做、如何说服领导从0到1导入敏捷,帮你解决敏捷导入过程中的“形而上学”和“无法落地”的问题。

课程最后还有一个彩蛋,我会为你分享ACP认证攻略,希望为你的个人发展提供更高阶的方向指引,让你在敏捷项目管理之路上再向前一步。

你将获得,包括但不限于

  • “快速试错”思维:不断去审视自己,用成长思维成就个人。

  • “价值驱动”思维:认清自己对于公司的价值,明确职场道路。

  • “自组织型组织”方法:巧用授权,放手让团队去干,优化分工协作。

  • “客户合作”原理:学会让客户参与到产品改善中来,真正理解客户所需,使产品更贴合客户要求。

  • 透明化的工具:帮助异地团队打破沟通壁垒,高效协同。

这里,我先罗列了几点,还有更多的内容在课程中等待着你。

作者寄语

你可能处于以下几种情况之一 :

  • 想转型或者已经被推上项目经理或管理岗位的技术人,你可以在这里掌握敏捷方法,用敏捷实践帮助提高团队效率,把控全局。

  • 项目管理从业人员,但是项目管理知识并不系统,实践中缺少灵活性,需要敏捷实战案例丰富自己,这个课程可以帮助你系统复盘敏捷知识,灵活运用敏捷。

  • 敏捷实践者,虽然项目经验丰富,但是缺少统一的行业语言和坚实理论支撑,你可以系统化学习敏捷思维,并学以致用,形成自己的方法论。

  • 想要转型做咨询的敏捷教练,这个课程可以让你掌握敏捷实践落地的技巧,让你的敏捷理论变得更加“实干”。

或者你仅仅是对项目管理感兴趣,尽管来学吧。这堂课并不难,我曾经也是敏捷小白,这些年来,我通过敏捷走进腾讯,通过敏捷当上公司总监,上市公司副总裁,通过敏捷自己创业当老板,我不断受益,所以,我希望敏捷能帮助到你,而且我自信地告诉你,这是一定的。

多年的实践也让我明白了一点,理解他人的解决方法,在工作中多观察,试着从现实问题着手去做一些改变,你会猛然间发现一个问题已经被解决了,然后不断重复这个过程来解决更多的问题,一层层抽丝剥茧,你会发现一个更优秀的自己。其实,敏捷方法就是这样一个个的工具集。

OK,如果你已经准备好了,现在就让我们一起开启敏捷之旅,也欢迎你把关于敏捷的思考与经历,在留言区和我分享。


01 演化:腾讯的敏捷管理之路

今天我将为你介绍腾讯敏捷项目管理的演化历程,在这个过程中,你可以学习到腾讯导入敏捷的经验,并且帮助你建立起敏捷的概念。

现在的腾讯已经成为国内互联网行业的一大巨头,这其中敏捷项目管理功不可没。这是因为在早期发展的时候,面对变化莫测的环境,腾讯想到了导入敏捷项目管理,并以此建立了自己的护城河。那么腾讯为什么会导入敏捷呢?这跟我们现在所处时代背景息息相关。现在是互联网和人工智能的时代,这个时代也被称作 VUCA 时代,那么 VUCA 时代究竟是什么呢?

VUCA 时代

马化腾在一次访谈中说过“腾讯做战略从来只看 3 年”,而我认为这个时代唯一能确定的,就是它的不确定性, VUCA 时代就是用来描述这个不确定性的、变化莫测的时代,它具有四个特点。

  • Volatility(易变性):现如今的商业环境是瞬息万变的,我们需要思考如何适应这种多变的环境;

  • Uncertainty(不确定性):因为变化太快,所以我们的产品越来越具备不确定性,用户喜不喜欢我们的产品,我们的公司还能生存多久,这些都是不确定的;

  • Complexity(复杂性):产品成功的因素也变得非常复杂,公司能否生存不仅取决于是否做出好产品,品牌、营销、市场、资本等,每一个因素都有可能直接影响产品的成败;

  • Ambiguity(模糊性):因为左右产品是否成功的决定性因素太多,那么团队对需要达成的目标就会非常模糊,领导对团队所做的事情能否达成目标也会没有信心。

也就是说,当下的商业格局和企业生态就处于 VUCA 环境中,所有的公司或团队都有可能正在面临着上述困境而无法破局。如果想要在这次变革中获得胜利,那么往往需要具备快速交付价值及灵活应对变化的能力,对此,我们来看看腾讯是怎么做的。

腾讯的敏捷演化历程

腾讯为什么引入敏捷?

1998年腾讯公司成立,当时专门针对中国人的即时通信软件只有 QQ ,可以说在发展的初期,腾讯的竞争对手很少,QQ 基本处于即时通信的垄断地位,所以此时它只需要做一件事情,那就是单一的产品快速迭代以满足用户需求。

从 2000 年到 2005 年,腾讯的业务发展到了第二阶段,此时的互联网领域可谓是“百花齐放”,在这 5 年里,游戏、广告、搜索、电商等行业已经茁壮成长,腾讯在这些领域面临着行业里最高级别的对手,如做游戏的盛大、做广告的新浪、做搜索的百度和做电商的淘宝。这意味着此时的腾讯也进入了 VUCA 时代,它主要面对的问题可以总结为以下 3 点:

  1. 不确定性:因为在腾讯涉及的这些领域里面,各家公司都力争提供更好的功能来吸引用户,所以用户被好的体验培养后,要求越来越高,用户的需求就越难以满足,产品成功的不确定性也就越高;

  2. 复杂性:此时的腾讯已经从几百人的团队扩展到了上万人的团队,组织层级也越来越多,汇报关系也越来越复杂;

  3. 模糊性:管理层决定的目标落实到每个部门个人上时,因为层级增多容易失真,而且当时的每个部门都只紧盯自己的 KPI ,不注重部门协作,所以部门间的协作不太顺畅。

优秀的企业总是能在困难中破茧成蝶,腾讯意识到基于传统商业模式的软件开发方式已不再适用当下的发展形势,所以开始尝试寻找适合研发管理提效的方法。面对 VUCA 时代的不确定性挑战,Jim Highsmith 在 1999 年正式提出了自适应的敏捷开发方法,腾讯了解到了这一点,于是最终决定引入能解决不确定问题的敏捷开发模式。

腾讯怎样落地敏捷

腾讯的敏捷之路是从转变思维开始的。当时敏捷在国外已经比较成熟了,比如 Google 公司和 Facebook 公司都在使用敏捷管理,而且已经取得了不错的成效。因此腾讯决定学习国外的敏捷思维,从国外引入知名的咨询教练团队,让有经验的专业团队来帮助公司内部导入敏捷思想。

腾讯导入敏捷是从试点项目开始切入的。 具体的做法是从一个试点项目开始导入,一个试点初显成效以后再逐步推广到其他部门。这个推广过程并不是自上而下的,也就是说没有任何一位领导指定必须做这些事情,而是各个部门按照自己的需求和实践情况进行导入。

敏捷落地需要引入先进的项目管理工具。 腾讯本身具有技术优势,所以腾讯选择了自行研发敏捷研发管理工具 TAPD ,组建了它的 TAPD 团队。在敏捷导入的过程中,TAPD 提供的几样工具有效帮助了敏捷导入:

  1. 看板,能够直观地展示团队的进展;

  2. 流程配置,能适应不同团队的敏捷过程;

  3. 任务流转,能让团队更好地自组织起来;

  4. 报表系统,能让领导更清晰地看到团队的目标和执行过程。

纵览全局以后,我们再来看一下腾讯怎样推进主线的,它先选择了 QQ 空间团队作为敏捷转型的第一个试点,那么腾讯为什么要选择 QQ 空间团队呢?具体原因有三:

  1. QQ 空间是 Web 页面开发,发布方式很灵活,不需要更新客户端,随时可以发布新版本,用户无须手动更新或者下载,也就是做到了用户无感知;

  2. QQ 空间不是主营业务,如果转型没有成功也不会影响公司的主营收入;

  3. QQ 空间作为一款新出的产品,没有稳定的用户群,也没有类似的产品可以参考, QQ 空间在挖掘用户需求方面比较困难,也就是说无法精准地找到用户的痛点,因此这个团队都希望引入新的方式来改变现状。

QQ 空间团队的敏捷实践具体是这样做的,首先运用了敏捷的 Sprint,从滚动迭代开始做起,团队保持每周一个新版本,发布完版本之后,取得用户反馈,再根据用户反馈快速响应和优化,这样一下子与竞争对手拉开差距,奠定了市场领先地位。

由于 QQ 空间团队取得不错的效果,所以随后 QQ 农场和 QQ 浏览器团队也相继进行了敏捷转型,敏捷在腾讯就这样逐步推广使用了起来。

敏捷实战案例:细看腾讯游戏部门敏捷转型

接下来我就以腾讯游戏为例来详细讲讲,一个部门是如何进行敏捷转型的。

相比于 QQ 空间,腾讯游戏的敏捷转型起步相对较晚,这是因为最初的游戏都是在 PC 端,体量非常大,一款游戏的研发周期往往需要一两年才能做出来,甚至有些超大型的游戏项目,足足花了 5 年才问世,所以要像 QQ 空间团队一样,游戏部门每周都交付一个版本几乎是不可能完成的任务,随着移动互联网行业的发展,大家开始发现,手机游戏会成为未来,而手游的特点让它天然就合适以敏捷方式进行开发,我们来看看手游开发的特点:

  1. 团队规模小,开发周期短:三五个人的团队,两三个月,就可以做一款简单的单机游戏;

  2. 需求变化快:由于手游下载很方便,所以用户很容易获取,也就很容易放弃,如不能持续满足用户新的需求,很容易被淘汰。

腾讯游戏的领导认为,未来手游一定是往精品发展,于是提出了“精品 2.0”的概念,意思是既要效率又要质量。在这样的背景下,作为棋牌游戏“一哥”的欢乐斗地主手游,在 2011 年也引入了敏捷思维,开始了敏捷转型之路。

欢乐斗地主游戏在 PC 时代,花了近两年的打磨时间才面向市场,但是,在手游快速迭代的时代,留给我们的时间很短。正所谓不破不立,我们应用了敏捷实践,让整体的质量和效率得到极大提升,我们的主要做法是这样的:

1 . 把控手游质量,我们引入了敏捷“客户合作”的价值观,通过短周期迭代,尽早发布版本让用户体验,让用户加入我们的整个产品生产环节。这样做的好处是:

  • 让用户有参与感,他们感受被需要了;

  • 能尽早验证我们的产品是否是用户满意的;

  • 及早优化需求,降低了需求优化的成本;

  • 减少因为返工带来的浪费;

  • 对外提高了产品质量。

2 . 把控迭代效率,我们根据敏捷中的持续集成实践,自主研发出了名叫 SODA 的持续集成工具,它可以帮助我们在代码提交的那一刻让程序自动编译,编译成功自动测试,测试完后自动部署,这样就节省了人力,提高了版本迭代的效率,这样做的好处是:

  • 自动编译测试部署一步完成,时间至少减少了三分之二。

  • 开发人员能及早发现并解决问题,降低了修复问题的成本。

  • 产品人员每天都能验收版本,大幅减少了需求实现完成不合格的返工时间。

就这样我们把游戏的研发周期,从过去的两年缩短到 8 个月,并且因为上线未出过大问题,我们的欢乐斗地主被评为了公司精品游戏 2.0 战略下的五星游戏。能取得这样的成就与引入了敏捷实践密不可分。

同时,随着腾讯越来越多的游戏采用了敏捷实践,使得它能够快速打造出更多高质量的游戏,而且用户口碑也非常不错,因此腾讯逐渐走上了手游的制霸之路。

到这里,我们就了解到了腾讯的敏捷演化历程,通过这些,相信你对敏捷有了一些认识,接下来的课程中,我会带你学习敏捷中必备的知识技能,帮助你建立起敏捷的知识体系。如果你学习完本节课有什么问题,欢迎你在留言区留言与我一起讨论,我们下一课时见。


02 入门:你必须知道的敏捷内容

我在上一课时介绍了腾讯敏捷的演化历程,相信你已经对敏捷也有了初步认识。要学会敏捷实践首先要打好理论基础,那么今天,我将为你介绍敏捷必备知识,也就是说只有掌握了这些,敏捷才会在你的脑海里生根发芽,在未来应用起来才会得心应手。

敏捷既可以说成是一种思维,也可以说是一种方法,它旨在项目推进的过程中,帮助团队提高效率。但除了敏捷,精益思想和看板方法也能够提高效率,在学习敏捷之前,我们先理清它们三者之间的关系。

区分:敏捷、精益和看板方法

精益方法多用于企业管理,是面向全局性的战略级方法,而敏捷和看板方法多用于产研团队,是面向组织级的。我们通常把敏捷⽅法和看板⽅法视为精益⽅法的⼦集,因为它们都是精益思想的具体实例,具有部分共性,比如都反映了“关注价值”“⼩批量”和“消除浪费”等概念。

而它们的区别在于:看板方法适用于局部改善,它更关注如何找出团队的瓶颈,并逐个消除瓶颈来提升效率,对组织结构不会有任何影响,所以实施阻力小。但是敏捷是面向组织全体的,对产品团队的项目制组织结构有要求,需要改变原来职能型的组织结构,以项目制的方式,把产品、开发、测试、运营等组成一支为业务目标负责,可以端到端交付的团队,敏捷更注重最后交付的结果。

因为它们各有所长,所以在实际工作中,我们常常也会两者结合以达到最佳的效果,具体的实例我会在后面的课程中讲到,接下来我们就来正式地学习敏捷。

敏捷的三把利剑:价值观、原则和实践

学习敏捷的最终目标就是在我们脑海中形成敏捷思维,并将这种思维付诸实践,从而帮助团队提高效率,而这两者是相辅相成的,只要灵活掌握并运用敏捷方法,随着实践的增多,不仅可以形成敏捷思维而且还可以拥有丰富的实践经验。那么敏捷思维是什么的呢?

敏捷思维是由是价值观和原则构成,并在敏捷实践中体现出来的。其中,价值观来定义敏捷思维模式,原则作为行动指导,实践也就是具体应用的过程。其中实践的部分是非常重要的,我们学习敏捷,最终都要落实在实际生活、工作场景中,在这个过程中,我们要注意根据自身需求去选择最适合的实践方案。那么,我们来看一下每个方面具体都包含什么内容。

敏捷宣言

虽然腾讯在 2006 年才开始引入敏捷,但是在 2002 年时,来自全球的 17 位管理专家在美国发表了敏捷软件开发宣言,敏捷就此诞生,它一出世便如星星之火燎原般席卷全球,在之后的一段时间内,敏捷开发逐渐成为这个时代最流行的应对 VUCA 时代的软件开发方法。

敏捷宣言具体是这样的:

  • 个体和互动高于流程和工具;

  • 工作的软件高于详细的文档;

  • 客户合作高于合同谈判;

  • 响应变化高于遵循计划。

也就是说,尽管右项有其价值,我们更重视左项的价值。

我们可以看到,敏捷宣言定义了敏捷是一种方法,但依据多年的敏捷实战经验,我们可以这样来理解敏捷,它就是用来应对 VUCA 时代不确定性商业环境的方法和实践。敏捷宣言是敏捷的价值观,它告诉我们两点:

  1. 敏捷方法并不是凭空而谈,它源自实践积累,我们需要把握敏捷的核心,在实践中不断去探索更好的方法。

  2. 敏捷方法来源于实践,它也应归于实践,帮助我们解决实际问题,而不是一个框住我们思维的框架,沦为思想牢笼。

敏捷的十二大原则

敏捷宣言是专家们从软件开发的经验中总结来出来的,它是高度凝练的思维,而后依据这四条价值观,我们衍生出来了更具体的十二大原则,对敏捷宣言进行了更具有实操性的解释,具体内容如下:

  1. 我们最重要的目标,是通过持续不断地及早交付有价值的软件使客户满意。

  2. 欣然面对需求变化,即使在开发后期也一样。为了客户的竞争优势,敏捷过程掌控变化。

  3. 经常地交付可工作的软件,相隔几星期或一两个月,倾向于采取较短的周期。

  4. 业务人员和开发人员必须互相合作,项目中的每一天都不例外。

  5. 激发个体的斗志,以他们为核心搭建项目。提供所需的环境和支援,辅以信任,从而达成目标。

  6. 不论团队内外,传递信息效果最好效率也最高的方式是面对面的交谈

  7. 可工作的软件是进度的首要度量标准。

  8. 敏捷过程倡导可持续开发。责任人、开发人员和用户要能够共同维持其步调稳定延续

  9. 坚持不懈地追求技术卓越和良好设计,敏捷能力由此增强。

  10. 简洁为本,它是极力减少不必要工作量的艺术。

  11. 最好的架构、需求和设计出自自组织团队

  12. 团队定期地反思如何提高成效,并依此调整自身的举止表现。

我们可以看到,十二原则是用来指导我们如何进行敏捷实践的,它明确地列出了我们在推进项目中会遇到的一些情况,并且说明了应该怎样去做,或者怎样做更好。比如第二条,它告诉我们要欣然地面对需求变化,这是因为在工作中,需求很容易频繁地变更,如果团队没有做好随时面对变更的心理准备,就很容易陷入沮丧之中影响了项目推进。比如第六条,它告诉我们面对面交谈是最好的沟通方式,这是因为有很多团队在工作中习惯用文字沟通,但是这样容易表述不清产生歧义,需要反复确认,增加了沟通的成本。所以,在工作中注意十二原则,就是利用前辈的经验引导我们走捷径,可以帮我们规避很多问题。

敏捷实践:敏捷方法和最佳实践

有了思维的支撑以后,我们就要想着如何实行,所以接下来,我们一起来学习敏捷方法。敏捷方法主要包括了 Scrum 方法、DSDM 方法、水晶方法、特性驱动方法和 SCRUMBAN 等等。我们主要来看一下几个比较重要的方法。

Scrum

Scrum 是现在最流行的敏捷方法 ,它主要是面向开发和维护复杂产品的。这个结构框架很好理解,可以用“3355”来全盘概括,意思是 3 种角色、3 种工件、 5 种仪式和 5 种价值观。Scrum 的难点不在于框架知识,而在于如何实践。想要掌握 Scrum,就需要你坚持使用,在不断的实践中升级本领,丰富的实践经验就会帮你见招拆招,解决遇到的问题。在这里你只需要先知道这些,因为这个框架非常重要,所以在后续的课程中,我会结合实践为你详细解释,帮助你掌握。

DSDM

其次是 DSDM 方法,DSDM 就是动态系统开发方法。它具体的实施思路是这样的:在时间进度和可用资源预先固定的情况下,力争最大化地满足业务需求(传统方法一般是需求固定,时间和资源可变),然后交付所需要的系统。对于交付的系统,必须达到足够的稳定程度,确保可以在实际环境中运行;对于业务方面的某些紧急需求,必须做到在能够在短时间内满足,并在后续迭代阶段中对这些功能进行完善。

水晶方法

水晶方法是一种提倡机动性的方法,包含具有共性的核心元素,每个原色都含有独特的角色、过程模式、工作产品和实践。发明人将水晶方法细化为透明水晶方法论(Crystal Clear)、黄色水晶方法论(Crystal Yellow)、橙色水晶方法论(Crystal Orange)以及红色水晶方法论(Crystal Red)。这几种水晶方法论按照项目重要程度以及参加人员规模来进行划分。

水晶方法更强调组织,它会教你如何进行组织转型,同时也是一套可以根据不同的组织进行“因地制宜”裁剪的方法。

特性驱动方法

特性驱动方法简称 FDD,它是一个模型驱动(model-driven)、短期迭代(short-iteration)的过程,也就是说 FDD 是一个开发过程,过程就有起点和终点,FDD 的起点是创建一个全局的模型轮廓,通过两周一次的"特性设计-特性实现"的迭代,逐渐丰富模型功能内容。

特性驱动方法在平常地工作中使用较多。它最大的特点是需要一个全面的架构,这意味着设计和建模已经非常清晰了,所以它比较适合不需要试错的产品,也就是说需求范围很确定的项目。比如合同制项目中,乙方承接甲方的开发项目时,乙方会清晰的告知你需求,而你只要按照需求做出产品即可。腾讯的很多游戏就是采用的这个方法,比如欢乐斗地主这款游戏。

自适应软件开发方法

自适应软件开发方法的具体定义是:

  1. 基于复杂自适应系统理论,改善软件推测、协作和学习过程,建立新的价值观:自适应比优化重要;

  2. 关注人(技能)和交流,将开发过程放在第二位,关注工作的软件而不是文档,它强调和客户协作及对变更的适应;

  3. 定义以人为本的、领导-协作管理模型。领导的重点不是指令,而是创造一个文化氛围,使自适应和协作能够有效运行,除此之外,还要创造一个协作结构,使多个团队能够进行有效沟通。

它是更加适合需求多变、开发期短的软件项目。可以说它就是敏捷的雏形,但是更适用于开发内部,这是因为它不强调交付的价值,也没有过多关注到市场和用户的变化。

持续集成方法

持续集成方法是一种工程实践方法,具体来说就是每当开发人员提交一行代码,就能通过机器自动编译、自动测试,然后自动发布。开发团队通常每天集成一次,就能产生一个新版本供团队和用户体验,其目标是通过快速产生的版本可以尽快把问题暴露出来,进一步提高开发生产的效率。

因为我在腾讯互娱做过持续集成的项目,所以我对此比较熟悉。我当时主导生成了一套自动化的生产系统,我们那个时候称它为 SODA(Software Development Accelerator,软件研发加速器) ,后来被腾讯蓝鲸项目收编,不过最让我开心的是后来腾讯大大小小的游戏都接入了持续集成,这是让我感觉到自豪的一件事情。

有了方法论,那么我们就可以参考敏捷的最佳敏捷,以此来衡量我们和最佳实践的差距,将此作为标准不断地改进。

敏捷的最佳实践

我们是通过这些具体的内容来评判是否是最佳实践的:

  1. 稳定的团队:我们需要稳定、有默契的团队,即在很长一段时间内团队成员是固定不变的。

  2. 可预见的速率:我们需要在一个迭代当中形成团队的速率,方便知道下一个迭代我们可以做完哪些工作。

  3. 单件流:我们需要集中精力一次做好一件事情,所以不欢迎并行任务。

  4. 质量内建:我们需要在每一个环节保证好自己的质量,不让质量问题留到下游。

  5. 日事日毕:我们需要把任务粒度拆分成至多1天,以方便每天知道我们的工作进展。

  6. 设有紧急停车带:我们需要给紧急任务加上紧急停车带,以便分析紧急任务的插入情况。

  7. 滚动迭代:我们需要通过迭代交付来完善我们的产品。

  8. 持续改进:我们需要通过回顾和总结,不断强化我们的团队能力。

  9. 尽早交付:我们希望尽早交付版本,更快得到用户反馈,以便于更快满足用户所需。

需要注意的是,我们要认清自己与最佳实践的差距,不可一蹴而就。要针对自己的实际情况,按照需求进行裁剪,避免形式主义,不要为了敏捷而做敏捷。

总结

本课时的内容就讲完了,这节课我们主要讲了敏捷思维和敏捷方法,这里我希望你能够记住敏捷宣言、敏捷的十二大原则,以及最佳实践,因为这是我们接下来进行敏捷实践的基石。下节课我将带你开始敏捷实践,教你如何判断是否适合敏捷。


敏捷项目管理实战第一天 敏捷开发SCURM的前世今生相关推荐

  1. 敏捷项目管理实战之进度管理

    转自:http://www.ibm.com/developerworks/cn/rational/r-cn-agileprojectprogressmanagement/ 本文以笔者的实际敏捷项目管理 ...

  2. 敏捷项目管理实战第二天 量体、裁衣和启动

    03 量体:如何判断是否适合做敏捷转型? 在上一课时,我们学习了敏捷宣言建立了敏捷思维,有了这些理论作基石,接下来便需要学以致用.那到底我们的团队或项目适不适合引入敏捷呢?想要弄清楚这个问题我们就得先 ...

  3. 敏捷项目管理实战第三天 组织、计划、执行与监控

    06 自组织:敏捷团队如何开展自组织? 经过上一课时的学习,我们知道敏捷思维的培养要注重四个方面.本节课我们将学习敏捷实践中关键的一步--敏捷团队如何开展自组织. 敏捷宣言的原则中提到"最好 ...

  4. python管理团队_敏捷项目管理实战之团队自我管理

    什么是自我管理 自我管理就是充分发挥团队成员的自主性,通过使团队在不需要(或极少需要)专门的管理者的干预下仍然能够正常运作的方式达到提供管理效率的一种管理思想.就其具体实践而言,笔者认为主要有以下几个 ...

  5. 项目管理实战-第一章 引论

    前言 项目管理水平的高低  ≠ 项目成果好坏 项目管理水平高项目不一定成功,但是能大大提高成功率 敏捷宣言: 个体与交互 胜过 过程和工具 可用的软件 胜过 完备的文档 客户协作 胜过 合同谈判 响应 ...

  6. 敏捷.敏捷项目管理V2.Jim Highsmith

    吉姆·海史密斯(Jim HighSmith)是ThoughtWorks的执行顾问.从事IT行业工作的30年间,他先后担任过IT经理人.产品经理.项目经理.咨询顾问和软件开发师.吉姆撰写了<敏捷项 ...

  7. 华为敏捷项目管理实践分享

    当前,企业面对的商业环境瞬息万变,移动.社交.物联网.云计算.大数据.AI等蓬勃发展.新技术突飞猛进的同时,新业务形态越来越复杂.需求变化越来越快.软件规模越来越大.交付周期越来越短.开发和维护成本越 ...

  8. [悦读] 《敏捷项目管理—快速交付创新产品》(第2版)读书笔记

    <敏捷项目管理-快速交付创新产品>(第2版)读书笔记 在备考 PMI-ACP认证考试时,接触到了这本书,利用了一个周的时间读完了.做了一些读书笔记,阅读中,不断思索,整理,扩展,加深了对敏 ...

  9. 敏捷转型行动笔记:敏捷导入课程培训

    对于毫无任何敏捷开发经验的团队而言,在经历前期的初始学习了解后,要想快速地迈上敏捷转型的道路,仍然少不了要引入外部培训,通过导入课程让转型团队逐步建立精益-敏捷的思维方式,较为深刻地理解敏捷的价值观和 ...

最新文章

  1. Anaconda 使用初步
  2. 简单拨号器(Android)
  3. Android | Sqlite3
  4. centos关闭防火墙
  5. python建立列表并输入_python操作列表
  6. React 第八章 列表渲染以及key的使用
  7. 为什么站点使用https加密之后还能看到相关数据
  8. php链表构造,用PHP实现单向链表结构
  9. 每周.NET前沿技术文章摘要(2017-05-10)
  10. cryptojs php 互通_如何实现PHP7和CryptoJS的AES加密方式互通?
  11. 话单分析 之 含小数保留9位
  12. 基于RFID的物联网系统
  13. san分布式共享文件系统_SAN存储区域网络共享软件全攻略
  14. 41家对中国市场依赖度最高(依营收占比计算)的美国公司
  15. 关于iOS中UITableView下拉距离短刷新没事,下拉距离长就会崩溃的问题解决方案
  16. 蜜蜂采蜜最短路径c语言算法,S018 蜜蜂采蜜太辛苦了,编程实现还是很容易的
  17. 【已解决】docker overlay2占用大量磁盘空间处理方法
  18. vs2010中的Resource View和Class View都为空的有效解决办法
  19. NLU(Natural Language Understanding)太难了
  20. 【转载】专家答疑:Silverlight的用户体验优化

热门文章

  1. html设置一句话的样式,页面上的div标签,其HTML代码为divid=boxstyle=color:red文字/div,为其设置CSS样式如下:...
  2. 两个高斯分布乘积的理论推导
  3. 普元的ajax,有人了解普元 primeton EOS 产品的么?可否评价一下?
  4. window11离线安装android子系统步骤
  5. php股票网站源代码,基于php的新三板实时股票信息接口调用代码实例
  6. 用python构建多只股票日收益率直方图_Barra纯因子收益率的Python实现
  7. Windows10一句话从administrator权限提升到system权限
  8. 遇到电脑显示器花屏是什么问题
  9. RGB图灰度及通道理解
  10. Mac软件打开提示:已损坏,无法打开。您应该将它移到废纸娄 怎么解决?