周恒伟
摘要:近年来,信息技术以日新月异的速度飞快发展,人类文明进入到信息时代,在这一时代背景下,极大的转变了人们的工作及生活模式,软件开发领域的重要性也逐渐突显出来。鉴于此,本文首先对软件开发过程中存在的风险因素进行了简要概述,并分析了软件开发的风险类型,最后有针对性的提出了软件开发风险控制策略,希望为我国相关领域的全面发展奠定一定理论基础。
关键词:软件开发 风险 控制策略
在信息时代背景下,人们日常工作以及生活中的各个领域在发展中,都需要应用各种功能的软件,软件开发工作的重要性突显出来。但是,在实际进行软件开发的过程中,需要面对各种类型的风险,加大风险控制力度、完善风险控制方案,才能够顺利完成各个阶段的开发任务,推动我国各个领域的全面发展。在这种情况下,积极进行软件开发的风险与控制策略的研究具有重要意义。
一、软件开发过程中存在的风险因素
风险即人们在面对某一事件和现象时无法确定的结果;风险因素则是引发这一结果的原因以及影响因素。在实际进行软件开发的过程中,由于软件本身呈现出较强的复杂性,且应用环境也存在差异,因此工作人员需要面对的风险因素较多,软件开发过程中存在的常见风险因素如下:
第一,软件产品创新开发过程中需要面对的性能风险。即此类型软件一经开发,无法达到软件开发目的,无法满足客户需求的风险;第二,开发成本因素。在软件开发前首先需要对项目资金进行设定,但是在实际开发过程中受各种因素的影响,导致实际使用资金超过预算,最终造成不确定的计划成本;第三,支持风险。软件在被开发以后,试运行过程中产生运行错误,此时无法确定其升级、维护以及修改等工作而产生的风险;第四,监督风险。无法确定软件开发过程中的进度。以上软件开发过程中的不确定因素是客观存在的,软件功能不同、客户需求不同,软件开发过程中所面临的风险也存在差异,因此软件开发风险控制难度较高。
二、软件开发风险类型
(一)以风险内容为基础划分软件开发风险类型
第一,范围风险。在实际进行软件开发以前,有关工作人员没有详细、精确的掌握项目范围,导致后期实际开发过程中引发各种风险,延长软件开发时间、增加软件开发成本等;第二,质量风险。即在开发软件的古城中,工作人员未及时确认技术质量标准和开发规范,同时也没有精确的定义软件功能标准,最终导致软件开发的预期质量、功能标准与软件实际质量、功能标准不符,产生严重质量问题;第三,技术风险。即在整个软件开发的过程中,接口、验证、维护以及技术使用等环节存在各种操作不合理等问题,导致各种不确定因素产生于软件当中,引发技术风险。同时,在随意更改软件开发技术方案的背景下,也将导致软件整个开发过程中形成严重的技术风险;第四,组织风险。企业在运行过程中,没有合理的进行内部资源调整,也没有充分调动各个部门的工作积极性,导致参与软件开发的部门在运行的过程中,树立了不同的软件开发目标,各层级管理人员没有形成一致的项目发展目标,导致实际软件开发过程中经常出现变更组织战略目标的现象,增加项目计划安排和资金等方面的风险。
(二)以风险因素为基础划分软件开发风险类型
在实际进行软件开发的过程中,开发人员需要对可能面对的项目风险因素进行预测和判断,在这一过程中通常会产生两种类型的风险。第一,能够被有效预测和明确的风险。软件开发人员在具备一定工作经验的基础上,就可以对此类型风险进行全面预测和确定,因此属于常见风险,能够有针对性的提前做好风险控制和预防策略;第二,无法被有效预测和明确的风险。在实际进行软件开发的过程中,工作人员无法凭借软件开发过程以及以往的经验所判断的风险内容,因此此类型风险具有严重的不可防控性和突发性,风险一旦发生会造成较大范围的影响,直接关系到软件开发的成功率。
三、软件开发风险控制策略
(一)应对风险的方案
首先,避免风险。通过全面的调查工作,在未发生风险之前,将各种潜在的风险因素全面挖掘出来,从而提升控制计划的可行性、完善性和有效性。尽管在实际进行软件开发的过程中,不可能对所有风险进行提前预测,但是针对部分具有特定规律的风险是可以凭借工作经验来预测和消除的,在这一过程中就可以有效的避免风险,构建完善的应對风险方案。
其次,减缓风险。在软件开发前、软件开发过程中,应在保证软件开发项目顺利进行的基础上,有针对性的减少资金使用量,从而实现控制该环节软件开发风险概率的目标,将经济损失降到最低。例如,部分软件产品在开发的过程中,软件开发人员为了确保开发出来的软件产品不会发生报废现象,通常会在软件开发阶段引入专利技术。
再次,吸纳风险。即软件开发管理人员在日常工作中,积极面对各种可能存在的风险。在此基础上有针对性的制定风险控制、规避以及预防计划,将风险发生的概率降到最低。
(二)规避风险的方案
在软件开发以前,首先应展开项目开发规划,这一阶段是全面控制风险因素的关键时期,能够有效规避大部分风险因素,具体措施如下:
第一,构建通畅性良好的沟通交流渠道。软件本身具有较强的复杂性,因此实际进行软件开发的过程中会涉及到多个部门和多个工作人员,各部门及工作人员沟通有效性直接关系到软件开发的效率和质量。通过充分的沟通,有助于整个软件开发团队更加明确软件开发的理念,避免不必要的理解偏差,最终可以有效规避软件开发风险。因此,软件开发工作人员在对项目计划进行制定的过程中,首先应对客户对软件功能的需求进行全面掌握,在此基础上初步制定并向客户演示软件系统模型,从客户反馈意见出发来调整软件开发策略,最终提升软件的使用性能。
第二,提升风险管理人员的综合素质。在开发软件过程中,要想提升可靠性,同时顺利实施各项软件开发计划,提升项目管理人员的综合素质至关重要。因此,有关企业必须加大对软件开发项目主管人员的培训力度,确保其在接受系统性管理培训的基础上再走入工作岗位,同时,在软件开发中,必须意识到软件开发的不断进步,内容的不断完善会引发不同的风险,这就要求管理人员在日常管理活动中有针对性的落实风险管理措施,实施动态化管理,从而对开发风险进行有效控制。
(三)有效控制风险的方案
第一,提升开发制度科学性和合理性。只有这样才能够更加有秩序的进行软件开发,确保参与软件开发的工作人员都能够积极严格遵守开发模式,有秩序、规范化的展开工作,促使可能发生的风险因素得到最大化控制。为了实现这一目标,软件开发项目管理人员在日常工作中,应制定明确的工作规范,对各个软件开发工作环节进行规范,避免秩序混乱等现象的产生,将沟通风险发生的概率降到最低。
第二,提升风险管理规划完善性。有关部门在运行过程中,应对软件开发的流程进行明确制定,针对每一个流程制定风险处理措施,确保风险处理的有效性。合理性和速度,将软件开发风险的影响降到最低,在这一过程中,还可以避免发生风险以后产生工作秩序混乱的现象而增加其他风险发生的概率。
四、结语
综上所述,信息时代背景下,软件开发对于各个领域的全面发展都具有直接影响,而在实际进行软件开发的过程中,各种风险是客观存在的,这就要求软件开发人员在日常工作中树立较强的风险意识,能够凭借自身的工作经验以及认真负责的工作态度,及时预测、确定部分风险,同时还应严格遵守风险控制制度,从软件开发实际情况入手,提升风险控制制度的可行性和完善性,最终为提升软件开发效率和软件质量、降低软件开发成本奠定良好基础。
参考文献:
[1]魏利軍,王如君,多英全,胡馨升.化工过程定量风险评价进展及风险准则比较分析[J].中国安全生产科学技术,2017,(08).
[2]高剑,严卫生,杨立,张福斌,徐德民.一种用于AUV导航控制软件开发与系统测试的半实物仿真系统[J].西北工业大学学报,2017,(01).
[3]汤四新.现代会计信息系统销售/收款能力成熟度框架性分析模型研究[J].中国管理信息化,2015,(11).
[4]吴登生,李建平,孙晓蕾,宋浩.考虑风险相关性的软件风险多目标优化控制研究[J].系统工程理论与实践,2015,(03).
[5]邢志祥,王云慧,杨扣华,等.化学流程工业多米诺效应风险评估的研究进展[J].中国安全科学学报,2016,(10).
[6]吴登生,宋浩,李建平,蔡晨.带优化参数的SVR模型及在软件成本估算中的应用[J].运筹与管理,2016,(01).
[7]王长峰,王化兰.大型软件研发项目安全性风险定量分析理论模型[J].清华大学学报(自然科学版),2015,(S2).
(作者单位:湖南化工职业技术学院)