当前位置:文档之家› 软件工程-风险管理

软件工程-风险管理

软件工程-风险管理
软件工程-风险管理

风险管理

引言

风险是关注未来将要发生的爭情。今天和昨天已不再被关心,如同我们已经在收获由我们过去的行为所播卜的种子。问题是:我们是否能够通过改变我们今天的行为,而为一个不同的、充满希望的、更美好的明天创造机会。其次,这意味着,风险涉及改变,如思想、观念、行为、或地点的改变……第三,风险涉及选择及选择本身所包含的不确定性。因此, 就彖死亡和税收一样,风险是生活中最不确定的元素之一。

当在软件工程领域考虑风险时,Charette的三个概念定义是显而易见的。未来是我们所关心的一一什么样的风险会导致软件项目彻底失败呢?改变也是我们所关心的一一用户需求、开发技术、冃标计算机、以及所有其他与项目相关的因素的改变将会对按时交付和总体成功产生什么影响呢?最后,我们必须抓住选择机会一一我们应该采用什么方法及工典?需要多少人员参与工作?对质量的要求要达到什么程度才是“足够的”?

Peter Drucker [DRU75]曾经说过:“当没有办法消除风险,共至连试图降低该风险也存在疑问时,这些风险就是真正的风险了”。在我们能够标识出软件项目中的“真正风险” Z前,识别出所有对管理者及开发者而言均为明显的风险是很重要的。

1.1被动和主动的风险策略

被动风险策略被戏称为“卬地安那?琼斯学派的风险管理” [TH092] o卬地安那?琼斯在以其名字为影片名的电影中,每当面临无法克服的困难时,总是一成不变地说:“不要担心,我会想出办法來的!”。E卩地安那?琼斯从不担心任何问题,直到它们发生,再做出英雄式的反应。

遗憾的是,一般的软件项目管理者并不是印地安那?琼斯,且软件项目组的成员也不是他的可信赖的伙伴。人多数软件项目组还是仅仅依赖于被动风险策略。被动策略最多不过是£1对町能发生的风险来监督项目,直到它们变成真正的问题时,才会拨出资源来处理它们。更普遍的情况是,软件项冃组对于风险不闻不问,直到发生了错误,这时,项冃组才赶紧采取行动,试图迅速地纠正错误。这常常被称为“救火模式”。当这样的努力失败后,“危机管理” [CHA92]接管一切,这时项目已经处于真正的危机中了。

对于风险管理的一个更聪明的策略是主动式的。主动策略早在技术工作开始之前就己经启动了。标识出潜在的风险,评估它们出现的概率及产生的影响,且按重要性加以排序, 然后,软件项目组建立一个计划來管理风险。主要的目标是预防风险,但因为不是所冇的风险都能够预防,所以,项目组必须建立一个意外〃件的计划,使其在必要时能够以町控的及有效的方式作出反应。在本章其余部分,我们将讨论风险管理的主动策略。

1.2软件风险

虽然对于软件风险的严格定义还存在很多争议,但在风险中包含了两个特性这一点上是己达成了共识的[HIG95]:

?不确定性一一刻划风险的爭件町能发生也可能不发生;即,没有TOO%发生的风险(100%发生的风险是加在项目上的约束)。

?损失一一如果风险变成了现实,就会产生恶性后果或损失。

进行风险分析时,重要的是量化不确定性的程度及与每个风险相关的损失的程度。为了实现这点,必须考虑不同类型的风险。

项目风险威胁到项目计划。也就是说,如果项目风险变成现实,有町能会拖延项目的进度,且增加项目的成本。项目风险是指潜在的预算、进度、人力(工作人员及组织)、资源、客户、及需求等方面的问题以及它们对软件项目的影响。在第5章中,项目复杂性、规模、及结构不确定性也被定义为项目(估算)风险因素。

技术风险威胁到要开发软件的质最及交付时间。如果技术风险变成现实,则开发工作可能变得很困难或根本不町能。技术风险是指潜在的设计、实现、接II、验证、和维护等方面的问题。此外,规约的二义性、技术的不确定性、陈旧的技术、及'‘先进的”技术也是风险因素。技术风险的发生是因为问题比我们所设想的更加难以解决。

商业风险威胁到要开发软件的生存能力。商业风险常常会危害项目或产品。五个主要的商业风险是:(1)开发了一个没有人真正需要的优秀产品或系统(市场风险);(2)开发的产品不再符合公司的整体商业策略(策略风险):(3)建造了一个销售部门不知道如何去卖的产品:(4)由于重点的转移或人员的变动而失去了高级管理层的支持(管理风险): 以及(5)没令得

到预算或人力上的保证(预算风险)。应该注意到的很巫要的一点是:简单的分类并不总是行得通。某些风险根本无法朿先预测。

另一种常用的分类方式是由Charette [CHA89]显出的。己知风险是通过仔细评估项目计划、开发项目的商业及技术环境、以及其他可靠的信息来源(如,不现实的交付时间,没有需求或软件范闱的文档、恶劣的开发环境)之后町以发现的那些风险。町预测风险能够从过去项目的经验中推断出来(如,人员调整、与客户之间无法沟通、由于需要进行维护而使开发人员精力分散)。不可预测风险就象纸牌屮的人王,它们町能、也会真的出现,但很难那先识别出它们来。

1.3识别风险

识别风险是试图系统化地确定对项目计划(估算、进度、资源分配)的威胁。通过识别己知的和町预测的风险,项目管理者已经边出了第一步一一在可能时避免这些风险,且当必要时控制这些风险。

在1. 2节中提出的每一类风险又分为两个不同的类型:一般性风险和特定产品的风险。一般性风险对每一个软件项目而言都是一个潜在的威胁。特定产品的风险只有那些对当前项目的技术、人员、及环境非常了解的人才能识别出来,为了识别特定产品的风险,必须检查项目计划及软件范南说明,并给出以下问题的答案:“本项目中右什么特殊的特性可能会威胁到我们的项目计划?”

一般性风险和特定产品的风险都应该被系统化地标识出来。Tom Gilb [GIL88]很贴切地表达了这点:“如果你不主动攻击风险,风险就会主动攻击你”。

识别风险的一个方法足建立风险条目检杳表。该检査表可以用于识别风险,并使得人们集中来识别下列常见子类型中的已知的及町预测的风险:

?产品规模一一与要建造或要修改的软件的总体规模相关的风险。

?商业影响一一与管理或市场所加诸的约束相关的风险。

?客户特性一一与客户的索质以及开发者和客户定期通借的能力相关的风险。

?过程定义一一与软件过程被定义的程度以及它们被开发组织所遵守的程度相关的风险。

?开发环境一一与用以建造产品的工具的可用性及质最相关的风险。

?建造的技术一一与待开发软件的复杂性及系统所包含技术的“新奇性”相关的风险。

?人员数目及经验一与参与工作的软件工程师的总体技术水平及项目经验相关的风险。

风险条目检査表能够以不同的方式来组织。与上述每个话题相关的问题町以由每一个软件项目来回答。这些问题的答案使得计划者能够估篦风险产生的影响。我们也可以采用另一个不同的风险条目检查表,它仅仅列出与每一个常见子类型有关的待性。瑕后,列出一组“风险元素和驱动因子” [AFC88]以及它们发生的概率。关于性能、支持、成本、及进度的驱动因子将在以后讨论。

