「软件项目管理」一文浅谈软件项目风险计划

简介: 该文章深入探讨了软件项目风险计划的制定,包括风险识别、评估、应对策略等内容,并提供了风险条目检查表、风险概率及影响分析矩阵等工具,帮助项目管理者有效地管理和减轻项目中的潜在风险。

序言

在日常的软件项目中,开发到一半时,总会有各种各样的问题出现。比如:不断变换的需求、人员流动、技术失败、政策变化和资金不足等等原因。

因此,做好软件项目中的风险管控尤为重要。在下面的文章中,将讲解软件项目中的风险计划。

叮,开始讲解~

一、风险基本概念

1. 风险的定义及特性

  • 定义:风险是对潜在的未来可能发生损害的一种度量,软件项目开发过程中所有会带来负面影响的问题。
  • 特性:不确定性损失性

2. 风险三要素

三要素为:

  • 风险事件;
  • 风险事件发生的概率;
  • 风险造成的影响。

3. 风险图示

如下图所示:
风险图示

得出结论为:概率越高,影响越大,则为高风险。

3. 风险类型

(1)预测角度

  • 已知风险 —— Known known
  • 可预测风险 —— Known unknown
  • 不可预测风险 —— unknown unknown

(2)范围角度

商业风险、管理风险、人员风险、技术风险、开发环境风险、客户风险、过程风险、产品规模风险等。

二、风险管理过程

风险管理过程包括四个步骤,分别是风险识别风险评估风险规划风险控制如下图所示:

风险管理过程

三、风险识别

1. 定义

风险识别是试图通过系统化地确定对项目计划的威胁,识别已知可预测的风险。

2. 风险识别方法

风险识别有 4 种方法,分别是:

  • 德尔菲方法
  • 头脑风暴法
  • 情景分析法
  • 风险条目检查表法

3. 风险条目检查表之七个条目

7 个条目分别为:

  • 产品规模
  • 商业影响
  • 客户特征
  • 过程定义
  • 开发环境
  • 技术情况
  • 人员数目及经验

四、风险评估

1. 定义

对风险事件发生的概率进行评估,对项目风险产生的影响进行评估,给出项目风险排序

2. 步骤

具体步骤如下:

风险评估的步骤

3. 风险评估的方法

有两种方法,分别为:定性风险评估方法和定量风险评估方法。

(1)定性风险评估

风险概率度量: 极高、高、中、低、极低

风险影响度量: 灾难,严重,轻微,可忽略

风险概率及后果估计,矩阵图如下:

矩阵图

(2)定量风险评估

定量风险评估有五种方法分别为:

  • 访谈
  • 盈亏平衡分析
  • 模拟法
  • 决策树分析
  • 敏捷性分析

下面我们将对决策树分析进行详细讲述。

4. 决策树分析

(1)定义

  • 决策树分析是一种图表分析方法;
  • 提供项目所有可供选择的行动方案,行动方案之间的关系,行动方案的后果以及发生的概率
  • 提供选择一个最佳方案的依据。

(2)EMV

  • EMV,即损益期望值,是决策树的一种计算值;

  • EMV 根据结果、发生的概率计算出一种期望的损益。

  • 例如:某行动方案成功的概率是 50%,收益是 10 ,那么 EMV = 10×50% = 5

五、风险规划

1. 定义

针对风险分析的结果,降低风险的负面影响而制定风险应对策略应对措施的过程,即制定一定的行动和策略来最大程度降低风险事件造成的影响

2. 风险应对策略

有以下 4 种策略,分别为:

  • 回避风险
  • 转移风险
  • 损失控制
  • 自留风险

下面将依据这 4 种策略进行一一详述。

(1)回避风险

定义:

  • 回避风险是对可能发生的风险尽可能的规避,采取主动放弃或者拒绝使用导致风险的方案。
  • 例如:放弃采用新技术。

注意事项:

  • 对风险要有足够认识
  • 其他风险策略不理想的时候,可以考虑;
  • 可能产生另一种的风险;
  • 不是所有的情况都适用的。

(2)转移风险

  • 转移风险是为了避免承担风险损失,有意识将损失或与损失有关的财务后果转嫁出去的方法。
  • 例如:保险。

(3)损失控制

定义:

  • 消除风险因素,减少风险损失;

  • 最主动的风险应对策略。

  • 根据不同目的,分为损失预防损失抵制

  • 如下图所示:

损失控制

实例:

人员的频繁流动是一项风险,基于过去的历史和管理经验,频繁流动可能性的估计值为 70% ,开发时间增加 15% ,总成本增加 12% ,为了缓解这一风险,项目经理采取的策略如下:

  • 与现有人员讨论人员流动的原因
  • 建立良好的项目组织和通信渠道,以使大家能够了解每个有关的开发活动的信息;
  • 指定文档标准并建立相应的机制,以保证文档能够及时建立;
  • 对所有工作组织细致的评审,使大多数人能够按计划进度完成自己的工作;
  • 项目启动时,做好会出现人员流动的准备采取一些技术以确保人员的一旦离开后,项目仍然能继续。

