风险管理:软件开发项目风险管理探讨

风险管理:软件开发项目风险管理探讨,第1张

风险管理:软件开发项目风险管理探讨,第2张

摘要:项目管理对于以应用开发为主的软件企业是一个行之有效的管理方法,项目管理在软件开发中的应用日益受到重视。本文着重分析和论述项目管理在软件开发中的应用的成因、存在的问题以及相应的解决方案。
  关键词:软件开发;项目管理
  所谓“风险”,从主观的角度看,风险是损失的不确定性;从客观的角度看,风险是给定情况下一定时期可能发生的各种结果间的差异。它的两个基本特征是不确定性和损失。IT行业中的软件项目开发是一种以人为本的创造性活动,不管开发过程如何进行都有可能出现超出预算或时间延迟的情况。所以,风险在软件项目中是普遍存在的。
  在项目管理中,建立风险管理策略和在项目的生命周期中不断控制风险是非常重要的,风险管理包括四个相关阶段:
  1.风险识别
  风险识别就是采用系统化的方法,识别某特定项目已知的和可预测的风险。
  (1)资源风险
  资源风险包括:组织风险、资金风险、人员风险、时间风险。
  (2)产品规模风险
  与软件规模相关的常见风险因素有估算产品规模的方法、产品规模估算的信任度、产品规模与以前产品规模平均值的偏差、产品的用户数、复用的软件有多少、产品的需求改变多少。
  (3)需求风险
  很多项目在确定需求时都面临着一些不确定性和混乱。当在项目早期容忍了这些不确定性,在项目进展过程当中得不到解决,这些问题就会对项目的成功造成很大威胁。
  (4)相关性风险
  许多风险都是因为项目的外部环境或因素的相关性产生的。经常我们不能很好地控制外部的相关性,因此缓解策略应该包括可能性计划,以便从第二资源或协同工作资源中取得必要的组成部分,以觉察潜在问题。
  (5)管理风险
  在定义了项目追踪过程并明晰项目角色和责任后,能处理计划和任务定义不够充分、实际项目状态、项目所有者和决策者分不清、不切实际的等风险因素。
  (6)技术风险
  在早期,识别风险并采取预防措施是解决风险领域问题的关键,如:培训、雇佣顾问以及为项目团队招聘合适的人才等。
  2.风险评估
  (1)建立风险清单
  风险清单是关键的风险预测管理工具,风险清单中应列出在任何时候碰到的风险名称、类别、概率及该风险所产生的影响。
  风险的影响是指当风险说明中所预料的结果发生时可能会对项目产生的冲击,其量化评价要考虑到其性质、范围和时间:
  低度影响I=1 轻微,项目组可以承受;
  中度影响I=2 严重,影响项目的成本、进度;
  高度影响I=4 灾难性,直接影响项目的成败。
(2)风险评估
  根据风险的不确定性和损失两个基本特征,为每个风险计算风险值。
  风险值 = 可能性 × 影响值
  风险值越大,风险的等级就越高。
  如果一个风险影响很大,但其发生的可能性很小,那么也不应为之付出太多的管理时间。而那些高影响并且中高可能性的风险以及中度影响且有高度可能性的风险,则应当引起更多管理层的注意。
  (3)风险划分
  在进行了风险的量化分析后,需要对已经确定需要进行管理的风险进行优先级的划分。可以定义一个高优先级列表,方法是从1级风险中选择一个子集。由于每个项目的资源都是有限的,所以风险管理必须把精力集中在这种最重要的风险子集上。如果在项目进行中条件和优先级改变了,那么组成此子集的风险也要随之改变。
  3.风险管理策略
  (1)损失控制
  损失控制就是有意识地采取行动防止或减少灾害事故的发生以及所造成的经济和社会损失。
  损失控制包括两个方面的内容:防损计划和减损计划。防损计划是一种事前的预防措施,减损计划是一种事后的措施。
  (2)风险规避
  风险规避是在项目早期的计划阶段经常使用的一种有效手段,即:将风险置于项目范围之外,风险有可能通过缩小项目目标或功能的范围,或者采用一种进化的开发方法以利用其临时解决该风险问题所具备的初步能力等行动被消除。
  (3)风险转移
  风险转移就是为避免承担损失而有意识地将风险损失或与风险损失有关的财务后果转嫁给其他单位或个人,可采取软件项目外包、分割风险单位、复制风险单位的方法。
  4.风险监控
  (1)建立风险监控计划
  风险管理计划的目的是确保正确地确定、分析、记录、减轻、监测并控制项目风险。在风险管理计划中要说明将用于确定、分析、按优先级排列、监测和减轻风险的方法,也要详细说明将要执行的风险管理任务、指定的职责和风险管理活动所要求的任何资源。如果风险或减轻风险的策略有变更,应更新风险管理计划。
  (2)跟踪风险
  由于风险在项目实施过程中不断变化,所以应不断地对风险进行关注。比较好的办法是制定组织级的策略,将风险跟踪活动制度化,明确进行风险管理的时间、地点和人员信息。
  风险输入缺陷跟踪系统中也是一个很好的跟踪方法。缺陷跟踪系统能将风险项目标示为已解决或尚未处理等状态,也能指定解决问题的项目团队成员,并安排处理顺序。可将软件风险项目依序排列出来,按照缺陷存在的时间与负责者等资料排列。这样,缺陷跟踪系统就使跟踪风险的工作能更好执行并且不那么单调。
  5.结束语
  在项目运行过程中,当不能很确定地预测将来事情的时候,可以采用结构化风险管理发现计划中的缺陷,并采取行动以减少潜在问题发生的可能性和影响。风险管理意味着危机还没有发生之前就对它进行处理。这就提高了项目成功的机会和减少了不可避免风险所产生的后果。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 风险管理:软件开发项目风险管理探讨

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情