1.3. 1产品规模风险

有经验的管理者几乎都对下面的陈述没冇异议:项目风险是直接与产品规模成正比的。卜面的风险检查表中的条目标识了与产品(软件)规模相关的常见风险:

?是否以LOC或FP估算产品的规模?

?对于估算出的产品规模的信任程度如何?

?是否以程序、文件或事务处理的数目来估算产品规模?

?产品规模与以前产品的规模平均值的偏差百分比是多少?

?产品创建或使用的数据库大小如何?

?产品的用户数有多少?

?产品的需求改变多少?交付之前有多少?交付之后有多少?

?复用的软件有多少?

在每i种情况下,待开发产品的信息必须与过去的经验加以比较。如果出现了较人的百分比偏差,或者如果数字相近但过去的结果很不令人满意,则风险较高。

1.3.2商业影响风险

有一个大型软件公司的工程经理在他的墙上挂了一个镜框,上面写着:“上帝给了我头脑使我成为?个优秀的项目管理者,同时每当销售部门设定项目的最后期限时,也让我经历了地狱般的煎熬”。销借部门是受商业驱动的,而商业考虑有时会直接与技术现实发生冲突。下面的风险检査表中的条目标识了与商业影响相关的常见风险:

?本产品对公司的收入有何影响?

?本产品是否得到公司高级管理层的觅视?

?交付期限的合理性如何?

?将会使用本产品的用户数及本产品是否与用户的需要相符合?

?本产品必须能与之互操作的其他产品/系统的数目?

?最终用户的水平如何?

?必须产生并交付给用户的产品文档的量与质如何?

?政府对本产品开发的约束?

?延迟交付所造成的成本消耗是多少?

?产品缺陷所造成的成本消耗是多少?

对于待开发产品的每一个回答都必须与过去的经验加以比较。如果出现了较人的百分比偏差,或者如果数字相近但过去的结果很不令人满意,则风险较高。

1.3.3客户相关的风险

并非所冇客户都是-样的° Pressman和Herren [PRE91 ]亦讨论这个话题时曾经说过:

客户有不同的需要。一些人知道他们需要什么:而另一些人知道他们不需要什么。一些客户希望进行详细讨论,而另一些客户则满足于模糊的承诺。

客户有不同的个性。一些人喜欢享受客户的身份一紧张、谈判、一个好产品带来的心理满足;而另一些人则根本不喜欢作为客户。一些人会高兴地接受几乎任何交付的产品,并能充分

利用一个不好的产品;而另一些人则会对质呈差的产品猱烈抨击。一些人会对质最好的产品表示他们的赞赏:而另一些人则不管怎样都会抱怨不休。

客户和他们的供应商之间也有各种不同的通信方式。一些人非常熟悉产品及生产厂商; 而另一些人则可能素未谋面,仅仅通过信件往来和几个匆忙的电话与生产厂商沟通。

客户常常是矛盾的。他们希望昨天的一切工作都是免费的。生产厂商经常陷入客户自己的矛盾之中。

一个“不好的”客户可能会对一个软件项目组能否在预算内按时完成项目产生很大的影响。对于项目管理者而言,不好的客户是对项目计划的巨人威胁和实际的风险。卜顶的风险检査表中的条目标识了与客户特征相关的常见风险:

?你以前是否曾与这个客户合作过?

?该客户是否很清楚需要什么?他能否花时间把需求写出来?

?该客户是否同意花时间召开正式的需求收集会议(第11章),以确定项目范闱?

?该客户是否愿意建立与开发者之间的快速通信渠道?

?该客户是否愿意参加复审工作?

?该客户是否具有该产品领域的技术素养?

?该客户是否愿意让你的人来做他们的工作,即,当你的人在做具体的技术工作时,该客户是否会坚持在旁边监视?

?该客户是否了解软件过程?

如果对于这些问题中的任何一个的答案是否定的,则需要进行进一步的调研,以评估潜在的风险。

1.3.4过程风险

研讨会。这些问题己经在软件工程研究所(SEI)的过程评估调査表中进行了改编。

过程问题

?你的高级管理层是否支持一份已经写好的政策综述,该综述中强调了软件开发标准过程的重要性吗?

?你的组织是否己经建立了一份己经成文的、用于本项目的软件过程的说明?

?开发人员是否“签约”同意按照文档所写的软件过程进行开发工作,并自愿使用它?

?该软件过程是否可以用于其他项目?

?你的组织是否已经为管理者及技术人员开设了?系列的软件工程培训课程??是否为每一个软件开发者和管理者都提供了印好的软件工程标准?

?是否为作为软件过程一部分而定义的所有交付物建立了文档概要及示例?

?是否定期地对需求规约、设计和编码进行正式的技术复审?

?是否定期地对测试过程和测试情况进行复审?

?是否对每一次正式技术复审的结果要建立了文档,其中包括发现的错误及使用的资源?

?是否有什么机制來保证软件工程标准确认的方案指导的工作开展正常??是否使用配置管理来维护系统/软件需求、设计、编码及测试用例之间的一致性?

?是否使用一个机制来控制用户需求的变化及其对软件的影响?

?对于每?个承包出去的子合同,是否有一份文档化的工作说明、一份软件需求规约及一份软件开发计划?

?是否有一个可遵循的规程,来跟踪及复审子合同承包商的工作?

技术问题

?是否使用方便易用的规格说明技术来辅助客户与开发者之间的通信?

?是否使用特定的方法进行软件分析?

_软件开发项目的风险管理

_软件开发项目的风险管理 我讲的主题是:软件开发项目的风险治理,因为我认为风险治理在软件项目中专门重要,又不容易做好,因此期望通过和大伙儿讨论能够有一些思路和启发。 期望在那个地点在如下几方面展开讨论: 1.在软件项目治理中如何做好风险防范 2.软件项目中的典型风险事件是哪些 软件开发项目的风险治理 众所周知,软件开发过程可分为:需求分析、设计、编码、测试、安装及爱护等几个过程(在RUP方法中:业务建模、需求、分析设计、实施、测试、部署),实际上一个完整的软件项目前后还有其它过程,在那个地点列出的只是和软件开发有关的核心过程。 软件项目的生命周期能够分为四个时期(不同行业的项目生命周期不同),即初始时期、设计时期、实施时期、收尾时期。软件开发过程在软件项目的这四个时期中的分布情形如下(括弧里面表示RUP方法中的过程): 初始时期:大部分需求分析,少部分设计(大部分业务建模和需求,少部分分析设计)

设计时期:大部分设计,少部分编码(大部分分析设计,部分实施及测试,开始考虑部署) 实施时期:大部分编码和测试,少部分设计(大部分实施及测试,部分部署) 收尾时期:安装及爱护(大部分部署) 而项目治理则贯穿在整个生命周期的每个时期。 按照PMBOK,项目治理能够从范畴治理、时刻治理、费用治理、质量治理、人力资源治理、沟通治理、风险治理、采购治理和整体治理等9个方面考虑,关于软件项目治理来讲软件配置治理(属于整体治理)、软件质量治理、软件风险治理及开发人员治理(属于人力资源治理)等四个方面的治理尤为重要,软件开发的每个时期、每个过程都要重视这几方面的治理。 下面就以软件项目的风险治理为主题展开讨论。 软件项目治理的四个时期中,在初始时期项目成功的可能性最小,风险发生的概率也就最高,然而这时候一旦估量的风险发生了,缺失是最小的,例如:在那个时期如果某种缘故突然资金来源断了(这在需求时期是专门有可能的),以至于不能连续进行项目,不得不终止项目,那么这时候的缺失只是需求分析时期的投入。随着项目的进展项目成功的可能性变大,风险发生的概率逐步变小,风险对项目的缺失逐步变大,快到收尾时期的时候风

