软件项目风险管理计划(共22页).doc
《软件项目风险管理计划(共22页).doc》由会员分享,可在线阅读,更多相关《软件项目风险管理计划(共22页).doc(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上韩万江 姜立新,软件项目管理案例教程,机械工业出版社 ,2005-02 【丛书名】 国家示范性软件学院系列教材 10 软件项目风险管埋计划任何项目都有一定的不确定性,如果没有很好的风险管理,项目就可能遇到麻烦。所以,在软件项目管理过程中,风险计划也是一个重要的计划,只有进行合理的风险管理,制定及时的风险计划,才能防崽于未然,做到主动控制风险,而不是被动地被风险所控制。本章我们进人路线图的第9站:风险计划,如图101所示。图10-1路线图第9站:风险计划10.1 软件项目风险管理概述在软件项目的开发过程中,必然要使用一些新技术、新产品,同时由于软件系统本身的结枸和技术复
2、杂性的原因,需要投人大量人力、物力和财力,这就造成开发过程中存在某些“未知量”或“不确定因素”,这必然给项目的开发带来一定程度的风险,也可能会使项目计划失败或不能完全达到预期目标。因此,对项目风险进行科学、准确的判别,为项目决策层和管理人员提供科学的评估方法,是十分必要的。项目中的风险有很多种,没有风险的项目几乎是不存在的,只是风险的多少、严重程度不同而已。10.1.1 风险概念风险是损失发生的不确定性,是对潜在的、未来可能发生损害的一种度量。如果风险确实发生了,则它的发生会对项目产生有害的或者负面的影响。例如,在软件测试期间经常会发现故障,因此一个合理的项目必须做好发现故障时对它们进行修复的
3、计划。同样,项目开发过程中几乎总悬会出现某些变更申请,因此项目管理必须相应地准备好变更计划,以处理这些事件。另一方面,风险是一种概率事件它可能发生也可能不发生。因此,我们通常会表现出很乐观,不是看不到风险就是希望它们不会发生。如果风险真出现了,这种态度会使项目陷入困境,这是一个大型项目中很可能发生的事情。因此,风险管理被认为是管理大型软件项目的最佳实践。风险管理旨在识别出风险,然后采取措施使它们对项目的影响最小。风险管理是软件管理中相对较新的领域,它首次出现于贝姆(Bochm)关子风险管理的指商中。自那以后,软件的风险管理逐渐被人们所认识。软件风险是指软件开发过程中及软件产品本身可能造成的伤害
4、或损失。一个项目的损失可能有不同的后果形式,例如软件质量的下降、成本费用的超出、项目进度的推迟等。风险关注未来的事情,这意味着,风险涉及选择本身包含的不确定性,软件开发过程及软件产品都要面临各种决策的选择。风险发生的过程如图10度量2所示,首先有风险因素的存在,风险因素导致风险事件的发生,从而造成损失,而损失又引起了实际与计划之间的差异,从而得到风险的结果。风险事件是指那些人们不愿意它发生的或者没有规划的事件。这些风险事件可能导致无法实现项目目标。风险因素是指能够引起风险事件发生或者增加风险事件发生机会或影响损失严重程度的因素,是造成损失的内在或者处在的原因。需求的变化,设计镨误、疏漏和理解镨
5、误,狭隘定义或理解镨误,不充分估计,不胜任的拈犬人呙等等、都旱风除冈葚。图l0弓2风险发生过程一般说,项目风险应具有三要素:首先风险是一个事件,其次风险应具有事件发生的概率,最后风险事件可能造成一定的影响。如图103所示,风险发生的概率越高,造成的影响越大,就越是高风险,否则就是中等风险或者低风险。风险是介于确定性和不确定性之间的状态,是处于无知和完整知识之间的状态。当没有办法消除风险甚至连试图降低该风险也存在疑问时,这些风险就是真正的风险了。在我们能够标识出软件项目中的真正风险之前,识别出所有对管理耆和开发者而言均为明显的风险是很重要的。图10亏3风险图示10.1.2 风险类型从范围角度上看
6、,风险主要分为下述三种类型:项目风险、技术风险和商业风险。1)项目风险项目风险是指潜在的预算、进度、个人(包括人员和组织)、资源、用户和需求方面的问题,例如时词和资源分配的不合理、项目计划质量的不足、项目管理原理使用不良所导致的风险、资金不足、缺乏必要的项目优先级等。项目的复杂性、规模的不确定性和结构的不确定性也是构成项目风险的因奏。2)技术风险技术风险是指潜在的设计、实现、接口、检验和维护方面的问题。规格说明的多义性、技术上的不确定性、技术陈旧也是技术风险因素。复杂的技术、项目执行过程中使用技术或者行业标准发生变化所导致的风险也是技术风险。3)商业风险商业风险主要包括:市场风险、策略风险、管
7、理风险和预算风险等。例如:如果开发的软件不是市场真正所想要的,就发生了市场风险。如果开发的软件不再符合公司的软件产品策略,就发生了策略风险。由于重点转移或者人员变动而失去上级管理部门的支持,就发生了管理风险。如果没有得到预算或者人员的保证,就发生了预算风险。从预测角度看,风险可以分为下面三种类型:已知风险、可预测风险、不可预测风险。1)已知风险已知风险是通过仔细评佑项目计划、开发项目的商业和技术环境以及其他可靠的信息来源之后可以发现的那些风险(如:不现实的交付时间,没有需求或软件范围的文档,恶劣的开发环境)。2)可预测风险可预测风险是指能够从过去项目的经验中推测出来的风险(如:人员调整,与客户
8、之间无法沟通,由于需要进行维护而使开发人员精力分散等)。3)不可预测风险不可预测风险是可能、也会真的出现、但很难事先识别出来的风险。项目管理者只能对已知风险和可预测风险进行规划,不可预测的风险只能靠企业的能力来承担了。10.1.3 风险的基本性质风险具有如下的基本性质:1)客观性风险客观性首先表现在它的存在是不以人的意志为转移的,因为决定风险的各种因素对风险主体是独立存在的,不管风险主体是否意识到风险的存在,在一定的条件下风险就可能变为现实。其次,风险客观性还表现在风险元时不有,无所不在,它潜在各种活动之中。2)不确定性风险发生的不确定性表现为风险的程度有多大以及风险何时何地有可能变为现实,这
9、些都是不肯定的。由于人们对客观世界的认识受到各种条件的限制,不可能准确地预测风险的发生,不确定性要求我们运用各种方法进行测度。3)不利性风险一旦产生时,就会使风险主体产生挫折、失败甚至损失,对风险主体不利。因此我们应该在承认风险、认识风险的基础上,做好决策,尽可能避免风险,将风险的不利性降到最低。4)可变性 度量风险的可变性表现在一定条件下可以转化,风险事件可以转化为非风险的事件,非风险的事件可以转化为风险事件。5)相对性风险的相对性是针对风险的主体而言的,在相同的风险情况下,不同的风险主体对风险的承受能力不同,不同的组织和个人往往对风险有着不同的容忍限度。例如,一个高利润高收益的公司也许愿意
10、为一个10亿美元的合同花费50万美元制作一份计划书,而亠个收支相抵的公司则不会。一个组织也许认为15的误差几率是高风险的,而其他组织却认为这个几率风险很低。6)风险和利益的对称性风险和利益是同时存在的,风险是利益的代价,利益是风险的报酬。没有利益只有风险,没人会做;实现利益必须承担一定的风险。10.1.4 风险管理概述风险管理是指在项目进行过程中不断对风险进行识别、评估,制定策略,监控风险的过程。通过风险识别、风险分析和风险评价去认识项目的风险,并以此为基础合理地使用各种风险应对措施、管理方法、技术和手段对项目的风险进行有效的控制,妥善处理风险事件造成的不利后果,以最小的成本保证项目总体目标的
11、实现。风险管理是一系列对未来的预测,伴随着一系列的活动和处理过程以便控制风险,减少其对项目的影响。风险管理是项目管理的一个重要组成部分,贯穿于项目生存期的始终。1)从项目进度、质量和成本目标看,项目管理与风险管理的目标是一致的。通过风险管理来降低项目进度、质量、成本方面的风险,实现项目目标。2)从计划的职能看,项目计划考虑的是未来,而未来存在不确定因蓁,风险管理的职能之一是减少项目整个过程中的不确定性,有利子计划的准确性。3)从项目实施过程看,不少风险是在项目实施过程中由潜在变成现实的,风险管理就是在风险分析的基础上拟定具体措施来消除、缓和及转移风险,并避兔产生新的风险。10.1.5 风险管理
12、的意义目前,风险管理被认为是软件项目中减少失败的一种重要手段。当不能很确定地预测将来事情的时候,可以采用结构化风险管理来发现计划中的缺陷,并且采取行动来减少潜在问题发生的可能性和影响。风险管理意味着危机还没有发生之前就对它进行处理,这就提高了项目成功的机会并减少了不可避免风险所产生的后果。只有进行很好的风险管理才能有效地控制项目的成本、进度、产品需求,同时可以阻止意外的发生。这样,项目经理可以将精力更多地放到项目的及时提交上,不用像救火队员一样,处于被动状态。同时,风险管理可以防止问题的出现,即使出现问题,也可以降低其危害程度。可以说你不跟踪风险,风险就跟踪你。正如Tom Gilb所说,“女口
13、果你不主动攻击风险,风险就会主动攻击你”。风险管理可以分为四个层次:危机管理:是在风险已经造成麻烦后才着手处理它们。风险缓解:事先制定好风险发生后的补救措施,但不制定任何的防范措施。着力预防:将风险识别与风险防范作为软件项目的一部分加以规划和执行。消灭根源:识别和消灭可能产生风险的根源。作为一个优秀的风险管理者,应该采取主动的风险管理策略,即着力预防和消灭根源的管理策略,而不应该采取被动的方式,被动风险策略是直到风险变成真正的问题时才会拨出资源来处理它们。更普遍的是,软件项目组对风险不闻不阆,直到发生了错误才赶紧采取行动,试图迅速地纠正镨误,这种管理模式常常被称为“救火模式”。当补救的努力失败
14、后,项目就会处在真正的危机之中。风险管理的一个聪明的策略是主动策略。主动策略早在技术工作开始之前就已经启动了:标识出潜在的风险,评估它们出现的概率及产生的影响,对风险按重要性进行排序,然后软件项目组建立一个计划来管理风险。主动风险管理策略的目标是预防风险。但是,因为不是所有的风险都能够预防,所以项目组必须建立一个应付意外事件的计划,使其在必要时能够以可控的及有效的方式做出反应。软件风险管理要求在风险成为影响项目成功的因素之前识别、着手处理卉消除风险的源头,所有的项目都有风险,如果忽视风险,就可能增加项目失败的可能性,或者导致项目不成功。虽然如此,但风险的大小是可以评价度量的,确定可接受风险和不
15、可接受风险,对不可接受风险做进一步分析,制定补偿措施,将风险减至最小或可以接受的水平。软件风险管理过程主要包括风险识别、风险评估、风险规划、风险控制四个步骤。了解和掌握项目风险的来源、性质和发生规律,强化风险意识,进行有效的风险管理,这些对项目的成功具有很重要的意义。10.2 风险识别风险识别是试图系统化地确定对项目计划(估算、进度、资源分配)的威胁,识别已知和可预测的风险,只有识别出这些风险,项目管理者才有可能避免这些风险,且在必要时控制这些风险。每一类风险可以分为两种不同的情况:一般性风险和特定性风险。一般性风险对每一个软件项目而言都是一个潜在的威胁。特定性风险只有那些对当前项目的技术、人
16、员及环境非常了解的人才能识别出来。为了识别特定性风险,必须检查项目计划及软件范围说明,从而了解本项目中有什么特性可能会威胁到项目计划。一般性风险和特定性风险都应该被系统化地标识出来。风险识别要识别内在风险及外在风险。内在风险是指项目工作组能加以控制和影响的风险,如人事任免和成本估计等。外在风险是指超出项目工作组控制能力和影响力之外的风险,如市场转向或政府行为等。严格来说,风险仅仅指道受创伤和损失的可能性,但对项目而言,风险识别还窑涉机会选择(积极成本)和不利因素威胁(消极结果)。项目风险识别应凭借对“因”和“果”(将会发生什么和导致什么)的认定来实现,或通过对“果”和“因”(什么样的结果需要予
17、以避免或促使其发生以及怎样发生)的认定来完成。风险识别不是一次性行为,而应有规律地贯穿整个项目中。10.2.1 概念风险识别过程见图10-4,其中,风险识别的输入可能是项目的WBS、SOW、项目相关信息、项目计划假设、历史项目数据,其他项目经验文件、评审报告、公司目标等。风险识别常用方法是建立风险条目检查表”,利用用一组提问来帮助项目风险管理者了解在项目和技术方面有哪些风险。此外,还有德尔菲方法、头脑风暴法、情景分析法、面谈法等。风险识别的输出是风险列表。图10度量4风险识别过程10.2.2 德尔菲方法德尔菲方法又称专家调查法,它起源于20世纪40年代耒期,最初由美国兰德公司首先使用,很快就在
18、世界上盛行起来,目前此法的应用已遍及经济、社会、工程技术等各领域。我们在进行成本估算的时候也用到这种方法。用德尔菲方法进行项目风险识别的过程,是由项目风险小组选定与该项目有关的领域专家,并与这些适当数量的专家建立直接的函询联系,通过函询收集专家意见,然后加以缤合整理,再匿名反馈给各位专家,再次征询意见。这样反复经过四至五轮,逐步使专家的意见趋向一致,作为最后预测和识别的根据。10.2.3 头脑风暴法所谓头脑风暴法,就是以专家的创造性思维来获取未来信,a的一种直观预测和识别方法。此法是由美国人奥斯本于1939年首创,它从20世纪50年代起就得到了广泛应用。头脑风暴法一般是在一个专家小组内进行,通
19、过专家会议,激发专家的创造性思维来获取耒来信息。这就要求主持专家会议的人在会议开始时的发言应能激起专家们的思维“灵感”,促使专家们感到急需回答会议提出的问题,通过专家之间的信息交流和相互启发,从而诱发专家们产生“思维共振”,以达到互相补充并产生“组合效应”,获取更多的未来信,a,使预测和识别的结果更准确。10.2.4 情景分析法情景分析法是根据项目发展趋势的多样性,通过对系统内外相关问题的系统分析,设计出多种可能的未来前景,然后用类似于撰写电影剧本的手法,对系统发展态势做出白始至终的情景和画面的描述。当一个项目持续的时间较长时,往往要考虑各种技术、经济和社会因素的影响,对这种项目进行风险预测和
20、识别,就可用情景分析法来预测和识别其关键风险因素及其影响程度。情景分析法对以下情况是特别有用的:提醒决策者注意某种措施或政策可能引起的风险或危机性的后果;建议需要进行监视的风险范围;研究某些关键性因素对未来过程的影响;提醒人们注意某种技术的发展会给人们带来哪些风险。情景分析法是一种适用于对可变因奏较多的项目进行风险预测和识别的系统技术,它在假定关键影响因素有可能发生的塞础上,构造多重情景,提出多种未来的可能结果,以便采取适当措施防息于未然。10.2.5 风险条目检查表“风险条目检查表”是最常用也是比较简单的风险识别方法,它是利用一组提问来帮助管理者了解项目在各个方面有哪些风险。在“风险条目检查
21、表”中,列出了所有可能的与每一个风险因素有关的提问,使得风险管理者集中来识别常见的、已知的和可预测的风险(如产品规模风险、依赖性风险、需求风险、管理风险及技术风险等)。“风险条目检查表”可以以不同的方式组织,通过判定分析或假设分析,给出这些提问的回答,就可以帮助管理或计划人员估算风险的影响。风险条目检查表一般根据风险要素进行编写,包括项目的环境、管理层的重视度、技术情况以及内部因素(如团队成员的技能或技能缺陷等)。风险识别中的风险条目是项目经验的积累,风险条目检查表可以以不同的方式组织。一般说,作为项目经理可以将主要的精力放在以下几方面:产品规模商业影响项目需求客户特性过程定义技术情况开发环境
22、人员数目及其经验其中每一方面包含很多的风险检查条目,通过对每个条目的回答,可以识别项目可能存在的风险。1)产品规模风险检查表项目风险是直接与产品规模戌正比的。下面的风险检查表中的条目标识了与软件规模相关的常见风险:是否以LOC或FP估算产品的规模?对于估算出的产品规模的信任程度如何?是否以程序、文件或事务处理的数目来估算产品规模?产品规模与以前产品的规模的平均值的偏差百分比是多少?产品创建或使用的数据库大小如何?产品的用户数有多少?产品的需求改变多少?交付之前有多少?交付之后有多少?复用的软件有多少?2)商业影响风险检查表下面的风险检查表中的条目标识了与商业影响相关的常见风险:本产品对公司的收
23、人有何影响?本产品是否得到公司高级管理层的重视9交付期限的合理性如何?将会使用本产品的用户数及本产品是否与用户的需要相符合?本产品必须能与之互操作的其他产品系统的数目?最终用户的水平如何?政府对本产品开发的约束是什么?延迟交付所造成的成本消耗是多少?产品缺陷所造成的成本消耗是多少?对于上述产品规模和商业影响的风险检查表中的每一个回答都必须与过去经验加以比较。如果出现了较大的百分比偏差或者如果数字接近过去很不令人满意的绪果,则风险较高。3)需求相关风险检查表很多项目在确定需求时都面临着一些不确定性和混乱。如果在项目早期容忍了这些不确定性,并且在项目进展过程中得不到解决,则这些问题就会对项目的成功
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 项目风险 管理 计划 22
限制150内