网站地图 加入收藏 设为首页 原创论文网,覆盖经济,法律,医学,建筑,艺术等800余专业,提供60万篇论文资料免费参考

军用嵌入式软件代码审查方法的开发与应用

作者:原创论文网 时间:2017-05-18 14:32 加入收藏
摘要

  军用嵌入式软件更新发展速度的加快,软件复杂程度的增加、规模的增大,软件的开发周期却越来越短,随着近代航空武器系统的不断发展,军用嵌入式软件在军用产品中得到广泛应用。软件质量的好坏直接影响着产品的价值,如何提高军用嵌入式软件的质量就显得极为重要。软件测试技术能够给软件产品提供质量保障,代码审查作为软件测试中的重要环节,对软件质量提升意义重大。代码审查是发现软件缺陷、提高软件质量最直接、有效的软件测试手段,通过代码审查能在软件开发前期尽早地发现软件存在的缺陷,而且软件缺陷发现得越早,正确改正缺陷的可能性也越大,越有利于降低软件测试的成本。代码审查有效地发现某些特定类型的缺陷问题,且无需特别条件[1]。

  军用嵌入式软件是软件测试技术的重要应用领域,研究发现,军用嵌入式软件代码审查主要关注代码本身的规则问题和编码规范问题。这样容易造成一些与软件本身功能逻辑相关的有价值的问题被遗漏且不易被发现。如何高效率、高质量的完成军用嵌入式软件代码审查成为影响软件测试质量的重要问题。

  1、代码审查概要

  代码审查是主要用人工的方法,由测试人员利用代码检查单或代码走查等技术仔细检查代码和设计的一致性、代码执行标准的情况、代码逻辑表达的正确性、代码结构的合理性以及代码的可读性,检查代码是否符合软件设计文档和软件需求规格说明的要求,找出代码中的错误和违反开发标准之处[2]。代码审查可以提高军用嵌入式软件的质量,在开发早期发现软件致命缺陷,避免归零风险,充分保障军用嵌入式软件产品的研制进度。同时通过增加软件开发人员和软件测试人员的技术交流,提升软件测试效率。

  1.1、代码审查现状

  代码审查作为降低软件缺陷的一种有效手段,通常是在开展动态测试之前的代码阅读纠错过程。代码审查是一种针对软件质量的有效审查和评估方法。通过逐句检查源代码中有无逻辑或语法错误来发现软件中的缺陷。由开发人员和测试人员组成的代码审查小组,通过阅读、讨论和分析等方式对代码进行静态审查。通常,代码审查的内容包括以下几项:检查代码和设计的一致性;检查代码对标准的遵循情况和可读性;检查代码的逻辑表达的正确性;检查代码结构的合理性[3]。

  在代码审查中一个重要部分就是对照一份错误列表来检查代码是否存在常见错误。代码审查检查清单的应用既能够保证审查过程的一致性,也保证常见的代码缺陷问题能够及时准确的被发现以及被解决、完善的高效性。统计发现,软件开发人员会常犯 15 ~ 20 种代码错误,本文将这些常见错误进行分类、整理、归纳到代码审查检查单内,来检查代码是否存在这些错误。代码审查检查单可以引导开发人员按照编码规范进行开发,指导测试人员高效的发现这些问题,从而避免软件中这些问题的出现。

表 1 代码审查检查单
表 1 代码审查检查单

  表 1 列举出了一些典型的代码问题。代码审查过程的一个重要部分就是对照一份错误列表,来检查代码是否存在常见错误。

  1.2、嵌入式软件代码审查

  嵌入式软件是基于嵌入式系统设计的软件,它是由程序以及文档组成。嵌入式软件同通用软件的区别主要表现在,嵌入式软件只能运行在特定的目标机上,与其所属的目标机系统有很强的耦合性,软件的实现细节和目标机系统的结构、输入 / 输出端口等都与通用软件有很强的不同。另一方面,因为嵌入式计算机应用要求,需要按时按成功能操作,也就是说嵌入式软件有着很强的实时性。另外,嵌入式实时系统对外部时间的响应一般都是通过中断来处理,其处理方式直接影响到系统的实时性。因此,嵌入式软件与通用软件不同[5]。

  大部分嵌入式软件都工作在空间及时间资源严重受限的环境中,对软件的可靠性要求非常高。进行嵌入式软件代码审查是确保软件可靠性的重要手段之一,也是评价软件质量好坏的有效途径。目前,嵌入式软件在进行代码审时,测试人员主要是根据代码编程规范和代码错误检查单进行审查工作。审查过程主要关注代码本身的逻辑错误和编码规范问题,但对嵌入式软件与硬件之间的依赖性的问题却难以发现。代码审查的质量有待提升。

  2、代码审查在军用嵌入式软件领域的应用

  在军用嵌入式软件测试领域,由于软件本身的功能的多样性和复杂性特点,对测试人员提出了较高的技术要求。测试人员不但需要具备较强军用装备领域的专业知识,还要熟悉嵌入式系统的工作流程和功能。若仅采用传统代码审查方法来审查,将难以发现与逻辑功能相关的且有价值的缺陷问题。但若通过结合整个嵌入式系统和软件的功能和流程进行审查分析,得出的分析结果与原有结果相比将更加有价值。

  针对目前军用嵌入式软件代码审查存在的不足,本章节在传统意义代码审查方法的基础上,就如何提高军用嵌入式软件代码审查质量进行分析。特型软件代码审查方法是在传统意义上的代码审查方法的基础上,针对军用软件领域,根据不同的软件需求、功能对其进行分类优化。通过将代码审查标准与专业领域的知识相结合,最后形成基于军用软件领域优化后的代码审查单。飞控软件作为军用嵌入式软件的应用领域,具备军用嵌入式软件的特点。针对该应用软件,订制软件代码审查单。根据飞控软件的功能和需求点,将飞控软件的功能进行划分,建立飞控软件代码审查要素,形成飞控软件领域的针对性的代码审查检查单。

  特型软件代码审查方法代码审查过程可分为如下阶段:代码审查策划阶段、代码审查实施阶段及代码审查总结阶段,如图 1 所示。其中,定制代码审查检查单如表 2 所示。