软件项目风险管理

软件项目风险管理 一、风险管理概述 软件风险是指软件开发过程中及软件产品本身可能造成的伤害或损失。风险关注未来的事情,这意味着,风险涉及选择及选择本身包含的不确定性,在软件开发过程及软件产品都要面临各种决策的选择。风险是介于确定性和不确定性之间的状态,是处于无知和完整知识之间的状态。另一方面,风险将涉及思想、观念、行为、地点等因素的改变。 当在软件工程领域考虑风险时,我们要关注以下的问题:什么样的风险会导致软件项目的彻底失败?用户需求、开发技术、目标计算机、以及所有其它与项目有关的因素的改变将会对按时交付和总体成功产生什么影响?对于采用什么方法和工具,需要多少人员参与工作的问题,我们如何选择和决策?对软件质量要达到什么程度才是“足够的”? 当没有办法消除风险,甚至连试图降低该风险也存在疑问时,这些风险就是真正的风险了。在我们能够标识出软件项目中的真正风险之前,识别出所有对管理者和开发者而言均为明显得风险是很重要的。 二、被动和主动的风险策略 被动风险策略是针对可能发生的风险来监督项目,直到它们变成真正的问题时,才会拨出资源来处理它们,更普遍的是,软件项目组对风险不闻不问,直到发生了错误才赶紧采取行动,试图迅速地纠正错误。这种管理模式常常被称为“救火模式”。当补救的努力失败后,项目就处在真正的危机之中了。 对于风险管理的一个更聪明的策略是主动式的。主动策略早在技术工作开始之前就已经启动了――标识出潜在地风险,评估它们出现的概率及产生的影响,对风险按重要性进行排序,然后,软件项目组建立一个计划来管理风险。主动策略风险管理的主要目标是预防风险。但是,因为不是所有的风险都能够预防,所以,项目组必须建立一个应付意外事件的计划,使其在必要时能够以可控的及有效的方式作出反应。 三、软件风险 1、软件风险包含两个特征: 不确定性——刻划风险的事件可能发生也可能不发生,没有100%发生的风险。 损失——如果风险变成了现实,就会产生恶性后果或损失。 2、进行风险分析时,重要的是量化不确定的程度和与每个风险相关的损失的程度。 为了实现这点,必须考虑以下几种不同类型的风险:

软件项目的风险分析

软件项目的风险分析 软件工程项目的开发也存在各种各样的风险,有些风险甚至是灾难性的。R.Charette认为,风险与将要发生的事情有关,它涉及诸如思想、观念、行为、地点、时间等多种因素;风险随条件的变化而改变,人们改变、选择、控制与风险密切相关的条件可以减少风险,但改变、选择、控制条件的策略往往是不确定的。在软件开发过程中,人们关心的问题是,什么风险会导致软件项目的彻底失败?顾客需求、开发环境、目标机、时间、成本的改变对软件项目的风险会产生什么影响?人们必须抓住什么机会、采取什么措施才能有效地减少风险、顺利完成任务?所有这些问题都是软件开发过程中不可避免并需要妥善处理的。软件工程的风险分析包括:风险标识、风险估算、风险评价和风险管理四部分 1、风险标识 从宏观上看,风险可以分为项目风险、技术风险和商业风险三类。由于项目在预算、进度、人力、资源、顾客和需求等方面的原因对软件项目产生的不良影响称为项目风险。软件在设计、实现、接口、验证和维护过程中可能发生的潜在问题,如规格说明的二义性、采用陈旧或尚不成熟的技术等等,对软件项目带来的危害称技术风险。开发了一个没人需要的优质软件,或推销部门不知如何销售这一软件产品,或开发的产品不符合公司的产品销售战略,等等,称为商业

风险。这些风险有些是可以预料的,有些是很难预料的。为了帮助项目管理人员、项目规划人员全面了解软件开发过程存在的风险,Boehm建议设计并使用各类风险检测表标识各种风险。 2、风险估算 软件项目管理人员可以从影响风险的因素和风险发生后带来的损失两方面来度量风险。为了对各种风险进行估算,必须建立风险度量指标体系;必须指明各种风险带来的后果和损失;必须估算风险对软件项目及软件产品的影响;必须给出风险估算的定量结果。 3、风险评价和管理 在风险分析过程中,经常使用三元组[RI,LI,XI]描述风险。其中RI代表风险,LI表示风险发生的概率,XI是风险带来的影响,I = 1,2,…L是风险序号,表示软件项目共有L种风险。软件开发过程中,由于项目超支、进度拖延和软件性能下降都会导致软件项目的终止,因此多数软件项目的风险分析都需要给出成本、进度和性能三种典型的风险参考量。当软件项目的风险参考量达到或超过某一临界点时,软件项目将被迫终止。在软件开发过程中,成本、进度、性能是相互关联的。例如,项目投入成本的增长应与进度相匹配,当项目投入的成本与项目拖延的时间超过某一临界点时,项目也应该终止进行。通常风险估算过程可分为

_软件开发项目的风险管理.doc

软件开发项目的风险管理 我讲的主题是:软件开发项目的风险管理,因为我认为风险管理在软件项目中很重要,又不容易做好,所以希望通过和大家讨论能够有一些思路和启发。 希望在这里在如下几方面展开讨论: 1.在软件项目管理中如何做好风险防范 2.软件项目中的典型风险事件是哪些 软件开发项目的风险管理 众所周知,软件开发过程可分为:需求分析、设计、编码、测试、安装及维护等几个过程(在RUP方法中:业务建模、需求、分析设计、实施、测试、部署),实际上一个完整的软件项目前后还有其它过程,在这里列出的只是和软件开发相关的核心过程。软件项目的生命周期可以分为四个阶段(不同行业的项目生命周期不同),即初始阶段、设计阶段、实施阶段、收尾阶段。软件开发过程在软件项目的这四个阶段中的分布情况如下(括弧里面表示RUP方法中的过程): 初始阶段:大部分需求分析,少部分设计(大部分业务建模和需求,少部分分析设计) 设计阶段:大部分设计,少部分编码(大部分分析设计,部分实

施及测试,开始考虑部署) 实施阶段:大部分编码和测试,少部分设计(大部分实施及测试,部分部署) 收尾阶段:安装及维护(大部分部署) 而项目管理则贯穿在整个生命周期的每个阶段。 根据PMBOK,项目管理可以从范围管理、时间管理、费用管理、质量管理、人力资源管理、沟通管理、风险管理、采购管理和整体管理等9个方面考虑,对于软件项目管理来讲软件配置管理(属于整体管理)、软件质量管理、软件风险管理及开发人员管理(属于人力资源管理)等四个方面的管理尤为重要,软件开发的每个阶段、每个过程都要重视这几方面的管理。 下面就以软件项目的风险管理为主题展开讨论。 软件项目管理的四个阶段中,在初始阶段项目成功的可能性最小,风险发生的概率也就最高,但是这时候一旦预计的风险发生了,损失是最小的,比如:在这个阶段如果某种原因突然资金来源断了(这在需求阶段是很有可能的),以至于不能继续进行项目,不得不终止项目,那么这时候的损失只是需求分析阶段的投入。随着项目的进展项目成功的可能性变大,风险发生的概率逐渐变小,风险对项目的损失逐渐变大,快到收尾阶段的时候风险对项目的损失最大,随着收尾阶段的进行风险又逐渐变小。

