时间:2015-05-04 11:12 文章来源:http://www.lunwenbuluo.com 作者:刘思思等 点击次数:
4.3软件测试要求
可重用构件必须经过充分的软件测试,使圈复杂度、基本复杂度、扇出数、函数形参个数等指标在符合标准C语言要求的基础上,满足(GJB53692005)《航天型号软件C语言安全子集》、(GJBZ1412004)《军用软件测试指南》等规范,以及相关军种软件编码标准要求。弹载飞行控制软件安全关键等级一般为A级,动态度量指标应满足修正语句覆盖率、条件覆盖率和条件判断覆盖率(MC/DC)均为100%的要求。
测试人员在做静态测试时,经常遇到单个函数代码行数超过200行的情况,很难满足动态测试覆盖率指标要求。对于复杂算法的模型文件,软件开发人员应按照算法功能模块将代码拆分并封装成几个子函数。这样,既增强了程序的可读性,也利于测试,否则很难达到100%的覆盖率指标要求。动态指标中的MC/DC覆盖率对代码分支判断程序结构设计要求很高,可重用构件应满足MC/DC覆盖率指标100%的要求。
4.4硬件设计要求
弹载计算机硬件环境及外围环境直接影响底层驱动软件能否重用。
当前各型号弹载计算机硬件平台不尽相同,有C32、C6000和C28XX系列等,有的是单CPU系统,有的是多CPU系统。目前同一领域的导弹弹载计算机硬件DSP基本已经统型,外围接口也基本一致。
随着导弹不断小型化,计算机硬件设计也向一体化和小型化方向发展。即采用一体化设计的飞行控制设备,制导、导引和引战等系统实现一体化设计。因此,要求硬件环境和外围环境的变化不会对重用产生影响,即要求弹载计算机在“多合一”前后硬件电路功能和底层驱动软件不变,实现底层驱动软件构件的可重用。
4.5其它要求
(1)命名规范。可重用构件的函数和变量命名应该规范化,例如全局变量和局部变量应有明显可区分标识,变量名中应包含变量类型缩写和度量单位缩写,并区分大小写。
(2)文件结构清晰。文件结构主要包含源文件(.c文件)和头文件(.h文件),也可以理解为软件的“框架”[7]。框架作为构件的一种,其源文件和头文件所包含的元素应该分类定义在不同的.c和.h中,且顺序(结构)合理。例如,弹载飞行控制软件中的模型、协议、底层驱动程序按不同功能模块安排在不同源文件中,而头文件则包括外部变量及全局函数声明、常量及宏定义、全局函数原型等。合理的软件框架也有利于使用自动化软件测试工具进行单元测试。
5结语
弹载飞行控制软件重用的理想状态是,在新软件研制过程中可以直接使用被重用的构件,研制技术流程不进行需求分析、软件设计、编码、单元测试、组装测试、确认测试、软件评测等重复工作;软件开发人员有更多精力开展验证、开发管理、软件自动生成等关键性技术工作;促进弹载飞行控制软件研制走上具有航天特色的软件产品化、标准化之路,建立现代工业流水线生产模式的弹载飞行控制软件研制工厂。
参考文献参考文献:
[1]孟小丰,马卫华,控制系统飞行控制软件重用技术研究[J]. 航天控制,2006(6):8183.
[2]郭坚,叶志玲,陆岚,星载软件复用技术探讨[J]. 计算机测量与控制,2007.15(4):541543.
[3]李梦宇,彭攀,星载软件重用技术研究[J]. 上海航天,2011(5):6367.
[4]李楠.基于特征的领域工程及构件技术应用研究[D].成都:西南交通大学,2013.
[5]刘正高,启动软件重用库工程,推进航天型号软件标准化[J]. 航天标准化,1999(2):58.
[6]谭浩强,C语言程序设计教程[M],北京:清华大学出版社,2007.
[7]林锐,韩永泉,高质量程序设计指南——C++/C语言[M]. 北京:电子工业出版社,2007.
[8]刘杰,软件重用技术及在航天飞行软件中的应用[J]. 载人航天,2008(3):6064.
[9]马永杰,蒋兆远,张燕,基于功能构件的软件复用方法[J]. 计算机应用与软件,2009(8):7577.
[10]张选刚,刘如松,软件复用在航空嵌入式软件测试中的应用研究[J]. 航空计算技术,2009(5):8791.
联系方式
随机阅读
热门排行