




已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
分类号_ 密级_ UDC _ 学号 2011000* 毕业设计(论文)论文题目软件项目风险管理thesis Topicsoftware project risk management学生姓名王杰学 号2011000*所 在 院 系经济管理学院管理系专 业 班 级导师姓名职称杨* 教授完成日期2015年 6月 1日2015年6月1日 编号: _ 毕业设计(论文)答辩许可证经济管理学院 管理 系 物流管理 专业 学生 所编写的毕业设计(论文) 页,字数 ,符合毕业设计(论文)大纲的要求。经审查:该生已学完教学计划规定的全部课程,成绩合格,毕业设计电子文档最后一稿已交,准予参加毕业设计(论文)答辩。相 关 材 料材 料 名 称数量毕业设计(论文)1册毕业论文缩写1册实习日记1册答辩汇报稿1份毕业设计(论文)电子版(最后一稿磁盘文件)1套指 导 教 师: (签名)院长(系主任): (签名) 2011 年 6 月 10 日毕业设计(论文)任务书毕业设计(论文)题目;软件项目风险管理毕业设计(论文)要求及原始数据(资料):1.完成20篇以上资料的收集与阅读,且有读书笔记,并经指导教师审查核实。2初步拟题,大致确定自己写哪些方面的内容,可以是与自己实习单位有关的问题也可以是自己感兴趣的问题。3对所收集资料进行分类,将初始内容归为一类;对问题有进一步深入研究内容归为一类;将问题和对策文章归为一类。4对分类文章全面泛读,尽快了解该课题的总体情况、主要观点并选出最具代表性的文章进行“精读”,读后及时做好摘要与笔记。5将资料再次按照理论、观点、研究方法、研究思路进行分类。6通过收集和阅读资料,对问题轮廓逐步清晰,其研究对象的历史、现状、问题、以及问题产生原因,前人有何对策,自己又有什么不同见解等都已如数家珍,在此基础上进一步确定确切的题目。7在对材料作了分析之后,把那些更有价值的材料挑出来,并据此提炼出自己的观点。筛选材料的过程,也就是对大量材料进行由表及里、由此及彼、去伪存真、去粗取精的研究、分析、提炼、加工过程,在对材料作了认真研究后,就逐步形成了很多观点。经过取舍之后,就可逐步决定保留那些可以说明论点的佐证材料。但这些论点、材料还是混乱的,就像个个零件,他们需要组装起来,才能构成有机整体,这就要拟定提纲。一般思路是:提出问题、分析问题、解决问题。8撰写初稿要有两个部分即:绪论、本论。绪论要简明扼要地向读者交待为什么研究该论题;解释研究、探讨这一论题的历史或现实意义。本论部分,作者必须根据论题的性质,详细的论证新发现、新思想。 9论文缩写要求学生将专题部分的内容所写成字数4000字左右的短文,要求不得断章取义而用综合和概括的方法完成。毕业设计(论文)主要内容:1、本文综述了软件项目风险管理的内容,说明了软件项目风险管理在软件项目管理工作中的中的重要作用,以及软件项目风险管理的特点;2、描述了国内外软件项目风险管理的研究现状,并结合作者自身项目经验讲述了项目中遇到的一些风险管理问题;3、讲述了几个典型的软件项目风险管理模型,简单列举和阐述了风险管理各环节的工作重点和常用的工作方法;4、结合自身经验讨论了软件项目开发过程中各阶段可能会遇到的风险问题,各个风险可能带来的项目问题,分析了这些风险产生的原因,并给出了应对各种风险的有效防范措施,力求引起项目管理者和项目实施者在项目过程中关注风险管理,关注风险带来的影响并及时加以控制。学生应交出的设计文件(论文):1.毕业设计(论文) 1册2.毕业论文缩写 1册3.实习日记 1册4.答辩汇报稿 1份5.毕业(设计)论文全部电子文档(最后一稿) 主要参考文献:1 李丽工程项目全面风险管理的理论与方法研究J北京工业大学硕士学位论文2 朱少民,韩莹 .软件项目管理M. 人民邮电出版社3 卢有杰项目风险管理M北京:清华大学出版社4 方德英IT项目风险管理理论体系构建J合肥工业大学学报(自然科学版)5 赵冬梅软件项目的模糊风险评估及风险控制J河北省科学院学报6 Jack Gido,James PClementsSuccessful Project Management,2nd edition张金成译机械工业出版社,20047 Bedard J C,Hoitash R,et al.The development of the enterprise risk management theoryJ.Contemporary Accounting Research, 2014.30(4):64-95.专业班级工程管理 班学生姓名: 王*要求设计(论文)工起止日期:2015年3月 1 日2015年6月5日指导教师签字:日 期:教研室主任审查签字:日 期:系主任批准签字:日 期:软件项目风险管理王*(经济管理学院管理系 工程管理xxx班 山西省太原市 030024)【摘要】随着我国互联网产业的迅速崛起和发展,以及互联网已成为我们生活中必不可少的一部分,各行业都将目光投向了互联网。从衣食住行,到休闲娱乐、银行金融产业,几乎每个行业都在努力将自家产业搬到互联网这样一个大平台上。在这样的环境下,大小互联网软件公司都在埋头开发,很多大的传统公司也组建自己的软件部门。然而大量软件产品设计开发的质量参差不齐,管理机制模糊不清,导致很多软件从上线开始就没有实际用户,更多的是半途夭折。本文着眼软件项目设计开发过程中的风险管理,介绍风险的成因、风险管理的特点,探讨各阶段风险的识别和应对方法,力求提高人们对软件项目管理中风险管理的认识,意识到风险管理在项目管理中的决定性作用。【关键字】软件项目管理;风险管理; 项目风险; 风险控制The risk management of Software project Wang Jie( College of Economy &Management, Management System, EngineeringManagement Professional ,Class xxxx,Shanxi Province,Taiyuan,030024)Abstract:With the rapid development of Internet industry in China, and the Internet has become an indispensable part of our life, every industry come to look to the Internet. From the basic necessities of life like food and clothing, to the leisure entertainment, banking and finance industry, almost every industry is trying to own such a huge platform industry moved to the Internet. In such an environment, whether famous or small Internet software companies are in their software development, many large traditional companies also formed their own software division. However, a large number of software product design and development of variable quality, management mechanism is ambiguous, lead to a lot of software product which has no real users when it become a product, is more of coming to a premature end. This paper focus on the software project risk management in the process of design and development, introduce the characteristics of the cause of risk, risk management, discusses the stages of risk identification and response method, makes every effort to enhance people awareness of risk management in software project management, realize the decisive role of risk management in project management.Keywords:software project management; risk management; Project risk; Risk control目 录开题报告- 1 -一、选题背景及选题的研究意义- 2 -(一)选题背景- 2 -(二)研究意义- 3 -二、国内外研究动态- 4 -(一)国内外发展的历史及现状- 4 -(二) 前沿发展情况- 4 -三、论文研究的基本内容和研究方法- 5 -(一)论文基本内容和提纲- 5 -(二)研究方法和步骤- 6 -四、预计创新点或有见解的工作- 7 -五、论文完成的计划与进度安排- 7 -六、 参考文献- 8 -论文正文- 9 -一、软件项目风险管理介绍- 10 -(一)软件项目风险管理的工作内容- 10 -(二)风险存在的普遍性和不可避免性- 10 -(二) 软件项目风险的分类- 11 -二、风险管理的工作流程及各阶段工作方法- 12 -(一)应对风险的策略- 12 -(二)风险管理工作流程- 12 -(三)风险管理各阶段的工作方法- 13 -三、常见软件项目风险管理模型- 15 -(一)Boehm模型- 15 -(二) CMU/SEI模型- 16 -(三) MSF风险管理模型- 16 -四、常见风险分析及风险控制方法- 17 -(一)需求风险- 17 -(二) 人员组织、配置风险- 18 -(三) 经济风险- 18 -(四) 项目进度及时间风险- 18 -(五) 技术风险- 19 -(六) 产品质量风险- 20 -(7) 市场风险- 21 -参考文献- 21 -核心参考文献原文- 23 -致谢- 33 -开题报告一、选题背景及选题的研究意义(一)选题背景从1969年互联网的雏形从美国ARPA制定的协议下诞生,经历短短的不到半个世纪的发展,互联网已经成为当今社会不可缺少的一部分,互联网在今天人们日常生活中的作用和不可或缺性已不言而喻。试想如果一天没有网络,试想你的手机一天联不上网,你今天一天的心情会是怎么样的!这也从一个侧面说明今天的生活已经离不开互联网了。随着互联网的迅猛发展,人们对互联网的应用需求极大增长,我国互联网软件产业进入一个黄金发展时期。根据软件和信息技术服务业“十二五”发展规划提出,到2015 年,我国软件行业的业务收入突破4 万亿元,占信息产业比重达到25%,年均增长24.5%以上,软件出口达到600 亿美元。信息技术服务收入超过2.5 万亿元,占软件和信息技术服务业总收入比重超过60%。可以预计,“十二五”期间我国软件产业的业务收入规模和增速都将继续呈现逐年上升的态势。软件行业的发展水平和技术创新能力成为衡量一个国家经济和科技发展水平的重要标志,成为各行业技术进步和提高效率的重要手段,成为提高社会各领域信息化水平的重要支撑。软件产业的发展直接关系到国家的经济繁荣、社会进步和国防安全。软件产业的快速发展对保持经济稳定、持续发展起到了关键作用。“百年大计,质量第一”,提高我国软件管理水平,提升软件产品质量,是我国软件产业健康快速发展的基本保障。然而相对于美国、印度的软件产业来说,我国的软件产业生产效率低,并且产品质量参差不齐,虽然不乏一些优秀的产品,但是软件行业整体的表现并不尽如人意。在快速发展的同时,很多软件企业开始片面追求软件产量,导致产品质量难以保证;为了尽快产出,在未做好各项调查和风险预估的前提下就开始投入开发,导致很多产品还未上市就过早夭折,有的虽然上市,但质量缺点或者没有吸引力而成为“僵尸软件”。软件项目管理和其他的项目管理相比有相当的特殊性。首先,软件是纯知识产品,其开发进度和质量很难估计和度量,生产效率也难以预测和保证。其次,软件系统的复杂性也导致了开发过程中各种风险的难以预见和控制。Windows这样的操作系统有1500万行以上的代码,同时有数千个程序员在进行开发,项目经理都有上百个。这样庞大的系统如果没有很好的管理,其软件质量是难以想象的。在这样的情况下,形成一套完善的、成熟的软件项目管理体系便成为保证我国软件产业健康、持续发展的唯一途径。而且随着产品规模的不断扩大,研究深度的不断拓展,当今的软件开发已经有当初的小打小闹变为一个团队的合作开发,而在团队开发中,对项目的管理就显得更为重要和紧迫,而在对项目进行有效管理的同时,各方面的风险控制便成为管理工作中的核心目标。(二)研究意义为使软件项目开发获得成功,关键问题是必须对软件项目的工作范围、可能风险、需要资源(人、硬件/软件)、要实现的任务、经历的里程碑、花费工作量(成本)、进度安排等做到心中有数。 这种管理在技术工作开始之前就应开始,在软件从概念到实现的过程中继续进行,当软件工程过程最后结束时才终止。软件项目风险管理的根本目的是为了让软件项目尤其是大型项目的整个软件生命周期(从分析、设计、编码到测试、维护全过程)都能在管理者的控制之下,以预定成本按期,按质的完成软件交付用户使用。而研究软件项目管理为了从已有的成功或失败的案例中总结出能够指导今后开发的通用原则,方法,同时避免前人的失误。采用一套完善的项目管理体系,不仅能提高软件项目的开发效率,保证产品质量,降低开发者的工作难度,降低项目失败风险,有效节约成本,并为产品上线运行后期的维护留下有据可查的书面资料,从而降低维护成本,延长产品的生命线,使产品创造更大的价值;从更深远的来看,还能够促进我国软件产业的健康快速发展,从而从软实力上为国家各行业的发展奠定基础。二、国内外研究动态(一)国内外发展的历史及现状管理学是一门古老而常新的学科,可以和任何一门学科结合产生一门新的学科。各项活动用管理学的原理和方法来统筹规划就产生了本学科的管理学。软件项目管理的提出是在20世纪70年代中期的美国,当时美国国防部专门研究了软件开发不能按时提交,预算超支和质量达不到用户要求的原因,结果发现70%的项目是因为管理不善引起的,而非技术原因。于是软件开发者开始逐渐重视起软件开发中的各项管理。到了20世纪90年代中期,软件研发项目管理不善的问题仍然存在。据美国软件工程实施现状的调查,软件研发的情况仍然很难预测,大约只有10%的项目能够在预定的费用和进度下交付。剩下的90%的项目未能在期限内交付的项目,归根结底,还是在开发过程中没有有效预见和控制各项风险所致。软件项目管理也成为一门正式的学科,不断有人探索并做出了优秀的贡献。从最初的只注重人员管理、代码管理,到现在一整套的管理体系,软件项目管理也在不断完善和发展。随着软件开发的深入、各种技术的不断创新以及软件产业的形成,人们越来越意识到软件开发过程中项目管理的重要性,管理学的思想和软件开发技术的不断融合,应用开发的项目管理日益受到重视。在美国、印度这些软件产业发达的国家,一个正规的互联网软件公司都有自己一套完整的项目管理体系。从软件需求分析的需求管理、人员配置管理、开发进度管理、质量管理、风险管理到最后的可维护性管理,每个体系都有自己的管理标准,如质量管理标准SQA,软件配置管理SCM,软件成熟度CMM等。在我国软件产业快速发展的过程中,随着经验的不断积累,我们也在引进外国的先进技术经验,借鉴其完善的体系标准,并结合自己的需求,制定出我国的管理标准体系。一些大的网络公司如华为的项目管理体系等。(2) 前沿发展情况软件项目风险管理的内容主要包括如下几个方面:人员的组织与管理,软件度量,软件项目风险计划,风险管理,软件质量保证,软件过程能力评估,软件配置管理等。各方面都有自己的管理标准。软件质量管理有成熟的标准如ISO9001、9000-3,软件能力成熟度模型CMM(Capbility Maturity Model);软件风险管理Boehm模型、CRM模型(不断地评估可能造成恶劣后果的因素;决定最迫切需要处理的风险;实现控制风险的策略;评测并确保风险策略实施的有效性)、Leavitt模型(将软件开发风险分为4部分:任务、结构、角色和技术)等。随着软件项目规模的日益复杂和庞大,软件的开发与管理也日益复杂,软件的风险也随之增大。尤其是在进行大型的软件项目开发中,往往需要采用许多新的、复杂的技术,投入巨额的资金,组织庞大的研制队伍,以及持续相当长的研制时间。这些都会带来种种难以预见的不确定性因素,造成失败的风险。软件风险管理正日益受到人们的重视,成为软件工程领域内保证软件质量必不可少的关键过程之一。大量的统计资料表明,目前风险管理被认为是IT软件项目中减少失败的一种重要手段。在项目研制的可行性分析和方案认证时,加强方案风险分析十分必要。能预见可能影响软件项目进度或正开发软件产品质量的风险,并采取行动避免这些风险,是软件项目管理者的一项重要任务。本文就以我的亲身项目经历,总结走过的坎坷和泥泞得出的一些经验和心得,就软件项目管理中的风险管理作较为深入分析和探讨。三、论文研究的基本内容和研究方法(一)论文基本内容和提纲本课题结合自身项目经验,总结项目过程中遇到的一些问题,这些问题应该每个新的项目组都会或多或少地遇到。经过查阅相关资料并结合新的反思整理而成,着重讨论软件项目管理中的“项目风险管理”模块。论文提纲如下:1. 绪论1.1选题背景1.2选题研究的目的及意义2. 软件项目风险管理介绍2.1项目风险管理的工作内容2.2风险存在的普遍性和不可避免性2.3软件项目风险的分类3. 风险管理的工作流程及各阶段工作方法4. 常见软件项目风险管理模型4.1 Boehm模型4.2 CMU/SEI模型4.3 MSF风险管理模型5. 常见风险分析及风险控制方法5.1需求风险5.2人员配置风险5.3经济风险5.4项目进度及时间风险5.5产品质量风险5.6技术风险(二)研究方法和步骤1、研究步骤(1)查阅相关文献了解此题目所包含的内容及要求;(2)利用远程接入校园网,登录学校图书馆系统,查阅相关文献、图书资料,丰富知识库;(3)结合项目经历总结经验,记录心得,为论文撰写积累素材;(4)综合查阅资料和心得体会撰写论文。2、研究方法(1)查阅相关文献,从中学习和获取完成毕设所需的知识和内容,从而形成理论概念;(2)总结工作经验和工作心得,完成经验积累;(3)每周向老师汇报毕设进度与成果,同时积极与老师交流,从而可以得到老师的指导和建议,解决一些特殊的问题。四、预计创新点或有见解的工作本课题选择软件项目管理庞大体系中的一个分支软件项目风险管理为话题展开讨论,将目光聚焦到一个工作面上的一个具体工作环节,并就此环节中的工作在不同情景下加以分析。不同不同于其他论文,选择面宽泛,讨论问题不够细节化,论点论据不够有针对性。本论文论点论据有据可查,并结合作者毕业实习在工商银行浙江省分行项目组的亲身经历,亲身参与项目开发,每天记录晨会内容,总结项目经验,记录心得体会整理而成。不同于一些作者只是看了一些书,了解一些理论,只是懂得一些管理模型或者简单了解一些项目开发流程就开始大发议论,讨论一些管理理论。管理不光光是理论,更要经过长期的管理与被管理经验慢慢摸索出来的。虽然本作者并非经验丰富之人,但都是一些实际经验结合理论的产物。五、论文完成的计划与进度安排日 期周次(数)内 容2015.03.02-2015.03.301-4(4)毕业实习与撰写实习报告2015.03.31-2015.04.075(1)初步拟题与文献检索2015.04.08-2015.04.226-7(2)文献阅读与撰写开题报告2015.04.23-2015.04.308(1)论文题目与提纲拟定2015.05.01-2015.05.159-10(2)拟定论文初稿2015.05.16-2015.05.2311(1)修改定稿2015.05.24-2015.05.3112(1)排版打印装订2015.06.01-2015.06.0813(1)毕业答辩准备2015.06.09-2015.06.1614(1)毕业答辩和成绩评定6、 参考文献1 李丽工程项目全面风险管理的理论与方法研究J北京工业大学硕士学位论文2 朱少民,韩莹 .软件项目管理M. 人民邮电出版社3 卢有杰项目风险管理M北京:清华大学出版社4 方德英IT项目风险管理理论体系构建J合肥工业大学学报(自然科学版)5 赵冬梅软件项目的模糊风险评估及风险控制J河北省科学院学报6 Jack Gido,James PClementsSuccessful Project Management,2nd edition张金成译机械工业出版社,20047 Bedard J C,Hoitash R,et al.The development of the enterprise risk management theoryJ.Contemporary Accounting Research, 2014.30(4):64-95.论文正文一、软件项目风险管理介绍(一)软件项目风险管理的工作内容软件项目风险,顾名思义,就是指在软件开发和日常使用维护过程中遇到的各种不利因素,包括开支预算、项目进度、产品性能、客户偏好等问题以及这些问题对软件项目在实施过程中造成的负面影响。传统的软件项目风险管理就是要对开发过程中遇到的以及可能遇到的一系列问题进行管理从软件需求分析、概要设计、详细设计、编码、测试、上线这一过程中可能产生的风险进行判断、识别和防范,从而更好地保证项目按时、保质完成,减少项目延期、超预算甚至是失败的几率。在传统的软件项目风险管理工作中,只注重开发过程而不是软件整个生命周期的风险控制,忽略了运行维护期的风险,而在软件生命周期(图1-1软件生命周期)中,设计、测试占20%,运行维护占到60%,开发时间只有20%,更长的时间是在运行和维护。所以软件项目风险管理工作绝对不应该缺少对软件在运行维护期的风险管理。更全面的表述,软件项目风险管理就是要对开发过程中遇到的以及可能遇到的一系列问题进行管理从软件需求分析、概要设计、详细设计、编码、测试、上线、软件运行维护直到废弃或被新版本替代这一过程中可能产生的风险进行预估、判断、识别和防范,从而更好地保证项目开发时能按时、保质完成,减少项目延期、超预算甚至是失败的几率,使得软件在运行维护时更少的大幅度修改几率,软件健壮性、稳定性更强,使得软件产品的服务时间更长、效益更大的一系列过程。图1-1 软件生命周期(不代表时间维度)(二)风险存在的普遍性和不可避免性首先,软件项目是一个知识性、逻辑性的产品,要解决一个企业级应用,需要考虑的各种情况是很难精确统计的,即使再优秀的的软件架构师、设计师也不可能完全考虑到各种情况,使得软件在实际应用中难免会出现不同的问题。再者,风险管理的工作对象是风险,即面向未来的、未发生的问题进行管理和控制,也就是说,风险的不确定性取决于选择的后果所带来的影响,以及选择本身所包含的不确定性,在软件开发过程中以及软件产品定型时都要面临各种决策。另一方面,风险也涉及地点、个人观念、社会意识、行为能力等多种因素的改变。综上所述,对于一个软件项目来说,风险总是普遍存在,并且是难以避免的。所以要保证一个软件项目能够成功,对于软件生命周期中每个环节的风险控制和管理就显得极为重要,要对每一个可能存在的风险有一定的认识并能预见到它可能给以后工作带来的影响并加以有效控制,否则可能带来灾难性的后果。(2) 软件项目风险的分类软件项目是一种知识性、逻辑性性的特殊项目,但脱离不开传统项目的本质,所以软件项目的风险也是从预算、进度、质量、变更四大方面进行考虑。按照不同的参考标准,软件项目风险可以进行不同的类型划分。1、按照风险预见和识别的难度可以分为:(1)已知风险,是指在对项目计划、市场环境、技术环境、人员配置、软硬件支持,以及其它可靠的信息源(如:合同中不现实的交付时间、出现没有需求或需求不明确甚至需求前后矛盾的情况、软件范围的文档定义不足、软硬件支持极度不足、恶劣的开发环境)进行细致的评估之后可以发现的那些风险;(2)可预测风险,可以从过去众多的项目经验中推测出来的风险(如:项目组成员调整;与客户之间沟通无法有效进行;由于维护工作的需要进行人员调配,而使一部分开发人员承担维护工作导致精力分散);(3)无法预测的风险,是指可能发生、也许会真的会出现并且出现几率有大有小的风险,但很难在风险出现之前识别出它们来。2、按照风险产生的不同情况可以分为如下类别:(1)需求风险,是指在项目需求分析阶段由于各种原因,产品需求不明确导致的风险。需求风险是在需求分析是就埋下导火线,在各种风险危害中的影响最为严重;(2)人员组织、配置风险,是指项目组各岗位的人员配置、工作者办公用品配置导致的风险;(3)经济风险,是指项目预算中存在的风险;(4)进度、时间风险,是指项目制定项目进度报表、各阶段工作的时间安排中存在的风险;(5)技术风险,是指实现产品所采用技术时存在的风险;,(6)产品质量风险,顾名思义,就是产品质量方面存在的风险;(7)市场风险,是指由于市场形势变化的原因导致软件项目变更的风险。二、风险管理的工作流程及各阶段工作方法(一)应对风险的策略被动风险策略即对风险有一定了解,项目进程中以风险来监督项目开发,但不采取措施进行防范和规避,直到这些风险真正显现出来时,才会拨出人力、物力资源来处理它们。然而更普遍的是,软件项目组包括管理层和实施人员对存在的风险充耳不闻,直到发生了错误才如梦初醒,开始采取行动,试图迅速而果断地纠正错误。这种风险管理模式就是所谓的“救火模式”。但是在“救火模式”下,一旦补救努力失败或者是补救措施效果不够明显,项目往往也就处在真正的危机之中而无法挽救了。因为之前没有一个预防的措施和心里准备,所以往往是无法有效解决出现的问题。 相对于被动风险策略来讲,软件项目风险管理的一个更明智、更高效是主动式的风险策略。主动策略早在技术工作、软件编码开始之前就已经启动收集和辨识潜在风险,评估它们的出现概率及产生的影响,赋予不同的权重,然后按重要性排序,最终以一系列风险应对计划的形式来管理和跟踪风险。主动策略风险管理的主要目标是预见风险并加以针对性的防范措施。但是,因为不是所有的风险都能够提前预见如无法预见的风险。所以,主动风险策略要求必须成立一个专门应付意外事件的计划,并要求在必要时能够以及时的、可控的、有效的方式作出反应。(二)风险管理工作流程软件项目风险管理工作流程包括风险识别、风险量化(风险等级划分)、指定风险应对计划、风险监控4个环节。图2-1 软件项目风险管理过程(1)风险识别风险识别是风险管理的第一步即对风险进行辨识,也是风险管理的基础。只有在对项目所面临的风险有了正确的认识和评估,项目策划和实施者才能够选择适当有效的方法进行风险应对。风险识别工作包括在软件项目实施各阶段工作中对可能存在的风险进行预估、风险挖掘、收集和识别,尽可能多的找出风险,做到心中有数。(2)风险量化风险量化是对前一阶段工作识别出来的风险根据发生几率、发生后造成影响的严重程度、风险解决的迫切性进行评估,为每个风险划分一个等级,即解决的重要性。通过风险及风险的相互作用的估算来评价项目可能结果的范围。风险量化的基本内容是在众多风险中确定哪些风险需要制定实际的应对措施。风险量化不仅涉及到对风险自身进行评估,也涉及到对不同风险之间相互作用的评估,用这个评估结果来分析和预测项目模块可能的输出结果并加以记录整理。因此首要任务就是决定哪些风险值得反应,这就是风险量化的根本目的。(3)指定风险应对计划,是对不同风险制定相应的解决处理办法。(4)风险监控风险监控是指获取反馈信息进行分析,作为以后的风险参照以便在将来的决策制定时更符合实际。在风险监控过程中,要及时发现那些新出现的风险、以及随着时间推移而发生变化的风险。对心得风险动态进行收集和及时反馈,并根据新阶段各风险对项目实施的影响程度,重新进行风险识别、影响评估、指定应对计划和进行风险跟踪。(三)风险管理各阶段的工作方法风险管理各环节工作内容不同,工作成果也必然不同,如下图2-2 风险管理阶段工作产出图:图2-2 风险管理阶段工作产出1、风险识别的工作方法(1)头脑风暴法召集所有的需求分析师、客户代表、开发人员、测试人员等在充分了解项目内容后进行一场头脑风暴式的问题发现会,每个人不论职位进行发散性的思考,提出各种可能产生问题的情景,收集提出的问题进行分析识别;(2)流程分析法对照各模块的流程图,对照每一个输入值、输出值进行比较,对每一阶段和环节进行逐一审查和分析,找出并记录可能存在的风险,并分析每个风险可能波及额范围。(3)风险专家列举法由风险管理人员、客户代表、需求分析师、业务员对该项目中可能面临的风险逐一列出,并根据项目内拟定的分类标准进行分类。因为这些人员工作在项目一线,所涉及的知识面必然更加广泛,发现的风险也有一定的代表性。还有一些风险识别的方法,如失误树分析法、分解分析法、等等。2、风险量化的工作方法风险量化要对列举出来都风险逐一审查,赋予他们各自的发生概率、影响等级、发生后变更产生的影响、此风险发生对其他风险的影响系数,结合项目特点赋予不同的权重,然后排出一个由高到低的风险列表。3、指定风险应对计划(1)规避。规避风险是指,采用改变项目管理计划的手段来避免有害风险造成的危害,使项目在进行过程中避开风险的影响,例如延长项目进度或减小项目范围等。对于那些在项目实施初期出现的风险,可以通过与客户重新审查需求、重新从客户处取得可靠信息、改善与客户的沟通途径或获取专门避险技术来进行风险规避。(2)转移。风险转移是指将风险可能产生的消极影响连同应对的权益一同转移至第三方。从本质上讲,这种风险转移措施只是单纯地把风险管理的责任转嫁给了另外一方,而并非将风险消除或消灭。(3)减轻。风险减轻是指,将不利风险事件的发生概率、发生后造成的不良影响这两个方面,单独降低或同时降低到能够接受的限度内。在这个过程中所采取的一系列措施,相对于在风险发生后进行亡羊补牢式的补救,显得更为更为有效。如当开发工作后期发现产品与需求有出入然而难以更改时,可和客户商量一个行之有效的方案,使得项目做少量变化,而需求变化一种方式实现,使得双方都能够接受。4、风险监控的工作方法风险监控就是对风险的产生概率、产生后应对情况、风险处理后对新风险在次进行风险管理流程的一个循环过程。三、常见软件项目风险管理模型(一)Boehm模型Boehm模型即Boehm风险管理理论他本人在1991年详细描述了他对于风险管理的一套思想体系,在描述中明确用公式RE=P(UO)*L(UO)对风险进行定义,其中RE表示风险本身(或者风险所带来的影响),P表示不期望出现的事件或结果的发生概率,并将不良后果可能产生破坏的严重程度用L表示。Boehm风险管理理论的核心是维护和更新十大风险列表,这十大风险列表包括人员短缺、不合理的进度安排、不切实际资金预算、不断的或不合理的需求变更、过高的非实质性能要求、接连不断的需求改变、实时性能过低和计算机能力有限等十个风险项。在实际操作时,以大风险列表为依据,总结当前项目具体涉及的风险因素,评估后进行计划和实施。风险会议定期召开,并在下一次会议上再对这十大风险因素的解决情况、为解决原因进行分析和总结,最后产生一个迭代后新版本的十大风险因素表,再次进行此工作的循环。Boehm的风险管理理论在风险管理步骤上基本遵循了传统的项目风险管理理论,指出风险评估、风险控制是风险管理的两大根本工作面。其中,风险评估分为辨识、分析、设置权重三个子步骤,风险控制则分为制定风险应对计划、风险应对和风险跟踪风险三个子步骤。Boehm的十大风险列表的思想要求在软件项目开始时归纳出现在项目的十大风险列表,将定期召开的对列表进行总结、评比、更新再循环的会议贯穿到软将项目生命周期的整个过程之中。这样可以将管理层的注意力有效地集中在那些风险高、权重大、严重影响项目最终是否能够成功的关键因素上,提高工作效率;而有意忽略众多的低优先级的细节问题,避免浪费大量精力做无用功。虽然这个列表有一定的普遍性和实际性,对风险管理工作有实际的指导意义,但也存在很明显的不足Boehm没有明确地说明在他的风险管理模型实施中,到底需要捕获哪些软件风险的哪些特殊方面,因为多个风险因素之间必然会彼此影响,并且前期罗列的风险因素会随着多个风险管理方法的采用而不断变动。(2) CMU/SEI模型SEI(Software Engineering Institution)是世界上软件管理领域的名牌组织,SEI旨在改善软件工程管理实践过程,其中在软件项目风险管理领域,持续投入了大量的研究,并提出了Continuous Risk Management可持续风险管理管理,即CRM模型。持续风险管理管理CRM模型的原则是:随着软件实施过程不断地评估可能带来恶劣影响的因素,在不同实施阶段决定当前最迫切需要处理的风险,采用风险控制策略应对风险,反馈和评价策略效果并确保风险策略实施的有效性和无副作用性。SEI的可持续风险管理管理理论要求在软件项目生命周期中,每个迭代的每个实施阶段都要关注风险识别和管理,并将风险管理划分为风险识别、风险分析和量化、制定应对计划、风险跟踪和风险控制五个步骤,强调了这是一个在项目开发过程中不断迭代的过程,是一个需要持续反复进行的活动序列,每个风险因素一般都需要按顺序经过风险的识别、分析、量化、应对、跟踪这一系列活动。但是在迭代的过程中,对不同风险因素、同一因素的不同活动是可以并发或者交替进行的。(3) MSF风险管理模型MSF模型是微软提出的一个软件项目开发风险控制模型(如下图3-1),该模型将风险控制划分为风险识别、风险分析和分级、制定应对计划和调度、风险跟踪和报告、控制和总结学习六个步骤。MSF模型继承自CRM持续风险控制模型,但在风险监控之后添加了一个步骤“风险学习”,风险学习使知识积累和相应项目案例及工具正式化,并在团队和企业内部建立一个只是库,以不断更新、积累、可再度使用的形式来获取知识和传播知识,创造了一个知识良性循环并不断深入探索。图3-1 MSF风险管理模型四、常见风险分析及风险控制方法(一)需求风险软件项目是一个典型的需求驱动开发的例子,开发人员根据需求进行产品开发。然而有一句话说得好隔行如隔山,当一个没有计算机背景的客户和计算机开发者之间商讨需求其实存在很多“代沟”。有些东西没有行业只是是很难理解对方想要表达的确切意思,造成双方理解有误差,是很多变更产生的根本原因。还有很多原因比如:需求已经成为当前项目开发的基准,但仍然不断提出需求变更的要求;在需求讨论、评审和定型的过程中客户的参与度不够使需求部分缺失;客户由于部分需求改变,需要要添加额外的功能;对于产品功能定义不明确的部分,在开发过程中处理时消耗的时间比预期需要更多;由于环境的变化某些模块不得不进行变更处理;在需求更改时缺少行之有效的变更管理过程等等。控制需求风险的有效方法有:(1) 组成专门的需求小组与客户进行详细的需求商讨,并记录需求商讨的结果形成需求研究表,在需求完成后要双方签字确认,以避免大的改动造成双方相互推卸责任;(2) 要求客户派业务代表进驻开发团队,在开发人员开发式不断纠正理解误差;(3) 双方达成需求变更范围意见,允许小范围内改动,但避免大幅度更改需求,减少给后期开发带来的难度和时间消耗。(2) 人员组织、配置风险作为软件行业绝对生产力的开发工程师在软件项目成败中起决定性作用,人员组织的风险管理也不得不提上章程。软件项目的知识性、逻辑思维性导致每个人独一无二的思维方式、编码方式是其他人要花费大量时间来理解和适应的,所以在开发过程中的人员变动常常会导致项目延期。还有比如开发人员和管理层之间关系不佳,导致决策缓慢或者决策执行力不够,影响项目的实施;管理层缺乏对项目组成员的有效激励,导致员工积极性不足,甚至日常的工作效率也受到影响;项目人力短缺后临时加入新成员,需进行工作流程培训、熟悉业务流程、与现有成员进行性格和工作习惯磨合、熟悉办公软硬件配置,从而使在编成员的工作效率受到影响;原成员突发事件不能继续完成工作需要换人等。人员组织的风险防范方法有:(1) 在项目开始前,要对项目时间有一定的预估,在组件项目组时项目经理要做到心中有数;(2) 对组内成员有一定了解,避免有矛盾双方都在一个组,以免影响工作;(3) 对组内成员有一定的激励政策,搞好团队建设的各项活动,不能项目开始后项目经理坐等项目完成交付,而要关心每个职员的心态,避免组员离职造成项目损失。硬件配置作为基础设施是必不可少的,这些设备是不能代替的。笔者亲身体验过硬件不足带来的严重后果。由于银行的特殊规定,不提供Android手机作为测试设备,所以在开发中一直是模拟器测试,等到测试团队开始真机测试时出现很多意想不到的情况,导致很多工作需要重新修改,浪费了大量的时间。(3) 经济风险经济永远是至关重要的因素,一个项目经理一定要对项目的工作量、工作范围有足够的认识和估计,结合开发成员的工作效率、所需开发设备和测试设备,办公用品消耗等预估项目成本,不然等到经费紧张时项目就岌岌可危了。(4) 项目进度及时间风险项目进度及时间风险是指由于各种原因导致的项目进展比进度安排延后,不能按时完成工作的风险。进度风险控制是项目风险控制中最困难的环节。项目进度是项目经理对项目任务量、员工工作效率,并按照以往经验制定的,然而项目新项目可能会遭遇各种各样的难题,有时候是技术难关,有时候是外部原因导致,比如过多开会占用工作时间等。进度风险往往会导致不能按时完成合同,是软件项目经常遇到的问题。常见的导致项目进度风险的原因有:项目进度安排不合理,导致无法在进度安排时间内完成相应的工作;大量的书面工作如工作日报、开发日志等导致项目进度比预期的慢;前期的产品质量差,导致后期的工作同时要修改前期遗留的问题;缺乏对软件开发策略和标准的遵循,导致沟通不足,质量无法保证,甚至需重新开发;或者是教条地坚持软件开发策略和标准,没有因地制宜地开展工作;开发人员需要按时向管理层提交过于繁杂的书面报告,占用大量的开发时间从而影响项目进度的完成;风险管理者没有做足工作,导致重大的项目风险未能及时发现,从而给后期工作带来大量遗留问题。预防项目进度和时间风险的办法主要有:(1) 项目组分阶段地将产品交付给客户进行审核、增加项目监控的频度、增加客户参与项目的力度、多运用测试驱动开发的方式保证工作质量,从而避免返工;(2) 项目经理在制定进度安排时参考开发人员的建议,相互沟通,并预留合理的工作空档来完成前期可能存在的问题,并指定以后工作的合理安排。(3) 采用合理的项目管理方法,使得工作顺利进行,各项报表正常维护,但又不至于浪费太多时间来完成工作汇报以至于耽误开发工作的正常进行;(4) 采用合理的开发技术,避免由于技术陈旧不能满足要求导致返工,也要避免采用过于新鲜的技术倒是攻克技术难关而延误进度;(5) 适时进行工作总结,回顾已完成工作情况,保证前期工作质量;并将剩余工作进行合理安排,将优先级高的工作优先开发等。(5) 技术风险技术风险是指在产品设计、实现、模块接口、验证和运行维护等方面的可能存在的问题。此外技术选型的不确定性、采
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 可选择性捕捞技术创新创业项目商业计划书
- 农产品智慧物流系统集成创新创业项目商业计划书
- 2025年高邮市市级机关公开遴选考试笔试试题(含答案)
- 自动驾驶路线与导航创新创业项目商业计划书
- 输变电设备基础知识培训课件
- 2025年文化旅游演艺项目策划运营中的跨界合作模式创新报告
- 2025年社区心理健康服务人才培训与推广路径研究报告
- 现代教育学原理课件
- 教师资格证考试(中学科目二)教育知识与能力2025年冲刺专项训练试卷
- 2025年Python二级考试考前冲刺试卷 知识点押题实战
- JG/T 396-2012外墙用非承重纤维增强水泥板
- 预付电费协议书
- 2025年电动港机装卸机械司机(高级技师)职业技能鉴定理论考试题库(含答案)
- 酒吧消防火灾应急预案(3篇)
- 国企物业面试题目及答案
- 医院不良事件上报制度
- 双馈风机送出线路的暂态响应特性及保护适应性分析
- 信息技术(基础模块)课件 第5章-新一代信息技术概述
- “教联体”在家校社协同育人中的实践
- 《居住区景观设计》课件
- 2025年上半年哈尔滨理工大学招考工作人员易考易错模拟试题(共500题)试卷后附参考答案
评论
0/150
提交评论