软件项目管理风险管理

浅析软件项目管理中的风险管理 张尧 摘要:在项目的建设过程中,风险几乎无处不在。如何有效地分析、控制和管理风险,对项目的成功起着至关重要的影响。本文通过对当前软件项目的风险状况进行分析,列举软件开发项目的风险来源,并进行分析,最后给出如何合理管理软件项目风险的建议。 关键词:风险管理;Boehm模型;CMU/SEI模型 0.引言 软件行业是二十一世纪发展较快的行业,同时基于软件项目具有连续性、复杂性、少参照性和无标准规范等特点,该项目的开发过程总会遇到各种各样的风险。鉴于这种情况,我们提出软件项目的风险管理,其管理内容包括风险识别、风险量化、风险对策和风险控制等,当然,还有一系列的管理模型,比如:Boehm 模型、 CMU/SEI模型。做这些,目的只有一个,那就是:使软件项目的潜在机会或回报最大化,使其潜在风险最小化。 1.风险管理概述 每一个项目的完成,都是克服各种困难的结果,困难来于人、财、物。仔细观察不难发现,整个困难过程狭义的说就是各种风险的集合,风险无处不在,我们所要做和能做的便是采取一定的方式方法对风险进行管理,使事件能顺利朝我们的目标发展。软件中的项目风险管理是指为了最好的达到项目的目标,识别、分配、应对项目生命周期内风险的科学与艺术 1.1. 风险的来源 风险来于国家制度。一切工作都在按计划顺利的进行着,突然国家实施宏观调控,物价上涨,工人要求加工资,或者国家发布声明,这款软件不能研发,我们的软件项目要么不能按时完成,要么直接得从做,风险由此产生。 风险来于项目实施过程。软件项目具有一般项目的特点,那就是需要人力、物力的投入,还有就是自然环境的参与。整个过程,每一环境产生与目标相悖的行为,这对项目都会产生不可预知的挫折,风险由此产生。 风险来于我们的用户,工程都是按计划顺利完成的,可到和最终用户交接的时候,用户临时提出修改意见,顾客是上帝,在这个竞争尤为激励的年代,我们只能选择满足用户,风险由此产生。 1.2. 风险的分类

软件项目风险管理

软件项目风险管理 1 前言 一般来说,软件工程师总是非常乐观。当他们在计划软件项目时,经常认为每件事情都会像计划那样运行,或者,又会走向另外一个极端。软件开发的创造性本质意味着我们不能完全预测会发生的事情,因此制定一个详细计划的关键点很难确定。当有预想不到的事情引起项目脱离正常轨道时,以上两种观点都会导致软件项目的失败。 目前,风险管理被认为是IT软件项目中减少失败的一种重要手段。当不能很确定地预测将来事情的时候,可以采用结构化风险管理来发现计划中的缺陷,并且采取行动来减少潜在问题发生的可能性和影响。风险管理意味着危机还没有发生之前就对它进行处理。这就提高了项目成功的机会和减少了不可避免风险所产生的后果。 2 什么是风险 所谓“风险”,归纳起来主要有两种意见,主观说认为,风险是损失的不确定性;客观学认为,风险是给定情况下一定时期可能发生的各种结果间的差异。它的两个基本特征是不确定性和损失。IT行业中的软件项目开发是一项可能损失的活动,不管开发过程如何进行都有可能超出预算或时间延迟。项目开发的方式很少能保证开发工作一定成功,都要冒一定的风险,也就需要进行项目风险分析。在进行项目风险分析时,重要的是要量化不确定的程度和每个风险相当的损失程度,为实现这一点就必须要考虑以下问题: 要考虑未来,什么样的风险会导致软件项目失败? 要考虑变化,在用户需求、开发技术、目标、机制及其它与项目有关的因素的改变将会对按时交付和系统成功产生什么影响? 必须解决选择问题,应采用什么方法和工具,应配备多少人力,在质量上强调到什么程度才满足要求? 要考虑风险类型,是属于项目风险、技术风险、商业风险、管理风险还是预算风险等? 这些潜在的问题可能会对软件项目的计划、成本、技术、产品的质量及团队的士气都有负面的影响。风险管理就是在这些潜在的问题对项目造成破坏之前识别、处理和排除。 3 风险管理 项目风险管理实际上就是贯穿在项目开发过程中的一系列管理步骤,其中包括风险识别、风险估计、风险管理策略、风险解决和风险监控。它能让风险管理者主动“攻击”风险,进行有效的风险管理。 在项目管理中,建立风险管理策略和在项目的生命周期中不断控制风险是非常重要的,风险管理包括四个相关阶段: 风险识别识别风险的方法常用的有风险识别问询法(座谈法、专家法)、财务报表法、流程图法、现场观察法、相关部门配合法和环境分析法等。

软件项目开发风险

参加过项目制作的人都知道一个项目开发过程中会遇到许多困难,很多事情都会 影响一个软件开发的失败风险是在项目中发生的一系列事件或不利结果的可能性。软 件开发是一项高风险的活动,在项目开发过程的任何一个阶段都可能存在风险。采取积 极的风险管理方式,可以使项目进程更加平稳,可以获得很高的跟踪和控制项目的能力,可以规避、转移风险,或缓解风险带来的不利影响。风险管理是对项目风险进行识别、 分析、应对和监控的过程,是项目管理中很重要的管理活动,有效的实施软件风险管理 是软件项目开发工作顺利完成的保证。风险管理的达成必须包括三个要素:首先,在项 目开发计划中必须制定风险管理计划;第二,在项目预算中必须包含解决风险所需的经费;第三,评估风险时,风险的影响也必须纳入项目计划中。 下面就软件开发过程中经常发生的风险, 2.需求不明确 需求不明确是软件开发过程中经常可能遇到的问题,这类问题往往表现在需求范围未界定、需求未细化、需求描述不清楚、需求遗漏、需求互相矛盾等多个方面。在软件开发 过程的生命周期各阶段中,需求不明确所造成的浪费是最大的,必须尽早尽可能解决。 确定用户需求是件非常困难的事情,我们常常从以下几个方面着手处理需求不明确问题:(1) 让用户参与开发 提供一个协作开发环境,让用户参与开发过程。如果条件不允许,至少应该在每次迭代 的需求分析和系统测试阶段,让客户能够参与开发。 在选择参与开发过程的用户时,一方面,要尽可能争取精通业务或计算机技术的用户参与。另一方面,如果开发的产品要在不同规模、不同类型的企业应用,应该选择具有代 表性的用户参与。 仅仅让用户参与是不够的,应该采取一定的激励措施,提高用户参与的积极性。 (2) 开发用户界面原型 用户通常不善于精确描述自己的业务需求,系统分析员需要借助白板、白纸等沟通方式,帮助用户清楚表述需求。然后,开发一个用户界面原型,以便用户确认需求。用户界面

