网站首页 收藏本站 联系我们
  • 首页
  • 关于望驰
    • 关于我们
    • 技术优势
    • 企业文化
  • Parasoft
    • Virtualize
    • Jtest™
    • Insure++™
    • SOAtest™
    • C++test™
    • dotTest™
  • Cybellum
    • Cybellum
  • beSTORM
    • beSTORM
  • Synopsys
    • Seeker
    • AppCheck
    • Coverity
  • 主营产品
    • Fortify
    • Security Fortify
    • CheckMarx
    • Deepkeep
  • Micro Focus
    • UFT
    • ALM Octane
    • WebInspect
    • LoadRunner
    • UFT Pro
    • Mobile Center
    • Service Virtualization
    • Network Virtualization
  • 测试仪器
    • CxCodebashing
    • 手持射频产品
    • 手持式分析仪
  • 项目案例
    • 汽车解决方案
    • 金融解决方案
    • 工业控制系统
    • 医疗
    • 航空航天
    • 安全实验室
  • 行业新闻
    • 企业新闻
    • 行业动态
  • 联系我们
项目案例
汽车解决方案
金融解决
工业控制系统
军工
航空航天
安全实验室
医疗
  • 热门资讯
  • • Checkmarx:安卓又一严重漏洞!威胁着10亿人的..
  • • Checkmarx测评|物联网设备正在泄露你多少隐私..
  • • SlavaBronfman的访谈–Cybellum
  • • MISRAC++和AUTOSARC++的合并:软件开发行业专..
  • • 面向服务架构(SOA)的汽车软件分析和设计..
  • • 世界智能网联汽车大会
安全实验室首页 -> 项目案例 -> 安全实验室 -> 正文
parasoft在东软软件的解决方案
摘要:Parasoft的C++ Test改善软件开发过程

东软软件股份有限公司(以下称东软)是中国国内最大的软件公司之一,是中国国内领先的软件供应商。在中国国内取得一系列辉煌成就后,开始在国际市场崭露头角,已经进入汽车电子、DVD等嵌入式软件开发领域以及其他开发领域,客户遍及日本、美国、欧洲等国家,客户包括ALPINE、TOSHIBA、SONY Ericsson等知名企业。目前国际业务发展迅速、新的领域被不断扩展,构成了有影响力的客户群,国际影响日益扩大。东软嵌入式业务发展很快,业务量增加迅速;如何在快速的发展中,改善开发过程、提高开发效率、保证产品品质的问题显得日益重要。为此Neusoft分析了原有的开发过程后认为:编码阶段、测试阶段的花费时间很大,并且问题也比较多,改善的潜力比较大。

在编码阶段,东软尽管制定了详细的编码规范,要求工程师在编码时候遵守,但由于代码的规模大、人员较多,Review基本采用人工的方式,致使Coding Review花费了相当多的工作量,而且效果不是很显著。
在测试阶段,单体测试投入很多工作量编写Test Cases,测试也花费了大量时间;从测试的结果,东软发现 Test Cases 不能保证覆盖代码中所有的 Case。尽管东软加强了Test Cases的Review,但效果没有明显的改善。

东软为了改善这种状况,决定引入工具。东软使用了 Parasoft公司的C++ Test,认为C++ Test是个相当好、非常适用于东软的工具。C++ Test是一个集Coding Standard和Unit Testing于一体工具。C++ Test 的 Coding Standard 提供了 Effective C++/ More Effective C++/ MISRA 等16类规则(总计500多条)供我们选择,它提供MISRA(汽车工业软件编码标准), 这是东软嵌入式软件开发所遵从的编码规范,对东软开发非常适用。另外由于东软具有很多的客户,每个客户都对编码规范有各自的要求,并且要求的非常细致具体。C++ Test 的Coding Standard除了提供的500多条规则外,C++ Test还具有Rule Wizard的功能,用户可以根据自己需求原型化定制自己的 Coding Rules,可以说C++ Test的Rule Wizard完美地满足了东软的需求。
例如:

1.东软的编码规范对变量、函数的名字要加类型前缀;如结构体指针数组的命名要这样描述apstXXXX(XXXX为结构体名称,a代表数组,p代表指针,st代表结构体)。
用Rule Wizard可以方便定义如下规则(如图1)
2. 东软的编码规范对对判断语句规定,将变量写在“==“的后边,常量放在“==”的前边。用Rule Wizard可以方便定义如下规则(如图2)

C++ Test的Unit Testing功能可以根据被测试函数,自动完成测试用例,进行测试,并给出测试的覆盖度。这个过程不需要工程师的参与,基本达到单体测试自动化;并且出现的问题能够回溯,能够做到回归测试。在项目开发中原来几个人的测试工作,可以由一
套C++ Test的Unit Testing来完成,并且覆盖度清晰可见,对产品质量状况可以做到“心中有数”。目前有2个项目应用了C++ Test工具,从项目的过程数据来,编码阶段和测试阶段的效率得到一定的改善,各个阶段输出的产品质量也有一定的提高,客户对开发的效率和产品的质量非常满意。

从目前的使用效果看,可以说应用 C++ Test有效的改善了东软的开发过程、提高了开发效率、提高了产品品质。相信随着使用经验的积累、使用范围(更多项目)的扩大,将根本改善东软的开发过程,产生巨大的生产力,并且不断促进产品品质的提高。

Cybellum  Parasoft  bestorm  Defensics  Appcheck  Coverity  loadrunner  fortify  parasoft|东软软件|解决方案
上一页 返回列表 下一页
 
关于我们      |       产品展示      |       解决方案      |       经典案例      |       培训中心      |        新闻资讯      |        试用申请      |        联系我们
  • 上海望驰安防科技有限公司

    地址:上海市浦东灵山路958号5号楼2楼

    手机:18049824972

    电话:021-50150593

    邮箱: anying.ao@ruitde.com

CopyRight 2016 www.ruitde.com All Rights Reserved     版权所有:上海望驰安防科技有限公司   沪ICP备16034184号