3.3 软件项目开发计划制订过程
项目的计划书可分两类:一是全局的计划书(Overall Plan),这里称为《项目计划》;二是一些下属计划书(Subordinate Plan),例如《配置管理计划》《质量保证计划》、一些开发计划和测试计划等。下属计划书是对《项目计划》的补充,其内容不可与《项目计划》冲突。通常《项目计划》由项目经理负责制订,由机构领导审批。而下属计划书一般由项目成员制订,由项目经理审批即可。
开发计划过程域有4个主要规程:“项目估计”“制订项目计划”“审批项目计划”和“项目计划变更控制”,流程如图3-1所示。
图3-1 项目规划流程图
1.项目估计
项目估计是否准确将直接影响《项目计划》的有效性。项目估计要尽量做到“知己知彼”。“知彼”是指了解本项目的实力(即本项目实际能够拥有的经费、人力资源、技术水平等)。项目估计的重点内容是“产品范围估计”“产品规模估计”“工作量估计”和“成本估计”等。
在项目刚开始时,人们对产品需求的了解还比较肤浅,而项目实际能够拥有的经费和资源很大程度上是靠项目经理争取的,不确定因素比较多。在这种情况下,人们很难做出准确的估计。但是“估计”显然比“不估计”要好,否则《项目计划》就没有依据了。
2.制订项目计划
根据项目估计得到的数据,规划小组制订《项目计划》。《项目计划》的重点内容是“人力资源计划”“软硬件资源计划”“开支(财务)计划”“任务与进度计划”“下属计划”等。
由于需求开发花费的时间比较长(一般约占整个项目开发周期的20%),人们一般不会等到需求开发完成之后才开始制订《项目计划》。否则,在那么长的时间里没有《项目计划》,众人不知如何开展活动,显然有害于项目。所以,通常项目规划和需求开发是并行开展的。
3.审批项目计划
规划小组将《项目计划》递交给机构领导审批。如果机构领导批准了《项目计划》,那么该计划书可以正式发布(文件状态为Released),不可以被随便修改。项目的所有成员按照《项目计划》执行研发与管理工作。
4.项目计划变更控制
在项目执行过程中如果发现《项目计划》与实际情况有比较大的偏差,应当及时更新《项目计划》。变更《项目计划》必须按照指定的规程(即变更控制)执行(见图3-1),以防止发生混乱。