软件风险管理

风险管理计划 1. 引言 1.1 本文件的范围和目的 项目风险管理描述了在整个项目生命周期内项目团队如何组织和开展项目风险识别,度量,应对和监控等项目管理活动,是一份指导项目团队进行项目风险管理的纲领性文件。项目风险管理的目标在于提高项目中积极事件的概率和影响,降低项目中消极事件的概率和影响,确保项目在可控的范围内完成项目目标。 1.2 概述 1.2.1 目标 提高项目中积极事件的概率和影响,降低项目中消极事件的概率和影响,确保项目在可控的范围内完成项目目标。当不能很确定地预测将来事情的时候,可以采用结构化风险管理来发现计划中的缺陷,并且采取行动来减少潜在问题发生的可能性和影响。风险管理意味着危机还没有发生之前就对它进行处理,这就提高了项目成功的机会并减少了不可避免风险所产生的后果。 1.2.2 需要优先考虑规避的风险 (1)业务风险产品规模风险,商业风险,项目需求风险,客户特性风险,过程风险

(2)技术风险 技术情况风险,开发环境风险 (3)组织风险 人员数目及其经验风险 1.3组织 1.3.1领导成员 蒋妍,范楚楚,宋蕊蕊,谭琳琳,杨欣颖,赵术洁 1.3.2责任 1.4风险规避策略的内容说明 1.4.1进度安排 1.4.2 主要里程碑和审查行动(1)项目风险分析通过项目风险分析

对项目进行宏观控制,作出风险发生的概率及时作出规避策略,降低项目成本。 (2)项目风险应对对于出现的不确定风险应及时做出应对措施,提出风险规避备选方案及建议方案,降低项目的失败性。 1.4.3 预算 风险情况调查所需花费预算成本 风险类别风险调查预算 需求风险客户特性风险调查问卷 市场调研 1000 1000需求变动5000 过程风险软件工程培训3000评审结果后续5000 技术风险技术变动5000 开发环境风险开发工具变动1000 人员数目及经验风险人员管理5000 2 风险识别 2.1 风险情况调查,风险来源 收集资料 项目产品或服务说明书,项目的前提,假设和制约因素,本项目可与类比的项目。

软件开发项目的风险分析与控制

软件开发项目的风险分析与控制 摘要:本文通过对当前软件行业的风险状况进行分析,列举软件开发项目的风险来源,并进行分析,总结各类风险产生的原因和对项目成败的影响,最后给出软件开发项目在风险管理和控制的建议。 关键词:软件开发风险风险分析风险管理与控制 一、软件开发项目的风险背景 信息产业的发展是目前发展最快的行业之一,也是对社会影响最大的一个行业,它不但为我们创造了巨大的财富,而且从各个方面改变着我们的生活,达到一个行业,小到一项服务。我们不得不承认软件是二十一世纪最不可思议的产品。 伴随着软件开发技术的不断更新、软件数量的增多、软件复杂程度不断加大、客户对产品的要求也在不断的提高,随之而来的是软件开发项目给软件开发企业和需求企业带来的巨大风险。软件开发项目的成功与否会直接影响到公司的生存。这对软件开发企业来讲应该是更大的难题。一方面是业务需求更加复杂。人们对软件质量和用途的期望大幅度提高,对业务系统的要求也越来越挑剔。另一方面是开发成本不断缩减。在此形势下,风险管理与控制已成为软件开发项目成败的关键。 软件开发项目由于其具有连续性、复杂性、少参照性,无标准规范等特点,其风险程度较高。目前国内的大多数软件开发企业还缺乏对软件开发项目的风险认识,缺少进行系统、有效的度量和评价的手段。据有调查数据显示,有15—35%的软件项目中途被取消,剩下的项目不是超期就是超出预算或是无法达到预期目标。另外,软件项目因风险控制和管理原因失败的约占90% ,可见,软件风险控制与管理在目前的软件开发项目中的重要性。 二、软件开发项目的风险来源及对项目成败的影响 软件开发项目风险是指在软件生命周期中所遇到的所有的预算、进度和控制等各方面的问题,以及由这些问题而产生的对软件项目的影响。软件项目风险经常会涉及许多方面,如:缺乏用户的参与,缺少高级管理层的支持,含糊的要求,没有计划和管理等,总体概括下来应该由五大方面。

软件开发项目的风险管理

-------------------------------------------------------------------------------------------------------------------------------------------- 软件开发项目的风险管理 原作者:李艺兰 1月27日参加了项目管理联盟组织的‘北京项目管理爱好者聚会’,我被易风邀请做了一个主题演讲,其实不是什么演讲,只是结合理论谈了自己的一些想法和工作中遇到过的经验教训,更主要的目的是给大家出一个讨论和交流的主题,希望能起个抛砖引玉的作用。 我讲的主题是:软件开发项目的风险管理,因为我认为风险管理在软件项目中很重要,又不容易做好,所以希望通过和大家讨论能够有一些思路和启发。 现在把我准备的内容整理帖出来,希望在这里继续讨论,大家在如下几方面多展开讨论:1.在软件项目管理中如何做好风险防范 2.软件项目中的典型风险事件是哪些 软件开发项目的风险管理 众所周知,软件开发过程可分为:需求分析、设计、编码、测试、安装及维护等几个过程(在RUP方法中:业务建模、需求、分析设计、实施、测试、部署),实际上一个完整的软件项目前后还有其它过程,在这里列出的只是和软件开发相关的核心过程。 软件项目的生命周期可以分为四个阶段(不同行业的项目生命周期不同),即初始阶段、设计阶段、实施阶段、收尾阶段。软件开发过程在软件项目的这四个阶段中的分布情况如下(括弧里面表示RUP方法中的过程): 初始阶段:大部分需求分析,少部分设计(大部分业务建模和需求,少部分分析设计) 设计阶段:大部分设计,少部分编码(大部分分析设计,部分实施及测试,开始考虑部署)实施阶段:大部分编码和测试,少部分设计(大部分实施及测试,部分部署) 收尾阶段:安装及维护(大部分部署) 而项目管理则贯穿在整个生命周期的每个阶段。 根据PMBOK,项目管理可以从范围管理、时间管理、费用管理、质量管理、人力资源管理、沟通管理、风险管理、采购管理和整体管理等9个方面考虑,对于软件项目管理来讲软件配置管理(属于整体管理)、软件质量管理、软件风险管理及开发人员管理(属于人力资源管理)等四个方面的管理尤为重要,软件开发的每个阶段、每个过程都要重视这几方面的管理。下面就以软件项目的风险管理为主题展开讨论。 ---------------------------------------------------------精品文档---------------------------------------------------------------------

软件项目风险管控

