航天嵌入式软件代码逻辑分析①
2021-09-10左万娟王小丽
计算机系统应用 2021年8期
左万娟,董 燕,黄 晨,王小丽
1(北京控制工程研究所,北京 100190)
2(北京轩宇信息技术有限公司,北京 100190)
航天嵌入式软件,因其自主处理能力强、运行实时性要求高、故障诊断与处理手段多、在轨运行时间长以及在轨运行环境复杂等特点,导致其部分运行场景很难在地面实现真实状态下的动态验证.因此,在地面所开展的动态测试往往会存在这样或那样的测试缺口,导致了某些软件问题的在轨发生,这对于有着高可信高可靠高自主要求的航天嵌入式软件而言,是难以接受的.同时,随着软件定义卫星设计理念的提出,软件规模和复杂度的不断攀升,也导致软件潜在缺陷越来越多[1,2].因此,研究软件测试方法,进一步提升软件测试质量势在必行.
软件测试,根据是否运行软件,一般分为静态测试和动态测试,其中,针对静态测试,一般采用基于工具的静态分析、和基于人工的代码审查等测试手段.根据目前的工程实践,对于有着高可信高可靠要求的航天嵌入式软件而言,基于工具的静态分析手段仍然无法取代人工代码审查,只能作为人工代码审查的补充手段.因此,在现有条件下,对于航天嵌入式软件的质量保证而言,人工代码审查仍然是不可或缺的一种重要技术手段.
自从1976年首次提出代码审查(code inspection)以来,代码审查一直被认为是一种重要而且有效的改进软件质量的方法[3,4].经验表明,组织良好的代码审查,可以发现程序中30%~70%的编码和逻辑……
登录APP查看全文
