项目管理资源网

您的位置:项目管理资源网 >> 研发制造项目管理

贝叶斯网络在软件项目风险评估中的应用

2010/10/11 9:11:30 |  6251次阅读 |  来源:网友转载   【已有0条评论】发表评论

1 引言

    所谓“风险”,是损失的不确定性,是在给定情况下,一定时期内可能发生的各种结果间的差异。与任何其他工程项目一样,软件项目的开发也存在各种风险,有些风险甚至是灾难性的。软件项目风险是指在软件开发过程中遇到的费用、进度与质量等方面的问题以及这些问题对软件项目的影响。软件项目风险管理有利于降低软件项目开发风险,提高软件项目的成功率。软件项目风险管理过程分为风险评估和风险控制两大部分,其中风险评估分为风险识别、风险分析、风险学习三个过程,风险控制则包括风险应对和风险监控两个过程。风险评估是风险管理的核心和基础,直接影响风险管理的其他过程,甚至影响到项目的成败。

    近年来,软件项目风险管理得到了广泛的重视,但在软件开发项目中进行完整的规范化的风险评估还很不足,主要表现在软件项目风险管理的研究和实践起步较晚,风险管理停留在概念层面,缺乏具体管理制度和方法的支持;软件企业主要依靠项目管理人员的个人经验,实行以定性分析为主的风险管理,风险管理水平参差不齐,具有一定的随意性;由于在风险管理过程中缺乏定量分析方法,因此有关项目资料和数据的收集具有盲目性,从而导致该领域的知识不能得到有效的积累,影响了软件项目风险管理水平的提高。

2 风险评估研究现状

2.1 常见的风险评估方法

    依据项目所能提供的经验数据的多少及信息详细程度,风险评估技术可分为定性与定量两种。定性分析主要是依靠专家确定项目的风险程度,专家经验决定了整个项目的综合考虑,主观性强;定量分析包括AHP、模糊综合评判以及人工智能等方法。AHP方法将复杂问题简单化,但比较判断矩阵的数据需求量大;模糊综合评判方法可同时针对多个目标,适用于对复杂项目的评估,但指标权重采用精确值,与实际情况有出入;人工智能方法则包括规则库、决策树和人工神经网络等方法,在一定程度上解决了项目评估的复杂性问题,但其有效性是以大量的训练样本为基础,影响了这些方法在项目评估中的应用。

    近年来,软件项目风险评估受到了广泛关注,已有大量的研究成果。将贝叶斯网络应用于软件项目风险评估,将软件项目风险管理划分为风险识别、风险分析、风险发生概率评估、风险影响评估及风险预防与控制等五个子模型;对风险与风险管理的研究进行了重新评估,指出风险管理的研究滞后于实践的需要,并对未来的风险与风险管理的研究和实践方向进行了讨论;提出了一种融合模糊理论以及专家信任度的风险评估模型,侧重以专家经验评判风险发生的概率。针对软件项目的特点和软件项目风险定量评估任务,提出了基于面向对象贝叶斯网络的风险评估方法,并通过分析软件项目生命周期中的具体风险与风险因素之间的因果关系,建立面向对象贝叶斯网络拓扑结构,由专家经验确定网络中的概率参数,定量估计风险的发生概率。

    通过真实的软件开发项目,根据已有案例启动风险案例学习机制,结合专家经验生成本次评估贝叶斯网络,以贝叶斯概率理论为基础,计算各风险节点发生的概率以及各风险因素对后果事件的综合影响,引入风险权重度量多种风险的组合影响。实践表明该方法为软件项目风险评估提供了一种有效的新途径。

2.2 贝叶斯网络方法研究软件项目风险评估的优点

    贝叶斯网络(Bayesian Networks,BN)是图论与概率论的结合,为变量间概率关系的图形化描述提供了一种将知识直观的图解可视化的方法,同时又是一种概率推理技术,使用概率理论来处理在描述不同知识成分之间的因条件相关时而产生的不确定性。用贝叶斯网络作为软件项目风险评估工具,其优点主要体现在以下三个方面:

    第一,贝叶斯网络的推理以贝叶斯概率理论为基础,具有成熟的概率推理算

    项目经理胜任力免费测评PMQ上线啦!快来测测你排多少名吧~

    http://www.leadge.com/pmqhd/index.html

“项目管理生根计划”
企业项目经理能力培养和落地发展方案下载>>

分享道


网站文章版权归原作者所有,如有认为侵权请联系我们,将于1个工作日内作出处理!
网友评论【 发表评论 0条 】
网友评论(共0 条评论)..
验证码: 点击刷新

请您注意护互联网安全的决定》及中华人民共和国其他各项有关法律法规或间接导致的民事或刑事法律责任
·您在项目管理资源网新闻评论发表的作品,项目管理资源网有权在网站内保留、转载、引用或者删除
·参与本评论即表明您已经阅读并接受上述条款