艾伟也谈项目管理,敏捷实施中的常见错误

  一些评论员写下了敏捷实施中一些常见错误和反模式。他们贴出了“Top X”列表,列出了需要避免的事项和他们曾在各种组织实现敏捷时见过的错误。

Target Process的Michael Dubakov写了两篇博文:“10个敏捷实施中最常见的错误”(Part 1; Part 2 )。他认为“许多公司在敏捷实施中再三犯同样的错误。

他的常见错误列表如下:

1. 从一个工具开始
敏捷开发是不同的。一个工具不会立刻产生影响,不会由于这一工具的存在而解决多数的问题。而且,你由于需要为工具的实施投入精力,这会影响更重要的目标--敏捷实施。

2. 从一个过程开始
多数公司是从一个过程开始的。这错误不是很严重,但更常见。如果你读读Scrum相关资料,会觉得它看起来很容易启动。你实施所有的Scrum实践,在若干sprint后发现开发有了点改进,但远没有达到预期。于是热情开始消退,过程开始退化。任何公司开始尝试任何敏捷过程前做的第一件事应该是,专注于敏捷价值,比如:沟通、协作、反馈、信任和热情。如果你对这些价值中的任何一个做出妥协,就几乎不可能实施一个良好地开发过程。

3.开发实践就足够了
有趣的是,开发人员倾向于实施技术实践,像TDD、持续集成甚至是结对编程,但很少注意到沟通、整体团队、客户现场协作和回顾。

4. Scrum就足够了
真正的错误在于,完全依赖Scrum,认为它是能解决所有问题的过程。它能做到这点,但你要开放思想并愿意做各种尝试:从结对编程到BDD。最好的敏捷教练相信,Scrum的实施应该与XP技术实践紧密的结合起来。

5. CSM无所不知

认证的Scrum Master不是神。是的,他有一些关于Scrum的基础知识,但许多情况下也就仅此而已。

6. CST无所不知

认证的Scrum培训师不是上帝。是的,他知道不少,也有相当的经验。很有可能他有能力帮助敏捷的实施,但也仅仅是帮助。他也许对你所在领域、你独特的状况和你所在组织的根本问题一无所知。如果你完全依赖于CST,把敏捷实施完全委托给他,敏捷实施将会失败。

7. 职能部门应该幸存

完全没有理由保留职能部门和职能团队。只要可能,大家应作为一个团队共同工作。很明显,如果测试人员在美国而开发人员在印度,这几乎是不可能的。但如果每个人都在同一栋楼里,却没有跨职能的团队就很愚蠢了。

 

8. 我们可以不要客户反馈

敏捷主要在于快速反馈。来自客户的反馈最为重要。如果用错误的方法建造了某样东西,这是不好的。但如果建造错了东西,那就太糟糕了。为什么?因为稍后你将不 得不把丢弃它。来自客户的定期(快速!)反馈就像是在遍布礁石的海湾中航行的指南。需要在风向和其他因素变化时不断调整航向。客户是最有价值的团队成员, 应该得到重视。

9. 自我组织很容易
纯粹

的自我组织认为会有领导者出现。这不常出现,许多情况下没有领导者,团队会失去生气、变得平庸。领导者设置一个目标,并推动团队朝着正确的方向前进。领导者使团队自信、有热情及自我反思。最终实现自我组织。

当领导者离开团队会发生什么?多数情况下团队会出现倒退或慢慢退化。这是个明确的信号:能够判断出团队是否实现了自我组织。真正的自我组织团队在没有领导者的情况下保持他们的价值和进步。

10. 错误的目标(如:客户要求我们是敏捷的)

如果你的客户坚持在他的项目中使用敏捷过程,你应该为此感谢上苍。利用这个机会作为转折点,开始实施敏捷。

不幸的是,为了得到合约,许多公司只是试着“模拟”敏捷实施。他们派人去上CSM课程、购买一个敏捷项目管理工具并浅薄地实施Scrum。他们这么做没有什么深层次的目标和文化上的变化。他们没有任何激情的在做这些。

  Mike Griffiths 在博客 Leading Answers写了篇博文:“敏捷实施反模式”,并列出了他曾见过的五个常见错误:

1. 敏捷是银弹 - 是的,敏捷方法能节约时间、增加商业信任及创作出高质量的产品,但他们不是银弹.他们不会扭曲空间或是时间,让你在有限时间、预算和资源的限制下能交付更多工作。

2. 把敏捷作为无规范的借口 - 与他人的观念相左,敏捷方法不是抛弃规范,跳过规划和评估就直接开始编码。敏捷方法中包含了许多高度规范的活动和技术,比如:测试驱动开发、Wideband Delphi估算法,并且双周迭代规划及评估会议需要许多规范。

3.敏捷不需解释 - 项目和团队不在真空里;他们会与组织内许多其他干系人交流。而首先在你的团队和你有更多影响力的领域实施敏捷也许会更容易些,但总有一天你要向其他人解释一下这些工作实践。

4. 浅反馈- 敏捷方法依赖于来自不断发展的系统的反馈,以确认理解正确并验收已完成工作。典型的新功能会演示给客户,并留下测试环境供他们实验并收集反馈。我们很容易 认为,收到很少或没有反馈意味着用户一定对我们开发的产品很满意。然而更可能的是,客户没有真正正确地去察看它、或没有用实际数据或场景测试它。

5.依恋敏捷过程 - 人们对敏捷方法抱有热情,这是件好事。但如果人们开始过于专注于过程,并牺牲商业价值的交付,那就有问题了。通常,项目的建立和进行是为了实现一些商业改变或改进。我们不是要实践完美的方法,最终的目标是让我们的投资者和用户满意,而不是沉迷于过程或构建履历。

Craig Larman和Bas Vode写了篇名为“大型敏捷实施的十大组织障碍”的文章,这篇文章“询问了一群在大型公司内工作或与之合作的敏捷开发专家,什么是最具挑战性的组织障碍。

他们的前十列表包括下面这些:

10. Jeff Sutherland,Scrum的共同创始人,认为不能移除组织障碍是大型组织中的主要障碍。

9. Peter Alfvin,一名经验丰富的开发经理,他参与了在施乐引入精益原则,Petri Haapio是Reaktor Innovations公司敏捷培训部门的主管。他们两人都提到了,为追求成本‘节约’和‘协作’的部门集中化导致了本地优化,这成为了一个障碍。

8. Sami Lilja,诺西网络的敏捷开发活动全球协调官,注意到一些组织认为学习是浪费时间和金钱。

7. Larry Cai,上海爱立信的专家,提到职能组织(单一职能团体)是最大的障碍之一。他们阻碍单位间的沟通,并助长了单位之间的指责。

6.Esther Derby,顾问、教练、协调专家并著有两本关于组织学习的书,认为促进本地优化胜过全球优化的系统是主要障碍。她给出了一些例子,包括目标管理(MBO)和预算系统。

5. Mike Bria,前西门子医疗系统敏捷教练,提到“自我进行改进”是个障碍。他强调了一个有问题的态度:人们在读了一两本书后认为“我们知道怎么做了”。

4. 某A.(按当事人要求匿名),某大型电子商务网站的一名Scrum培训师,提到个人绩效评估和奖励是个主要障碍。它们会使开发人员和经理们感到沮丧,妨碍团队绩效并促进里命令和控制式管理。

3. Lü Yi,诺西网络杭州的一名Scrum培训师及大型开发团队的部门经理,认为“承诺游戏”和不切实际的允诺是主要的组织障碍。这导致走捷径、持续救火及遗留代码。

2. Diana Larsen,协调专家、与Esther Derby合著<敏捷回顾>一书,简单地说道,“假设一切全都与开发人员有关。”

1. 几乎每个人都认为“认为敏捷是银弹和肤浅的敏捷实施”是主要障碍。

除此之外,Larman和Vode提到另外两个他们常见的阻碍:

Craig认为关键阻碍是每个工作者的文化而不是真实的团队和团队合作的文化。他拜访了许多表面上在应用Scrum的个人,并看到些症状,如:“Jill做Jill的任务,Raj做Raj的任务”等等,而不是“整个团队一起”的结对行动,在团体内多方学习。 

Bas认为管理人员和第一线的人员之间的分歧是关键障碍。经常是这样,管理层的变动对做真正有价值工作没什么影响(或者说,至少没有正面的影响)。同样地,第一线的开发人员做的决定通常与组织的方向不一致。

查看英文原文:

  Common Mistakes in Agile Adoptions

时间: 2024-11-17 03:00:24

艾伟也谈项目管理,敏捷实施中的常见错误的相关文章

艾伟也谈项目管理,软件研发中的冲突及解决之道

深圳易方数码科技新技术研究主管,微软MVP时永安认为: 软件项目在研发过程中牵涉到很多利益相关方,这些相关方因为关注角度的不同,会产生很多矛盾冲突.这些冲突,轻则打击士气,拖延项目的进度,重则使项目无法正常进行.在我这些年的软件项目管理工作中,遇到过各种各样的冲突,其中最常见的有:项目开发周期的冲突和团队内部人际关系的冲突. 软件项目的研发周期,本来是应该根据项目工作量和开发人员情况来估算的.但现实中,往往会受到市场部门以及公司高层的干涉.他们从产品销售的角度考虑,希望软件产品越早发布越好,在他

敏捷实施中的学习与阈限

给读者的话:如果你是首次接触开放式敏捷实施的一系列文章,你可以先回过头去看看这一系列文章的第一部分.第二部分和第三部分.上篇文章(第三部分)描述了阈限(Liminality)的概念,在阅读本文之前,先读一读这些概念是非常有必要的. 阈限状态中的稳定性 阈限是令人不安的,并且还会产生压力.关于开放式敏捷实施的一个设想是,在典型组织里引入敏捷会产生组织级的阈限.如果使用过渡仪式的方式来处理这个阈限,那么创造一个快速而持久的敏捷实施还是有可能的. 开放式敏捷实施背后的核心概念就是认清和解决阈限问题可以

《精通Android 实例开发》——第1章,第1.13节搭建过程中的常见错误

1.13 搭建过程中的常见错误 1.13.1 实例说明 无论安装或搭建任何一个开发环境,都会不可避免地遇到一些意想不到的问题,这些问题可能是我们粗心造成的,也可能是使用系统环境的差异造成的.在下面的实例中,将简单介绍搭建Android开发环境中常见问题的解决方法. 1.13.2 最常见的3个错误 1.Android不能在线更新 在安装Android后,需要更新为最新的资源和配置.但是在启动Android后,经常能更新,弹出如图1-65所示的错误信息. Android默认的在线更新地址是https

WCF项目中出现常见错误的解决方法:基础连接已经关闭: 连接被意外关闭

原文:WCF项目中出现常见错误的解决方法:基础连接已经关闭: 连接被意外关闭 在我们开发WCF项目的时候,常常会碰到一些莫名其妙的错误,有时候如果根据它的错误提示信息,一般很难定位到具体的问题所在,而由于WCF服务的特殊性,调试起来也不是那么方便,因此往往会花费不少时间来进行跟踪处理.本文介绍我在我在我的框架里面使用WCF服务的时候,出现的一个常见错误的处理方法,它的提示信息是:基础连接已经关闭: 连接被意外关闭.这种情况我碰到的有两种,一种是返回DataTable的时候出现的,一种是返回实体类

艾伟也谈项目管理,动起来再调整 - 向项目经理推荐敏捷

要成为一个好的项目经理需要学会逆水行舟.虽然顺水推舟有时也能到达目的地,但学会逆水行舟,你才能到达任何地方. "虽然很有道理,但我认为现实不允许,很多项目都有规定的期限.中途还有给客户演示效果,往往实际项目中都是按最后上线日期来进行项目规划管理的." "写得不错,但是有些建议过于理想化了.毕竟说得很有道理,但实际中具体做起来又不是那么一回事了." 这是两位网友对<软件项目经理新手上路>的评论.这话很有道理,也是在现实生活中碰钉子碰出来的.在项目中确实存在

艾伟也谈项目管理,ERP项目实施要未雨绸缪不要亡羊补牢

在ERP项目中,要做到在项目实施的未雨绸缪,不会出现亡羊补牢的情况就需要项目管理和实施人员在项目推进过程中队下面的阶段进行预测,把握好发展的趋势,掌握项目的主动权.下面就提出一些建议,供大家讨论.希望对大家有用. 一.要考虑每一个项目阶段普遍存在的问题 ERP项目可以根据项目进度,分为项目立项.需求调研.业务流程重组.模拟运行.并向运行.正式上线等几个阶段.其实不同的企业,虽然有各自的特性,但是也存在着一些普遍的问题.有经验的项目管理员,对各个阶段普遍存在的问题有深入的了解.此时他们就可以预先采

艾伟也谈项目管理,敏捷的坏态度

虽然所有软件开发的专业人士都会对这篇文章感兴趣,但是经理.CIO以及软件架构师会对它最感兴趣.这个话题可能会引起许多争议,但我写这篇文章是为了让你了解在敏捷运动中看起来正在日益增长的问题. 你为什么在这?敏捷不需要经理. 以前听过这种说法吗? 想象一下,如果你听到开发人员认为你这个职位根本就不应该存在,你会感到多么震惊,就好像是你特意为自己搞出经理这么个职位似的.这个话最常应用在项目经理第一次与将要和他一起工作的开发团队碰面的时候.的确,最初的敏捷宣言绝对没有提到项目管理,并且后来的敏捷理论家更

艾伟也谈项目管理,解读敏捷需求分析五大关键因素

大多数学计算机语言的人都会有过这样的感受,过去一直认为编程和架构是整个软件生命周期里最了不起的部分,但实际工作后才会发现在商业产品里,需求分析才是一个商业软件成功与否的关键. 放眼望去,在当今软件工程领域出现的许多问题,诸如缺陷及资源运用不当,都源于需求的不清晰,甚至有软件人戏称:"需求变更乃万恶之源",一时也获得了颇多响应.时至如今,业务IT间需求分析过程中存在的问题主要有哪些?什么是敏捷需求分析?产品级和项目级需求有何异同?敏捷需求分析方法论中的五大关键点是什么?就以上热点话题,雅

艾伟也谈项目管理,敏捷开发,在路上

如果有一种方法能使你的软件缺陷率降低63%,核心缺陷率降低79%,整体投入减少62%,整个项目开发的时间缩短69%,你会采用这种新的软件开发方法吗? 在回答这个问题之前,你可能会问:是什么方法能达到这样的效果?答案是:敏捷开发.你一定会开始质疑:这是真的吗?或者你会说:我们也在用敏捷,但没有以上提到的这么夸张. 以上提到的一些数据来自Forrester,一家善于用数字说话的咨询公司.他们对多个采用敏捷开发的项目与传统开发方式进行对比,得出以上数据.而这些项目来自敏捷刚刚开始起步的2002年. 不