论文部分内容阅读
计算机以及计算机软件在当今社会和人们的生活中扮演着越来越重要的角色。然而,随着人们对于软件需求的增大,软件开发不能满足需求的矛盾也日益显现出来。60年代末,国际上软件业界普遍出现了“软件质量差、可靠性低、开发成本高、周期长、维护成本高”的软件危机。面向对象技术和组件技术的发展从软件方法学上为解决软件危机提供了途径。然而,仅仅依赖好的软件开发方法并不能保证软件质量。软件可信性评价是有效解决软件产品和软件开发过程中软件质量的另一条途径。软件可信性定义为描述软件系统可用性及其影响因素软件配置、软件可靠性、安全性、保密性、可维护性等软件系统特性的集合。它是反映用户需求的一种软件评价属性。
随着面向对象技术以及组件技术的发展,组件已经成为构造大规模软件系统的基本模块。组件可以由第三方开发,在一个系统中所用到的组件有可能是用不同的语言编写的,这样增加了复用性和灵活性的同时,也带来了组件的不可信性,组件之间的不匹配也有可能由此产生,基于组件的软件允许对其中使用的某个组件进行动态升级,这也给对这些可进化的系统的测试充分性带来了难度。因此,针对面向组件的开发方法建立新的软件可信性评价模型是极其必要的。
本文对基于组件的软件可信性评价的研究可以分成两个方面:第一,如何评价基于组件的软件可信性,第二:如何建立基于组件的软件可信性评价模型。在基于组件的软件可信性评价方面,本文的研究内容包括:软件可信性有哪些影响因素,如何通过这些影响因素的度量得到软件可信性的评价,基于组件的软件可信性评价有哪些新特征,如何建立基于组件的软件可信性评价尺度。在基于组件的软件可信性评价模型方面,本文的研究主要致力于组件软件可信性评价的规范化、可视化,并为今后实现评价自动化提供有效途径。在这部分里提出了一种以贝叶斯网络为表示体系的、反映基于组件软件体系结构且能适应诸多应用领域的组件软件可信性评价模型,并基于这个模型实现对一个电信应用的可信性评价。
本文的主要创新和研究成果如下:△讨论了软件可信性的概念、软件可信性的相关因素以及软件可信性度量的相关问题。软件的可用性、可靠性、可维护性等都是影响软件可信性的重要因素,根据软件可信性的特点,分析了软件可信性的度量准则,提出软件可信性的度量不仅仅是软件产品本身的度量,更要将软件工程作为度量对象。
△总结了软件可信性评价模型的有关研究成果。目前对于软件可信性评价模型的研究主要分为功能分析和结构分析两种方式,介绍了这两类方式的主要特点,并分析了它们存在和需要解决的问题。
△研究了基于组件的软件开发方法,分析了基于组件的软件的特点,介绍了基于组件的软件开发模式。研究了目前基于组件的软件开发管理,主要是软件配置管理,分析了软件配置管理在基于组件的软件开发中的作用以及其存在的必要性。在此基础上,分析了基于组件的软件开发中存在和必须解决的可信性问题,并研究了对基于组件的软件可信性评价需要解决的问题。
△讨论了基于组件的软件可信性评价模型的特征和要求。分析了贝叶斯网络的特点及其应用于软件可信性评价的可能性和优势,并在此基础上提出了以贝叶斯网络为表示体系的面向组件的软件可信性评价模型的新思想。研究了软件可信性的度量方法、需要度量的因素。考虑到软件可信性度量模型具有在不同领域的适应性,提出可信性评价以可信性需求说明为依据的方法。最后,给出了一个全新的组件软件可信性评价模型。该模型以软件可用性、可靠性、安全性、软件能力、软件配置可用性等软件工程相关因素为度量元,以组件为评价元,以软件体系结构为评价体系,以贝叶斯网络为表示体系,以可信性需求说明为评价依据。它不仅能够比较客观全面评价组件软件产品和工程可信性,而且还具有扩展性和适应性,能较好地适应诸多不同应用领域。
△在该模型基础上,本文针对电信应用领域中一个比较大型的实际应用软件,建立了可信性评价模型,并根据该应用系统开发完成后的测试报告,以及软件质量和开发能力的评估,做出了对于该系统的可信性评估。