推介导读: 此论文从需求调研、开发、实施以及项目收尾四个项目阶段,列举了11种典型的常见风险,并给出了这些风险的详细和切实可行的风险规避措施。这些风险和措施实用、实在,值得做为公司项目管理财富库进行收藏,值得各项目组借鉴。 软件项目风险管控 1.什么是软件项目风险 软件项目风险是指在软件开发过程中遇到的预算和进度等方面的问题以及这些问题对软件项目的影响。软件项目风险会影响项目计划的实现,如果项目风险变成现实,就有可能影响项目的进度,增加项目的成本,甚至使软件项目目标不能实现。如果对项目进行风险管理,就可以最大限度的减少风险的发生。 2.项目风险及应对措施 软件项目的生命周期可以分为四个阶段,即需求调研阶段、开发阶段、实施阶段、收尾阶段,软件开发过程可分为:需求分析、设计、编码、测试等几个过程,在软件项目的每个阶段、每个过程都可能存在风险。下面结合项目谈谈各阶段碰到的风险。 2.1.需求调研阶段 1.风险描述: 调研涉众没有足够的时间参与调研活动,严重影响调研进度与调研质量。 应对措施: 开始调研时,召集公司的高层领导、各部门主管及参与调研的关键涉众召开调研 启动会,让所有涉众都重视本次调研活动,努力配合调研工作。在调研启动会上 明确调研涉众的职责; 在制定调研计划时,应事前与相关涉众做好沟通工作,努力减少调研计划与日常 工作安排的冲突; 相关人员通过移交日常工作等办法,有效保证相关涉众的调研时间; 调研人员设计调研提纲时,要有针对性,尽量努力提高调研效率。 2.风险描述: 调研成果不能真实和完整地体现管理层意图与企业经营管理需要。 应对措施: 通过客户方的多方协调,让管理层要重视调研人员的访谈,客观而真实地回答访 谈问题; 管理层调研提纲在设计时,不仅要做到有针对性,而且要有全面性; 调研人员在访谈管理层,要善于挖掘与总结管理层的管理意图与经营思路; 管理层的意图应宣达到所有涉众,努力做到在繁多的需求中,把握住管理思路的 主线。

软件开发项目的风险管理

软件开发项目的风险管 理 文件编码(008-TTIG-UTITD-GKBTT-PUUTI-WYTUI-8256)

软件开发项目的风险管理 我讲的主题是:软件开发项目的风险管理,因为我认为风险管理在软件项目中很重要,又不容易做好,所以希望通过和大家讨论能够有一些思路和启发。 希望在这里在如下几方面展开讨论: 1.在软件项目管理中如何做好风险防范 2.软件项目中的典型风险事件是哪些 软件开发项目的风险管理 众所周知,软件开发过程可分为:需求分析、设计、编码、测试、安装及维护等几个过程(在RUP方法中:业务建模、需求、分析设计、实施、测试、部署),实际上一个完整的软件项目前后还有其它过程,在这里列出的只是和软件开发相关的核心过程。 软件项目的生命周期可以分为四个阶段(不同行业的项目生命周期不同),即初始阶段、设计阶段、实施阶段、收尾阶段。软件开发过程在软件项目的这四个阶段中的分布情况如下(括弧里面表示RUP方法中的过程): 初始阶段:大部分需求分析,少部分设计(大部分业务建模和需求,少部分分析设计) 设计阶段:大部分设计,少部分编码(大部分分析设计,部分实施及测试,开始考虑部署) 实施阶段:大部分编码和测试,少部分设计(大部分实施及测试,部分部署) 收尾阶段:安装及维护(大部分部署) 而项目管理则贯穿在整个生命周期的每个阶段。 根据PMBOK,项目管理可以从范围管理、时间管理、费用管理、质量管理、人力资源管理、沟通管理、风险管理、采购管理和整体管理等9个方面考虑,对于软件项目管理来讲软件配置管理(属于整体管理)、软件质量管理、软件风险管理及开发人员管理(属于人力资源管理)等四个方面的管理尤为重要,软件开发的每个阶段、每个过程都要重视这几方面的管理。 下面就以软件项目的风险管理为主题展开讨论。 软件项目管理的四个阶段中,在初始阶段项目成功的可能性最小,风险发生的概

软件项目风险管理研究

软件项目风险管理研究 [内容摘要]随着软件产业的迅速发展,软件的规模越来越大,复杂性也越来越高,风险变得更加难以控制,最终导致软件项目失败的结果越来越常见。如何对软件项目风险因素进行分析并有效地规避风险,从而致使项目顺利成功是进行软件风险管理的主要课题之一。只有充分地理解和学习软件风险管理的理论知识,同时在实践中不断地积累经验才能有效地进行风险防X和控制,达到减少风险的影响程度和实现利益最大化追求的目的。 本文从分析国内外软件风险管理的发展现状入手,详细地按照软件生命周期各阶段将软件项目风险进行分类,并总结对比分析了国外经典软件风险管理模型,同时介绍了软件风险管理全过程,同时基于经典软件风险管理模型,提出了改进的软件风险管理模型和方法,并根据自身经验对如今国内企业提出软件风险管理一些建议和意见。 [关键词]项目管理;软件风险;风险管理

1.研究背景 随着经济全球化的不断深入,以信息技术为依托的知识经济初见端倪,各国都在实施信息化带动工业化的发展战略,软件行业成为许多国家的支柱产业,软件业的发展程度从某种意义上体现了该国的综合国力,决定着国家未来的国际竞争地位。软件是一种特殊的逻辑产品,不具备实体的可见性,它是人经过智力劳动而产生出来、具有特殊性质的复杂事物川。一些调查表明,约的软件项目开发超出估计时间,大型项目平均超出交付时间,以上的软件项目开发费用超出预算。软件项目成功的几率要远远低于其它任何工程项目,软件行业面临着所谓的“软件危机”。在软件产品开发过程中存在着众多不确定因素,这些因素使得软件项目比其它工程项目具有更高的风险。从学科发展角度来看,软件工程的形成得益于人们用工程化思想看待软件产品的开发,软件工程的产生又使得软件项目管理学科应运而生。软件项目管理的出现使所谓的“软件危机”得到了一定程度的缓解和控制。 项目管理的目标是在有限资源标注条件下,保证项目时间进度、质量、成本达到最优化。软件项目管理的主要目标是确保软件产品能够按预期方案交付,同时还要满足用户需求。软件项目风险管理的目的是要找出导致项目需求不明晰、不能按进度计划及时交付、产品质量存在缺陷、开发费用超支等各种不良后果的风险因素,对风险因素及可能造成的后果和危害进行定性和定量分析,从而为软件项目管理人员等提供有效的风险控制方案和措施,使其对软件项目的损失或影响降到最低程度或使决策者可以接受的程度。因此,软件项目风险管

软件工程-风险管理

