摘要:随着信息技术的发展,计算机得到广泛的应用。而计算机软件开发项目也向越来越广泛的领域延伸,同时人们也需要迎接前所未有的风险的挑战,这个项目已经成为具有系统性和复杂性的工程。本文基于作者实际工作经验,强调计算机软件工程风险管理的重要性,剖析了软件工程风险管理的目标,最后提出了针对性的风险管理策略,旨在更好地防范和规避风险。
关键词:计算机;软件工程;开发;风险管理
Abstract: with the development of information technology, computer has been widely used. The computer software development project also extends to more and more extensive fields. At the same time, people also need to meet the challenge of unprecedented risks. This project has become a systematic and complex project. Based on the author's practical work experience, this paper emphasizes the importance of computer software engineering risk management, analyzes the goal of software engineering risk management, and finally puts forward the targeted risk management strategy, aiming at better preventing and avoiding risks.
Key words: computer; Software engineering; Development; Risk management
风险管理主要是社会组织及个人,为降低风险所采取的辨识、估算及应对等过程。从现阶段来看,风险管理在软件工程管理中往往容易被忽略。不少项目经理均通过回避、拒绝等方法来防范风险。大型软件项目中,如缺乏具体的风险计划,科学的风险识别与监控方法,恰到好处的进度控制及风险防范策略,一旦风险因素产生,很可能会引发涟漪效应,导致超出预算甚至失败。
1 计算机软件工程风险成因
1.1 计划制定盲目性
盲目性选择、脱离实际的思想,很可能导致软件项目失败。相关人员在制定总体、阶段计划时,容易容易忽略工作量评估的重要性,而一味凭靠自身经验。科学估算软件开发工作量,这是一项关键性工程,应综合考虑开发阶段的工作复杂性及经验等诸多因素,以量化某些内容。典型问题在于:对工作量的价值认识不到位,软件开发往往会产生往常没有的工作量,如人员培训、各阶段评审等,缺乏经验的项目经理往往会遗漏。
1.2 沟通不畅引发风险
从本质上看,软件开发属于系统性工程。它关系交错,沟通交流量极大,且极易损耗任务部署后的个人时间。沟通工作量主要从下列两方面体现出来:培训与互相交流。各成员需针对技术、整体策略以及项目计划展开培训。由于该类培训无法分解,增加部分的工作量,往往会随着人数的变化而呈线性变化。任何新晋员工,都必须接受岗前培训,以把握其工作进度。
1.3 人员成本失衡
在软件工程中,人力成本在总成本中占较高比重,其灵活度相对较高,项目中的人力成本对赢利水平有很大影响。实际中可能发现:项目的预算利润偏高,但最终核算部门提交的总体利润却显示赔本。究其原因,在于相关人员未考虑软件项目中的人力成本及关键要素,未把握各变化因素对工作量与进度的影响,更未合理估算工作量与人力成本。为赶超项目进度,部分项目会通过追加人力、强制软件开发人员加班加点等。实践表明,项目进度相对紧张的情况下,追加人力并无法提升进度;长时间加班,员工的效率会下降,差错率相应增加,无法达到质量改善目标。
期刊文章分类查询,尽在期刊图书馆
2 计算机软件工程风险管理目标
2.1 损前目标
2.1.1合法性目标。风险管理者应充分了解与经营相关的法律法规,应认真审视各项经营行为及合同的合法性,避免企业在财务、时间、人才及名誉上造成损失,使之能顺利开展生产经营活动。
2.1.2经济目标。计算机软件工程应通过经济性方法来控制损失,具体为:在风险事故发生前,应分析安全计划、防损技术的成本支出,为计算机软件工程制定最合理、最科学的风险管理计划与执行细则。
2.1.3安全目标。安全目标,即将风险控制在允许范围内。风险管理者应让人们正确认识、应对风险,以提升其安全意识,防范风险并执行风险管理计划。
2.2 损后目标
(1)收益稳定。企业的持续经营,有助于实现收益稳定目标,推动生产的持续增长。收益稳定表明软件工程项目能顺畅开展,为完成收益稳定目标,企业不得不增加风险管理费用;(2)社会责任。尽量减少企业受损对投资者及社会的影响,企业的严重损失对员工及顾客有很大影响,甚至波及供货人、税务机构乃至全社会的利益。为完成上述目标,风险管理者应科学识别和分析风险,并采取针对性的风险防范措施;(3)生存目标。损失后的风险管理目标是为了维持生存,使企业能在最短时间内恢复生产与经营;(4)持续生产经营。风险事件或多或少会给人类造成程度不一的损失及危害,阻碍其生产经营活动,甚至导致生产瘫痪。
3 计算机软件工程风险管理策略
3.1 认真辨识风险
风险识别,即系统化明确项目计划(估算、资源部署及进度)的威胁。项目管理者通过识别和预测潜在风险,可有效规避该类风险,必要时还可采取针对性的防范措施。计算机软件工程风险主要包含两类:一般性风险与特定产品风险。一般性风险,对任何软件项目均为潜在性威胁。特定产品风险,通常只有那些熟悉计算机软件工程项目的技术人员方可予以识别。为更好地分辨特定产品风险,我们就必须认真查看软件规范及产品说明,以了解威胁项目计划的某些特性。上述两类风险均可进行系统化标识,风险识别方法的关键在于构建风险条目检查表,以便更好地分辨常见子类型中潜在的风险。
3.2 重视风险估算
软件项目管理者应正确度量风险的影响因素,以及风险将造成的损失。为科学估算各类风险,我们有必要构建一套完善的风险度量指标体系;应明确标的风险产生的后果及损失;事先估算风险对软件产品及整个项目造成的影响;应量化风险估算结果。
3.3 风险应对措施
风险应对,即实施风险行动计划,将风险降低到最低。风险应对主要涉及下列内容:获得授权者应积极对触发事件做出反应。恰到好处的反应,大体包含回顾现实和更新行动框架,及书面确立风险行动计划;应根据计划、报告进展以及实时交流,来把控风险状态,小组内应注重交流,以更好地防范风险。
3.4 充分论证与有限设计
软件开发具有较强的探索性,且隐藏着很多失败的风险。在可研阶段,应认真收集相关信息,推出多种可行方案供选择与论证。制定决策时,应把控情报数量与质量。情报信息越准确,决策也就越科学,项目的失败风险相应也就越少;相反,风险将增加。除此之外,应做到设计先行。在设计软件工程整体方案时,应控制产品的选型关,避免计算机网络、系统软件及主机间出现技术不兼容等问题。在构建网络平台方案时,还应明确设备的性能参数与主要配置。
3.5 软件开发平台要进行统一规划
对整个计算机软件发展造成重要影响的原因就是软件在运行中不具备统一的平台。重复开发各种平台构成软件开发平台,而随着时间的推移和网络的快速发展,统一规则的软件开发平台会很快的构建起来。此外,可以聚集各国软件开发人员共同开发计算机软件。
结束语
综上所述,通过上述对计算机软件工程风险管理相关问题的探讨,我们对风险成因与防范对策有了深入了解。只有重视对软件工程的精细化管理,搞好风险辨识、分析和估算工作,才能有效降低和规避软件工程风险,创造更高的工程效益。
参考文献
[1]李万军,曹艳云.论计算机软件工程管理工作[J].才智,2012(03).
[2]李建兵.计算机软件工程方法的进展研究[J].新课程(下),2011(08).
[3]赵鑫.计算机软件工程风险管理研究[J].同济大学,2011(23).
论文作者:张志慧
论文发表刊物:《防护工程》2018年第34期
论文发表时间:2019/3/22
标签:风险论文; 计算机软件论文; 风险管理论文; 项目论文; 目标论文; 工程论文; 软件论文; 《防护工程》2018年第34期论文;