软件项目风险管理(Project Risk Management)

  1. 风险管理引言
  2. 风险管理概述
  3. 项目风险的管理规划
  4. 项目风险识别
  5. 项目风险分析
  6. 项目风险应对
  7. 项目风险监控

引言

假如你是一个项目的负责人,有幸要在40天内为布朗先生建造一座坚固实用美观的别墅。你会发现哪些风险?

第一组

A、40天是40个工作日吗?还是包括节假日的40天?我如何保证按时完成?

B、布朗先生的要求坚固实用,坚固要达到抗震几级?使用期限是多长?实用更麻烦,布朗先生觉得应该如何布局,这个房子才更实用?布朗先生要求的美观如何达到?

C、我需要多少资金预算?如何让这些资金到位?什么时候到位?如何花才能避免超出预算?

D、项目完工之后的质量验收标准是什么?在项目过程中我应该如何保证这个质量目标?

……

第二组

A、别墅的建筑用地在哪里?地况如何?周围环境如何?是否有设计难度?设计方案是否合理?能否达到质量要求?

B、项目施工的工序是否正确?项目计划是否合理?

C、建筑团队的人员是否充足?我是否需要一个优秀的设计师和一些有经验的建筑工人?

D、团队成员是否都能忠于工作?我应该如何进行有效的管理并激励他们才能保证项目按时按质的完成?

E、我是否要花些心思了解布朗先生,包括他的背景,另外布朗先生有没有幕后老板,是否还有其他人会影响布朗先生的观点?我们之间是否会有误会产生?我应该如何沟通?

F、我的材料供应商是否可靠?他能否及时将质量合格的原材料供应给我?

……

第三组

A、我们的施工期是什么季节,是否我去看看这些年在这段期间的天气状况如何?如果遇到雨雪等天气灾害我怎样应对?

B、我的建筑安全措施如何?安全教育是否到位?工人保险状况如何?假如出现工伤或者事故如何应对?

C、另外,如果这块地施工期间,挖出了古墓等情况,停工期间时间和预算是否够用?

D、布朗先生是否像表面这样有钱?(他的资信情况如何?)他是否能在合适的时候付我款项?我是否要实现一些阶段性付款方案,我是否要保证金?

E、建造这个房屋我是否取得了一些前期施工证明?建筑主管单位是否不会找我麻烦?

F、建造这个房子是否有限高?是否会有损于周围其他人的利益,采光、施工噪音、垃圾污染等等?周围人的情况如何?他们要找我麻烦怎么办?

……

假如,您写出了第一组答案中的100%,那么您可以进入项目管理领域了,假如,您同时又写出了第二组答案中的80%以上,那么您有项目管理的潜质,

假如您更在以上基础上同时第三组答案中也写出了60%以上,那么您已经具备项目管理的一些经验了,当然这些朋友还需更多实践经验的磨练。如果没达到,也不必灰心,

这门课程无疑会适合您。

风险管理概述

什么是风险?(Risk Definition)

PMP对风险的定义:

风险是指与项目相关的若干不确定性事件或条件,一旦发生,将会对项目目标的实现产生正面或负面的影响。

CMMI:

CMMI 3级管理域:风险管理域(RSKM)

风险管理的目的是在风险发生前,界定出潜在的问题,以便在产品或项目的生命周期中规划风险处理活动,并于必要时启动之,从而将不利于完成目标的影响降低。

风险的基本因素

风险信号(征兆):指在风险发生之前的提示信号。

发生概率:风险发生的几率。

风险影响:风险发生后对项目产生的影响。

风险级别:根据风险发生的概率以及风险影响程度将风险划分为高、中、低不同的等级。

应对措施:风险发生前,为了避免、降低、缓解、转移、接受风险所采取的措施

风险特点

风险存在的客观性和普遍性

风险的多变性

风险的时间性

风险发生具有偶然性和必然性

从风险内容上划分风险类型

1、范围风险:与范围变更有关的风险,例如用户的需求变化等。

2、进度风险:导致项目工期拖延的风险。该风险主要取决于技术因素、计划合理性、资源充分性、项目人员经验等几个方面。

3、成本风险:导致项目费用(其中包括人工成本)超支的风险。

4、质量风险:影响质量达到技术性能和质量水平要求的风险。

5、技术风险:是指由于与项目研制相关的技术因素的变化而给项目建设带来的风险,包括潜在的设计、实现、接口、验证和维护、技术的不确定性、“老”技术与“新”技术等方面的问题。

