控制
软件开发项目的管理在我看来是一个比较复杂的领域,它的控制包含了定性和定量的成份,同时项目进程中特有的、大幅度的迭代构成了软件项目复杂性的另一个因素,即所谓的需求变化导致设计、代码变化。
如何能按期、按计划完成EC项目,一直是我考虑的重点。宏观地看,我在项目管理中自觉地用了两级控制。
一、总体控制
如前“计划”中所述,项目进程安排两次迭代,而每次迭代过程又包括需求分析、系统设计、代码实现、系统测试四个阶段。
总体控制的目标基本是大目标,采取定性控制的方法。但要说明的是,虽然需要达到的目标是定性的,但阶段成果的体现是具体的、明确的。
比如需求分析阶段,完成的阶段性成果业务蓝图所描述的业务范围、业务深度是很难量化要求的,但业务蓝图本身的表达规范、“人人都是业务专家”的要求又是具体的。
二、具体控制
软件作为一种可以实际感受的产品,最终拿给用户的必须是经过量化控制的。
就目前我们所能采用的手段来看,设计阶段以前的定量控制是难以做到的,比如如何能定量考核设计是否契合需求?所以软件的具体控制是从设计开始的,以设计为核心。
-设计文档必须详尽,并且及时更新。
-根据设计文档发放工作单,确定完成时间。
-页面功能测试和组件测试是依据完全最新的设计文档要求。根据设计文档对软件的测试显然是可以做到定量的。