PRQA软件静态分析解决方案
来源: | 作者:pmo9ca4dc | 发布时间: 2017-08-21 | 358 次浏览 | 分享到:

前言

  我们为什么需要自动化的静态检测工具?

   -- 可以用更少的时间开发出干净、安全、高兼容性的代码。

 

  PRQA自动化静态分析可以在软件开发阶段识别代码缺陷、漏洞和兼容性问题,使用户可以在软件开发阶段,更快地修复bug,减少资金投入。

 

  人工代码检查不再被认为是可行的解决方案,我们需要通过工具来实现自动化过程。我们发现QAC能够非常准确检测更多的实际问题,最终能够提高代码质量。

-- 安德拉斯 勒纳

                Műszer Automatika group高级软件工程师

管理复杂软件开发面对的4个挑战:


  • 将功能丰富的产品快速推向市场同时确保软件的安全性、可靠性,并且符合既定的或内部的编码标准。
  •  难以协调分布于不同地域的大型开发团队以及内部与外包资源的整合。此外,还需应对不断变化的需求。
  • 平衡质量保证与开发速度使盈利最大化。
  • 某些特定情况下无法大规模复用代码导致较慢的创新并进一步降低软件的安全性、维护性,可靠性及发展速度。


 

  质量需求成为你开发过程中的一部分……如果不是,你就会遇到问题。首先从检查你的标准和管理你的复杂性开始。为此,有了静态分析。”                        

 -- Jan Verbek

飞利浦数字电视,高级软件工程和质量经理

PRQA静态分析如何帮助你在更短的时间内开发出更好的软件:


1.能够捕捉其他Bug捕捉工具遗漏的问题

  Lint和其他的Bug捕捉工具会漏掉问题,这些问题只有使用PRQA工具才能识别出来。这些Bug捕捉工具也会产生更多的False Positives和False Negatives,导致花费大量时间来区分bug的性质、可能会导致严重后果的系统故障。

  PRQA的平台能够捕捉更多的问题同时产生更少的False Positives和False Negatives。



2.在编码过程中修复软件缺陷和不符合编码标准的违规操作

  静态分析允许您在编写代码过程中不需执行程序,即可分析代码的缺陷,并遵循您所选择的编码标准(例如,MISRA、JSF、HIC++、客户内部自定义标准)。

  这确保了错误更容易在早期被捕获,避免了在开发完成之后纠正系统缺陷所需的高昂代价。



3.开发人员可以快速学习如何编写干净、安全、兼容的代码

  因为开发人员在他们的IDE中得到即时的的反馈,编码时就可以对错误修正,这样他们可以很快形成符合公司期望的编码习惯。

  还有一个额外的好处是,大型按地区分布的团队,全部编码也可以按照相同的标准进行,从而使代码更容易维护、构建,也使公司更容易引入新的雇用人员和外包资源。


4.通过软件的强制测试来加快进入市场

  如果您的软件是有安全关键性指标要求的,它就需要满足或超过行业标准,以识别可能导致系统故障、并导致伤害甚至死亡的缺陷。

  使用静态分析,可以在开发过程中解决很多代码问题。因为您的开发人员正在开发更好的代码,并且在开发早期即可识别问题和解决问题。因此,您可以在竞争对手之前推出更好的产品。


5.快速性

  自动化静态分析尤其适用于大型和复杂的软件代码检测。它可以分析数百万行源代码,以确保复用代码和新增加代码符合既定标准。

  这就是为什么财富500强公司,如Ford、Bombardier、Honeywell 以及许多其他公司信任PRQA的原因。




领先的软件代码静态分析工具

  PRQA公司成立于1986年,总部在英国。PRQA被世界范围内的高级软件开发人员、行业专家、标准团体认可为编程标准专家。其一直致力于通过静态分析来自动化地检查编程标准的遵循并发现软件的缺陷。     

  PRQA的主要产品包括: QAC/QAC++,QA.MISRA C/QA.MISRA C++,QA Verify。


  QAC/QAC++是用于代码规则检查的自动化工具代码审查主要检查代码和设计的一致性,代码对标准的遵循、可读性,代码的逻辑表达的正确性,代码结构的合理性等方面;可以发现违背程序编写标准的问题,识别其中不安全、不明确和模糊的部分,找出程序中不可移植部分(包括变量检查、命名和类型审查、程序逻辑审查、程序语法检查和程序结构检查等内容


  MISRACompliance 模块为QAC可选组件执行MISRA2004准则检查,在MISRA Compliance 模块的帮助下,分析源代码查找不符合MISRA的结构。QAC的警告信息直接通过HTML连接到被分析的源代码,同时也与MISRA相关规则参考信息链接。这些参考信息包括MISRA兼容代码中解释性的例子和标准描述。 



  QA Verify是集代码静态分析和质量管理于一体的软件代码质量管理平台,利于客户端-服务器的架构方式,能够无缝地集成到日常的开发流程中,最大化地发挥团队协作水平和管理的效率。

PRQA公司的权威性

  • PRQA在C和C++的ISO工作小组中有决定性的投票权

  • PRQA是MISRA(C和C++标准的创建组织)的创始成员, High Integrity C++编码标准的发起者


提供的产品和服务的领域包括: 

-航空航天、汽车、国防、半导体、金融、工业应用、医疗设备、通信。


结语
  在超过25年的时间内,PRQA一直保持了在缺陷预防领域的领导地位。我们的方案旨在和开发者并肩工作。在推进安全的编码实践的同时,前瞻性地为安全关键性和任务关键性系统保证高质量的代码。

关于怿星科技和PRQA
  怿星科技是PRQA公司在中国汽车行业的授权合作伙伴,具有多位经验丰富的PRQA认证工程师。依靠对嵌入式软件技术的深入了解和丰富的实践经验,怿星科技的服务水平得到了业内用户的广泛认可。
相关文章