敏捷开发般若敏捷系列之十三:传播敏捷十戒(一)
这是敏捷开发般若敏捷系列的第十三篇。(栏目目录)
今天翻看微博,偶然看到宗教人士编写的“传福音十戒”,深以为然,稍作修改写成传播敏捷十戒。与原文相比,实际上只改动了1/7/9三条中的个别词汇,可以说这些注意事项是通用的。
传播敏捷十戒一:切不可不传敏捷起源及其大背景。
二:切不可只用口传。
三:切不可以真理的化身自居。
四:切不可只说不听。
五:切不可彼此攻击。
六:切不可忘了先骂自己。
七:切不可满嘴“敏捷黑话”。
八:切不可不讲道理。
九:切不可全盘否定传统开发。
十:切不可作假见证。
一:切不可不传敏捷起源及其大背景敏捷开发不是第一种出现的开发方法,也不会是最后一种,因此一定要理解为什么它会出现在2000前后左右。2000年前后是互联网开发的高峰期,现在我们中国的所述互联网巨头都是在那段时间成立的,国外的则略早一点。互联网虽然未必是最早诞生敏捷开发的行业(实际上敏捷鼻祖应该算是日本制造业的“精益生产”),但却绝对是敏捷开发得以成长、发展和壮大的阵地。有几个特征在互联网开发中是鲜明的,也几乎只有敏捷开发才能与之适应:1. 失去了客户的概念,需求也因之模糊如果说项目型开发还能怪罪客户“需求模糊”的话,多数互联网软件则连这个借口都找不到。由于没有特定的客户,自己摸索需求、“拥抱变化”也就成为必然。只关注最重要的需求、拥抱变化使得互联网企业得以逐步摸索自己产品的实际功能。2. 没有特定的交付期,总是“越早越好”以往从来没有一种产品像互联网产品一样对尽早交付有如此的追求的。在项目模式下,或传统的生产-销售模式下(如Word,Windows,ERP),时间点不是最关键的。Word曾经跳票4年,从原定的一年完成推迟到五年,但仍然没有影响其霸主地位。但互联网行业就截然不同了,谁敢比别人晚五年推出“更好”的功能?实际上无论迟到者有多好,多数用户都会选择留在原有网站或产品上。“互联”二字使得用户群本身成为产品的一部分,而功能则退居其次。尽早获得用户群成为互联网行业成功的不二法门。3. 开发人员参与需求和设计,对工作主动性要求提高在一个大型的军工、银行项目里边(这是软件最早应用的领域),开发人员参与需求和设计的概率和数量都很低。或者说,开发人员不是项目成功的关键,即使换了另外一批程序员,只要需求和设计做得好,项目依然能成功。在这类项目中,遵从需求和设计以便保持一致性是最高价值观。但互联网软件则不然,因为没有人能完美地提前做好需求和设计工作,很多问题遗留给了一线工作人员。而且由于互联网软件的平面化,也就是开发者也往往是自己产品的用户,比如QQ、新浪,开发人员往往能更好地捕捉和定义新需求。在这类项目中,创新和快速改进是最高价值观。