风险引起的负面后果集中体现在进度延后、成本超支、质量不达标等方面,导致这些问题的因素主要包括目标及需求不明确、范围蔓延、人员技能不足等。
目标及需求不明确
为了市场竞争或内部管理决策的需要,业务部门提出的需求往往要求的时间比较紧迫,需求的提出大多停留在几张纸或口头的传达上,没有形成正式的业务需求文档,大多数从事IT的技术人员也深有体会。在没有明确的需求范围的情况下,为了迎合业务部门的口味匆匆开工,过程中用户不断地提出新的想法,技术人员开始疲于奔命和应付,很难保证项目的进度和质量,也难以取得业务部门的认可。
所以,在项目的前期一定要采取相应的手段或措施,与业务部门共同明确项目目标、需求范围,充分考虑现有的时间和资源约束,将需求排定优先级,对于关键的需求优先实现,其他辅助性的根据过程中的具体情况进行滚动式计划,并取得业务部门的书面确认。
在此过程中要注重挖掘用户的隐性需求,可以通过引导、系统原型等手段让用户在前期充分暴露自己的想法和需求。
范围蔓延
在有了明确的目标和需求范围情况下,需求的变更还是不可能避免,业务部门在看到具体的系统的真实雏形之后,源源不断地要求、新想法随之产生,如果不对此加以控制,新的需求的加入通常会影响已实现的需求,并且对项目进度和成本产生很大的影响。
项目经理针对这种情况一定要采取严格的变更控制流程,不能碍于脸面,否则最终的结果往往是出力不讨好。
针对用户提出的新需求,按照正式流程提出变更申请,组织相关团队成员进行分析及影响评估作为是否实施的依据,变更控制委员会根据分析结果判断是否批准,如果批准,那项目组可以安排实施,否则,正式拒绝用户的请求,当然实际情况下可以采取一些软的措施缓和矛盾。
人员技能不足
项目实施过程中由于人员技能欠缺造成的进度延后和软件质量问题并不少见,一个熟练的技术人员完成同样一个任务需要3天,但一个生手可能就需要7-10天。
项目经理应该在前期就分析清楚项目所要采用的技术以及相应的人员技能要求,针对不同的角色,及时采取相应的技能培训,以保证项目的顺利实施。
如果对于项目中某些部分专业性特别强或新技术,短期内又不能快速建立技能的情况,可以考虑将该块任务外包,借鉴合作厂商的力量降低实施风险,当然要进行外购人力成本与自建人力成本的效益分析。