现在市场上关于软件产品研发的项目格外多,例如:APP、小程序研发等。相较于其它项目而言,这类项目需要实现的目标有具体的要求标准,即:时间周期限定、质量要求、功能需求等。
因此,项目企业为了优化项目结果,就需要了解客户的真实想法,再依此制定相应的实施计划,才能让项目管理更具成效,最大化完成客户的质量要求。
一、质量要求等级
首先,有一点是公认的,那就是满足项目产品质量是基本要求。
而对于质量而言,客户的要求是有不同等级程度差异的,简单来说,等级可分为:可用-易用-性能-安全。项目团队可通过测试来对此进行判断,而客户不同质量等级的要求也会直接对项目所需的周期产生影响。
因此,除了默认质量要求,项目周期就是客户最为关注的。
一般项目周期并不是经过详细的估算,排完进度了再确定下来的,而是项目一开始就由客户敲定,而项目范围也是在合同就会明确下来,所以与客户敲项目周期就显得很重要了。
而根据一些软件项目的运行经验,一般情况下大家可以考虑投入更多资源来缩短项目周期,但当项目周期缩短到一定度以后,投入再多的资源也没有用。因此项目经理谈判的底线为:在不考虑人力资源情况下项目能够达到的最短周期,如果这个最短周期还达不到客户要求,必须缩减项目范围而不是牺牲产品质量。
二、进度周期计划
项目计划重点就是通过调整各个要素,保证项目能够有大半的胜算,对于影响到项目成功的因素,全部列入风险和关键问题进行跟踪。而项目失败往往并不是进展过程出现太多异常,而是一开始项目经理就不清楚自己有几层把握,一开始也没有分析清楚有哪些不确定性和关键要素。所以就需要制定好合理的进度计划。
制定进度前最重要的是根据人力资源情况和项目周期来综合考虑生命周期模型的选择,即:是瀑布还是增量迭代,这个直接影响到任务安排过程中WBS的分解。而制定WBS安排,最需关心的就是工作包或任务的粒度问题。
项目任务中,一个功能模块分解细后,可以利用更多的人力资源参与进来,使更多的任务能够并行,但无疑会增加前面接口设计和后期集成的工作量。当接口设计和集成工作所花费时间大于开发任务并行所缩短的时间时候,这个时候就到了分解的最小粒度。在这个粗细粒度间就是可以通过调配人力资源能够获取的最大进度压缩。
三、计划实施路径
软件研发项目因为各个岗位的明确角色划分,往往并不适合采用关键路径的方法来预计进度。而我们之所以制定进度计划就是为了让团队可以最高效执行项目任务,因此在思考方案时有几项可考虑的关键信息。
关注项目关键资源,关键资源必须优先安排来执行关键任务;通过组件细分和迭代,增加后期集成时间,但缩短前期关键路径等待时间;清楚的认识到哪些过程元素是保证项目成功的核心要素,哪些是可以省略的;对于任何一个功能的开发仍然是遵循小瀑布,而不是跳过程;一个设计思路可以在纸面设计草图后就可以开始编码,后期再形成规范的文档,但决定不是说不经过设计就开始编码。
软件市场的竞争愈加激烈,仅仅完成基本任务,达到及格线,从来不是现在项目企业的可生存之道。因此,尽可能提升项目的质量等级,是让企业实力得以提高、提升客户满意度的上上之策。