③代码和库质量低下,导致需要进行额外的测试,修正错误,或重新制作;
④过高估计了增强型工具对计划进度的节省量;
⑤分别开发的模块无法有效集成,需要重新设计或制作。
(9)过程风险
①大量的纸面工作导致进程比预期的慢;
②前期的质量保证行为不真实,导致后期的重复工作;
③太不正规(缺乏对软件开发策略和标准的遵循),导致沟通不足,质量欠佳,甚至需重新开发;
④过于正规(教条地坚持软件开发策略和标准),导致过多耗时于无用的工作;
⑤向管理层撰写进程报告占用开发人员的时间比预期的多;
⑥风险管理粗心,导致未能发现重大的项目风险。
2、软件项目风险管理模型
针对软件项目中的风险管理问题,不少专家、组织提出了自己的风险管理模型。主要的风险管理模型有:Boehm模型,CRM模型和SERIM模型。
2.1 Barry Boehm模型
模型:RE=P (UO)*L (UO)
其中RE表示风险或者风险所造成的影响,P(UO)表示令人不满意的结果所发生的概率,L(UO)表示糟糕的结果会产生的破坏性的程度。Boehm思想的核心是10大风险因素列表。针对每个风险因素,都给出了一系列的风险管理策略。在实际操作时,Boehm以10大风险列表为依据,总结当前项目具体的风险因素,评估后进行计划和实施,在下一次定期召开的会议上再对这10大风险因素的解决情况进行总结,产生新的10大风险因素表,依此类推。
2.2 SEI的CRM(Continuous Risk Management)模型
SEI CRM模型的风险管理原则是:不断地评估可能造成恶劣后果的因素;决定最迫切需要处理的风险;实现控制风险的策略;评测并确保风险策略实施的有效性。CRM模型要求在项目生命期的所有阶段都关注风险识别和管理,它将风险管理划分为五个步骤:风险识别、分析、计划、跟踪、控制。
2.3 SERIM(Software Engineering Risk Model)模型
SERIM从技术和商业两个角度对软件风险管理进行剖析,考虑的问题涉及开销、进度、技术性能等。它还提供了一些指标和模型来估量和预测风险,由于这些数据来源于大量的实际经验,因此具有很强的说服力。
结束语
软件项目管理从某种意义上讲,就是风险管理。我们尽量去定义明确不变的需求,以便进行计划并高效管理,但商业环境总是快速变化的,甚至是无序的变化。所以,软件企业在进行项目管理的过程中,必须采用适合自己的风险管理方法进行风险管理,以确保软件项目在规定的预算和期限内完成项目。