软件互操作性和一致性
软件互操作能力专规一致性测试的探讨
——ISO16100 ——ISO16100-4国际标准简介 ISO16100-
张祖红 东南大学 计算机科学与工程系
概要
1、制定该标准的动因 2、软件互操作能力概述 3、一致性测试的必要性 4、能力专规一致性测试的基本方法和要求 5、能力专规一致性测试的参考点
1、制定该标准的动因
对专规匹配器而言: 对专规匹配器而言:
所需求的软件的专规和制造软件单元MSU的专规都应该以正确的 所需求的软件的专规和制造软件单元MSU的专规都应该以正确的 MSU 专规格式描述; 专规格式描述; 所需求的软件的专规不同于制造软件单元MSU专规, MSU专规 所需求的软件的专规不同于制造软件单元MSU专规,在所需求的 软件的专规里,每个元素必须标明是“强制的” 可选的” 软件的专规里,每个元素必须标明是“强制的”或“可选的”。 但是在制造软件单元MSU专规中不需要这样的表示; MSU专规中不需要这样的表示 但是在制造软件单元MSU专规中不需要这样的表示; 返回的匹配结果必须包含以下内容:进行匹配的两个专规的ID ID, 返回的匹配结果必须包含以下内容:进行匹配的两个专规的ID, 匹配的程度,匹配的详细情况和访问状态的评论。 匹配的程度,匹配的详细情况和访问状态的评论。
目前的问题是: 目前的问题是:
(1)缺乏标准化的机制描述需求,用户根据此 缺乏标准化的机制描述需求, 需求来寻求合适的制造软件组件; 需求来寻求合适的制造软件组件; (2)缺乏标准化的机制来准确描述软件组件的 能力, 能力,制造软件组件的供应商根据此标准描述 软件、注册软件、销售软件组件。 软件、注册软件、销售软件组件。 缺乏标准化的机制来匹配“需求” (3)缺乏标准化的机制来匹配“需求”和“供 使之在应用中绑定, 应”,使之在应用中绑定,实现供求双方的互 操作。 操作。
对模板而言: 对模板而言:
为了得到一致性测试的参考需求和测试标准从而创建CSI, 为了得到一致性测试的参考需求和测试标准从而创建CSI,应该 CSI 分析相应的“能力类” 分析相应的“能力类”; 为了在参考能力类的结构树中搜索相应的“能力类” 为了在参考能力类的结构树中搜索相应的“能力类”,应该使用 字典和分类法并且应该遵循路径的连续性(自顶至底); 字典和分类法并且应该遵循路径的连续性(自顶至底); 用于测试实现的额外信息(XITI)应该是由“分类法” 用于测试实现的额外信息(XITI)应该是由“分类法”所指定的 特定领域的应用,应该是在“字典”里能找到的准确的语义, 特定领域的应用,应该是在“字典”里能找到的准确的语义,应 该是特别需求的“平台” 该是特别需求的“平台”; 应该用标准“语法”的完整“内容”来写ATS ATS以便明确地描述模 应该用标准“语法”的完整“内容”来写ATS以便明确地描述模 板的参考需求和测试标准; 板的参考需求和测试标准; ETS由ATS映射得来 最简单的方式是一对一映射。但是通常, 映射得来。 ETS由ATS映射得来。最简单的方式是一对一映射。但是通常,对 于一个特定的模板,只需要部分的测试用例, 所以就要从ATS ATS中 于一个特定的模板,只需要部分的测试用例, 所以就要从ATS中 选择一些测试用例,而且ATS的各种参数的输入值应该用“XML的 ATS的各种参数的输入值应该用 选择一些测试用例,而且ATS的各种参数的输入值应该用“XML的 形式”表示成“良好的格式” 形式”表示成“良好的格式”。
ISO16100系列标准的组成: ISO16100系列标准的组成: 系列标准的组成
ISO16100-1 框架; Framework 2002年 - 框架; 年 ISO16100-2 建规方法论; - 建规方法论; Profiling methodology 2003年 年 ISO16100-3 接口协议和模板; 2004年 - 接口协议和模板; 年 Interface protocols and templates ISO16100-4 一致性测试方法、标准及报 告; - 一致性测试方法、 Conformance Test Methods, , Criteria and Reports 2005年 年
伴随着这些变化的出现,从技术上要求解决: 伴随着这些变化的出现,从技术上要求解决: (1)如何发现并且使用由不同的供应商提供的 成熟的制造软件组件; 成熟的制造软件组件; 如何反复使用已有的软件组件。 (2)如何反复使用已有的软件组件。 这样,可使系统开发时间变得越来越短,系统 开发成本变得越来越低。
4、能力专规一致性测试的基本方法和要求
一致性测试过程的方法: 一致性测试过程的方法:
eXtra Information for Testing the Implementation 标准或 规范 分析测试的 需求和标准 并产生CSI 并产生 Conformance Statement for Implementation ETS Executable Test Suite 测试的 数据 可 执行的 测试用例 其他 信息 抽象的 测试用例 CSI 添加XITI 添加 CITI = CSI + XITI XITI
基于
能力建规 基于 16100ISO 16100-2 方法论
基于
2、软件互操作能力概述
什么是互操作? 什么是互操作?
软件互操作表现为软件之间共享并交换信息, 软件互操作表现为软件之间共享并交换信息,以便能够互相协作 共同完成一项功能的能力。 共同完成一项功能的能力。
建立软件能力专规, 建立软件能力专规,增强软件互操作性 软件组件能力专规的建立
结果
测试
产生 ETS
ATS
产生ATS 产生 Abstract Test Suite
Unit Under Test UUT
能力专规一致性测试的要求: 能力专规一致性测试的要求:
能力专规一致性测试的被测单元的类型: 能力专规一致性测试的被测单元的类型:
(1)专规 专规 (2)模板 模板 (3)能力类结构 (3)能力类结构 (4)专规匹配器 专规匹配器
基于 16100ISO 16100-4 一致性测试方法、 一致性测试方法、 标准和报告 一致性测 试和注册 软件单元 能力专规 数据库 (分类法 和领域 本体论) 本体论)
基于
软件单元能力描述
ISO16100-3 ISO16100接口、协议 接口、 和模板 补充 基于 16100ISO 16100-1 框架
Hale Waihona Puke 解决的方法: 解决的方法: • 专门研究制定软件的规范化描述,使得 专门研究制定软件的规范化描述, 软件能够互操作。 软件能够互操作。
11月 4开始 2000 年11月 ISO/TC 184/SC 5/WG 4开始 ISO 16100工作 建立软件能力专规(profile), 工作, 16100工作,建立软件能力专规(profile), 对制造软件能力进行规范化描述
一致性是指对标准或规范的实现满足规范的特定的需求。 一致性是指对标准或规范的实现满足规范的特定的需求。 一致性测试(也称一致性评估) 一致性测试(也称一致性评估)是测试一个实现是否符合一个标 准或规范的需求。 准或规范的需求。
一致性测试的必要性
决定一个产品是否与标准或规范相一致对创建一个健壮的、 决定一个产品是否与标准或规范相一致对创建一个健壮的、可互 操作的解决方案是必要的。 操作的解决方案是必要的。一致性测试为软件开发者和用户提供 了合格产品按照预期的情况运行、 了合格产品按照预期的情况运行、以一种已知的方式执行功能或 拥有一个指定的接口或格式的保证。 拥有一个指定的接口或格式的保证。 一致性测试并不是互操作性 的保证,但是它是获得互操作性的一个必要步骤。 的保证,但是它是获得互操作性的一个必要步骤。
对参考类结构而言: 对参考类结构而言:
为了测试“参考类结构”的一致性应该确定相应的“应用领域” 为了测试“参考类结构”的一致性应该确定相应的“应用领域”。 应该根据“分类法” 字典”选择特定的词汇,然后分析“ 应该根据“分类法”和“字典”选择特定的词汇,然后分析“参 考类结构”的内容。 考类结构”的内容。如果在一个特定应用领域人们已经制定了活 动标准,那么就应该按照这个活动标准进行一致性测试。否则, 动标准,那么就应该按照这个活动标准进行一致性测试。否则, 一致性测试应该按照参考类结构的规则进行; 一致性测试应该按照参考类结构的规则进行; 应该把“树的相关范围和深度” 应该把“树的相关范围和深度”作为用于测试实现的额外信息 XITI); (XITI); 应该编写ATS ATS以便明确地描述是否遵循了内容路径的完整性和连 应该编写ATS以便明确地描述是否遵循了内容路径的完整性和连 续性, 参考类结构” 是否遵循了树型模式和“XML”形式 形式; 续性,“参考类结构” 是否遵循了树型模式和“XML 形式; ETS由ATS映射得来 最简单的方式是一对一映射。但是通常, 映射得来。 ETS由ATS映射得来。最简单的方式是一对一映射。但是通常,对 于一个特定的参考类结构,只需要部分的测试用例, 于一个特定的参考类结构,只需要部分的测试用例,所以就要从 ATS中选择一些测试用例 而且ATS 中选择一些测试用例, ATS的各种参数的输入值应该用 ATS中选择一些测试用例,而且ATS的各种参数的输入值应该用 XML的形式 表示成“良好的格式” 的形式” “XML的形式”表示成“良好的格式”。
对于每种类型, 对于每种类型,在一致性测试过程的不同阶段 应该有不同的输入和输出。 应该有不同的输入和输出。
对于专规而言: 对于专规而言:
为了得到一致性测试的参考需求和测试标准从而创建CSI, 为了得到一致性测试的参考需求和测试标准从而创建CSI,应该 CSI 分析相应的“模板” 分析相应的“模板”; 用于测试实现的额外信息(XITI)应该是对“MSU专规 专规” 用于测试实现的额外信息(XITI)应该是对“MSU专规”内容的 约束或对“平台”的需求; 约束或对“平台”的需求; 应该用限定的“内容”和标准的“语法”来写ATS ATS, 应该用限定的“内容”和标准的“语法”来写ATS,以便明确地 描述参考需求和测试标准; 描述参考需求和测试标准; ETS由ATS映射得来 最简单的方式是一对一映射。但是通常, 映射得来, ETS由ATS映射得来,最简单的方式是一对一映射。但是通常,对 于一个特定的专规,只需要一部分测试用例,所以就要从ATS ATS中 于一个特定的专规,只需要一部分测试用例,所以就要从ATS中 选择一些测试用例,而且ATS的各种参数的输入值应该用“XML的 ATS的各种参数的输入值应该用 选择一些测试用例,而且ATS的各种参数的输入值应该用“XML的 形式”表示成“良好的格式” 形式”表示成“良好的格式”。