0引言项目管理者联盟
随着社会需求的增加和计算机技术的迅速发展,软件产业在经济发展中的地位日趋重要。但是,由于软件产品的纯知识性,随之而来的软件项目高失败率也成为一个焦点。20世纪80年代末,软件项目风险管理作为一门学科应运而生。经过近30年的发展,出现了一系列的软件项目风险管理工具和方法。由于对风险管理技术和实践缺少了解,风险管理技术却没有得到广泛的应用。鉴于此原因,本文对近年来出现的一些风险管理方法进行分析与比较,以期对软件开发企业起到一定的帮助作用。项目管理者联盟
1软件项目风险管理定义pmp.mypm.net
SEI认为,“风险”就是承受损失的不确定性。风险管理是指在项目中含有过程、方法和工具的管理风险实践,它建立了预先决策的规范环境,使得:项目管理者联盟
①连续地评估风险;项目管理者联盟
②明确了哪些风险因重要而需要处理;PgMp.mypm.net
③实施处理这些风险的战略。项目管理者联盟
Hall认为风险管理是评估和控制影响软件项目、过程或产品的风险的实践,该实践围绕目标设定、项目计划、执行、度量、改进和发现新信息部分展开。Boehm认为,软件风险管理指的是“试图以一种可行的原则和实践,规范化地控制影响项目成功的风险,其目的是辨识、描述和消除风险因素,以免它们威胁软件的成功运作”。项目管理者联盟
2软件风险管理技术、工具和方法talent.mypm.net
经过近30年的发展,软件项目风险管理研究中出现了一系列的技术、工具和方法。其中,软件工程研究所(SEI)为整个风险管理提出了一整套的标准步骤。这篇论文将对具有代表性的6个软件项目风险管理工具和方法进行介绍和分析。talent.mypm.net
2.1软件风险评估(SRE)技术training.mypm.net
SRE模式是由SEI开发的,旨在对与系统相关的
风险进行识别、分析、沟通、缓解。SRE系统包括风险管理流程、软件开发风险分类图(SDRT)以及基于问卷的分类法(TBQ)。该模型有五个过程,分别为风险识别、风险分析、计划、风险跟踪和风险控制,即对软件项目中存在的风险行识别并加以分析评估,对风险进行优进化排序,并对TOP风险加以管理,制定相应的应对计划,最后进行跟踪控制。项目管理者联盟
SRE不但是一种诊断工具而且还是一种决策工具。该技术从产品,过程和约束条件上进行风险处理,识别和分类。另外,项目成员参与风险识别与分析过程,并设法规避风险领域以面对自己的开发计划。因此,项目经理可以在早期阶段了解项目风险。项目管理者联盟
2.2团队风险管理(TRM)技术项目经理圈子
Ronald P·Higuera,David指出,团队风险管理是指“在软件开发项目生命周期的各个阶段中,所有项目直接涉及到包括组织,团队,部门和代理等都作为团队的参与者参与其中,协同进行对组织结构和操作活动的风险管理。团队风险管理,为政府和承包商提供了过程、方法和工具,从而使这两个组织都能够单独的或者共同的参与决策过程,从而防患于未然。”团队风险管理活动使所有人包括从开发者到客户都参与到一个组织当中。这种技术确保通过项目可以反复地和协作地进行持续风险管理。TRM工作程序是风险识别,定期评估和分析新风险,计划资源的合理利用以降低风险,风险跟踪和风险规范行动,开始风险控制并将之变成问题,最终,项目中的伙伴关于风险开始沟通。项目管理者联盟
2.3 Softrisk模型blog.mypm.net
Softrisk风险管理技术是由于一些传统的风险管理技术存在缺陷的情况下出现的。Softrisk模型结合其它项目管理来探讨风险管理,确保了风险管理自动化并且适用于任何类型和规模的项目。Ayad AliKeshlaf,Khairuddin Hashim指出,Softrisk模型“是建立在一种思想基础上设计出来的,这种思想就是风险文档化和集中注意力在最大风险上是节省开发者时间和精力并且在降低软件风险上能达到好的结果的最好的方法”。club.mypm.net
模型步骤概括如下:项目管理论坛
Softrisk模型第一步就是风险识别。Softrisk模型识别不仅针对可能发生在任何类型项目的一般风险也针对仅发生在特定项目的特定风险。第二步就是对第一步中识别出的每一种风险都要确定它发生的概率及其影响。风险的概率和影响都由特殊的风险清单进行评估。利用风险清单,将风险分为很低,低,中等,高,很高五类。第三步,风险文档化阶段。在这一阶段,Softrisk将所有一般的和特别的风险数据文档化。这个文档用来跟踪项目情况、统计业务和预测未来风险。第四步,风险评估。Ayad Ali Keshlaf,Khairuddin Hashim定义了training.mypm.net
风险暴露(RE)公式:项目管理者联盟
RE=风险发生的概率*风险造成的影响第五步,排序。RE值是用来对所有风险进行分类并列出十大风险。第六步,把一图形分成红、黄、蓝三个区域来表示RE值。第七步,控制阶段。根据风险严重程度来选择一个合适的风险减少技术。这项技术可以是缓解偶然性或危机计划。在应用了这种技术后,再估计,再评估,再排序是必须的。最后一步,确定没有任何风险存在。如果有新的风险,就要再转到第一步。项目管理者联盟
2.4 ARMOR项目管理者联盟
M·R·Lu,J·S·Yu,S·R·Dalal认为,ARMOR(Analyzer for Reducing Module Operational Risk)“是一种自动识别软件项目模块操作风险的软件风险分析工具”。ARMOR的工作程序是访问数据仓库,项目数据库,失败数据库和项目开发数据库。该工具创建风险模型,并显示项目管理的各种统计数据。通过提高用户界面,简化了风险建模程序。ARMOR建立了可行的项目评估风险模型,能够衡量软件项目风险。并且可以识别出风险源,指出如何提高软件项目以减少它们的风险水平,并决定数据资料得来的风险模型的有效性。在这个工具中,用户可以将软件风险分布的各种统计数据显示出来。最后,用户应用回归分析验证风险模型的有效性。经验证的风险模型通常保存在一个模型库。该模型将进一步应用于其它项目或完全不相关的项目当中。PgMp.mypm.net
2.5 Riskit模型项目管理者联盟
|