快速开发(纪念版)
上QQ阅读APP看书,第一时间看更新

前言

软件开发人员基本上处于进退两难的境地,一方面他们为解决开发中所碰到的各种问题殚精竭虑,几乎没有时间去钻研有效的实用技术;另一方面,如果不学习掌握软件快速开发方法,他们永远不会有足够的时间。

摆在他们面前的问题是,在“尽快交工”计划的压力下,如何在开发进度与软件质量之间达到最理想的平衡。如果开发人员需要放弃看电影、读报纸、购物、休闲、锄草或与孩子玩耍的所有时间,连续工作20天才能按计划完成开发项目,指望他们投入很多精力研究软件可用性方面的问题又从何谈起?也就是说,除非我们把对项目进度的控制作为软件从业人员的必修课程,并为开发人员和经理们留出学习这方面专业知识的时间,否则,对开发人员来说,将很难有足够的时间进行有关方面知识的学习。

软件开发时间的问题普遍存在。一些调查表明,2/3的项目超出了估算的时间(Lederer and Prasad 1992,Gibbs 1994,Standish Group 1994)。大型项目平均超出计划交付时间的20%~50%,项目越大,超出计划的时间越长(Jones 1994)。一直以来,开发速度的问题都是软件行业必须解决的首要问题(Symons 1991)。

虽然软件开发速度缓慢的现象普遍存在,但有些组织还是在进行快速的开发。调查人员发现,同一行业的两家公司生产效率的差别有可能达到10:1,甚至更大(Jones 1994)。

本书的目的在于为当前是“10∶1”中“1”的一方提供所需的信息,帮助他们向“10”的一方转移。本书将帮助你把项目变得可以控制,从而以更短的时间向用户交付功能更为丰富的产品。在阅读本书时,你可以只看你感兴趣的内容,而无须阅读整本书。不管你的项目处于何种阶段,你都会在本书中找到能够帮助你改善当时境况的实用内容。