软件项目风险管理控制措施_第1页
软件项目风险管理控制措施_第2页
软件项目风险管理控制措施_第3页
软件项目风险管理控制措施_第4页
软件项目风险管理控制措施_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

1、Word参考资料,下载后可编辑软件项目风险管理控制措施 摘要:软件项目开发需要投入大量的人力、物力和财力,但在开发的过程中存在着诸多不确定性和可变性,因而有必要对软件项目风险进行管理与操纵。本文通过对软件项目全程的风险识别、分析、应对及监测,在项目开发各阶段积极做好风险防控工作,以到达降低项目风险、减少风险损失的目的。 关键词:软件项目开发;风险管理;风险防控 1引言 风险是指在某项活动开展的过程中,一些突发的、不确定的因素对活动参与者造成损害、对自然环境造成破坏的概率1。与其他工程项目一样,软件项目的开发也存在着各种各样的风险,如项目资金透支、工期延长、系统不能满足需求等。因而在软件开发的过

2、程中,做好风险管理将有助于降低开发风险,保证开发质量。 2软件项目风险分类 2.1技术风险 软件在分析、设计、测试及实施过程中,可能发生的潜在技术问题给软件项目带来的危害称为技术风险,如采纳了陈旧或尚不成熟的技术、系统文档编制不标准等。 2.2管理风险 管理风险是指由于项目在预算、人员、进度、资源等方面缺乏计划、操纵与管理,从而对软件项目产生的不良影响。 2.3商业风险 商业风险又称为市场风险,包括开发出来的软件产品不符合市场需求、对软件产品定位不清从而缺乏市场竞争力、市场竞品较多竞争剧烈等。 2.4安全风险 安全风险主要包括自然风险、人为风险、外部环境风险,如盗版、病毒等。 3软件项目风险管

3、理步骤 3.1风险识别 风险识别阶段需要识别出哪些风险会影响软件项目的开发,包括这些风险的类别、因素、出处、后果等内容2。风险识别的常用方法包括以下几种。(1)专家调查法。就软件项目开发风险问题,征询项目相关行业领域专家的意见,将收集到的意见和建议整理形成报告,随后将报揭发送给各位专家再次进行征询。如此反复,经历数轮后,当专家们的意见趋于一致时就可得出最后结论。(2)头脑风暴法。将项目开发小组成员、立项单位代表、邀请的专家顾问召集起来,通过会议的方式,就项目开发风险展开讨论交流,以期对项目风险进行准确识别、分析和预测。(3)风险检测表法。设计并使用各类条目式风险检测表,关心项目小组识别各种风险

4、。如开发人员风险检测表,可以排列出诸如开发人员技术水平怎样、开发人员是否具有类似项目开发经验、开发人员的人数是否适合、开发人员是否能够自始至终地参加软件开发工作、开发人员是否能集中全部精力投入软件开发工作、开发人员是否接受过必要的培训、开发人员的人员流淌是否能保证工作的连续性等条目。通过对这些问题的分析与答复,可以识别出人员因素对软件项目带来的风险。 3.2风险分析 风险分析主要是针对风险事件发生概率及其后果进行评估3。为完成对各种风险的评估,需建立风险度量指标体系,明确各种风险带来的后果与损失,估算风险对软件项目的影响程度,最终给出风险估算的结果4。风险分析时,常使用四元组R,P,I,W来对

5、风险进行描述。其中R代表风险,P代表风险发生的概率,I代表风险带来的影响,W代表风险对项目影响的权重。由于能否按照合同规定的软件性能、时间和金额等条款完成软件开发工作,对项目的顺利验收起着至关重要的作用。因而重点选取本钱、进度、软件性能三个方面对软件项目风险进行度量,当某一方面的度量值到达或超过临界点时,软件项目将被迫终止。通常风险评估的过程可分为四步:(1)依据风险识别的结果,分析每种风险的发生概率,每种风险对项目本钱、进度、软件性能三方面影响的大小,依据风险后果的严峻程度为每种风险给予不同的风险权重。(2)定义每种风险的四元组R,P,I,W。(3)定义项目被迫终止的临界点。(4)预测风险组

