欢迎访问学兔兔标准下载网,学习、交流 分享 !
返回首页 |ICS 49.020 V 07
HB 8574-2020
民用飞机机载嵌入式操作系统
应用集成验证要求
Airborne application integrated verification requirement for civil
aircraft ’s embedded real-time operating system
2020-09-14 发布 2021-01-01 实施
中华人民共和国工业和信息化部 发 布
前 言
本标准按照 GB/T 1.1-2009 给出的规则起草。
本标准由中国航空工业集团有限公司提出。
本标准由中国航空综合技术研究所归口。
本标准起草单位:中国航空工业集团公司西安航空计算技术研究所、中国航空综合技术研究所、中国航空工业集团公司西安飞机设计研究所、中国航空工业集团公司成都飞机设计研究所。
本标准主要起草人:叶 宏、曹 原、朱晓飞、李运喜、崔西宁、周南明、魏学杭、母方欣。
民用飞机机载嵌入式操作系统
应用集成验证要求
1 范围
本标准规定了民用飞机机载嵌入式实时操作系统应用集成验证活动的目的和流程,描述了每一步骤的内容和要求,包括一般要求和详细要求。
本标准适用于约束和规范民用飞机机载嵌入式实时操作系统的应用集成验证活动。
2 术语和定义、缩略语
2.1 术语和定义
下列术语和定义适用于本文件。
2.1.1
机载嵌入式实时操作系统 airborne embedded real-time operating system
用于机载嵌入式设备的、具备实时性,能够在规定的时间内完成指定任务的操作系统软件。
2.1.2
机载嵌入式操作系统应用集成验证 airborne application integrated verification for embedded
real-time operating system
机载嵌入式实时操作系统开发完成并经过测试后,将其与实际应用的机载应用程序集成,并在实际应用的硬件环境中对其进行功能和性能验证的活动。
2.1.3
典型验证环境 typical verification environment
在航空领域具有普遍性、通用性的,广泛使用的机载硬件设备所构建的应用集成验证硬件环境。
2.1.4
分区 partition
包括代码和数据的程序,它可以被装载到核心模块中的一个独立的地址空间。
2.1.5
时间调度表 schedule
用于定义分区调度时的时间窗口的安排,操作系统基于该表进行分区调度,决定各个应用分区的运行时间。
2.2 缩略语
下列缩略语适用于本文件。
BSP ——board support package,板级支持包;
ID ——identifier,标识符。
3 总则
为了保证新一代机载设备满足航空任务的功能需求和安全标准,新研制的嵌入式实时操作系统在机
载设备领域进行实际应用之前应对其功能和性能进行严格的测试和验证,即机载嵌入式操作系统应用集成验证,该活动在整个嵌入式操作系统开发流程中的位置如图 1 所示。
图 1 应用集成验证活动在操作系统开发过程中的位置
机载嵌入式实时操作系统的应用集成验证活动是嵌入式实时操作系统应用于实际机载硬件设备之前应进行的验证步骤,其具体内容和顺序如图 2 所示。
图 2 应用集成验证活动内容和顺序
本标准详细而明确的规定了以上验证步骤的工作内容和评价标准,是进行应用集成验证工作的指导和依据。
4 一般要求
4.1 典型验证环境选取
4.1.1 定义和目的
典型验证环境选取是机载嵌入式实时操作系统应用集成验证的基础,该活动根据在实际应用环境中机载软件和硬件设备的配置情况,选取尽可能覆盖被测操作系统功能的机载软件和硬件设备,作为应用集成验证活动的运行环境。使测试和验证的条件与实际应用的环境保持一致,保证测试和验证结果的可比较性和可靠性。
4.1.2 进入和退出条件
4.1.2.1 进入条件
典型验证环境选取阶段的进入条件为:待验证的操作系统面向的应用领域、用途、针对设备和软件的要求等条件已明确和稳定。
4.1.2.2 退出条件
典型验证环境选取阶段的退出条件包括:
a) 所选择的软件和硬件技术状态稳定(如使用的软件为正式版本,硬件产品为首飞件、定型件等);
b) 使用所选择的硬件设备构建了相应的运行环境,为软硬件集成工作做好了准备。
4.1.3 流程和要求
4.1.3.1 硬件选取
硬件选取的流程和要求包括:
a) 对待选硬件设备的各项参数进行全面细致的检查,确保设备的型号、规格、硬件配置与实际使用的机载设备一致;
b) 研究硬件设备在实际应用环境中使用的操作系统和相关软件,评估待测系统与设备原操作系统和相关软件的兼容性;
c) 识别和提取对软件运行环境的要求和说明,包括硬件设备的规格型号、运行频率、存储容量、功能特性、设置信息等;
d) 根据提取的设备要求,使用选择的机载硬件设备,构建操作系统与应用程序运行的硬件环境。
4.1.3.2 软件选取
软件选取的流程和要求包括:
a) 确定应用集成验证的应用软件功能验证范围,根据功能要求选择实现该功能的,在实际机载设备中正式应用且广泛使用的应用软件;
b) 研究所选应用软件的兼容性,其针对被测系统应具备充分的可移植性。
4.2 集成
4.2.1 定义和目的
集成阶段是将典型验证环境选取阶段选择并搭建的硬件设备环境与操作系统、驱动程序等系统运行必需的软件进行整合,组成能够开展应用程序移植工作的软硬件环境的过程。
集成活动包括操作系统对硬件的适配、驱动程序的移植和相关软件的适应性开发等, 其目的是构建机载应用程序的运行环境,为应用程序的移植与之后的测试和验证做好准备。
4.2.2 进入和退出条件
4.2.2.1 进入条件
集成阶段的进入条件包括:
a) 典型验证环境选取工作完全结束;
b) 待验证的操作系统已经完成其研制阶段的所有工作;
c) 待验证的操作系统能够为应用集成验证活动提供技术状态稳定的正式版本;
d) 驱动程序等适配工作必需的软件部件均已具备。
4.2.2.2 退出条件
集成阶段的退出条件包括:
a) 完成操作系统、驱动程序和其他必要软件对典型验证环境硬件的适配、移植和开发工作;
b) 操作系统、驱动程序以及其他相关软件在典型验证环境硬件系统上通过初步的运行测试, 各项基本功能能够正常实现。
4.2.3 流程和要求
集成阶段的流程包括:
a) 进行待测系统针对典型验证环境选取阶段完成的硬件环境的适配工作;
b) 完成驱动程序和其他操作系统运行所必需的相关软件的适配、移植和开发工作;
c) 开发测试操作系统基本功能的示范用例,进行初步测试,确定示范用例可以在该软硬件环境中正常运行,结果正确。
4.3 应用移植
4.3.1 定义和目的
应用移植指将作为应用集成验证素材的应用程序由原运行操作系统和环境,根据被测机载系统的软硬件要求,经过针对性的修改、扩充和更新, 使其能够运行于测试环境且满足原状态的功能性能要求的活动。
应用移植的目的是为被测嵌入式操作系统和硬件环境准备应用集成验证所需的测试应用程序,之前这些实际使用的应用程序应用于其他的操作系统和运行环境中,需要通过应用移植工作使这些应用程序能够在被测系统和运行环境中正常运行。
4.3.2 进入和退出条件
4.3.2.1 进入条件
应用移植阶段的进入条件包括:
a) 操作系统软硬件集成工作完全完成,被测操作系统和硬件环境能够正常工作;
b) 待移植应用程序能够提供状态稳定的版本。
4.3.2.2 退出条件
应用移植阶段的退出条件包括:
a) 作为应用集成验证的被测程序的应用程序能够在被测操作系统和硬件环境中正常运行;
b) 应用程序功能完全移植且与其在原应用环境中的功能一致。
4.3.3 流程和要求
4.3.3.1 应用移植的流程
应用移植的流程包括:
a) 提取应用程序稳定、合法的源文件版本;
b) 对比原始运行环境与被测系统软硬件环境所提供的服务的区别,识别被测系统和硬件对应用程序的特定要求;
c) 根据应用特性正确配置操作系统;
d) 根据运行环境区别和被测系统要求对应用程序进行修改(应保证应用程序功能完整);
e) 重新编译修改后的应用程序和相应的库;
f) 在被测系统上以调试和固化方式运行修改后的应用程序;
g) 对移植应用程序的基本功能和性能进行初步测试。
4.3.3.2 应用程序移植要求
应用程序移植的要求包括:
a) 移植工作应保证应用程序在被测系统中的基本功能与在原运行环境中完全一致;
b) 移植过程不能改变应用程序本身的实现原理。
4.4 地面综合试验
4.4.1 定义和目的
地面综合试验即使用机载设备测试验收程序,根据实际飞行任务的流程、要求和预期结果, 测试和验证嵌入式实时操作系统的功能和性能,判断其是否满足所选典型机载系统的要求。
被测系统的关键级别为 A 级时,地面综合试验应针对被测系统单独进行。被测系统的关键级别为 B
级或 C 级时,地面综合试验可随其他软硬件设备的测试活动一起进行。
4.4.2 进入和退出条件
4.4.2.1 进入条件
地面综合试验阶段的进入条件包括:
a) 应用移植阶段完全完成;
b) 应用程序能够在被测操作系统和运行环境中运行;
c) 具备机载应用程序在原使用环境中的测试任务流程、要求和预期结果。
4.4.2.2 退出条件
地面综合试验阶段的退出条件包括:
a) 地面综合试验完成所有测试项目;
b) 地面综合试验中发现的所有问题都被修改且通过回归测试。
4.4.3 流程和要求
地面综合试验的流程和要求包括:
a) 地面综合试验包含两个步骤:针对待测操作系统的综合试验和针对整个飞机软硬件系统的综合联试;
b) 地面综合试验中涉及的飞行任务项目、操作流程、设备设置、预期结果等各方面要求需要符合相关领域的权威指南和行业标准,符合对实际飞行任务的相应要求;
c) 地面综合试验中使用的测试应用程序应为应用移植阶段产生的,与实际飞行任务使用的应用程序功能一致的移植应用程序,其他如操作系统、支持软件等各类软件应为通过正式开发和测试流程的正式产品版本;
d) 按照试验科目要求准备适合的场地和设备;
e) 按照试验科目要求准备适合的配置环境;
f) 严格遵照地面综合试验说明对任务操作的描述和相关手册和标准对任务参数、状态的要求, 由测试人员执行地面综合试验用例,由测试记录人员记录每一项测试的执行结果,如果实际结果与预期结果不一致,则详细记录该测试项目的参数、状态、实际结果和问题特征;
g) 核对每一项测试内容的预期目标和实际结果;
h) 针对地面综合试验中实际结果和预期结果不一致的测试项目,经过应用软件、操作系统或硬件设备的支持人员分析和确认后,确定为问题的,由地面综合试验记录人员采用专业的问题管理软件进行记录并纳入管理,确保问题信息的真实、详细和全面;
i) 根据问题的类型,由应用软件、操作系统或其他软件部分的技术人员, 针对问题的现象,进行详细的分析并提出修改方案,按照问题处理流程,经过相关负责人批准后,实施修改,并进行必要的验证和测试;
j) 根据测试计划,在完成地面综合试验问题的所有修改和验证后,重新组织测试人员,按照同样的场景和参数设置,重新进行地面综合试验的所有测试项目,直到完成所有测试项。
4.5 试飞
4.5.1 定义和目的
试飞活动即将通过地面综合试验的嵌入式实时操作系统和应用软件、驱动程序等相关软件固化至实际机载设备,通过实物飞行器的地面试验和飞行试验验证操作系统的正确性和对机载应用程序的适应性,并为操作系统的设计定型提供依据。
试飞活动可采用专飞、搭飞等方式进行,根据被测系统和相关软件的关键级别确定试飞方式。
4.5.2 进入和退出条件
4.5.2.1 进入条件
试飞阶段的进入条件包括:
a) 地面综合试验阶段完全完成;
b) 试飞大纲和试飞要求通过评审。
4.5.2.2 退出条件
地面试验和飞行试验的试飞测试项目全部完成,所有试飞测试项目实际结果与预期结果一致。
4.5.3 流程和要求
4.5.3.1 总体要求
对试飞的总体要求包括:
a) 试飞测试中涉及的飞行任务项目、操作流程、设备设置、预期结果等各方面要求需要符合相关领域的权威指南和行业标准,符合对飞行任务的相应要求;
b) 明确试飞目的;
c) 明确试飞科目;
d) 对试飞活动进行风险分析;
e) 明确试飞需要的保障措施;
f) 按照测试方法和精度要求准备测试设备;
g) 试飞阶段应使用完全通过地面综合试验的移植应用程序、操作系统和其他各类支持软件等;
h) 根据应用软件、操作系统和其他支持软件在飞行模式下固化安装的要求, 使用相应的地址、参数、模式等信息在机载设备上固化各类软件并设置其运行方式;
i) 针对试飞测试中实际结果和预期结果不一致的测试项目,经过应用软件、操作系统或硬件设备的支持人员分析和确认后,确定为问题的,应使用专业的问题管理软件进行记录并纳入问题管理流程,确保问题信息的真实、详细和全面;
j) 根据问题的类型,由应用软件、操作系统或其他软件部分的技术人员, 针对问题的现象,进行详细的分析并提出修改方案,按照问题处理流程,经过相关负责人批准后,实施修改,并进行必要的验证和测试。
4.5.3.2 地面试验要求
对地面试验的要求包括:
a) 在飞行准备阶段,操作机载设备的各个开关和控制器,转换设备运行模式,调整设备各项参数,检查设备显示、管理、控制功能的正确性;
b) 检查机载设备自检信息,查看各项设备状态数值是否正常;
c) 加载飞行试验所需的数据信息,检查加载过程和结果的正确性。
4.5.3.3 飞行试验要求
根据测试指导和要求测试机载设备在空中状态的各项功能,即在飞行过程中,根据试飞大纲要求执行飞机各项任务的功能测试,检查机载设备和软件的各应用功能是否满足相关要求。
5 详细要求
5.1 典型验证环境选取
5.1.1 应用集成验证相关硬件设备配置选择
应用集成验证活动所使用的运行环境的硬件设备应通过典型验证环境选取步骤进行细致的判别和准备。所选择的硬件设备应与现实中广泛使用的设备型号、性能等指标完全一致,才能确保集成验证工作的实际意义。
5.1.2 对硬件设备技术状态的要求
典型验证环境选取选择的硬件设备应满足实际应用的机载应用程序的功能和性能要求,对选择的硬件设备需要进行初步的功能和性能测试,以便确认其与设想的技术状态一致,能够完成之后的应用集成验证活动。
5.2 集成
5.2.1 集成过程中对嵌入式操作系统各项组件的技术状态要求
在操作系统集成阶段工作过程中,需要遵循的要求包括:
a) 操作系统和相关软件的技术状态应使用代码版本管理工具进行管理;
b) 操作系统和相关软件在集成过程中应明确初始状态、各重要功能修改状态、最终完成状态等技术状态阶段,并建立相应基线;
c) 应按照开发流程严格控制对相关软件的代码修改和状态变更活动,为所有变更行为作出解释和说明;
d) 修改和变更应经过相应级别技术人员和管理人员的确认和批准,确保不会意外引入未经测试和验证的代码修改。
5.2.2 集成过程对软硬件系统的要求
集成过程对软硬件系统的要求包括:
a) 操作系统和硬件环境集成过程的成果是构建完成能够开展应用移植工作的软硬件运行环境;
b) 作为集成过程成果的软硬件系统应满足应用移植工作的要求,提供满足应用软件功能和性能要求的各类接口、设置和其他特性;
c) 集成过程不能改变软硬件本身提供的各项功能和特性。
5.2.3 集成过程中对问题管理的要求
对于在集成阶段发现的任何操作系统或相关软件的问题,其管理要求包括:
a) 操作系统和硬件环境集成过程发现的问题应纳入统一的问题管理流程;
b) 操作系统和硬件环境集成过程发现的问题应使用专业的问题管理软件对问题的提出、分析、批准、修改和确认过程进行管理;
c) 须根据问题管理软件的特性制定合理的问题分析、审查、修改和确认工作过程, 确保不会引入未经测试和确认的变更;
d) 整个集成过程中的软件状态变更过程应明确、清晰、可控。
5.2.4 驱动程序移植要求
在集成阶段中,对驱动程序移植工作的要求包括:
a) 驱动程序移植来源应选择与硬件设备实际使用环境配套的稳定版本;
b) 驱动程序移植应保证:对于应用软件和操作系统,硬件设备的功能特性应与其实际使用环境中的状态保持一致,且满足原状态的功能和性能要求。
5.3 应用移植
5.3.1 应用移植环境的建立过程和要求
本条描述开始在被测操作系统上进行应用移植之前,建立应用移植环境和工具的过程,并说明初始条件和环境要求。
应用移植环境是操作系统软硬件集成工作的成果,应明确应用移植所需的辅助工具软件、额外的库文件、相关的其他软件等, 确保这些软件符合相应的安全要求,并且不会因为操作系统的变更而影响其特定的功能。
应用移植工作的条件包括:
a) 原应用程序的源代码和头文件,所有应用程序源码材料应为当前应用程序在原操作系统上运行的可执行程序所对应的正式稳定版本,以保证在移植之后保持与原可执行程序具有相同的功能特性;
b) 目标操作系统配套的软件开发环境;
c) 目标操作系统配套的其他开发工具,如加载工具、调试工具、测试工具、分析工具等;
d) 目标操作系统的用户指南、程序员手册等相关功能和开发说明, 针对目标操作系统与原操作系统在应用程序支持功能上的区别和不同,对应用程序的实现进行相应的修改。
5.3.2 应用软件和操作系统版本要求
应用移植活动涉及对原有应用程序及相关辅助软件的修改和变更,需要采用相应的软件版本管理工具管理应用程序和相关软件,明确应用程序的修改情况、修改内容、特性变化和影响范围。
应用移植阶段对应用程序移植流程中的版本管理相关要求包括:
a) 移植应用程序的开发工作应采用专门的软件版本管理工具配合开展;
b) 应用程序纳入版本管理的初始版本为在原操作系统平台当前使用的稳定的可执行软件版本对应的源代码版本;
c) 在移植过程中对应用程序初始版本进行的任何必要修改都应在版本管理工具中详细记录;
d) 以移植为目的的修改不得改变应用程序完成相应功能的原实现方法或基本原理;
e) 移植过程完成后,在版本管理工具中形成适用于目标系统的应用程序基线;
f) 对比移植前后应用程序源码的变更情况,形成软件移植修改内容说明。
5.3.3 操作系统配置要求
在应用移植工作开始之前,首先要完成机载嵌入式实时操作系统在目标平台硬件上的配置工作,保证操作系统本身能够正常运行。
操作系统配置工作包括以下内容。
a) 为目标硬件平台选择合适的板级驱动支持包(BSP);
b) 根据所选硬件配置操作系统需要支持的功能,如文件系统、网络和矢量计算等;
c) 根据应用场景的要求为操作系统定义适合的系统时钟速率;
d) 根据安全性需要决定是否允许运行期间动态内存分配;
e) 根据应用内容决定操作系统的分区数量、分区名称、分区 ID 和分区属性(分区操作系统);
f) 根据任务性质合理安排分区调度,配置调度表内容(分区操作系统);
g) 根据任务通信需求设置端口和连接等通信方式和属性;
h) 根据用户需要设置操作系统健康监控和错误处理的策略和动作;
i) 根据操作系统的特性完成其他所需的配置内容。
在完成操作系统的所有配置工作后,需要使用示例应用程序或模板应用程序在目标硬件上进行测试运行,只有操作系统能够正常运行且示例程序结果正确,才可以继续进行应用程序移植工作。
5.3.4 应用移植过程和要求
5.3.4.1 应用移植流程
应用移植流程包括以下步骤:
a) 提取与应用程序可执行文件正式版本对应的正式、稳定的源代码版本。移植所需应用程序应来自现有实际使用的航空计算机软硬件系统中的应用程序,这些应用程序实现实际航空任务所需要的功能。
b) 对比原始运行环境与被测系统软硬件提供服务的区别。在开发人员着手进行应用移植工作之前,应比较应用原运行环境与被测系统所提供应用支持功能的不同,从而确定应用移植工作对应用程序的主要修改内容和影响范围。
c) 识别被测系统和硬件对应用程序的特定要求。在应用移植之前, 需要明确应用原运行环境与被测系统对应用实现形式的要求的区别,从而确定应对应用程序实现细节和部分功能做出的调整。
d) 根据识别运行环境区别和被测系统要求对应用程序进行修改。在充分研究和认识应用程序原运行环境和被测系统的区别之后,开发人员对应用程序进行必要的修改,其原则为在保证应用程序在被测系统正常运行的基础上,尽量减少对应用程序的变更,同时不改变应用程序的功能和算法基本实现原理。
e) 重新编译修改后的应用程序和相应的库。完成对应用程序的修改后, 开发人员需要使用被测系统要求的编译器和相关工具对修改后的应用程序源码进行编译和链接,生成可执行程序。
f) 在被测系统上初步测试应用程序的功能。完成代码的修改、编译、链接等移植开发工作后, 需要在被测系统上对应用程序功能进行初步测试,确定应用程序可以在被测系统上执行基本功能。
5.3.4.2 应用程序移植要求
对应用程序移植的要求包括:
a) 移植工作应保证应用程序的基本功能在原运行环境和被测系统中完全一致,应用移植工作不能因为应用程序原运行环境与被测系统的区别而更改涉及应用程序基本功能的部分。
b) 移植过程不能改变应用程序本身的实现原理。应用移植工作不能因为应用程序原运行环境与被测系统的区别而更改涉及应用程序基本实现原理的部分。
c) 注意防止应用移植过程中引入不安全因素。在将应用程序移植至其他操作系统时可能需要变更应用程序使用的数据结构或调用的函数形式,在变更过程中需要格外注意软件安全性的保证,防止引入不安全的操作模式。
5.3.5 编译和构建过程和要求
应用软件移植过程中编译和构建可执行程序方面的要求包括:
a) 移植应用程序在被测操作系统运行环境中的编译工具等辅助软件应满足被测系统的环境要求;
b) 针对目标操作系统的编译器应与原可执行版本对应编译器具有相同的编译特性,支持相同的特殊编译功能,使用同样的特殊编译选项;
c) 应用程序的构建过程应解决所有的错误,并消除所有的编译警告,除非存在明确的程序实现特性方面的原因。
5.3.6 调试和固化过程和要求
应用程序由开发人员进行移植修改、编译、链接并生成可执行文件后, 需要在被测系统执行环境中进行固化和初步测试。
为了对应用程序移植过程中可能产生的问题进行排查和解决,需要能够在被测系统运行环境中调试移植的应用程序,要求包括:
a) 被测操作系统运行环境应支持应用程序的开发和调试功能;
b) 运行环境需要支持应用程序进行单步运行、程序断点、暂停、继续、内存和变量查看等调试功能,以便追踪和排除移植过程中产生的错误和故障;
c) 应用程序在完成移植开发和初步测试工作后,最终需要以二进制可执行程序形式固化至被测系统运行环境,其与操作系统、支持软件等相关软件的组织形式应与操作系统相关文档中描述的实际使用环境中的组织形式完全相同,即达到最终使用状态。
5.3.7 地面综合试验初步测试过程和要求
应用程序移植工作完成后,需针对地面综合试验过程进行初步测试运行,确保之后测试步骤能正常开展,其要求包括:
a) 操作系统、硬件平台和应用程序的相关参数和设置参照地面综合试验要求进行配置;
b) 开发人员在地面综合试验项目中选择主要、功能简单、结果明确、便于比较的项目, 针对移植完成的应用程序进行简单的测试运行,检查应用程序的运行结果是否与地面综合试验预期结果一致;
c) 若确认发现应用移植问题,应将问题纳入问题管理流程。
5.3.8 应用移植过程发现问题的处理过程和要求
本条详细描述在整个应用程序移植过程中,针对发现的应用程序和操作系统的问题,进行上报、记录、审批、分析和修改的过程和要求。
在应用移植阶段可能产生和发现很多潜在的应用程序和操作系统的错误和问题。管理人员需要制定问题的记录、审批、分析、修改、确认等流程要求,移植开发人员应遵照该规程对发现的问题进行处理。
对应用移植过程发现问题的处理过程和要求包括:
a) 应用程序的问题管理和版本管理职责和工作内容属于应用程序开发方;
b) 应用程序在移植过程中产生的错误和故障需要通过应用程序开发方的问题管理流程加以管理;
c) 应用程序问题由应用程序开发方进行分析、修改、解决和确认;
d) 如果发现的问题属于应用程序在原运行环境就存在的问题,则开发方需要根据问题管理流程同步修改元应用环境中的应用程序;
e) 操作系统的问题管理和版本管理职责和工作内容属于操作系统开发方;
f) 在移植过程中发现的操作系统存在的错误和故障需要通过操作系统开发方的问题管理流程加以管理;
g) 操作系统问题由操作系统开发方进行分析、修改、解决和确认。
5.3.9 应用移植过程发现问题的回归验证过程和要求
本条详细描述在整个应用程序移植过程中,对应用程序和操作系统的问题修改后,进行回归验证的记录、验证和确认的过程和要求。
a) 应用程序的问题回归测试工作内容属于应用程序开发方;
b) 由应用程序开发方对修改后的应用程序进行确认和验证;
c) 应用程序开发方应保证对应用程序的修改不会改变应用程序的基本功能和主要功能的基本实现原理;
d) 对应用程序的回归验证应全面覆盖所有修改问题及其所有影响的程序功能;
e) 操作系统的问题回归测试工作内容属于操作系统开发方;
f) 由操作系统开发方对修改后的操作系统进行确认和验证;
g) 操作系统开发方应保证对操作系统的修改不会改变操作系统的基本功能和主要功能的基本实现原理,同时不对应用程序的实现造成更大影响;
h) 对操作系统的回归验证应全面覆盖所有修改问题及其所有影响的系统功能。
5.4 地面综合试验
5.4.1 地面综合试验需要符合的标准和文件要求
本条描述与地面综合试验相关的标准、指南、说明等文件,以及进行测试时需遵守的各项规则。
地面综合试验活动需要符合相关标准和指南,其测试活动受相关说明文件和规则的约束,这些文件包括:
a) 被测系统的研制要求;
b) 测试项目的试验大纲;
c) 机载电子系统验收测试程序说明和要求;
d) 软件用户手册;
e) 软件编程手册。
5.4.2 受试系统软件状态确认要求
地面综合试验应在应用程序、被测系统及相关辅助软件技术状态稳定的情况下进行,具体要求包括:
a) 应用程序、被测系统及相关辅助软件应使用版本管理工具进行版本管理;
b) 进行地面综合试验的应用程序、被测系统及相关辅助软件的版本应与相关文档、计划指定的版本一致;
c) 进行地面综合试验的应用程序、被测系统及相关辅助软件的各组件应与相关文档、计划说明的状态一致。
5.4.3 地面综合试验试验场地要求
本条描述地面综合试验开始前,配置试验工具,建立试验环境,进行试验准备的相关要求。
地面综合试验需要在专用的地面综合试验试验台进行,需要的设备包括:
a) 被测系统和应用程序运行环境和相关硬件;
b) 与被测系统配合的其他飞行任务所需航空设备;
c) 飞行数据产生激励设备;
d) 飞行任务状态和数据记录设备;
e) 显示测试内容和状态的可视化设备;
f) 飞行任务控制操作设备;
g) 操作系统和应用程序调试设备。
5.4.4 地面综合试验配置环境要求
地面综合试验进行的试验环境应经过详细的配置和记录,以保证测试结果的可靠性和可比较性,要求包括:
a) 地面综合试验飞行数据激励设备产生的数据应与当前测试的飞行任务的实际数据一致;
b) 应用程序输入的各项数据应与实际飞行任务中的相关数据保持一致;
c) 针对特定飞行任务进行测试时使用的硬件设备应与实际任务中使用的硬件设备一致,其配置和状态也需要与实际使用中的情况保持一致;
d) 机载记录设备对试验数据的记录方式应与实际飞行任务中的记录方式一致。
5.4.5 根据应用验收程序验证功能和性能的过程和要求
本条描述根据验收测试程序的预期结果,对应用程序和操作系统的功能和性能进行集成验证和测试的过程和要求。
根据应用验收程序验证被测系统功能和性能的过程和要求包括:
a) 地面综合试验的开始状态,包括系统配置、软件版本等应与相关文档和指南的要求保持一致;
b) 地面综合试验应包括所有应用验收所需的实际飞行任务中包括的测试项目;
c) 地面综合试验项目中对应各测试流程的数据设置和操作过程应严格按照测试安排和指南执行,不可随意临时改变测试设备的设置和操作流程;
d) 地面综合试验每一项功能测试的结果都要真实、完整的进行记录,应仔细核对防止出现漏记、错记、记录说明不清等问题;
e) 对于测试过程中发现的与测试指南预期不符的情况,需由专业技术人员对测试用例和测试环境进行确认,辨别故障来源,明确问题是否由操作失误造成。
5.4.6 地面综合试验结果记录要求
地面综合试验结果记录要求如下:
a) 应真实可靠,记录人员应认真核对实际试验结果和测试说明等文档对预期结果的描述,确定其是否存在差异;
b) 应详细,针对实际试验结果与测试说明预期结果不符的测试用例,应详细记录试验的时间、编号、人员、试验内容、设置、操作流程、实际结果及其与预期结果的差异;
c) 应采用相对统一的形式,便于整理统计;
d) 应获得记录人员、测试人员、管理人员、应用程序的开发人员以及被测系统的技术人员一致认可。
5.4.7 地面综合试验阶段发现问题的处理过程和要求
本条详细描述在整个地面综合试验阶段,针对发现的应用程序和操作系统的问题,进行上报、记录、审批、分析和修改的过程和要求。
地面综合试验阶段如果发现测试程序实际运行结果与预期结果不一致,在负责具体试验项目的技术人员排除了数据设置和操作失误的可能性后,需要对发现的问题按照事先定义的过程开展问题管理流程,具体要求包括:
a) 当发现地面综合试验实际结果与预期结果不符时,需要技术人员排除数据设置和人员操作可能产生的失误,确定是否为应用程序或被测系统的问题;
b) 当发现测试程序在移植过程中产生错误或在原运行环境中遗留着错误时,问题处理由应用程序开发人员按照开发单位的问题处理流程进行;
c) 当发现被测系统存在错误时,由操作系统开发方按照该系统的开发和测试计划中说明的问题处理流程,将问题提交专门的问题管理工具;
d) 在问题管理工具中记录的问题要经过相关部分开发人员的分析和确认;
e) 开发人员分析后,需要提出合理的修改和解决办法,并对影响域进行估计;
f) 高级开发人员和项目管理者需要检查和批准问题修改方案;
g) 开发人员按照修改方案对问题进行修改,说明实际影响域;
h) 由其他开发人员确认该问题已按照修改方案进行了修改;
i) 更新操作系统,根据地面综合试验记录对存在问题的测试项目和问题修改可能影响到的项目重新进行测试;
j) 重复以上步骤,直到地面综合试验项目实际测试结果与预期结果全部一致。
5.4.8 地面综合试验阶段发现问题的回归验证过程和要求
本条详细描述在整个地面综合试验阶段,对应用程序和操作系统的问题修改后,进行回归验证的记录、验证和确认的过程和要求。
针对地面综合试验发现问题的回归验证存在特定的要求,包括:
a) 所有在地面综合试验期间发现的问题都应经过回归测试,并确定其实际测试结果与预期结果一致;
b) 对存在问题的测试项目的回归测试应使用与之前测试一致的数据输入和操作过程,保证测试状态统一;
c) 不仅需要对存在问题的测试项目进行归国测试,在问题修改过程中其影响域可能涉及的功能和性能测试项目都需要重新进行测试;
d) 回归测试的结束条件为所有存在问题的测试项目以及修改影响域涉及的测试项目其实际运行结果与预期结果一致。
5.5 试飞
5.5.1 试飞依据文件要求
试飞活动应以成员单位出具的试飞大纲为指导,在其规定的内容范围内进行,并覆盖其要求的所有科目。在试飞活动结束后成员单位应按照相关要求出具试飞报告作为评价结论。
5.5.2 试飞目的要求
试飞活动应明确试飞对软件验证的具体目标和目的,包括:
a) 检查和验证被测系统在实际应用场景中的工作状态是否正常;
b) 被测系统是否满足实际应用场景对软件的功能和性能要求;
c) 评估被测系统在实际应用场景的装机适应性;
d) 为被测系统的设计定型工作提供试飞依据。
5.5.3 试飞科目要求
具体试飞科目要求以成员单位出具的试飞大纲的内容为准,一般包括以下内容:
a) 地面状态下机载设备能够正常启动和运行;
b) 地面状态下各控制设备的操作功能正常;
c) 地面状态下各数据显示等反馈设备的信息反馈正常;
d) 地面状态下飞行任务设定和计划正常;
e) 地面维护状态的各项系统功能正常;
f) 地面状态下所有测试科目的试验结果与预期结果一致;
g) 飞行过程中各设备运行状态正常;
h) 飞行过程中运行被测系统和原始系统的设备切换正常;
i) 飞行过程中被测系统运行的相关飞行任务运行正常;
j) 飞行过程中各控制设备的操作功能正常;
k) 飞行过程中数据显示等反馈设备的信息反馈正常;
l) 飞行过程中所有测试科目的试验结果与预期结果一致。
5.5.4 风险分析要求
在试飞活动开始之前,项目管理人员需对试飞活动进行风险分析,要求包括:
a) 根据试飞活动的内容和相关国家标准建立风险管理策略;
b) 根据操作系统、应用软件和支持软件以及机载设备的特性进行全面、充分的风险识别;
c) 选取合适的数学方法,对识别的风险进行合理的风险估计;
d) 建立符合项目要求的数学模型,对试飞活动的重要过程进行风险分析;
e) 根据分析结果,针对关键步骤的高风险过程制定合适的风险解决方法。
5.5.5 试飞保障措施要求
试飞活动应具备相应的保障措施,包括:
a) 试飞飞机应具备与被测系统功能相同的可互换的备份软硬件系统,以防止被测系统出现问题影响飞行安全;
b) 试飞人员具备在原系统上执行相关飞行任务功能的经验;
c) 地面综合试验涵盖了所有试飞中可能测试的飞行任务,且未发现问题。
5.5.6 测试设备、方法和精度要求
在试飞活动中,对于测试设备、测试方法和精度等要求包括:
a) 试飞飞机搭载的运行被测系统的机载设备应与被测系统所设计运行的硬件设备环境完全一致,即试飞飞机的硬件环境即为被测系统在实际应用中运行的硬件环境;
b) 试飞飞机的机载设备参数和状态应与被测系统运行环境要求一致;
c) 试飞测试方法的测试内容要求满足试飞相关规定和标准的要求,覆盖正常飞行任务的各个方面,以及被测系统提供的各项功能。
5.5.7 试飞装机环境和版本要求
在试飞活动开始之前,所有相关机载软件的技术状态应满足以下要求:
a) 应保证被测系统和相关软件通过全部验收测试程序项目测试,且所有测试发现的问题都得到了解决、确认和验证;
b) 所有参与试飞的机载软件应为满足软件测试验证计划的合格的版本;
c) 所有参与试飞的机载软件技术状态稳定,出库、交付手续完备合法。
5.5.8 试飞装机过程要求
参与试飞的机载软件的安装、固化、设置过程的要求如下:
a) 在装机之前应确认所有机载软件的版本,确保使用的是符合测试和试飞计划的正确版本;
b) 应确认可选的机载软件相关组件符合机载设备的特定要求,确保软件对应正确的硬件体系结构和功能特性;
c) 机载软件需要按照用户手册和使用说明规定的方式进行安装和固化,并确认根据硬件类型固化至正确的地址;
d) 机载软件的设置和参数等信息应按照相关文档中对应安装环境和硬件环境的说明进行配置,且与地面综合试验中的配置相同;
e) 应根据软件文档和说明手册检查软件可配置选项,确保其以正确配置为匹配正式飞行的运行状态,并关闭了测试、调试等可能对飞行造成影响的地面维护状态的相关功能。
5.5.9 试飞结论和报告要求
试飞组织单位在完成试飞后需根据试飞科目验证情况出具试飞活动相关报告,对被测系统在实际运行环境下的功能、性能进行评价,对被测系统是否能够达到实际应用要求作出结论。
报告要求包括:
a) 说明试飞活动的目的、依据、概况和被试对象情况;
b) 详细描述试飞方法和内容,包括地面维护试验阶段和实际飞行试验阶段的测试项目、执行情况、测试结果和评价结论;
c) 对试飞结果进行全面的分析和阐述;
d) 根据试飞员和地面维护人员对被测系统的感受和意见对被测系统做出评价和建议。