理工新源:从源码审查、平台逻辑等思路进行总体数据质量的改进

7月20日,北京理工新源信息科技有限公司技术副总监陈奕昆在2018第二届中国新能源汽车测试评价技术发展高峰论坛上就“新能源汽车国家监管平台体系与测试技术”发表主题演讲。从国家监管平台体系架构、GB/T 32960标准测试技术和数据质量改进思路三个方面进行了发言。作为新能源汽车国家监测与管理平台建设及技术支撑单位,理工新源承担国家平台架构设计搭建和运维保障的工作,今天我们再次将数据质量改进思路详细展开为大家介绍,希望对广大新能源车企在数据质量改进上带来帮助。

国家平台主要承担着新能源汽车的运行安全监管、产品质量评估、运行数据统计、大数据政策分析几大任务,而数据的完整性、准确性、一致性、传输稳定性是基本条件。其中数据一致性是国家平台对企业平台和车辆予以准确、有效评估的必要条件,是监管功能有效实施的重要指标。

通过国家平台当前动态数据核验的错误问题统计,可以看出错误问题主要表现在服务器算力问题(例如实时数据时差问题)、车内零部件状态数据同步问题或可靠性、稳定性问题(例如状态为空,电压单体为空等)。

基于以上的一些问题,我们也帮助了某些问题较为严重的企业改进产品质量。主要从源码审查、平台逻辑、数据质量改进等思路进行总体质量的改进。

源码审查通过编码规范、安全性、复杂度、冗余代码、代码重复率、综合性等6个层面针对嵌入式的代码进行检测。通过 Sniper 代码检测工具针对代码质量的各种度量指标实现可视化,降低20%的测试工作,减少40%的人工代码检查时间,最重要是解决了根本的隐患性问题,让智能产品更加稳定可靠。

检测内容:

1.编码规范检测:检测工具内置的国际编码规范对源码进行检测,编码规范可根据企业的实际需求进行更改或者自定义。

2.安全性检测:内部模拟运行程序,查找所有可能的关键运行时错误。

3.复杂度检测:通过对代码逻辑的检测来验证代码的复杂度,对堆栈大小估计等在内的代码质量检测。

4.重复率检测:通过工具对工程内的所有代码进行分析,分析出重复代码。

5.未使用代码检测:对源码内未被使用的代码进行检测。

6.综合性检测:通过模拟运行时可以验证各个模块间是否有冲突以及各个方法间相互调用是否逻辑合理。

源码检测在源码编写过程中所使用的不同的开发工具需要进行定向配置,即不同的开发工具需要配置不同的检测环境,此过程相对较为复杂,需要配置时间根据不同的开发工具而异,简单开发工具1-2天,复杂开发工具5-7天,检测过程一般在几分钟内完成,根据代码量而异,如对代码进行深度分析则可能需要1-2小时或者更长时间。检测完成可生成两类报告:1、统计报告,包括各个错误的占比率。2.详细错误报告、包括各个错误的原因、位置分析:通过生成的报告(在检测结束时亦可利用工具对代码进行详细分析,定位代码问题;一键式解决代码问题,即自动解决问题代码)对代码进行分析,确认代码中的实际问题进行修改。

通过Sniper工具快速提示缺陷所在,所依据的标准有IEC 61508, ISO 26262,IEC 60880 IEC62279、EN 50128,DO-178C/DO-33。

平台逻辑验证通过压力测试、数据逻辑验证、有效和无效性数据验证来实现对服务器的检测,Message Tester 模拟Tbox对数据服务器进行数据发送。

检测内容:

1.压力测试:通过工具模拟大量的车辆,并向服务器发送数据,以此来检测服务器性能的极限。

2.数据逻辑验证:向服务器发送不同类型的数据,比如补发数据、报警数据,通过不同类型的数据来验证服务器的反应情况。

3.有效、无效性数据验证:通过工具向服务器发送不同带有问题的数据,以此来验证服务器对不同情况的数据的反应。

通过配置工具,验证服务器的连通性以及测试用例车辆的有效性并制作不同情况的检测用例,逐条或批量的执行测试用例,并记录各个用例执行的结果,检测结束后通过对所有用例的结果分析生成服务器检测报告。

数据质量改进通过线上的方式来检验整车数据质量与TBOX的稳定性,包括数据有效性分析、丢包率分析、里程分析、数据逻辑分析4项检测内容。

1.数据有效性分析:实时检测每一条数据的有效性。

2.丢包率分析:通过对每一段行驶或充电的数据进行统计来检验车辆的丢包率。

3.里程分析:通过对每一条数据的检验以及每次行驶间里程差来分析车辆是否存在里程差,并通过对比GPS里程来验证里程是否有问题。

4.数据逻辑分析:验证报警、补发等数据在逻辑上的发送是否符合国标要求。

在做数据质量改进检测前需提前准备10辆车左右,每辆车进行行驶和充电,单车要求数据条数达到5000条以上,如车辆数量达不到要求,那么尽量使其他车辆尽可能的行驶更长的时间,以达到检测要求。车辆在行驶和充电的过程中所有数据会进行动态的分析,在所有车辆达到检测要求条件后系统会对所有的车辆数据再次进行一次完整的分析,车辆在检测完成后的5个工作日左右的时间完成报告的生成,报告分为两种,其中统计型报告会展示出各个问题点在总报文条数中的占比情况,而详细报告则展示各个车辆具体问题的描述以及问题所发生的时间点,以便用户核查报文。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180726G1A6ZM00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券