风险管理 引言 风险是关注未来将要发生的事情。今天和昨天已不再被关心,如同我们已经在收获由我们过去的行为所播下的种子。问题是:我们是否能够通过改变我们今天的行为,而为一个不同的、充满希望的、更美好的明天创造机会。其次,这意味着,风险涉及改变,如思想、观念、行为、或地点的改变……第三,风险涉及选择及选择本身所包含的不确定性。因此,就象死亡和税收一样,风险是生活中最不确定的元素之一。 当在软件工程领域考虑风险时,Charette的三个概念定义是显而易见的。未来是我们所关心的——什么样的风险会导致软件项目彻底失败呢?改变也是我们所关心的——用户需求、开发技术、目标计算机、以及所有其他与项目相关的因素的改变将会对按时交付和总体成功产生什么影响呢?最后,我们必须抓住选择机会——我们应该采用什么方法及工具?需要多少人员参与工作?对质量的要求要达到什么程度才是“足够的”? Peter Drucker[DRU75]曾经说过:“当没有办法消除风险,甚至连试图降低该风险也存在疑问时,这些风险就是真正的风险了”。在我们能够标识出软件项目中的“真正风险”之前,识别出所有对管理者及开发者而言均为明显的风险是很重要的。 1.1 被动和主动的风险策略 被动风险策略被戏称为“印地安那·琼斯学派的风险管理”[THO92]。印地安那·琼斯在以其名字为影片名的电影中,每当面临无法克服的困难时,总是一成不变地说:“不要担心,我会想出办法来的!”。印地安那·琼斯从不担心任何问题,直到它们发生,再做出英雄式的反应。 遗憾的是,一般的软件项目管理者并不是印地安那·琼斯,且软件项目组的成员也不是他的可信赖的伙伴。大多数软件项目组还是仅仅依赖于被动风险策略。被动策略最多不过是针对可能发生的风险来监督项目,直到它们变成真正的问题时,才会拨出资源来处理它们。更普遍的情况是,软件项目组对于风险不闻不问,直到发生了错误,这时,项目组才赶紧采取行动,试图迅速地纠正错误。这常常被称为“救火模式”。当这样的努力失败后,“危机管理”[CHA92]接管一切,这时项目已经处于真正的危机中了。

软件项目风险管理

软件项目风险管理 摘要:软件项目风险管理从原先被人忽视到目前的热捧,人们也从原来对它毫无作用到现在对软件的编译成功起着不容忽视的作用。为了防止骚扰软件项目以及调试的过程和产品制定的一系列规则,同时也是对软件项目、调试过程和产品有影响的风险进行评估和控制的过程。随着软件业的兴起,对软件项目风险管理研究的人也越来越多,因此关于这方面的理论也层出不穷,因此本文根据软件项目风险管理的相关理论,建立了本论文研究思路。 关键词:软件风险;风险管理;风险识别;风险分析;风险跟踪 1 风险管理的背景 1.1 风险的定义 风险定义有好几种,一是不希望事物发生变化,二是事物存在很多的,三是事件产生的影响。可以概括为“人们因对未来行为的决策及客观条件的不确定性而可能引起的后果与预定目标发生多种负偏离的综合。”公式表现为:风险f(事件,不确定性,后果)。用数学表达式则为:R=f(s,P,X),其中R表示风险,S表示时间,P表示不利事件发生的概率,X表示该事件发生的后果。 1.2 风险管理的背景 随着社会对软甲的需求增大,软件的开发技术不断更新,难度不断增大,但软件的数量却依然增加很多,同时随着社会节奏加快,软

件的供应商需要提供不间断的软件更新服务。但与此同时,各种难度的上升,给企业在开发软件的过程中加大了风险。软件项目能否开发成功,关系着一个企业的生死存亡。但矛盾的是,随着开发软件的业务增大,但对软件的质量和用途也随之提高,这对软件开发商造成了巨大的压力,在这种情况下,软件风险管理和控制成为软件开发成败的关键点。 根据有关资料调查显示,有百分之十五到百分之三十五的软件项目在开发的过程中被取消,剩下的软件项目有的是没有在预期内完成而夭折,或者又是软件开发的过程中超出了经费的预算。除此之外还有软件项目因为风险管理和控制失败的大约占百分之九十。目前国内的大多数软件开发企业还缺乏对软件开发项目的风险认识,缺少进行系统、有效的度量和评价的手段。所以能建立有效的风险识别、风险分析、风险计划、风险跟踪和风险对策的机制,是有效提高软件开发成功率的方法之一。 2 风险管理的内容 为了最大化的减少软件风险的发生,可对软件项目进行风险管理。而软件项目风险管理过程是指软件风险从认识到采取措施的过程包括风险识别、风险分析、风险计划、风险跟踪和风险对策等,从而将可控因素最大化,将不可控因素到最小,从而对未知的风险消灭,从而对风险进行回避或者缓解。 2.1 风险识别 风险识别的常用方法通常有现场观察法,财务报表法、环境分析

软件开发项目风险管理的几点体会

参与过大型软件项目的人都会认识到许多事情都可能出错,一但出错就可能给项目带来危害、损失或其它不利影响。风险是在项目中发生的一系列事件或不利结果的可能性。软件开发是一项高风险的活动,在项目开发过程的任何一个阶段都可能存在风险。采取积极的风险管理方式,可以使项目进程更加平稳,可以获得很高的跟踪和控制项目的能力,可以规避、转移风险,或缓解风险带来的不利影响。风险管理是对项目风险进行识别、分析、应对和监控的过程,是项目管理中很重要的管理活动,有效的实施软件风险管理是软件项目开发工作顺利完成的保证。 风险管理的达成必须包括三个要素:首先,在项目开发计划中必须制定风险管理计划;第二,在项目预算中必须包含解决风险所需的经费;第三,评估风险时,风险的影响也必须纳入项目计划中。 下面就软件开发过程中经常发生的风险,谈谈我们采取的预防措施。 2.需求不明确 需求不明确是软件开发过程中经常可能遇到的问题,这类问题往往表现在需求范围未界定、需求未细化、需求描述不清楚、需求遗漏、需求互相矛盾等多个方面。在软件开发过程的生命周期各阶段中,需求不明确所造成的浪费是最大的,必须尽早尽可能解决。确定用户需求是件非常困难的事情,我们常常从以下几个方面着手处理需求不明确问题: (1) 让用户参与开发 提供一个协作开发环境,让用户参与开发过程。如果条件不允许,至少应该在每次迭代的需求分析和系统测试阶段,让客户能够参与开发。

在选择参与开发过程的用户时,一方面,要尽可能争取精通业务或计算机技术的用户参与。另一方面,如果开发的产品要在不同规模、不同类型的企业应用,应该选择具有代表性的用户参与。 仅仅让用户参与是不够的,应该采取一定的激励措施,提高用户参与的积极性。 (2) 开发用户界面原型 用户通常不善于精确描述自己的业务需求,系统分析员需要借助白板、白纸等沟通方式,帮助用户清楚表述需求。然后,开发一个用户界面原型,以便用户确认需求。用户界面原型的作用仅仅是收集用户需求,不应该再作它用,也不要给用户造成系统快要实现的错觉。 (3) 需求讨论会议 对于用户分布广、用户量大的项目,要全面收集用户需求,往往很困难,通常采取需求研计会议方式进行需求确认。通过在会议前几周调查各地、各部门用户需求意见,然后集中各地或各部门的用户代表,举办一次需求研讨会,通过会议方式收集需求。本方法适合于具有一定信息系统使用经验的用户。 (4) 强化需求分析与评审 首先,需求分析是项目成功的基础,需要引起足够的重视,并分配充足的时间和人力,要让有经验的系统分析员负责,切忌让项目新手或程序员负责。其次,要进行需求评审,尽可能让用户参与需求评审,不要让需求评审流于行式。第三,也是最重要的一点,通过评审的需求规格说明书,要让用户方签字,并作为项目合同的附件,对双方都具有约束力。在公司内部要将

论软件项目的风险管理

