谭莉娟,郑 巍,刘友林,樊 鑫,杨丰玉
1.南昌航空大学 软件学院,南昌 330063
2.南昌航空大学 软件测评中心,南昌 330063
机载嵌入式软件,就是指安装在以应用软件为中心、计算机技术为基础,由软硬件模块组成能够独立运行的可裁剪的航空电子系统中,作为核心控制作用的计算机应用软件部分[1-2],例如飞行控制系统软件、通信导航系统软件等。机载嵌入式系统中许多关键的功能都是由软件支持的,随着软件技术在航空领域的广泛应用,影响机载嵌入式系统的软件因素从3%增长到了80%[3]。机载嵌入式软件的实时性、高可靠性是航空电子系统正常运行的重要因素。据统计,60%的机载电子设备故障问题来自于软件缺陷,并且造成了巨大损失。例如,2004年12月,美国第四代战机F-22起飞时机载制氧系统存在严重缺陷而失控发生了坠毁事故,导致该型战机全部被迫停飞。因此,确保机载软件质量可靠性的关键工作就是对航空机载嵌入式软件进行测试。
由于嵌入式软件的特殊性及复杂性,目前嵌入式软件测试技术研究进展落后于普通的软件测试技术。自20 世纪70 年代开始,国外开始研究嵌入式软件测试方法,研究人员试图用专门的软件测试技术对单嵌入式软件系统进行测试。1980年Glass的一篇关于嵌入式软件测试技术的文章Real-Time:The“Lost World”of Software Debugging and Testing[4],得出了嵌入式实时软件测试的进展明显滞后于一般软件测试的现状,并针对性地提出了相应的解决方法。之后许多研究机构针对嵌入式软件的特性进行更深入地测试研究,对嵌入式软件测试的方法研究进度不明显,转而开发支持嵌入式软件测试工具,例如AMC公司开发的嵌入式实时分析测试工具CodeTEST,推动了嵌入式软件测试自动化的研究进展。……