基于生命周期的软件开发动态风险管理

2021-09-24 03:47温林芝
电脑知识与技术 2021年23期
关键词:软件开发生命周期管理

温林芝

摘要:现阶段软件企业在实际落实项目开发相关工作的过程中往往存在一定程度的风险,而为了使所开发的软件能够充分发挥应用价值,并且实现顺利盈利,在充分考虑软件自身生命周期的基础之上,在软件开发的过程中,落实动态风险管理的相关工作就显得十分有必要。本次研究工作的开展过程中,文章就以软件的不同生命周期为基础,探讨了需求分析阶段、软件设计阶段、软件编码阶段、软件集成和测试阶段潜在的风险,并针对上述风险提出了相应的解决策略,希望能够带给广大研究者一些有益的帮助和启发。

关键词:生命周期;软件开发;动态风险;管理

中图分类号:TP311      文献标识码:A

文章编号:1009-3044(2021)23-0078-02

软件开发本身是一项具有较强系统性以及复杂性的工作,软件开发工作能否顺利展开,往往会受到多方面因素的影响。从实际工作的角度来讲,软件开发工作的过程也伴随着一定的风险,软件开发工作的开展过程中经常会遇到各种各样的问题,甚至在一些问题无法得到有效解决的情况下还会导致软件开发失败。针对上述情况,在软件开发工作的开展过程中对潜在的相关风险进行动态管理就显得十分有必要,由于在软件开发的不同阶段开发者所面临的开发风险也存在着较大的差异。文章就从软件开发的生命周期出发,探讨了软件开发过程中常见的风险以及具体的解决策略,下文将具体报告研究结果。

1 软件的不同生命周期阶段潜在的风险

1.1 需求分析阶段潜在的风险

软件开发工作的落实过程中,在需求分析阶段开发人员面临的一个最常见的风险就是软件开发错误,当用户需求较多的时候,导致软件开发工作很难按时完成或是难以完成软件测试的相关工作等。从软件开发的需求分析阶段的特点来讲,针对需求分析报告的数据,不仅要保证文字的描述具有较高的清晰度、保证需求的分析具有较高的完整性,同时还需要保证分析的结果更容易理解。各项工作的开展主要目的在于为后期软件开发工作的全面展开提供必要的支持,使软件开发工作的开展能够体现较强的可追溯性。

首先,从文字描述的清晰度来看,分析员在实际落实需求分析相关工作的过程中,往往难以完全通过技术语言来表达客户的需求,进而导致所形成的分析报告出现语言描述不规范、不准确等一系列的问题,为后续软件设计工作的开展带来一定的难度,导致软件设计质量下降,不利于软件项目的整体推动,使得所开发出的软件无法全面满足客户的实际需要。

其次,从需求分析完整性的角度来讲,在实际形成需求分析报告的过程中,分析人员要能够在报告中详细的反映客户的需求,并将客户的需求进行分解,在软件设计的每一个环节进行体现,否则,也会在一定程度上导致软件开发人员在进行软件开发的过程中由于缺乏对于细节问题的关注,导致无法按计划完成软件开发的相关任务。

最后,从需求分析理解难度的角度来讲,由于人与人之间在理解能力方面普遍存在着较大的差异,个别情况下,需求分析报告的阅读者出于自身因素或是外部客观因素无法对于需求分析报告中的一些语句实现较好的理解,导致误解报告中的一些内容,进而给后续工作的开展带来了一定的难度。

除此之外,由于软件的开发周期相对较长,客户在此过程中需求也可能会发生变化,进而增加软件设计工作的开展风险。

1.2 软件设计阶段潜在的风险

软件设计阶段的工作目标主要是连接软件需求分析阶段的工作和后期编码阶段的工作。软件设计工作的开展不仅要能够保证完整性和具有较强的结构性,同时,设计文字还需要具有较高的清晰度。而在这一部分工作的开展过程中也伴随着一定程度的风险,常见的风险主要包括软件设计错误、对设计报告理解错误、模块结构错误,致使下一阶段的工作无法实现顺利完成。

无论是软件的设计阶段,还是软件的需求分析阶段,在实际进行软件开发的过程中均将其划归为基础阶段的范畴。然而,由于这一阶段的工作要能够将客户的需求转化成专用的技术语言,因此,这一阶段的工作开展质量也会影响到后续软件编码工作以及软件集成和测试相关工作的开展,且相比于软件需求分析相关阶段的工作来说,这一阶段工作的开展有着更高的复杂度,面临的风险也更多。

软件设计报告的主要目的在于为后续编码人员的工作提供指导,方便后续测试人员对软件功能情况进行分析。但是,由于软件设计者在分析客户需求的过程中需要进行通俗语言向技术语言的转化,这就会在一定程度上影响技术分析的明确度以及完整度,进而增加了设计报告的理解难度,影响使用者的正常使用。

软件设计结构会直接影响软件测试、软件编码相关工作的开展,对于软件的功能能否得到正常实现会产生直接的影响。在软件设计完整度无法得到保证的情况之下,软件功能就会发生遗漏,进而影响到软件自身的可扩展性,严重者还会导致开发返工,增加软件开发的成本。

1.3 软件编码阶段潜在的风险

从软件编码阶段的工作来讲,相关工作能否顺利展开主要受到以下几方面因素的影响,即软件自身的模块结构、维护软件代码的难度两个方面,在这两个方面所面临的风险主要包括错误的代码无法得到有效修正、模块结构设计发生错误。

这一阶段的工作是在软件设计工作结束之后开始,首先从模块结构的角度来讲,其所面临的风险主要是在实际针对软件项目进行详细设计以及概要设计之后,在编码阶段工作的开展过程中,编码人员的工作还会受到软件结构问题的影响,若软件设计阶段存在编码误差或是设计误差,则会导致软件结构的搭建错误、程序代码修正困难两方面的问题。其次,从软件代码修正的角度来讲,若代码维护难度较高的情况之下,后续进行代码维护的过程中往往也需要付出较多的成本,给用户后续的软件使用带来一定的麻烦。

1.4 軟件集成和测试阶段潜在的风险

软件集成和测试相关工作的开展过程中,工作目标能否得以有效达成,主要的影响因素就是软件的可靠性以及软件的正确性。因此,在这一阶段工作的开展过程中,最常见的问题主要包括由于软件测试人员对错误进行了低估,进而导致软件的功能无法得以正常实现。从测试正确性的角度来讲,软件测试人员缺乏足够的修正错误的能力以及识别错误的能力。从测试可靠性的角度来讲,主要风险在于软件集成和测试人员针对软件正常操作过程中存在的错误无法实现及时发现。从测试时间的角度来讲,主要风险在于由于无法及时完成软件测试以及软件集成的相关的工作,进而增加了软件开发的成本。

猜你喜欢
软件开发生命周期管理
枣前期管理再好,后期管不好,前功尽弃
从生命周期视角看并购保险
民用飞机全生命周期KPI的研究与应用
企业生命周期及其管理
信息安全环境下的计算机软件开发研究
核电厂定期试验管理软件开发
FPGA软件开发过程中编码规范的作用