6、管理风险:是指由于项目建设的管理职能与管理对象(如管理组织、领导素质、管理计划)等因素的状况及其可能的变化,给项目建设带来的风险。

7、商业风险:是指开发了一个没有人真正需要的产品或系统(市场风险);或开发的产品不符合公司的整体商业策略(策略风险);或构成了一个销售部不知道如何去出售的产品(销售风险)等。

8、法律风险:例如许可权、专利、合同失效、诉讼、不可抗力等

9、社会环境风险:是指由于国际、国内的政治、经济技术的波动(如政策变化等),或者由于自然界产生的灾害(如地震、洪水等)而可能给项目带来的风险。

从预测的角度划分风险类型

  1. 已知风险(knowns):是通过仔细评估项目计划、开发项目的经济和技术环境以及其他可靠的信息来源之后可以发现的那些风险。例如,不现实的交付时间;没有需求或软件范围文档;恶劣的开发环境等。
  2. 可预测的风险(known-unknowns):可预见、可计划、可管理。又称已知-未知风险,是指能够从过去项目的经验中推测出来的风险。例如,人员变动;与客户之间无法沟通等。以及市场风险(原材料可利用性、需求)、日常运作(维修需求)、环境影响、社会影响、货币变动、通货膨胀、税收
  3. 不可预测的风险(unknown-unknowns):不可预见、不可计划、不可管理,需要应急措施。又称未知-未知风险,是指可能,但很难事先识别出来的风险。例如规章(不可预测的政府干预)、自然灾害

风险成本

风险的有形成本包括风险发生时造成的直接损失和间接损失。

直接损失是指人员、经费、设备等的直接流失;

间接费用是指直接损失以外的人财、物、知识等损失。

风险的无形成本是指由于风险所具有的不确定性而使项目在风险发生前和发生后所付出的代价。

风险的发生减少了项目成功的机会;

风险阻碍了生产率的提高和新技术的应用;

风险会造成资源分配的不当,使人们将更多的资源投入到风险较小的行业或者项目中。

什么是风险管理?(Risk Management)

风险管理指对项目的风险进行识别、分析和控制的系统性过程。

项目管理者通过系统化的风险识别、分析和应对项目风险,最大化正面影响,最小化负面影响。

风险管理的意义

  1. 增加项目成功的机率,使项目达到预期的结果。
  2. 从项目进度、质量和成本目标看,项目管理与风险管理的目标是一致的。通过风险管理以减少风险对项目进度、质量、成本的影响,最终实现项目目标。
  3. 从计划职能看,项目计划考虑的是未来,而未来存在不确定因素,风险管理的职能之一是减少项目整个过程中的不确定性,有利于计划的准确性。
  4. 从项目实施过程看,不少风险是在项目实施过程中由潜在变成现实的,风险管理就是在风险分析的基础上拟定具体措施来消除、缓和及转移风险,并避免产生新的风险,因此有利于项目的实施

PMP风险管理过程包括:

  1. 风险管理计划
  2. 风险识别
  3. 风险定性分析
  4. 风险定量分析
  5. 风险应对计划
  6. 风险监控

CMMI 风险管理域内容

特定目标1:风险管理标准(对应风险计划)

执行方法1.1:决定风险来源和类别

执行方法1.2:定义风险参数

执行方法1.3:建立风险管理策略

特定目标2:界定并分析风险(对应风险识别和分析)

执行方法2.1:界定风险

执行方法2.2:评估、分类及排序风险

特定目标3:降低风险(对应风险应对和监控)

执行方法3.1:开发风险降低计划

执行方法3.2:执行风险降低计划

风险管理流程

image

风险管理规划

风险管理规划( Risk Management Planning )

是在项目正式启动前或启动初期对项目的一个纵观全局的对于风险的考虑、分析、计划,也是项目风险控制中最关键的内容。

目的是确定风险管理方法和风险管理的各项活动。

输出:风险管理计划

风险管理规划流程分析

image

项目风险识别

风险识别过程(Identify Risks)

风险识别过程是将不确定性事项转变为明确的风险陈述。

风险三要素判断:不确定性、未发生、对目标的达成有影响。

可能的参与人员:项目组成员、机构项目管理或专门的风险管理人员、技术专家、客户、最终用户、项目组外有经验的项目经理、其他干系人等。

是一个在整个项目过程中多次反复的过程。

image

风险识别技术

一、信息收集法

头脑风暴法(Brain Storm)

通过一种思维高度活跃,打破常规的思维方式而产生大量创造性设想的方法。该方法最常用,当所有项目组成员或人数众多的成员参与项目风险识别时使用。