6、合对项目的综合影响5。 3.3风险应对 对可能发生的各种风险需拟定相应的应对策略。常用的应对策略有预防风险、风险转移、风险回避等。预防风险通常指通过提高软件项目各阶段的可靠性和标准性,从而降低风险发生概率。风险转移是指利用合同、保险、担保、出售、发包等方式6,将风险发生时的局部损失转移至第三方,以降低己方风险损失。风险回避是指当某些风险的发生不可防止且后果较严峻时,可对项目方案进行调整,更甚者则主动放弃该项目,以免造成不可挽回的损失。在完成风险识别、分析和应对策略选择后,应形成一个易于理解的风险分析与应对表,如表1所示。 3.4风险监控 风险监控是指依据前期风险分析结果,监控风险应对措施的实施

7、情况,加强对项目全过程风险的管控7。风险监控的目的是监测风险管理策略和应对措施的实际执行效果,看其是否到达预期目标,同时依据当前风险监控结果及时修正风险分析与应对表,或对项目中新识别的风险进行分析并制定相应的风险应对措施8。 4风险防控措施 4.1需求分析阶段 软件需求是软件开发的依据,也是软件验收的标准,因此对软件需求的精准确定就属于软件项目开发的重点和难点。一方面用户开始时很难完整且清晰地对软件系统的功能、性能、运行环境等方面的需求进行准确表达。但随着项目的深入,用户对软件的需求可能会越来越明确,也越来越多,甚至有时到测试阶段还会出现有用户要求更改软件需求的情况。这对系统分析人员和软件开发

8、人员来说是难以接受的。另一方面,用户、系统分析人员和软件开发人员对软件需求描述的方式也各不相同。用户盼望使用自然语言对软件需求进行描述,而专业人员则盼望采纳结构化的说明语言,如数据流图、数据字典等。这样既可以防止自然语言容易引起的二义性和不确定性,又能为下一步软件设计工作提供便利。针对这类情况的防控措施包括:(1)加强对立项单位的组织结构、工作流程和现有软件系统的了解。(2)系统分析人员需掌握一些获得用户需求的技术和方式。(3)可将公司已投入使用的类似软件作为软件原型,提交给用户试用,便于系统分析人员对用户需求的收集。(4)组织由立项单位、系统分析人员和系统设计人员共同参与的需求评审会,最终形

9、成达成一致的需求分析阶段的结果需求规格说明书。(5)对需求分析阶段完成后用户提出的新需求,可采取留在以后版本升级中处理,如立项单位要求必须参加的,则可与客户商量延长开发时间、增加合同金额。 4.2设计与开发阶段 假如软件产品采纳原型法进行开发,虽能降低因需求不明确带来的项目风险,但由于原型法采纳循环迭代的方式来不断满足用户需求,这样可能会导致软件的设计与开发超出预期的花费和时间,并且在反复修改的过程中,容易使客户对项目是否能够顺利完成产生疑虑。针对这类风险,一方面可将生命周期法与原型法结合在一起,互为补充,软件开发中以结构化生命周期法为主要方法,在局部环节则利用原型法来快速获得用户反应信息9。

10、另一方面做好与客户的沟通,及时告知客户软件设计与实现的进度与过程10。 4.3测试阶段 测试阶段常面临的风险为测试用例不完善。这样可能导致测试就不够全面,软件中存在的错误未能发觉,使得软件性能降低。可采取的防控措施包括:(1)对测试人员进行软件需求的培训。(2)加强对测试用例的评审。(3)在条件同意的情况下,可以邀请用户参与软件测试。4.4实施阶段实施阶段可能会面临客户过于依靠技术人员,迟迟不肯验收项目的风险。采取的防控措施包括:(1)形成标准的用户手册,加强对软件用户的培训。(2)做好领导层的工作。(3)宣讲公司后期的服务范围和服务管理的标准性。新旧系统切换的过程中也存在一定风险。假如转换工作缺乏标准的管理和可靠的安全保障,势必会造成严峻的后果,甚至影响正常工作。面对这种情况,一是需要特别注意原系统和新系统的文件爱护工作,加强人员的管理和数据的备份;二是依据用户要求、立项单位状况、转换过程中的开展情况调整系统切换进程。 5结束语 软件开发过程中存在着各式风险,对

温馨提示

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

评论

0/150

提交评论