文/王少龙 李清娥
随着我国民用飞机事业的迅猛发展,在民用飞机机载系统和设备中广泛采用先前开发的软件,用来保证飞机高安全高可靠性要求。但在新的民用飞机型号合格审定中,由于采用的合格审定基础和软件符合性方法的不同,要确保先前开发软件在新型号应用中符合性采用适航规章及相关要求,获得适航当局的批准/认可成为一个比较复杂的问题。
2011年9月13日,航空无线电技术委员会(RTCA)发布了DO-178C,为机载系统和设备中软件是否符合适航要求提供了一个过程指南。在它的第12.1节中对以前开发软件的使用专门提出了指导意见和活动目标。
2017年7月21日,美国联邦航空管理局(FAA)发布了AC 20-115D,正式接受了现行有效的DO-178()为可接受的的符合性方法。在AC 20-115D第9章中专门给出了修改和复用DO-178C以前版本批准的软件的工作指南。
2017年10月4日,FAA发布了ORDER8110.49 Chg 2,对如何在机载系统和设备批准中使用DO-178B、DO-178C作为可接受的符合性方法给出了指导建议。
通过上述分析和研究发现,不管是RTCA发布的指导文件,还是FAA发布的AC或ORDER,这些文件都从不同的角度给出的先前开发软件复用的工作指南和指导意见,但是并没有给出一个完整的指导意见,解决申请人如果在新的型号应用中要基于DO-178C为软件符合性方法获得型号批准/认可时,如何复用先前基于DO-178()开发的软件。这个问题给TC申请人和软件供应商在新型号合格审定中选择使用先前开发软件并满足适航符合性要求造成了许多难题。
通过对民用飞机软件有关的符合性方法、AC、Order的分析研究,如果在一个新型号应用中计划采用已在其他型号上获得批准的软件,必须具备如下进入条件,方可开展先前开发软件的使用分析与评估工作。
(1)在新型号应用中,包含软件的系统或设备的功能、性能、接口、运行环境、应用环境、安装方式等技术要求已经确定;
(2)通过初步系统安全性分析(PSSA)分配给软件的研制保证等级(DAL)已经确定。
3.2.1 服务历史评估和符合性方法
如果先前开发软件已在其他型号中获得批准认可,首先要从先前开发软件的服务困难(SDs)、开口问题报告(OPRs)、适航指令(ADs)等方面进行全面的安全性影响评估,判定软件服务历史的可接受程度。
表1:DO-178C以前版本软件等级可接受原则
通过分析评估:如果服务历史数据满足新型号的应用要求,这些历史数据即被可接受,并作为新型号审定的有效数据,供应商应将这些分析过程及结果、以及可接受的使用历史信息在相关系统的合格审定计划(CP)或软件合格审定计划(PSAC)、软件完成综述(SAS)、软件配置索引(SCI)中文档化说明;如果使用历史数据不可接受,则需要根据分析结果,完成软件更改和开发基线升级,纠正或补充有关数据,并在PSAC、软件开发计划(SDP)、软件验证计划(SVP)、软件质量保证计划(SQAP)、软件配置管理计划(SCMP)中明确说明需要补充开展的软件开发、验证、配置管理、质量保证等活动,也要明确需要完善的软件生存周期资料,并完成开发基线的升级工作。
3.2.2 软件等级评估和符合性方法
通过PSSA过程分配的软件DAL是基于给定功能失效条件的重要度分类确定的最小开发等级。根据AC 20-115D中关于在新型号应用中对DO-178C以前版本以及相应软件等级的可接受原则,在评估先前开发软件能否在新型号应用中接受时,要确定基于DO-178C以前版本软件开发等级的可接受程度。软件等级可接受原则见表1。
不管先前开发软件是基于DO-178、DO-178A还是DO-178B的过程开发的,只要软件开发的级别等同于或高于在新型号应用中由PSSA分配的软件DAL并符合表1的可接受原则,那么软件等级和符合性方法都可以接受;否则就要更改升级软件基线包括软件所有过程和程序文件(也包括工具鉴定过程)到新的软件等级,并满足DO-178C第12.1.4软件开发基线升级的目标要求和DO-330软件工具鉴定的目标要求。
3.2.3 软件功能特性评估和符合性方法
如果在新型号的应用上,软件的使用历史、软件的等级和符合性方法经评估分析都可接受,那么要分析评估软件的功能性能等内容是否满足新型号的应用要求并被完全接受。
如果评估结果全部满足,并且软件的服务历史,包括SDs,OPRs、AD等可以被接受,所有问题关闭记录、发现问题的解决方案都可提供或者软件等级都可接受,那么软件供应商就不需作额外的工作,原始批准的所有数据可以作为该软件在新型号应用安装批准的基础数据。
如果评估结果为部分满足,则应开展软件更改影响分析(CIA),并编制CIA报告,确定软件的更改内容和更改范围,以及要补充开展的工作。
3.2.4 软件环境更改评估和符合性方法
由于先前开发软件的使用和修改可能超过最初的使用环境。其中可能包括一个新的开发环境、新的目标处理器或其它硬件、或与其他软件的集成。新的开发环境会引起一些软件生命周期活动的增加或减少。新的应用环境也可能针对变化内容引起在软件生命周期活动之外增加一些必要的活动。
如果软件环境更改后,软件不能满足新型号的应用,需要开展以下几个方面的更改影响分析活动:
(1)开发工具更改影响分析;
(2)应用或开发环境更改的影响分析。
以上更改影响分析的结果要文档化记录在软件影响分析报告中,对需要开展的工作活动要在PSAC、SDP、SVP、SQAP、SCMP中明确说明。
3.2.5 基于模型开发、面向对象和形式化方法等方法评估和符合性方法
如果在软件基线升级过程用到了基于模型开发(MBD)或/和面向对象(OO)和/或形式化方法(FM),那么要首先分析是否已经维护升级了软件开发过程的程序文件(也包括工具鉴定过程)并在以前型号的审定过程中获得批准,并确保在软件过程审查中不可能存在软件开发过程的程序文件的不足而引发不符合问题。否则要完成软件开发过程的程序文件(也包括工具鉴定过程)的升级,并满足DO-178C和DO-330的目标要求以及DO-331和/或DO-332和/或DO-333的相关目标要求。
本文通过实际型号应用中的经验,总结出一个具体的解决方案,帮助申请人在新型号使用先前开发软件时满足适航要求。在民用飞机的型号合格审定中,针对具体软件项目,可以在解决方案中选取适用的部分,支持单个软件项目在型号合格审定中的符合性审查工作。这个方法的符合性分析过程对军用飞机先前开发的软件产品同样适用,如果按照此方案严格执行,将会大大提高军用飞机的产品质量。