Delphi法

征得专家的意见之后,进行整理、归纳、统计,再反馈给各专家,再次征求意见,再集中,再反馈,直至得到稳定的意见。该方法用户专家对项目风险进行识别时使用。

面谈法

与有经验的项目经理、行业专家以及相关方代表进行面谈,通过他们的经验为项目风险识别提供帮助。

SWOT法

将与项目相关的各种主要优势因素(Strengths)、弱点因素(Weaknesses)、机会因素(Opportunities)、威胁因素(Threaths),通过调查罗列出来,并按照矩阵形式排列出来,运用系统分析方法,将这些因素加以分析,得出相应的结论。通常用于项目风险管理小组对风险的识别。

道斯矩阵

image

二、图表分析法

因果图(鱼刺图/石川图)。

用于对影响结果的全部因素进行分析。适用于各种角色的人对项目风险进行识别。

项目流程图。

通过寻找项目各组成部分之间的相互联系和依赖关系,发现其中的风险。适合项目风险管理小组使用。

相关图。

通过变量与结果之间的关系来确定影响结果的因素,从而识别其中的风险。适合项目风险小组使用。

三、风险条目检查表法。

检查表中已经根据软件项目的特点列出了潜在的风险,由适用人员逐项评估。使用于项目经理和项目风险管理小组对项目进行风险识别。

四、假设条件分析法。

对于项目计划制定过程中设定的主要假设条件进行评估,从中寻找出存在的风险因素。适用于项目经理和项目风险管理小组对风险进行识别。

风险识别的输出

项目风险列表,并纳入组织的“项目风险知识库”。

 

Top10风险

在项目管理实践过程中,项目管理人员需要根据项目进程,根据风险发生概率及风险影响程度优先级和影响因素等对风险进行优先级排列,并对排名前十位的风险进行重点跟踪和管理。

image

风险分析

风险分析(Risk Analysis)的过程及目的是对所有识别出来的风险进行估评,按照发生的可能性和后果的严重性排序,以确定项目组需要重点关注的风险,为后面的风险应对方案作准备。

定性分析

定量分析

定性分析定义

风险的定性分析是通过比较各个风险项目在发生概率和影响后果方面的相对位置,进而确定哪些是关键风险,并作为下一步关注的对象。

目的

判断已识别的风险的重要程度以作为进一步风险管理活动的依据。

结果

对已识别的风险的评分列表,并按照其重要程度的分值进行排序

依据

通常只能靠经验和专家意见

方法

主观打分法。由项目风险管理小组对已识别出的风险的发生概率、后果影响两个方面进行打分。

风险发生后果等级

image

风险发生概率等级

image

风险等级矩阵

Þ风险评分=P*I(取值范围:0-1.00)

image

 

定量分析定义

通过一些数学方法对特定类型风险的发生概率,发生后果进行分析,以获得一些与此类风险相关的指标值。此类方法一般用于成本和进度类的风险分析。

目的

确定能达到项目目标的可能性。(目标包括进度、费用、质量等)。

量化的评估项目各风险,确定需预留的风险准备金和时间预留量。

量化评估风险影响,判断最应关注的项目风险。

确定关于费用、时间和工作范围的现实的,可达到的目标。

(1)风险的参照水准分析法

对绝大多数软件项目来讲风险因素——成本、性能、支持和进度就是典型的风险参照系。

1、根据项目承受能力定义成本、性能、支持、进度的水平参照值。

2、找出每组风险与水平参照值的关系。

3、估计一组临界点以定义项目的终止区域。

4、估计风险组合将如何影响风险水平参照值。

image

(2)PERT估计法

此方法可以应用于风险发生概率和风险的后果的定量分析。通过面谈对象的乐观估计、最可能估计、悲观估计,利用三点法得出风险项的加权平均值。

image

(3)模拟技术

通过选定的数学模型,将某一不确定性的因素在一定的概率分布下的变化状态转化为整个项目结果的分布情况。

蒙特卡罗模拟( Monte Carlo )。蒙特卡罗分析通过多次模拟一个模型的结果,从而提供计算结果的统计分布。

image

(4)决策树分析

决策树分析法是指借助树形分析图,根据各种类型的风险出现的概率及预期损益,计算与比较各方案的损益期望值,从而抉择最优方案的方法。

image

风险分析结果

项目关键风险清单

image

风险应对

 

风险应对(Risk response)是指通过应对计划的活动,对已经分析出的项目关键风险制定相应的应对措施,以确保相应的关键风险可以被避免、消除、转移以及风险发生后能够正确应对,减少负面影响。风险应对计划的执行情况直接决定了风险对项目目标的影响情况。

