软件密集型系统软件测试模型的构建方法和系统技术方案

技术编号:13569622 阅读:90 留言:0更新日期:2016-08-21 12:00
本发明专利技术涉及一种软件密集型系统软件测试模型的构建方法和系统,其中方法包括:(1)构建软件FMEA信息的多本体结构,包括:领域本体、应用本体、本体表示语言及本体编辑工具;(2)对所述多本体结构构造软件FMEA信息各层本体,设定软件FMEA信息本体的要素以及确定各层本体之间的映射关系;(3)根据所述映射关系对各层本体信息的要素进行描述,得到基于领域的软件FMEA信息本体模型;(4)利用定性评价法对软件FMEA信息本体模型的质量水平进行评价,确定领域本体质量度量水平。本发明专利技术构建了适用于SISs测试需要的软件测试模型,提高了软件FMEA的质量并减小分析结果的波动性。

【技术实现步骤摘要】

本专利技术涉及软件测试
,特别是涉及一种软件密集型系统软件测试模型的构建方法和系统
技术介绍
软件是新经济的使能因素和驱动器。随着软件产品在各个领域的广泛应用,其质量也日益成为人们关注的焦点。软件测试是有效保证软件质量的重要手段。统计表明,在典型的软件开发项目中,软件测试的工作量往往占软件开发总工作量的40%以上。以美国的软件开发和生产的平均资金投入为例,通常是“需求分析”和“规划确定”各占3%,“设计”占5%,“编程”占7%,“测试”占15%,“投产和维护”占67%。软件测试的地位可见一斑。软件问题越早发现,修改成本越低,破坏性越小。所以,在产品发布前要尽量多地发现问题,解决问题。而其手段就是有计划、有组织地进行充分的测试。软件测试是与软件开发紧密相关的一系列有计划、系统性的活动,正如软件开发有过程模型一样,软件测试也需要相应的测试模型去指导实践。软件测试模型描述了软件测试过程所包含的主要活动及活动间的关系,并描述软件测试的各项活动与软件开发过程的其他活动间的关系。通过测试模型,软件测试人员及有关人员可以了解测试何时开始、何时结束、测试过程包括哪些活动、需要什么资源等。在软件测试策划时,要根据测试目的、所采用的开发过程模型和组织条件等选取合适的测试模型。软件开发发展的几十年间诞生了很多开发模型。但在这些模型中,软件测试一般来说仅作为软件开发的一个阶段,被附加在开发模型后面。近年来,随着对软件测试重要性认识的提高,相继出现了一些新的测试模型,其中较具代表性的包括:V模型、W模型、X模型等。此外,由于当前信息世界与物理世界、信息化与工业化融合的趋势日渐明朗,SISs逐步成为大型复杂系统的发展方向。如何开发相应的测试模型对SISs的测试工作进行指导,进而保证其质量属性要求是一个亟待解决的问题。SISs通常结构复杂、功能覆盖面广;具有高可靠性、高安全性要求;此外,其所处环境的开放性及非确定性;系统组件间及系统与环境间交互的复杂性;及软件及系统相关的操作条件、场景和环境的不可预知性都增加了SISs测试模型构建的难度。对这类系统而言,目前广泛采用的测试模型是W模型。然而,SISs的上述特点使得W模型也存在不足。W模型虽然明确了需求、设计阶段也需要进行相应的测试活动,同时测试人员需要参与项目设计进行测试以保证尽早发现问题并改正,但这在当前的实践中较难实现。这主要是由于软件开发人员和测试人员之间缺乏有效的知识共享桥梁。实际应用中,一些软件开发人员缺乏软件系统问题域相关知识,因此他们将根据自己的理解开发需求规约,这将可能造成需求中的部分内容被错误理解,导致低质量需求规约的产生。而软件测试人员所具备的领域知识及相关经验由于并未被固化下来,无法提供给软件开发人员并为开发活动提供指导。此外,SISs的高复杂性也加剧了开发人员和测试人员间沟通的难度。如图1所示,图1为软件测试V模型结构图。左边表示开发过程各阶段,右边表示与之对应的测试过程各阶段。测试过程以单元测试为起始,随后的测试依次为:集成测试、系统测试和验收测试。V模型作为一种相对简单的软件测试模型,适用于非安全软件或快速开发、辅助工具开发及小规模软件测试。其优点是明确标明了测试过程的不同阶段,并清晰地描述了这些测试阶段和开发过程各阶段的对应关系。V模型的缺点在于:(1)该模型中软件测试工作开始较晚。通常情况下,测试活动在编码完成之后才开始,不利于缺陷的早期定位和改正,这将大大提高软件开发的成本。此外,也容易造成理解上的错误,使人理解为软件测试是软件生命周期的最后一个阶段。(2)使用者容易误以为软件测试仅仅是测试代码的正确性,忽略了需求和设计阶段的测试工作,致使这些非编码阶段产生的缺陷不能在早期被发现,为后期的验收测试埋下隐患。而在验收测试时发现这些问题不仅修改难度大,而且费用相较早期大大提高,也增大了项目失败的概率。(3)软件开发人员编码完成后等待测试小组提交缺陷报告,之后以此为依据修改程序。这将降低人力资源的利用率,也不利于小组间协作及共识的达成。如图2所示,图2为软件测试W模型结构图。以V模型为基础,增加与软件各开发阶段同步对应的测试过程便形成了W模型。W模型是对V模型的补充,即双“V”模型,补充了软件需求分析阶段、设计阶段等各个阶段的测试工作,明确显示了需求分析阶段、设计阶段也需要进行相应的测试活动。W模型的特点是“尽早地和不断地进行软件测试”,其强调了测试人员对项目设计的参与,并需要对相应阶段进行完整而充分的测试,以保证各阶段的缺陷能尽早发现并被修改。由于W模型更强调测试工作的完整性和充分性,在一些软件开发周期长,软件安全等级要求高或是复杂软件项目中使用,可以保障项目质量。W模型的缺点在于:(1)该模型虽然明确了需求、设计阶段也需要进行相应的测试活动,同时测试人员需要参与项目设计进行测试以保证尽早发现问题并改正,但这在当前的工程实践中较难实现。这主要是由于软件开发人员和测试人员之间缺乏有效的知识共享桥梁,只能各自站在自身领域的角度理解问题。(2)SISs的高复杂性也加剧了开发人员和测试人员间沟通的难度。一般而言,SISs所包含的领域知识异常丰富,甚至涉及到多个不同的学科专业。在采用W模型对这类系统进行测试时,由于未充分考虑与测试密切相关的领域知识,使得测试效果常常不尽如人意。(3)由于前述领域知识并未通过一种有效的手段固化,因此测试质量极大地依赖于测试人员的经验,容易导致测试质量具有较大的波动性。如图3所示,图3为软件测试X模型结构图。X模型将整个程序先“分解”,后“整合”。对程序片段进行测试,测试完成后通过各种交接活动逐步集成为较大规模的代码程序,最终目标是全部整合成为一个可执行的软件。由此可见,相较其他模型而言X模型更为灵活,也提出了探索性测试这种值得借鉴的测试方法。而且这种探索性测试并不是事先计划的特殊类型的测试,使得测试能够不局限于测试方法本身。X模型的缺点包括:(1)该模型灵活性的特点和探索性的本质可能对测试造成人力、物力和财力的浪费,增加测试成本。(2)对测试人员的熟练程度要求比较高。(3)没有体现对需求、设计等活动的测试过程,对安全软件来说不具备测试完整性和充分性。综上所述,现有测试模型难以凸显领域知识的重要性,阻碍了多个利益相关者间的沟通,有必要提出一种适用于SISs测试需要的软件测试模型。
技术实现思路
基于此,有必要针对上述技术问题,提供一种软件密集型系统软件测试模型的构建方法和系统,适用于SISs测试需要的软件测试,提高软件测试的质量。一种软件密集型系统软件测试模型的构建方法,包括如下步骤:(1)构建软件FMEA信息的多本体结构,包括:领域本体、应用本体、本体表示语言及本体编辑工具;(2)对所述多本体结构构造软件FMEA信息各层本体,设定软件FMEA信息本体的要素以及确定各层本体之间的映射关系;(3)根据所述映射关系对各层本体信息的要素进行描述,得到基于领域的软件FMEA信息本体模型;(4)利用定性评价法对软件FMEA信息本体模型的质量水平进行评价,确定领域本体质量度量水平。一种软件密集型系统软件测试模型的构建系统,包括:框架构建模块,用于构建软件FMEA信息的多本体结构,包括:领域本体、应用本体、本体表示语言及本体编辑工本文档来自技高网
...

