1.河南平顶山94452部队河南平顶山467300
2.河南信阳空军工程大学航空机务士官学校河南信阳464000
摘要:为实现安全关键软件的零缺陷泄漏的目标,依据航空发动机控制软件的特点,采用能力成熟度模型集成(CMMI)4级量化管理的方法,设立量化控制模型,定义过程性能指标。在项目中利用蒙特卡洛模拟来预测和控制质量目标实现情况的应用,进行航空发动机控制软件的质量量化控制,能够在项目研制过程中,基于过程质量的符合性,预测缺陷泄漏的概率并实施有效控制,为研制高质量的控制软件提供了可靠保障。
关键词:航空发动机;控制软件;安全关键软件;量化控制;
1航空发动机控制软件及其面临的挑战
1.1航空发动机控制软件概述
发动机控制软件是航空发动机控制系统中的核心关键部件,属于机载安全关键软件,其运行结果直接影响人身和设施的安全,为此采取有效的方法来保证安全关键软件的“零缺陷”泄漏,将得到越来越多的关注。根据美国防务系统统计数据,进入21世纪后,超过80%的系统功能由软件参与实现,随着航空发动机功能和性能要求的不断提高,软件的规模和复杂度越来越大,其安全性和可靠性问题也愈加突出,研发进度也更加难以保证。在质量和进度都要保证的双重要求之下,基于“高质量的过程产生高质量的产品”这一理念的“能力成熟度模型集成(CMMI)”和“民航机载软件适航标准(DO-178)”应运而生,成为应对问题和挑战的主要方法。在保证安全关键软件的“零缺陷”泄漏方面,当前国内外研究方向主要包括基于测试缺陷预测模型的量化控制、基于技术评审绩效的量化控制和基于故障模式和检查准则的量化控制等,并取得了一定的成果。本文主要结合航空发动机控制软件的特点和面临的挑战,采用CMMI4级量化管理的方法,以安全关键软件的零缺陷泄漏为目标,建立量化控制模型和过程性能指标,结合项目研制实际利用蒙特卡洛模拟来预测和控制质量目标的实现情况,逐步实现航空发动机控制软件的质量量化控制。
1.2航空发动机控制软件面临的挑战
发动机控制软件的主要特点是与上一级系统的特点紧密相关,从软件的角度来说,主要面临的挑战为:
1.2.1由于控制系统的各项功能需要在发动机的试车、试飞过程中逐步明确,所以软件的全生命周期过程中需求变更异常频繁,而这种变更所带来的质量控制和进度的要求挑战巨大。
1.2.2正因为变更频繁,对于软件版本控制的要求苛刻,技术状态的并发和收敛的管理和控制需要异常严格的措施,尤其在基于需求的符合性追溯证明方面,需要极其严密的证据确保质量的全过程可追溯。
1.2.3随着发动机试车、试飞以及列装部队后的实战化、常态化演练的需要,软件的任何质量问题均可能导致严重后果,零缺陷泄漏已经成为当前的迫切需要和挑战。基于以上特点,结合CMMI模型高级别(4级)成熟度能力要求中的软件质量量化控制和管理的要求,以零缺陷泄漏为目标,将研制过程细分成标准子过程并定义,建立质量预测模型和过程性能指标,推进过程量化管理的落实、调整和监测,以保证最终实现软件产品的零缺陷泄漏目标[1]。
2零缺陷泄漏为目标的质量量化管理
2.1软件/系统的安全性要求
当发动机控制软件发生缺陷泄漏时,会通过相应的事件序列层层传递到航空器层级,从而引起航空器的灾难性后果。由于软件产品的复杂性,软件缺陷不可能像硬件失效那样可以事前去分解、量化和预测,软件缺陷泄漏引起的失效事件也不可能是1种按事件顺序简化的线性关系,而是异常复杂的交错关系,因为绝大多数软件缺陷会通过软件模块之间的数据流传递和功能耦合进行快速传递和相互影响,从而严重破坏系统的包容性,引起系统层面功能失效[2]。
2.2量化管理方法的选择与分析
基于对软件缺陷泄漏的后果分析和软件本质特点的认识,采用量化质量管理的方法,构建零缺陷泄漏的量化控制模型和过程性能指标,当前常用的质量量化管理方法主要有:(1)GJB9001C质量管理体系要求;(2)六西格玛质量管理;(3)CMMI能力成熟度模型集成。虽然以上3种方法都有量化管理的要求,但方法之间有较大的差异性。GJB9001C基于规范化和符合性,强调以过程方法和基于风险的管理思维开展过程管理,包括过程的策划、实施、检查和改进,其量化管理的要求围绕过程目标的建立与实施展开,侧重于管理和控制,是量化质量管理的基础;六西格玛管理利用数据和事实来驱动质量水平的提高,重点关注的是变异、波动和效率提升,对生产过程的稳定性要求极高,在制造生产领域广泛采用。而CMMI4级能力涉及的质量量化管理的核心是定量测量和基于目标的量化管理,通过建立过程的性能基线和性能模型来实施量化管理,更加注重软件行业的特点,基于目标牵引,模型驱动的方式进行质量的预测、干预和控制。当前针对发动机控制软件的质量量化管理方法,主要依据CMMI4级量化管理的要求进行构建[3]。在构建过程中,首先确定零缺陷泄漏的目标影响因子,DO-178C标准给出了实现软件高安全性的可行方法,即基于“高质量的过程产生高质量的产品”的理念,将研制过程分解为5个工程过程和4个管理过程,共定义了71项质量符合性目标,目标的满足可以保证系统安全性达到10-9。基于此,结合发动机控制软件的研发特点,对控制软件的研制过程重构和细分,建立了8个标准子过程,同时依据DO-178C的71个符合性目标,针对每个子过程识别影响最终产品缺陷泄漏的过程质量要素。
2.3过程质量关联预测模型的建立
各过程的质量要素{Xn}之间存在一定的关联性,可以通过对前序过程质量要素的评价,发现某些{Xn}的偏离后,通过{Xn}和{Xn+1}之间的关联性,提前对后续的{Xn+1}进行关注,采取补救措施,从而降低缺陷泄漏风险[4]。由此{Xn}和{Xn+1}之间的关联性建立尤为重要,在此提出1种基于缺陷分类的关联性构建方法。采用正交缺陷分类方法定义如下缺陷泄漏的类型:(1)需求理解错误;(2)派生需求错误;(3)数据检查缺失;(4)初始化错误;(5)数据流错误;(6)库函数使用错误;(7)库函数错误;(8)关联性更改错误。将每一过程的质量要素和缺陷类型进行关联,默认所有关联的质量要素均被满足时,该类缺陷泄漏的概率为零;如果前序过程的质量要素未满足,通过后续与之关联的其他过程质量要素进行补充完善的,则该类缺陷泄漏概率有一定的提升;完全不满足并且也没有在后续采取任何补救措施的,则出现该类缺陷泄漏概率为100%。依据以上原则,通过历史数据的积累,构建过程质量关联预测模型。
结束语
产品质量和过程质量密切相关,只有良好的过程质量才能保证最终产品质量的符合性,对于安全关键软件来说,追求零缺陷泄漏是必然的选择。CMMI4级量化管理对基于顶层目标的持续质量改进过程提出了明确要求,通过不断将过程标准化、规范化,在过程测量项完整、采集规范、数据真实可信的条件下,逐步积累有效数据。
参考文献:
[1]马恩,刘富荣,王鸿钧.基于MBD的商用航空发动机控制软件架构设计[J].航空计算技术,2013,43(06):95-99.
[2]阎迪.基于DO-178C及CMMI的民用航空发动机控制软件质量保证研究[J].航空计算技术,2016,46(06):80-83.
[3]顾鸣祺,张炜,高征.某型发动机控制软件全数字仿真研究与实施[J].航空计算技术,2017,47(05):123-126.
[4]高虎,封二强,王宁.基于安全性的航空发动机控制软件测试技术[J].航空发动机,2018,44(01):91-96.