图 1 软件代码审查过程
图 1 软件代码审查过程

表 2 定制代码审查检查单
表 2 定制代码审查检查单

表 3 传统 / 特型软件代码审查数据对比表
表 3 传统 / 特型软件代码审查数据对比表

  3、特型软件代码审查的应用实例

  以飞控软件为例,A、B、C、D、E 分别表示 5 组不同规模的软件。分别使用传统代码审查方法与特型软件代码审查方法对其进行代码审查,以代码审查耗时,代码审查发现的问题数和千行代码缺陷率为标准进行对比统计和分析。具备相同能力的测试人员分别应用两种测试方式对 5 组不同规模的软件进行代码审查测试工作,得到代码审查数据比对表,如表 3 所示。

  从表 2 中可以看到,对于不同规模的软件进行代码审查时,使用专业领域代码审查方法比传统方法的代码审查发现的代码问题和千行代码缺陷率有大幅度的提升。

  图 2 中可以看到,在不同软件代码规模的项目下,通过使用特型软件代码审查方法来进行代码审查所消耗的审查时间均有的降低。

图 2 传统 / 特型软件代码审查所需工时对比图
图 2 传统 / 特型软件代码审查所需工时对比图

  图 3 和图 4 中可以看到,在使用特型软件代码审查方法来对特定领域软件进行代码审查时,发现的问题与传统代码审查方法对比。发现的代码问题数与千行代码缺陷率均有大幅度的提升。

图 3 传统 / 特型软件审查发现问题对比图
图 3 传统 / 特型软件审查发现问题对比图

图 4 传统 / 特型软件代码审查千行代码缺陷率关系对比图
图 4 传统 / 特型软件代码审查千行代码缺陷率关系对比图

  4、结 语

  随着嵌入式软件在军事领域的广泛应用,软件质量成为军用武器装备系统性能好坏的关键因素。在软件开发周期中,软件测试所占比重的不足,已经不能满足软件测试的时间需求。而代码审查在软件测试中所占的时间比率相对更小,严重制约着软件测试质量。

  本文通过对军用嵌入式软件领域传统代码审查和特型软件代码审查的数据进行分析,发现应用特型软件代码审查方法对军用嵌入式软件进行代码审,在相同软件代码规模条件下,审查耗时得到大幅度的减少,发现问题数与千行代码缺陷率有大幅度提升。

  特性软件代码审查时通过在代码审查过程中,结合嵌入式软件自身的功能特点,订制不同的代码审查检查单,使代码审查更具备针对性,致使软件缺陷问题更容易被发现,审查进度更快,审查效率更高。而传统代码审查方式根据代码的共性特点,制订代码审查检查单进行审查时,未能够对软件质量问题进行充分深入挖掘。此方法,在共性问题基础上引入了个性分析,针对不同的软件应用领域,结合软件代码的自身特点,实施全面的代码审查。

  实验发现,本文针对订制的代码审查方法,能够有效的缩短代码审查测试所需的时间,提升代码审查效率,进而提高代码审查质量。切实把军用嵌入式软件的软件测试代码审查水平提高到一个新的高度。

  参考文献
  [1] 周景科 . 专业领域软件的代码审查方法研究 [J]. 电子产品可靠性与环境试验 ,2016(3):39-44.
  [2] 张建飞 . 基于航空领域嵌入式软件代码审查的研究 [J].应用技术 ,2015(10):108-109.
  [3] 黎连业 , 王华 , 李淑春 . 测试技术 [M]. 北京 : 清华大学出版社 ,2006.
  [4]Glenford J,Myers Tom Badgett. 软件测试的艺术 [M].王峰 , 陈杰 , 译 . 北京 : 机械工业出版社 ,2006.
  [5] 司艳艳 . 基于嵌入式软件代码审查的研究 [J]. 科技经济市场 ,2013(6):6-8.


上一篇:水电站安全隔离数据同步系统的设计与实现
下一篇:没有了
重要提示:转载本站信息须注明来源:原创论文网,具体权责及声明请参阅网站声明。
阅读提示:请自行判断信息的真实性及观点的正误,本站概不负责。
别人都分享了,你还在等什么?赶快分享吧!
更多
军用嵌入式软件代码审查方法的开发与应用相关文章
我们的服务
联系我们
热门推荐
热门推荐
快速导航: