(2)在Iteration里需求尽量不要变更,明确Iteration的边界。否则频繁的变更导致团队没有成就感,方向和目标不明确。service.mypm.net
(3)敏捷讲求业务价值导向,有些变更从业务价值上看,可能并非真正需求急切变更。pmp.mypm.net
有些变更通过更好的Impact分析和设计应该也可以避免。BA和SA等不同的角色应该一起配合来做出Impact分析,以供决策。blog.mypm.net
一些敏捷实践容易实行,一些比较困难。所以割裂敏捷实践的关联,孤立地实践少数的敏捷实践。项目管理者联盟
其实上面的很多问题都是由此导致的,敏捷开发之所以可以替代以往传统开发模式,是因为一组(系列)的开发实践来共同代替以往开发模式。孤立的引入少数实践,通常不能给团队成员感觉有大的改进,从而也放弃对敏捷开发的信心。pmp.mypm.net
例如Stand-upMeeting.这是一个比较容易的实践,但是如果没有背后的需求转化为比较容易衡量的Story-base,没有BA、QA等共同参与基于Story-base去沟通,没有OfflineofMeeting更多的面对面沟通交流,没有大家彼此知道对方的工作内容(CodeOwnership),那么可以设想这种Stand-upmeeting和以往的传统的开发模式,Leader布置任务检查任务进度没有任何区别。项目管理论坛
再如简单设计实践,如果没有背后的结对编程、重构等实践,必然导致比较混乱的代码,很难维护的架构,难于扩展,重复实现类似功能等弊端。service.mypm.net
再如持续集成(CI),即使这是公认敏捷软件领域内相对没有争议的一个实践,但是如果没有与TDD结合,没有与持续重构,没有与小的Story,快速频繁Deliver等实践结合在一起,并且坚持保持CI的健康,也会让团队成员觉得CI效果不如宣传,从而对敏捷实践等产生质疑。项目管理者联盟
以上是我们在敏捷开发实践中遇到的几个典型问题,以及部分经验教训的反思总结。转自项目管理者联盟
转自项目管理者联盟
中国敏捷实践中的误区(三) 误区和改进项目管理者联盟
1、三个主要误区项目管理者联盟
第一个是重视流程忽视人。敏捷宣言开明宗义指出“人和沟通胜过过程与工具”。但是仍然有很多企业试图通过创造一个完美的流程来实施敏捷。不可否认,合理的流程对于提高团队效率有一定的作用,但是企业真正要从敏捷改进中获益必须落实到人的改变上来。项目管理者联盟文章
第二个是重视管理轻视工程。很多团队将敏捷等同于开开站会、做做迭代、搞搞回顾。到头来,一切流于形式。敏捷说到底是对于软件工艺性的认识回归,那么持续集成、自动化测试、设计、重构这些手艺是绕不开的。不从这些根本的手艺上解决问题,各种眼花缭乱的沟通手段实际上徒然增加了团队的成本。项目管理者联盟
第三个是重视指标轻视过程。很多团队特别是从CMM型组织转向敏捷的团队,热衷于设计所谓的敏捷度量体系。度量应该是帮助团队增强信心和持续改进,指标不应成为目的。我们要关心的不只是站在哪里,更应关心我们将走向哪里。项目管理者联盟
要解决这些问题没有任何灵丹妙药,从来也不存在一个完美的、放诸四海而皆准的流程。我们在帮助各种企业进行敏捷流程改进的过程中,总结了几种改进模式,这里跟大家分享一下。training.mypm.net
2、五种改进模式项目管理者联盟
跳跃:团队作为整体从一种实践直接切换到另一个实践方式上。项目管理培训
有些实践我们知道其目标,并且知道这种切换对团队的影响较小,或者不适于采用逐步推行的方案,我们就采用跳跃的方式。项目管理者联盟
例如,配置管理工具切换。某团队原来使用的配置管理工具是ClearCase,为了享受到SVN的原子提交、低成本分支等好处,我们往往采取跳跃的方式,即整个团队立刻从ClearCase切换到SVN上工作。这是因为配置管理的切换总的来说对于团队的工作方式影响比较可控,而且使用简单。项目管理者联盟
并行:团队中部分组织或个人使用原有实践,而另一部分切换到另一个实践方式。项目管理者联盟
有些实践知道其目标,但在整个团队推行可能会对工作方式造成较大影响,或者团队中的某些组织或个人不具备切换到新的实践方式上的条件,我们就采用并行的方式。项目管理者联盟文章
例如,项目组持续集成。团队中某个项目组具备较好的持续集成基础,另一些项目组基础较差。如果在整个团队推行持续集成,就可能对团队产生较大的冲击。而且持续集成的具体方案可能需要在一个项目组内试验。这时候,先在一个项目组做起来,然后推广到其他的项目组。training.mypm.net
阶石:为了达到一个长远的目标,先实现一个较近的目标。bbs.mypm.net
有些实践有长远的目标,但还看不清达成目标需要的路径,如果知道做某件事情一定有助于达成目标,可以先完成这件事情。例如,单元测试。有时候希望在某些团队中实施单元测试,但缺少合适的测试框架,那么在确定测试框架之前,实际上很难展开后面的工作。这时就可以先全力构建这个测试框架。称这种方式为阶石。talent.mypm.net
|