论软件项目的风险管理 摘要 2008年2月,我作为项目经理开始参与《热轧厂MES管理系统》项目的开发工作,主要工作职责是项目的先期需求分析、系统设计和项目管理。 在本项目的成功很大程度上归功于对项目的风险管理,在该项目中成功的控制进度风险;控制人员流失风险;控制系统功能风险,为《热轧厂MES管理系统》成功上线提供了保证。目前该系统已经正式上线运行,状况良好,受到业主方一直好评。 正文 2008年2月,我作为项目经理参与《热轧厂MES管理系统》项目管理。随着信息技术、网络技术的飞速发展,现代企业管理对信息化的需求也不断地扩大,相继提出了建立企业ERP(企业资源规划)系统和MES(制造执行系统)的概念,而《热轧厂MES管理系统》建立在业主方已经存在ERP系统及产线上的多个二级系统的基础上,需要通过本系统,高效地跟踪、控制和管理全线的物流,满足全线生产组织和管理的需要,最大限度地发挥设备能力,调控好全线的生产,达到效益最佳;同时在整条产线推行一体化的生产管理和一贯制的质量控制,达到自动化的生产组织和数据采集、精细的生产控制和物料跟踪以及有序、规范的生产管理。 本系统需要与多个系统进行衔接,并且数据交换量大,生产要求及时性强,稳定性要求高。由于该产线是一条新的生产线,本系统需

要与土建、机械、电气等其他系统同时完成,在全线出钢的时投入运行。所以系统各个模块的测试及与其他系统接口测试工作需受到总工期的制约。 在系统的开发过程中我通过控制进度风险;控制人员流失风险;控制系统功能风险对项目进行管理,保证系统如期完成。 1、控制进度风险 本系统按系统结构分为:软件系统、主机系统和网络系统;按业务功能可以分为:质量管理、生产合同管理、作业计划管理、物料跟踪管理、仓库管理、发货管理、板坯库/钢卷库管理、连铸管理、行车定位跟踪系统9个子系统。以系统的范围说明、技术附件文档和需求文档为基础,建立工作分解结构(WBS),通过对WBS的分析确定每个工作包的完成工期。 由于业主方是新建立一条生产线,多个项目同时进行,所以对工期要求非常严格,我与业主方进行了反复的沟通,根据业主方已有的网路图,此项目的WBS分解包、我公司组织过程资产、以及以往的项目经验,制定了各个功能系统及主机系统的工期,增加了部分预留应急时间,制作项目的网络图和甘特图。 在进度计划里的每一项任务都规定了该任务的工作量、开始时间、结束时间,同时让每个小组都自己所承担任务的时间表,小组成员根据自己的任务制定自己的详细工作计划。 工作日志可以了解每个小组成员工作情况,我们要求小组成员每天做工作日志,对自己每天工作进行详细记录。每周对自己工作进展

软件风险管理

风险管理计划 1.引言 1.1本文件的范围和目的 项目风险管理描述了在整个项目生命周期内项目团队如何组织和开展项目风险识别,度量,应对和监控等项目管理活动,是一份指导项目团队进行项目风险管理的纲领性文件。项目风险管理的目标在于提高项目中积极事件的概率和影响,降低项目中消极事件的概率和影响,确保项目在可控的范围内完成项目目标。 1.2概述 1.2.1目标 提高项目中积极事件的概率和影响,降低项目中消极事件的概率和影响,确保项目在可控的范围内完成项目目标。当不能很确定地预测将来事情的时候,可以采用结构化风险管理来发现计划中的缺陷,并且采取行动来减少潜在问题发生的可能性和影响。风险管理意味着危机还没有发生之前就对它进行处理,这就提高了项目成功的机会并减少了不可避免风险所产生的后果。 1.2.2 需要优先考虑规避的风险 (1)业务风险 产品规模风险,商业风险,项目需求风险,客户特性风险,过程风

险 (2)技术风险 技术情况风险,开发环境风险 (3)组织风险 人员数目及其经验风险 1.3组织 1.3.1领导成员 蒋妍,范楚楚,宋蕊蕊,谭琳琳,杨欣颖,赵术洁 1.3.2责任 1.4 风险规避策略的内容说明 1.4.1 进度安排

1.4.2 主要里程碑和审查行动 (1)项目风险分析 通过项目风险分析对项目进行宏观控制,作出风险发生的概率及时作出规避策略,降低项目成本。 (2)项目风险应对 对于出现的不确定风险应及时做出应对措施,提出风险规避备选方案及建议方案,降低项目的失败性。 1.4.3预算 风险情况调查所需花费预算成本 2 风险识别 2.1风险情况调查,风险来源 收集资料 项目产品或服务说明书,项目的前提,假设和制约因素,本项目可与类比的项目。

软件项目风险管理

目 录 一、风险管理 概述 (4) 1.1软件项目风险 (4) 1.2软件项目风险管理 (4) 1.3软件项目风险管理模 型.............................................................................. (6) 1.4小结 ...................................................................................................7 二、软件项目风险管理发展历程 (7) 三、经典风险管理模型 (9) 3.1 Boehm 和Charette 的风险管理框架 (9) 3.2 CMU/SEI 的CRM 持续风险管理模型 (10) 软件项目风险管理资料 【最新资料,WORD 文档,可编辑修改】

3.3Riskit方法 (11) 3.4SoftRisk风险管理模型 (14) 3.5IEEE风险管理标准 (15) 3.6基于CMM/CMMI的软件项目风险管理框架 (15) 3.7Microsoft的MSF风险管理模型 (16) 3.8比较经典风险管理模型 (17) 四、软件项目风险管理的研究方法、技术和工具 (18) 4.1软件项目风险识别方法 (18) 4.2网络分析模型 (21) 4.3系统动力学仿真技术 (22) 4.4基于成本估算模型的风险评估方法 (23) 4.5其他方法体系 (24)

五、我国软件项目风险管理的研究 (24) 5.1研究现状 (24) 5.2思考与建议 (25) 【参考文献】……………………………………………………………………………… 错误!未定义书签。 引言 近几年来软件开发技术、工具都有了很大的进步,但是软件项目开发超时、超支、甚至不能满足用户需求而根本没有得到实际使用的情况仍然比比皆是。软件项目开发和管理中一直存在着种种不确定性,严重影响着项目的顺利完成和提交。但这些软件风险并未得到充分的重视和系统的研究。直到20世纪80年代,Boehm比较详细地对软件开发中的风险进行了论述,并提出软件风险管理的方法。Boehm认为,软件风险管理指的是“试图以一种可行的原则和实践,规范化地控制影响项目成功的风险”,其目的是“辨识、描述和消除风险因素,以免它们威胁软件的成功运作”。 在此基础上,业界对软件风险管理的研究开始慢慢丰富起来,理论上对风险进行了一些分类,提出了风险管理的思路;实践上也出现了一些定量管理风险的方法和风险管理的软件工具。虽然业界对风险管理表现了极大的兴趣,做出了不少努力,但似乎很少开发项目的组织真正积极地在软件开发过程中使用风险管理的方法。1995年IWSED (International Workshop on Software Engineering Data)会议做出的调查显示:风险管理技术没有得到广泛应用的原因并不是大家不相信这种技术的实效性,而是对风险管理的技术和实践缺乏了解。因此,我们认为很有必要对风险管理进行研究。

相关主题
文本预览
相关文档 最新文档