文档库 最新最全的文档下载
当前位置:文档库 › PRQA

PRQA

PRQA
PRQA

QAC/C++ 代码规则检查自动化解决之道

代码规则介绍:

我们知道,软件工程所讲述的都是软件开发的一些道理,这些道理基本上都是软件开发的实践者的成功的经验或失败教训的总结,我们说,这些总结就是我们代码检查所遵循的规则,QAC/C++维护了一个关于代码规则的数据库,在这个数据库中,内嵌了许多著名的编程规范,包括ISO,MISRA(欧洲汽车工业行业标准),等等。

如果软件企业都能在代码编写的阶段都能遵循一定的代码规则,这对我们的软件产品的质量将回大有益处,首先,在同一个开发团队中使用代码规则,可以形成这个开发团队统一的开发风格,产品个性;其次,遵循一定的代码规则,可以提高模块的可移植性和可维护性,最后,代码规则检查也是提高代码质量最有效、最直接的手段。

当前做代码规则检查面临的困境:

●代码规则检查需要付出很繁重的劳动——重新理解代码,国内一些,软

件工程发展到现在,已经有了专职的测试人员,即使非常专业的测试人

员,理解别人写的代码也是一项很繁琐的工作。

●时间和资源的限制,我们说,任何一个企业都可以做出优秀的软件,前

提是给他足够的时间和物质资源,可现实的软件开发的矛盾却是:在有

限的时间内、利用有限的经费,来做高可靠性的软件。

●很多人不重视代码规则检查,包括很多软件企业的领导、项目负责人等,

认为代码规则检查浪费人力和物力,恰恰相反,这种观点就把软件中存

在的问题留到了最后,在软件维护过程中会付出昂贵的代价。经验表明,软件中的问题发现的越早,要克服这个问题付出的代价越小。

产品的特点(QAC为例):

●代码规则检查自动化

这是一个基于C语言开发环境下用以提高软件产品产量和质量标准的深层次静态分析工具软件。这个软件可以自动识别C语言源代码中出现的问

题。这些问题主要是语言使用过程不安全,过于复杂,无法移植,难以维护或与该行业的代码标准偏离造成的。QAC能够对许多编译器或其他工具开发软件无法说明的问题提出警告。这个工具将极大的缩减代码检测的时间并能同时加强程序设计人员对C语言中不完全为人理解的某些特点的认知。

利用QAC,在开发软件早期阶段对存在的问题加以注意, 如能将代码质量提高,同时测试周期也将缩短。达到双赢的效果。

●提供深层次的静态分析

工具不但可迅速而有效的检测出语言运用中的错误、已过时用法、程序标准一致性问题,从而防止在软件开发的后期以更昂贵的代价去解决问题。

而且还将工业标准分析度量标准和通俗易懂的报告结合在一起。

●规则可以定制

对于工具的数据库中已有的规则,可以有测试人员决定使用哪项规则或不使用哪项规则,或者是某一个错误等级的规则。

对于特殊行业来讲,也许您的需求有点特殊,在工具中没有您所要求的规则,没有关系,这个规则是可以人为扩充的,您可以用QAC提供的定制的方法来添加您想要的规则。

●可以和开发工具集成

可以和Visual Studio v6.0、Visual Studio .NET、Tornado集成,在开发环境中来使用QAC,提高测试效率。

产品的好处:

●缩减软件开发的成本和产品上市的时间。

●降低软件产品质量问题。

●实现代码检测过程自动化,使软件开发和质量检验技术人员提高效率。

●在软件研发的早期阶段识别潜在的软件产品问题和其他可能出错的问

题,从而减少产品测试和顾客使用中发现问题的机率。

●具有较好的集成性,能在现有的软件环境下实现安装和卸载。

●自动检测软件产品是否符合某公司或某行业的软件标准和语言安全性方

面的要求。

●提高C语言代码的编写质量,过加强软件可靠性,移植性和可维护性三

方面来减少软件产品未來的维护费用。

●帮助软件开发人员生产高质量的代码。

●支持软件认证,软件研发过程认证和各种质量认证,如 CMM 认证,

ISO9003/EN29003,TickIT, IEC 61508,Def Stan 00-55,DO-178B。

●设立了软件质量度量标准,后期代码修改可以得到衡量和比较。

●为软件开发的成本和产量提供依据。

●帮助企业培训软件研究及开发人员使其在利用C语言编程过程中避免问

题。

支持语言,平台、编译器:

目前支持的语言有C, C++, Java & Fortran。

目前可支持的平台有Microsoft Windows、Sun Solaris、HP-UX、Redhat Linux、Slackware Linux。

对于编译器,QAC支持几乎所有的主流编译器,QAC在分析代码时,并不

对代码进行编译,只是分析程序时要用到一些编译器的一些信息,如编译器头文件、宏等,以及嵌入式的CPU设定等。目前支持的编译器有: Borland C/C++ Builder、Cosmic、Diab、Edison Design Group、GNU C/C++、Green Hills C/C++、IAR、IBM VisualAge C++、Intel、Keil、Metrowerks、Microsoft C/C++、Tasking。

上海旋极信息技术有限公司

地址:上海市漕宝路82号16楼

电话:+86-21-64326688

传真:+86-21-64325688

相关文档