关键词:
软件服务
开发过程
风险评估
信息熵
Markov理论
摘要:
新一轮的科技革命和产业变革推动着数字经济的发展。传统产业的数字化转型过程中,需要大量高质量的软件服务的支持。软件从业者和相关的研究人员一致认为:软件开发过程直接影响软件产品的质量,高质量的软件服务产品源于高质量的软件开发过程。
以云计算、云服务为核心的新的计算环境下,软件服务的轻量化、微服务化成为核心特征之一,这也要求软件服务开发过程的变化和调整:传统的瀑布式或面向对象的大型软件开发模式面临挑战。另一方面,云计算环境下,软件服务的功能性方面发展较为成熟,云平台或软件服务市场上存在着覆盖各行业、各领域的功能软件服务。当前软件服务质量的关注点,也由传统的功能性为主转向了在功能性基础上更注重性能、安全性、可靠性、稳定性等非功能上。非功能性的需求也对软件服务开发过程提出了更高的要求。因此,优化和调整新计算环境下软件服务开发过程,提升软件服务开发过程质量成为破局之关键问题之一。
若要优化和提升开发过程的质量,发现和识别开发过程中存在的风险则是首要问题。然而,针对不同模型的软件企业,在风险分析与识别方面的问题不同。诸如Microsoft Corporation、Salesforce、Service Now、IBM等大型软件公司拥有或有实力聘请专业的团队进行风险评估和优化改进管理。而中小企业则无力承担这些时间和经济成本。对于中小企业而言,亟需一种行之有效、易操作、成本可接受的风险识别和评估方法。针对上述问题,本文研究工作总结如下。
(1)云计算环境下软件服务开发过程模型的建立。本文在前人研究的基础上,以ISO/IEC12207国际标准为基础,结合云计算环境下软件服务及其开发过程的特征,重构了软件服务开发过程模型,并提出了基于信息熵理论的过程活动重要计算方法。与以往的过程模型不同,本文的开发过程模型更能体现当前新计算环境下轻量化、微服务化的开发过程特征。权重计算方法在成本、易用性和客观性方面具备较为明显的优势。
(2)以信息熵和Markov链理论为基础,本文从开发过程风险构成的不确定性、风险发生时带来的损失期望和常态环境下开发过程发生风险的稳态概率三个维度计算子过程风险。较之风险评估方法,本文所使用的方法不仅能够体现开发过程的整体风险情况,而且能够得到子过程和每个过程活动的风险信息,对于中小企业而言,如何发现过程活动和子过程的风险往往更具有实用的价值。
(3)以中小软件企业M公司为例进行实证研究,一方面验证了所提出模型和方法的有效性和可行性。另一方面,可帮助该公司明确开发过程活动的重要程度,及过程活动及子过程的风险情况,并根据计算结果给出了相应的管理建议,以帮助企业优化和改进开发过程,从而从根本上提升软件服务产品的质量。
本文即针对当前软件服务开发过程中的风险问题进行研究,提出基于信息熵和Markov链理论的风险评估方法以应对当前中小软件企业面临的开发过程方面的困境。本文实现了风险评估理论与应用实践的结合,以云计算环境下软件服务开发过程为对象,引入信息熵和Markov链理论,丰富了风险评估和管理的理论内容,是风险管理与评估理论体系在新计算环境下的应用和发展。在实践意义和价值方面,所提出和使用的方法可为中小软件企业识别和发现开发过程中的风险,从而优化和提升开发过程质量,提供解决方案的参考。