软件项目管理论文 项目风险管理.doc_第1页
软件项目管理论文 项目风险管理.doc_第2页
软件项目管理论文 项目风险管理.doc_第3页
软件项目管理论文 项目风险管理.doc_第4页
软件项目管理论文 项目风险管理.doc_第5页
免费预览已结束,剩余5页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件项目管理论文题目:项目风险管理系名:XXX 专业:XXX姓名:XXX学号:XXXXXX摘要:软件风险管理是对影响软件项目、过程或产品的风险进行估计和控制的实践过程,也是为了解决影响软件项目、过程或产品的风险而制定的准则。当前软件业对软件风险管理的研究越来越重视,在理论上对软件风险进行了分类,提出了风险管理的思路,在实践上也出现了一些定量管理风险的方法和风险管理的软件工具。本文叙述了在软件开发项目中风险管理的重要性及其主要内容,重点介绍了进行风险管理的5 个步骤,即风险识别、风险分析、风险计划、风险跟踪和风险对策。关键词:软件风险;风险管理;风险识别;风险分析;风险跟踪AbstractSoftware risk management is the practice course to influencing the risks of software project, course or the products to estimate and control, it is also the criterion made in order to it influences the risks of software project, course or the products to solve. The study on software risk management of the software industry is paid attention to more and more at present, classifies the risk of the software in theory, have proposed the thinking of risk management, and the methods of quantitative managing risk and software tool of risk management has also been presented in practice.This paper expounds the importance and main contents of the risk management in software development project,focusing on five procedures of the risk management,that is risk identification,risk analysis, risk plan,risk track and risk countermeasures. Keywords: Software risk;Risk management;risk identification;Risk analysis; risk track目录一、项目的风险背景.1二、风险管理的内容.1三、风险管理的模型.2 3.1、Boehm模型.2 3.2、CMU/SEI模型.2 3.3、MSF风险管理模型.3四、 风险的分类及各类风险产生的影响.3 4.1、组织和管理风险34.2、需求风险44.3、合同风险44.4、设计和实施的风险44.5、人员风险54.6、过程风险54.7、质量风险5五、项目风险的分析的方法.5六、风险分析和控制.66.1、风险分析66.2、风险识别76.3、风险控制.7七、总结7一、项目的风险背景信息产业的发展是目前发展最快的行业之一,也是对社会影响最大的一个行业,它不但为我们创造了巨大的财富,而且从各个方面改变着我们的生活,达到一个行业,小到一项服务。我们不得不承认软件是二十一世纪最不可思议的产品。伴随着软件开发技术的不断更新、软件数量的增多、软件复杂程度不断加大、客户对产品的要求也在不断的提高,随之而来的是软件开发项目给软件开发企业和需求企业带来的巨大风险。软件开发项目的成功与否会直接影响到公司的生存。这对软件开发企业来讲应该是更大的难题。一方面是业务需求更加复杂。人们对软件质量和用途的期望大幅度提高,对业务系统的要求也越来越挑剔。另一方面是开发成本不断缩减。在此形势下,风险管理与控制已成为软件开发项目成败的关键。软件开发项目由于其具有连续性、复杂性、少参照性,无标准规范等特点,其风险程度较高。目前国内的大多数软件开发企业还缺乏对软件开发项目的风险认识,缺少进行系统、有效的度量和评价的手段。据有调查数据显示,有1535%的软件项目中途被取消,剩下的项目不是超期就是超出预算或是无法达到预期目标。另外,软件项目因风险控制和管理原因失败的约占90% ,可见,软件风险控制与管理在目前的软件开发项目中的重要性。二、风险管理的内容项目风险管理是指对项目风险从认识到分析直至采取应对措施等的一系列过程,包括风险识别、风险量化、风险对策和风险控制等,如下图所示,从而将积极因素所产生的影响最大化并使消极因素产生的影响最小化,或者说达到消除风险、回避风险和缓解风险的目的。对项目进行风险管理,就可以最大限度的减少风险的发生。风险管理风险应对风险分析风险预防行动计划风险识别风险监视风险控制风险评估项目风险管理的基本内容 (1)风险识别:风险识别要确定影响本项目的风险来源、风险产生的条件,并描述其风险特征。风险识别不是一次就可以完成的事,应该在项目的整个生命周期内持续进行。识别风险的方法常用的有现场观察法、座谈法、流程图法、财务报表法、相关部门配合法和环境分析法等。(2) 风险评估:风险评估时对风险影响力进行衡量的活动,即衡量风险发生的概率和风险发生后对项目目标的影响程度,从而为后面制定风险对策提供依据。对已识别的风险要进行估计和评价,风险估计的主要任务是确定风险发生的概率与后果,风险评价则是确定该风险的经济意义及处理的费效分析,常用的方法有:概率分布、外推法、多目标分析法等。(3) 风险计划:风险计划是根据风险评估的结果,为降低项目的负面效应而制定方法、措施和技术手段的过程。风险计划将指导项目如何做好风险管理,包括风险处理的优先级、如何避免风险、如何消除风险等。(4) 风险应对:风险应对就是风险计划的实施,以设法避免、消除和降低风险,包括风险预防,风险发生的监视和控制。在整个项目管理过程中,首先要预防风险的发生,在风险发生之前就将它消灭在萌芽状态之中。其次,一旦风险发生,就要设法最大限度地缓解风险,降低风险所带来的后果。一般而言,风险应对有三种方法,(1)风险控制法,即主动采取措施避免风险,消灭风险,中和风险或采用紧急方案降低风险。(2)风险自留,当风险量不大时可以余留风险。(3)风险转移。三、风险管理的模型1、Boehm模型Boehm认为,软件风险管理是将影响项目成功的风险形式化为一组易用的原则和实践的结合,在风险成为软件项目返工的主要因素并由此威胁到项目的成功运作前,识别、描述并消除这些风险项。2计划和执行风险管理3管理项目风险特征库7评估风险管理流程1制度技术与管理流程5风险处理4.风险分析6.风险控制信息需求管理决策措施请求风险特征改进措施反馈Boehm的风险管理模型Boehm的风险管理模型,从制定技术与管理流程开始,然后完成风险计划、管理项目风险特征库、风险分析,风险处理和风险控制,最后评估风险管理流程,以不断完善风险管理流程。2、CMU/SEI模型CMU/SEI模型要求在项目生命周期的所有阶段都关注风险识别和管理,将风险管理划分为5个部分风险识别、分析、计划、跟踪和控制,并强调风险管理的各个组成部分的沟通,将沟通视为风险管理的核心,不断地评估可能造成恶劣后果的因素,决定最迫切需要处理的风险,实现控制风险的策略,评测并确保风险策略实施的有效性。确定风险来源和种类定义风险参数/属性制定并维护风险管理策略识别风险建立风险缓解计划实施缓解计划评估、分类和排序风险风险库项目计划和监控控制CMMI风险管理模型3、MSF风险管理模型MSF强调风险管理必须是主动的、规范的,是不可缺少的管理过程,应持续评估、监控和管理风险,直到风险被处理或消除。MSF风险管理模型,强调风险知识库、掌握风险列表和学习。如下图所示:2.风险陈述掌控风险列表风险知识库概率和流程7.学习5.跟踪报告4计划安排1.识别3分析和有线级排序6.控制MSF风险管理模型四、 风险的分类及各类风险产生的影响1、组织和管理风险 (1)仅由管理层或市场人员进行技术决策,导致计划进度缓慢,计划时间延长;(2)低效的项目组结构降低生产率;(3)管理层审查决策的周期比预期的时间长;(4)预算削减,打乱项目计划;(5)管理层做出了打击项目组织积极性的决定;(6)缺乏必要的规范,导致工作失误与重复工作;(7)非技术的第三方的工作(预算批准、设备采购批准、法律方面的审查、安全保证等)时间比预期的延长。2、需求风险很多项目在确定需求时都面临着一些不确定性。当在项目早期容忍了这些不确定性,并且在项目进展过程当中得不到解决,这些问题就会对项目的成功造成很大威胁。如果不控制与需求相关的风险因素,那么就很有可能产生错误的产品或者拙劣地建造预期的产品。每一种情况对产品来讲都可能致命的。与客户相关的风险因素有:(1)对产品缺少清晰的认识,(2)对产品需求缺少认同,(3)在做需求中客户参与不够,(4)没有优先需求,(5)由于不确定的需要导致新的市场,(6)不断变化需求,(7)缺少有效的需求变化管理过程,(8)对需求的变化缺少相关分析等。3、合同风险合同里的条款比较多,存在风险的概率很大。例如,软件项目常常按固定总价的方式签订合同,客户希望实现尽可能多的功能。如果事先没就项目范围有明确定义,并成为合同的一部分,项目的验收可能就会很困难,项目进度延长,极大的增加了开发成本。4、设计和实施的风险 (1)设计质量低下,导致重复设计;(2)一些必要的功能无法使用现有的代码和库实现,开发人员必须使用新的库或者自行开发新的功能;(3)代码和库质量低下,导致 需要进行额外的测试,修正错误,或重新制作;(4)过高估计了增强型工具对计划进度的节省量;(5)分别开发的模块无法有效集成,需要重新设计或制作。5、人员风险 (1)作为先决条件的任务(如培训及其他项目)不能按时完成;(2)开发人员和管理层之间关系不佳,导致决策缓慢,影响全局;(3)缺乏激励措施,士气低下,降低了 生产能力;(4)某些人员需要更多的时间适应还不熟悉的软件工具和环境;(5)项目后期加入新的开发人员,需进行培训并逐渐与现有成员沟通,从而使现有成员的工作 效率降低;(6)由于项目组成员之间发生冲突,导致沟通不畅、设计欠佳、接口出现错误和额外的重复工作;(7)不适应工作的成员没有调离项目组,影响了项目组其他 成员的积极性;(8)没有找到项目急需的具有特定技能的人。6、过程风险(1)大量的纸面工作导致进程比预期的慢;(2)前期的质量保证行为不真实,导致后期的重复工作;(3)太不正规(缺乏对软件开发策略和标准的遵循),导致沟通不 足,质量欠佳,甚至需重新开发;(4)过于正规(教条地坚持软件开发策略和标准),导致过多耗时于无用的工作;(5)向管理层撰写进程报告占用开发人员的时间比预 期的多;(6)风险管理粗心,导致未能发现重大的项目风险。7、质量风险 因为难以完全模拟客户使用的各种场景,也无法覆盖全部的操作路径,无法保证客户百分之百的满意,所以产品的质量风险总是存在的,关键是如何降低质量风险、提高软件产品质量,使客户的满意度达到很高的水准。这就要求控制质量风险。(1)组织上对质量保证措施、软件测试不够重视,导致产品质量地下;(2)软件过于复杂,或人为设计过于复杂,导致问题较多;(3)没能全面理解客户的需求,导致客户对产品不满意甚至拒收;(4)需求变更导致测试不足,新产生的严重缺陷没能被发现;(5)设计评审、代码评审不足都可能错过某些严重的问题。五、项目风险的分析的方法风险分析是在风险识别的基础上对项目管理过程中可能出现的任何事件所带来的后果的分析,以确定该事件发生的概率以及与可能影响项目的潜在的相关后果。风险分析的出发点是揭示所观察到的风险的原因、影响和程度并提出和考察备选方案。要描述并量化一个特定风险及其程度,通常要做某些建模工作。帮助风险分析的建模手段很多,典型的建模方法有:(1)进度网络模型:风险评价审查技术(VERT)或计划评价审查技术(PERT),包括独立的活动网络,用于分析对项目管理过程中某个事件的影响;(2)寿命周期费用(LCC)模型;(3)快速反应速率/定量费用影响模型。前两个模型用于考查进度风险和项目费用风险。当在制订项目开发计划、确定项目过程优先级和维护软件等方面有多种选择供考虑时,可以使用。快速反应模型在项目资金受到挑战时使用,经常发生在预算周期期间。这些挑战大多数发生在项目就要开始之前,因而可能严重影响整个项目的执行。快速反应模型也可用于考查可能存在的费用影响,以确定该项目规划的各种备选方案所需的预算分配。 此外,风险分析还有四个目的:(1)对项目诸风险进行比较和评价,确定它们的先后顺序;(2)从整体出发弄清各风险事件之间确切的因果关系,以便制定出系统的风险管理计划;(3)考虑各种不同风险之间相互转化的条件,研究如何才能化威胁为机会,同时也要注意机会在什么条件下会转化为威胁;(4)进一步量化已识别风险的发生概率和后果,减少风险发生概率和后果估计中的不确定性。风险分析中所使用的主要方法有:概率分布、概率树及外推方法,PERT、GERT,而蒙特卡洛方法是随着计算机的普及日益得到广泛使用的重要方法,使用于问题比较复杂,要求精度较高的场合,特别是对少数几个可行方案实行精选比较时更为重要。掌握上面这些方法,对于提高项目管理人员驾驭风险的能力具有很大作用。六、风险分析和控制1、风险分析软件开发项目风险是指在软件生命周期中所遇到的所有的预算、进度和控制等各方面的问题,以及由这些问题而产生的对软件项目的影响。软件项目风险经常会涉及许多方面,如:缺乏用户的参与,缺少高级管理层的支持,含糊的要求,没有计划和管理等,总体概括下来应该由五大方面。以上所说的各类风险都是项目成败的巨大隐患,它们对软件开发项目的成败有多大影响,我们可以利用风险分析工具,对以上各类风险进行分析,并加以控制和管理,将风险将到最低。常用方法有风险条目检查表,它是利用一组提问来帮助项目风险管理者了解在项目和技术方面有哪些风险。在风险条目检查表中,列出了所有可能的与每一个风险因素有关的提问,使得风险管理者集中来识别常见的、已知的和可预测的风险,如产品规模风险、依赖性风险、需求风险、管理风险及技术风险等。 风险条目检查表可以不同的方式组织,通过假设分析、成本效益分析、风险剖面分析、判定树等,给出这些提问确定的回答,就可以帮助项目管理人员估算风险的影响。另外,我们可以依据风险条目检查表,让项目管理和实施人员能很直观的看到在项目开发个阶段的风险存在状况和各风险的大小,并采取相应措施。从风险发生的概率来看,需求风险和管理风险对项目成败影响最大,当一个软件项目开发团队接手项目后,都是按照习惯性的方式来开发软件。需求风险意识比较淡薄,软件需求分析阶段的完成的不够细致,忽略和很多软件开发必要的内容。在整个软件开发过程中需求分析阶段的风险控制尤为重要,如果控制不好,对软件开发项目影响巨大,甚至是失败。管理风险实际上是项目开发管理层,对项目开发的风险的意识反映。2、风险识别风险识别是指确定哪些可能导致费用超支、进度推迟或性能降低的潜在问题,并定性分析其后果。在这一步须作的工作是分析系统的技术薄弱环节及不确定性较大之处,得出系统的风险源,并将这些风险源组合成一格式文件供以后的分析参考。它属于定性分析的范围。风险评估是指对潜在问题可能导致的风险及其后果实行量化,并确定其严重程度。这其中可能牵涉到多种模型的综合应用,最后得到系统风险的综合印象。而风险管理则是指在风险识别及风险分析的基础上采取各种措施来减小风险及对风险实施监控。这也可以说是风险分析的最终目的。3、风险控制风险控制是指利用某些技术,如原型化、软件自动化、软件心理学、可靠性工程学以及某些项目管理方法等设法避开或转移风险。我们前面对项目风险所做的一切研究,目的就在于实现良好的风险控制。在结合实际项目管理经验的基础上,我们建议使用以下风险控制步骤:(1)与现在在职的项目成员协商,确定人员流动的原因;(2)在项目开始前,把缓解这些原因(避开风险)的工

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论