(4)自留风险

  • 由项目组织自己承担风险事故所致损失的措施。
  • 例如:工程运营超支则接受低于预期利润的风险。

六、结束语

在上面的文章中,我们学习了风险基本概念和风险管理过程,同时,还细剖了风险管理过程中二等风险识别、风险评估和风险规划。

到这里,关于本文的介绍就结束啦!希望对大家有帮助~

如果您觉得这篇文章有帮助到您的的话不妨点赞支持一下哟~~😉

🛵专栏直通车

软件项目管理👉https://juejin.cn/column/7024826582841688077

相关文章
|
数据可视化 算法 定位技术
SWMM从入门到实践教程 01 SWMM软件介绍
SWMM(Storm Water Management Model)是一款用于城市暴雨径流模拟和城市雨水管理的计算机软件。SWMM软件最初由美国环保局(EPA)开发,现在已经成为一个广泛使用的软件,用于设计、规划和管理城市排水系统。
|
监控 项目管理 开发者
『软件工程7』详解软件项目管理之风险分析与管理
该文章详细讲解了软件项目管理中的风险分析与管理,包括风险的定义、类型、管理流程以及如何建立和使用风险表来跟踪和处理潜在风险。
|
9月前
|
JSON 自然语言处理 API
查词语字典免费API接口详解
查词语字典API提供38万词库支持,可查询词语的拼音、释义及来源,适用于词典应用和教育平台。接口支持GET/POST请求,需提供用户ID、密钥及URL编码的词语参数。返回参数包括状态码、错误提示及词语解释。提供PHP和Python调用示例,并需注意身份验证、编码要求及频次限制。免费稳定,适合广泛集成使用。
337 2
|
前端开发 Android开发 Windows
27. 【Android教程】下拉选择框 Spinner
27. 【Android教程】下拉选择框 Spinner
1004 2
|
算法 项目管理
「软件项目管理」一文详解软件项目进度计划
该文章深入讲解了软件项目进度计划的制定方法,包括关键路径法(CPM)的基本概念、ES/LS/EF/LF关系图的绘制、浮动时间的计算以及时间压缩和资源优化技术,并通过实例演示了如何有效管理项目时间。
|
存储 编译器 程序员
C语言程序的基本结构
C语言程序的基本结构包括:1)预处理指令,如 `#include` 和 `#define`;2)主函数 `main()`,程序从这里开始执行;3)函数声明与定义,执行特定任务的代码块;4)变量声明与初始化,用于存储数据;5)语句和表达式,构成程序基本执行单位;6)注释,解释代码功能。示例代码展示了这些组成部分的应用。
1253 10
|
图形学 iOS开发 Android开发
从Unity开发到移动平台制胜攻略:全面解析iOS与Android应用发布流程,助你轻松掌握跨平台发布技巧,打造爆款手游不是梦——性能优化、广告集成与内购设置全包含
【8月更文挑战第31天】本书详细介绍了如何在Unity中设置项目以适应移动设备,涵盖性能优化、集成广告及内购功能等关键步骤。通过具体示例和代码片段,指导读者完成iOS和Android应用的打包与发布,确保应用顺利上线并获得成功。无论是性能调整还是平台特定的操作,本书均提供了全面的解决方案。
827 0
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的学生签到系统的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的学生签到系统的详细设计和实现(源码+lw+部署文档+讲解等)
323 5
|
机器学习/深度学习 人工智能 算法
GitHub星标破千!斯坦福大学的284个机器学习小抄(漫画中文版)
说到人工智能必然要了解机器学习,从信息化软件,到电子商务,然后到高速发展互联网时代,到至今的云计算、大数据等,渗透到我们的生活、工作之中,在互联网的驱动下,人们更清晰的认识和使用数据,不仅仅是数据统计、分析,我们还强调数据挖掘、预测。 机器学习就是对计算机一部分数据进行学习,然后对另外一些数据进行预测与判断。 机器学习的核心是”使用算法解析数据,从中学习,然后对新数据作出决定或预测”。也就是说计算机利用已获取的数据得出某一模型,然后利用此模型进行预测的一种方法,这个过程跟人的学习过程有些类似,比如人获取一定的经验,可以对新问题进行预测。
|
iOS开发 MacOS Python
Python 虚拟环境及pip环境管理
`venv`是Python的虚拟环境管理工具,提供独立的环境避免包冲突,便于管理与删除。创建虚拟环境使用`python3 -m venv test`,激活环境在Windows上运行`. Scripts\activate`,macOS上运行`. bin\activate`。安装Python包通过`python`或`python3`选择版本,使用`pip`进行安装、升级和卸载。`pip`是Python包管理器,自2.7.9和3.4版本起自带,常用命令包括查看版本、安装、升级和卸载包。为提高速度,可使用国内镜像源如阿里云、清华或豆瓣。