1.软件风险管理相关理论 1.1风险管理的概念 所谓的风险就是损失发生的可能性,同时其具有两大基本属性,分别 为结果与概率。因此软件项目管理中的风险就是软件开发成功性概率的高低及其 出现损失的不确定性。
1.2软件风险管理的必要性 与其他的项目开发较为类似,软件工程项目在进行开发的过程中也面 临较多的风险,部分风险对软件开发项目甚至是灾难性的。风险的存在具有较强 的普遍性与客观性,并不随人的意志而发生转移,在整个软件项目开发的过程中 风险时刻存在,技术人员所能做的仅仅是采取各种手段降低软件开发项目风险的 概率,降低风险带来的损失程度,要想全面地消除风险是不可能的。
在软件项目开发的过程中,风险管理工作有着非常重要的作用。首先, 通过全面、有效的风险管理在很大程度上能够提升软件开发项目的成功率,降低 软件开发项目的风险。其次,在软件项目开发的过程中,通过全面的风险管理, 在很大程度上能够提升软件开发团队的健壮性,可较好地提升整个软件开发团队 的信心,更好地保持软件开发队伍的稳定性。第三,在软件项目开发的过程中, 通过有效的风险管理工作,能够帮助软件开发的过程中找到开发的重点,将重心 转移到防止重大风险上,将软件开发从传统的救火转变为主动的防御。因此,在 软件项目管理过程中,全面增强风险管理工作是非常必要的。
2.软件项目风险管理的过程2.1软件项目风险识别 在进行软件项目风险管理的过程中,首先需要进行风险识别。在进行 软件开发项目的风险识别时,应首先了解软件项目开发过程中可能存在的风险。
首先是软件项目开发阶段可能存在的风险。主要有:软件系统开发目标不够清楚, 软件开发的范围较大或者较小,软件开发之前并没有与用户进行全面深入的沟通, 对用户的实际需求了解不够深入,没有进行对应的可行性研宄。其次是设计阶段 存在的风险,主要有:软件开发团队缺乏设计经验,软件开发计划仓促,软件开 发环境不达标,软件开发设计错误,软件开发设计人员开发能力较差等。软件开 发项目收尾阶段的风险则包括软件开发的质量较低,客户对开发的软件不满意, 开发软件并没有按时到货,软件开发资金不能及时回收。上述风险均在是软件项 目开发过程中容易出现的,因此,在进行软件项目风险识别时应结合实际情况, 从上述方面进行软件的风险识别。
在软件项目开发过程中进行风险识别时,可以借助现代风险识别方法, 例如:头脑风暴法、访谈法等。其中,头脑风暴法为当前软件项目开发过程中风 险识别常用的方法,通过采用头脑风暴法可得出一份较为完整的风险列表,从而 为后续的风险分析提供一定的定量与定性数据。另外,头脑风暴法一般由软件开 发风险管理团队来执行。
2.2软件项目风险分析 在软件项目风险管理过程中通过软件风险分析,能够有效地帮助软件 开发人员及时发现当前软件开发过程中存在的不确定因素,并根据风险分析,可 以制定出对应的决策。在对风险进行分析时,常采用对风险进行级别分类的方式 对风险进行分析。
2.3软件项目风险计划 软件项目风险计划主要包含制定出软件开发项目风险管理的制度与 具体的风险控制管理的过程。风险管理计划通常写成文档的形式,软件开发技术 人员应根据软件开发过程中可能出现的风险类型制定出对应的软件项目风险管 理计划,并将风险管理计划执行的权力和责任落实到软件项目开发的 整个过程 中。
2.4软件项目风险跟踪软件项目风险跟踪并非是一种被动活动,而是对软件项目开发过程中 风险的主动控制,软件项目风险跟踪主要包含2个方面的内容,分别为:观测项 目中各种信息指标和衡量项目中所含的风险。通过软件项目风险跟踪可以准确地 定位何时应执行何种风险行动计划。同时,在软件项目风险跟踪的过程中非常有 可能发现软件项目在开发过程中出现的其他风险,这就需要对先前制定的风险计 划进行针对性的调整,并形成相应的风险分析报告。
2.5软件项目风险控制对策 软件项目风险控制对策一般可采用4种对策,分别为:风险规避、风 险减轻、风险转移及风险接受。其中风险规避为通过对先前的风险控制计划进行 变更,从而达到有效的消除风险、控制风险产生的效果。虽然软件项目在开发的 过程中面临的风险是不能完全避免的,但是通过采取合理的规避措施,例如,增 强沟通、表明需求、听取专家意见等可以在很大程度上减低软件项目的风险。风 险减轻为通过采用某种针对性的策略,降低软件开发过程中某种风险发生的概率 或者将某种损失降低到能够接受的范围之内。风险转移为采用合适的方法将软件 项目开发中可能出现的某种结果并连同该种结果出现的风险全部转移到第三方, 通过采用该种对策,仅仅将风险管理责任转移到第三方,但是并没有实现对风险 的消除。风险接受为软件项目选择承担该种风险发生之后带来的后果,多数情况 下是由于软件开发小组认为自身能够承担该种风险发生之后带来的后果,其也是 一种积极地应对软件项目开发风险的方式之一。
3.软件项目风险管理工作优化策略 在软件项目开发的过程中经常出现多种类型的风险,同时,虽然严格 地执行了第2节中指出的措施,但是仍旧出现了较高的风险,因此,全面实现软 件项目风险管理工作的优化是非常重要的,在具体的实施中可以从如下4个方面 着手。
3.1制定出完善的风险评估方法 制定出完善的风险评估方法在很大程度上能够提升软件项目风险管 理工作的高效性。在具体的风险评估的过程中,可以采用因果分析法,该种方法 能够较好地揭示软件项目开发出现风险的原因及其影响之间的关系,能够帮助风 险管理人员追根溯源,找出软件项目开发出现风险的根本性原因。同时在采用因 果分析法进行软件项目风险分析时,可以使用鱼骨图,对软件项目风险分析首先进行定性,逐步筛选主要原因和次要原因。此外,还可以采用决策分析法、帕雷 托分析法等类似的软件项目风险评估方法。
3.2对软件项目风险管理工作进行评估 对软件项目风险管理工作进行评估,在很大程度上能够提升软件项目 开发工作风险识别与管理的有效性。在执行评估方法之前,首先要取得负责经理 的许可。经理能帮助你及时获得数据,并能从大小、结构和应用领域等方面描述 项目的特点。
3.3制定出对应的改进计划,实施制定的改进计划 在进行软件项目风险管理的过程中,对先前制定的风险识别与管理计 划,在具体的执行过程中,由于受到外界环境因素等方面的影响,其中必然存在 一定的不合理之处,因此,在进行软件项目风险管理的过程中,对制定的风险识 别与管理计划应进行针对性的调整,使制定的风险识别与管理制度更好地为软件 项目开发服务,而并非限制软件项目管理中风险识别与管理工作的有效开展。另 外,在进行软件项目管理中的风险管理计划改进时,应作好全面的沟通工作,充 分了解本次开发软件的使用目的、使用范围等相关情况,从而更好地提升软件项 目风险管理工作的实际效用。
3.4提升软件项目开发团队的整体开发能力,构建一支高效协作的项 目团队 提升软件项目开发团队的整体开发能力在很大程度上能够增强软件 项目管理中风险识别与管理的整体效果。在具体的实施过程中,首先选择出合适 的软件项目开发经理,经理不仅要懂技术,还应当懂业务,需要具备良好的沟通 能力与管理素质。然后根据软件项目开发的具体特点,制定出软件项目管理计划, 并保证软件项目管理计划得到有效的落实,提升软件项目的整体可控性。其次, 构建出完善的软件项目开发风险识别与管理培训制度,全面增强所有软件项目开 发人员的整体风险意识及风险识别能力,构建一支高效协作的软件项目团队。第 三,在团队的构建过程中,不仅需要技术部门的参与,部分业务人员也应当参与 其中,从而更好地理解本次软件项目开发的战略规划,保证从全局的角度进行软 件项目风险识别与管理,共同控制软件项目开发的进度,严格地把控项目开发的 质量,对于软件项目管理中出现的问题共同探讨,必要时可以构建“风险清单”, 从而更好地应对软件项目开发过程中出现的风险,同时对风险的类别进行详细划分,确定其为需求风险还是技术风险,更好地提升风险管理的针对性。
4.结语 综上分析,当前在对软件项目开发的过程中,其中存在较多的风险种 类,严重地影响到软件开发项目顺利有序的开展。这就要求在进行软件项目开发 时,应严格按照软件开发风险管理控制的步骤进行,降低各种风险出现的概率, 更好地提升软件开发项目的经济性。
杨会兰 (石家庄邮电职业技术学院,河北石家庄050001)
扩展阅读文章
推荐阅读文章
推荐内容
钻爱网 www.zuanai.cn
Copyright © 2002-2018 . 钻爱网 版权所有 湘ICP备12008529号-1