制定措施和方法以增加对项目有利的机会,减少风险对项目的威胁。

不仅包括措施制定,也包括责任人的安排

所制定的应对计划应与风险的严重程度相适应,经济有效、及时、现实、可操作、一致同意并责任落实。

通过涉及多个方案的选择,而且可能涉及主应对方案和备份方案的安排。

风险应对方法

风险规避:是指当项目风险潜在威胁的可能性极大,并会带来严重的后果,无法转移又不能承受时,通过改变项目的计划、过程、组织、资源等互动来规避风险。

规避策略:

改变项目计划以消灭风险或保护项目目标免受影响。虽不可能消灭所有的风险,但对具体风险来说是可以避免的。

某些风险可以通过需求再确认、获取更详细信息、增强沟通、增派专家等方法得以避免。

示例:

缩小项目工作范围以避免高风险任务活动

采用更成熟的技术方案而非先进但尚不成熟的方案

避免跟不熟悉的服务提供商签约

风险转移:

通过将风险向第三方或者相关方转移风险。通常要为第三方付费作为承担风险的报酬。

示例:

通过寻找合作伙伴或模块外包降低进度或者范围风险。

通过测试外包降低产品质量风险。

通过集成其他厂商的中间件以降低技术风险。

风险减轻:

对于无法消除和转移的风险,通过增加资源或增加其他辅助手段来降低风险发生概率和风险后果。

示例:

采用功能相差不多的较简单的流程

冗余设计降低需求变更产生的影响

增加资源和时间

进行更系统化的更彻底的测试

风险接受:

对于无法规避和转移的风险必须制定相应的项目应急计划,确保在风险发生之后有明确的行动而不是被动地去应对,以降低风险带来的不良影响。

积极的接受。制定应急计划并在风险发生时执行,应急计划可以大大减少处理问题的费用。

消极的接受。“默默地承受”。

对于高风险的事件可制定“退却计划” :风险准备金、备用方案、改变工作范围等。

示例:

机房着火,服务器瘫痪的风险。应提前制定应急方案,提供风险准备金,备用服务器,数据备份,风险责任人等。

需求变更风险。当无法避免的需求变更发生时,按照规定需求变更流程进行需求变更,减少需求变更的影响。

风险应对结果

风险应对计划

已识别风险描述、风险原因及影响

风险对应的责任人及其责任

风险应对具体策略及其具体措施

应对措施执行后仍可能遗留的风险及其程度

风险应对的费用和时间预算

应急计划和退却计划

风险监控

风险监控(Risk Control)

在整个项目过程中监督已识别风险和残留风险、识别可能出现的新风险、执行风险应对计划、评估计划执行的有效性。

项目风险监控活动应判断以下情况

  1. 风险应对措施是否按计划实施
  2. 风险应对措施是否有效,是否需要制定新的措施
  3. 项目假定条件是否仍然成立
  4. 风险的状态是否发生了改变
  5. 是否出现了风险信号
  6. 是否遵从了正确的项目章程
  7. 是否有未识别的风险发生

项目风险监控程序

1.建立项目风险事件控制体制

2.确定要控制的具体项目风险

3.确定项目风险的控制责任

4.确定项目风险控制的行动时间

5.制订各具体项目风险的控制方案

6.实施具体项目风险控制方案

7.跟踪具体项目风险的控制结果

8.判断项目风险是否已经消除

风险监控原则:

风险监控是项目开发过程中的持续不断的过程,风险随着项目过程的时间变化而变化。

项目风险应作为所有项目会议的内容之一。

采用量化分析方法,分析项目的CPI、SPI指数,当这些指数与正常范围发生偏离的时候就应立即进行风险识别和评估。

风险监控的主要方法

  • 核对表及评审
  • 定期项目评估
  • 挣值分析
  • 未知风险应对措施

风险监控成果

1.随机应变措施

2.纠正行动

3.修改风险应对计划

风险监控报告

image

风险管理总结

风险管理的常见错误

项目基本上没有风险管理

被动式的反应,没有主动的分析、预防、应对和监控风险

只在项目初期进行风险分析,在项目整个过程中无持续的监控

风险发生并应对后无二次分析,防止风险再次发生

风险责任无分配和不清楚

风险的识别和监控仅仅靠项目经理一人拍脑门

image

posted @ 2011-02-14 15:23  herobeast  阅读(17566)  评论(0编辑  收藏  举报