周松 刘竹旺
[摘 要]风险管理在项目管理中有非常重要的地位。首先,有效的风险管理可以提高项目的成功率。在项目早期就应该进行必要的风险分析,并通过规避风险降低失败概率,避免因为返工而造成项目成本的上升。本文主要探讨软件项目管理中的风险识别与管理。
[关键词]软件项目 风险识别 管理
一般来说,软件工程师在计划软件项目时,经常认为每件事情都会像计划那样运行。其实软件开发的创造性本质意味着我们不能完全预测会发生的事情,因此制定一个详细计划的关键点很难,一旦预想不到的事情引起项目脱离正常轨道时,就会导致软件项目的失败。目前,风险管理被认为是IT软件项目中减少失败的一种重要手段。当不能很确定地预测将来事情的时候,可以采用结构化风险管理来发现计划中的缺陷,并且采取行动来减少潜在问题发生的可能性和影响。风险管理意味着危机还没有发生之前就对它进行处理。这就能提高项目成功的机会和减少不可避免风险所产生的后果。
一、软件项目风险管理与项目管理的关系
风险管理是项目管理的一部分,目的是保证项目总目标的实现。风险管理与项目管理的关系如下:
1.从项目的成本、时间和质量目标来看,风险管理与项目管理目标一致。只有通过风险管理降低项目的风险成本,项目的总成本才能降低。项目风险管理把风险导致的各种不利后果减少到最低程度正符合项目有关方在时间和质量方面的要求。
2.项目范围管理。项目范围管理主要内容之一是审查项目和项目变更的必要性。一个项目之所以必要、被批准并付诸实现,无非是市场和社会对项目的产品和服务有需求。风险管理通过风险分析,对这种需求进行预测,指出市场和社会需求的可能变动范围,并计算出需求变动时项目的盈亏大小。这就为项目的财务可行性研究提供了重要依据。项目在进行过程中,各种各样的变更不可避免。变更之后,会带来某项新的不确定性。风险管理正是通过风险来识别、估计和评价这些不确定性,向项目范围管理提出任务。
3.从项目管理的计划职能来看,风险管理为项目计划的制定提供了依据。项目计划考虑的是未来,而未来充满着不确定因素。项目风险管理的职能之一恰恰是减少项目整个过程中的不确定性。这一工作显然对提高项目计划的准确性和可能性有极大的帮助。
二、风险识别过程
软件项目风险识别的过程,是一个循环的不间断的工作。
1.风险判断。准确地找出软件项目中所有的潜在风险,才能提高软件项目的成功率和投资回报率。风险识别首先是依据原始资料,利用多种技术方法,诸如思考法、头脑风暴法、专家调查法、流程图法、情景分析法等,从不同层面对项目进行所有的风险可能性分析,对项目存在的不确定因素进行风险判断。
2.标识风险。对前期确认了的风险进行风险源追踪,寻找引起这些风险的因素,分为主要和次要因素,以及可应对和不可应对因素。
3.风险评定。根据风险有可能造成的损失进行初步的估计。风险识别最值得考虑的问题,是风险的潜在危害是无限的。所以需要有一些方法来区分出危害和可能性更大的风险。
4.风险排序。根据项目不同阶段的需求采用相应的风险分类方法进行风险分类。根据风险可能造成的损失,排列风险列队。
5.列出风险清单。风险清单就是将识别的风险进行汇总,根据风险内容列出风险清单表,为制定风险应对策略做准备。项目组成员根据检查表,核对判定那些风险可能会在项目中出现,绘制检查单时还应为表中的每一种风险对策提出建议。项目经理根据自己对项目的了解,识别出某些不确定性,采取相应的解决措施或规避方法,并添加到风险检查单中,为以后的项目作参考。
三、软件项目管理中的风险管理应对措施
这类项目风险应对措施针对项目中可能出现的,也可以预料风险来源以及发生过程而制定的计划,它是对付无预警信息风险事件的一种主要措施。主要有费用、进度和技术三种:①预算应急费。即一笔事先准备好的资金,用于补偿差错、疏漏及其他不确定性对项目费用估计精确性的影响;②进度后备措施。对于项目进度方面的不确定因素,项目各有关方一般不希望以延长时间的方式来解决。主要是通过压缩关键路线来实现,包括减少工序时间或改变工序间逻辑关系;③技术后备措施。专门用于应付项目的技术风险,它是一段预先准备好了的时间或资金,作为技术应急时间或技术应急费,只有当不大可能发生的事件发生,需要采取补救行动时,才会动用技术后备措施。
1.接受风险。当采取其他风险规避方法的费用超过风险事件造成的损失数额时,可采取自留风险的方法。风险自留是处理风险最普通的方法,它可以是被动的,也可以是主动的。
2.规避风险。通常在两种情况下采用风险回避方法:①某种特定风险所致的损失概率和损失程度相当大;②应用其他风险处理技术的成本超过其产生的经济效益,采用风险回避措施可使项目受损失的可能性最小。采取风险回避策略,最好在项目活动尚未实施时,这时对项目损失最小。放弃或改变正在进行的项目,付出的代价一般都比较高。
3.缓解和降低风险。与风险回避相比,风险减轻措施是一种积极的风险处理手段,是指项目班子对不愿放弃也不愿转移的风险,通过降低其损失发生的可能性,缩小其后果不利影响的损失程度来达到控制目的的各种控制技术或方法。这类措施是对付无预警信息项目风险的主要应对措施之一,实际上就是减轻风险的措施。
4.转移风险。这类风险控制措施多数是用来对付那些概率小、但是损失大,或者项目组织很难控制项目风险的情况。转移风险的实现大多是借助于协议或合同,将损失的法律责任或财务后果转由他人承担。转移风险主要有五种方式:①出售。通过买卖契约将风险转移给其他单位,类似于风险回避,区别在于风险有了新的承担者;②发包。通过从项目执行组织外部获取货物、工程或服务而把风险转移出去。
参考文献:
[1]方德英,寇纪淞,李萍,等.IT项目风险管理保障体系设计[J].商业研究,2006(342).
[2](英)克里斯·查普曼,斯蒂芬·沃德著. 项目风险管理: 过程、技术和洞察力[M].李兆玉,等译.电子工业出版社,2004.
[3]张恂. 风险管理:软件项目管理的精髓[J]. 软件世界. 2006(15)
[4]左怀远,米根锁. 软件项目中的风险管理研究[J]. 世界科技研究与发展. 2008(03)