【技术保护点】
一种软件密集型系统软件测试模型的构建方法,其特征在于,包括如下步骤:(1)构建软件FMEA信息的多本体结构,包括:领域本体、应用本体、本体表示语言及本体编辑工具;(2)对所述多本体结构构造软件FMEA信息各层本体,设定软件FMEA信息本体的要素以及确定各层本体之间的映射关系;(3)根据所述映射关系对各层本体信息的要素进行描述,得到基于领域的软件FMEA信息本体模型;(4)利用定性评价法对软件FMEA信息本体模型的质量水平进行评价,确定领域本体质量度量水平。

【技术特征摘要】
1.一种软件密集型系统软件测试模型的构建方法,其特征在于,包括如下步骤:(1)构建软件FMEA信息的多本体结构,包括:领域本体、应用本体、本体表示语言及本体编辑工具;(2)对所述多本体结构构造软件FMEA信息各层本体,设定软件FMEA信息本体的要素以及确定各层本体之间的映射关系;(3)根据所述映射关系对各层本体信息的要素进行描述,得到基于领域的软件FMEA信息本体模型;(4)利用定性评价法对软件FMEA信息本体模型的质量水平进行评价,确定领域本体质量度量水平。2.根据权利要求1所述的软件密集型系统软件测试模型的构建方法,其特征在于,步骤(1)中,由知识源信息获取领域本体,对所述领域本体进行实例化得到的应用本体;所述领域本体包括静态本体和动态本体,静态本体包括对概念、属性、关系要素的描述信息;动态本体包括对事件、活动工作流的描述信息。3.根据权利要求1所述的软件密集型系统软件测试模型的构建方法,其特征在于,步骤(1)中,所述知识源信息包括:①软件可靠性设计分析、试验及实际使用环境中提取的故障信息;②从专家库及特定软件质量数据中获取的经验性和规则性信息;③从文档中提取的实例性软件运行时间/状态FMEA信息;④从行业标准、规定中提取的约束性信息。4.根据权利要求1所述的软件密集型系统软件测试模型的构建方法,其特征在于,步骤(2)包括:基于所述多本体知识结构,根据“领域本体-应用本体”的分层顺序构造各层本体,定义各层本体的概念、继承层次、关联、属性、...

【专利技术属性】
技术研发人员:杨春晖黄茂生胡璇刘梦玥于敏朱怡
申请(专利权)人:工业和信息化部电子第五研究所
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1