面向亿行 C/C++ 代码的静态分析系统设计及实践
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向亿行C/C++代码的
静态分析系统设计及实践肖枭
自我介绍
2016年香港科技大学取得博士学位
过去10年一直以极高的热情从事静态
分析技术的学术用研究
合作创办源伞科技,致力于推动静态
分析技术在企业中的应用
目录
代码质量管理是个大问题
静态分析+代码评审的实践
生产质量是责任
☐学习和强调,红线和惩罚,100%的测试覆盖率,和事后复盘并不够
☐有经验的程序员也会犯错
☐对代码提要求很难监督落实
☐测试更多是验证功能,很难检测编码缺陷☐代码的快速变化使质量更难管
靠运维和事后复盘善后够吗?
自动化工具+流程才是未来
☐静态分析工具:半智能的代码分析机器人
☐静态分析辅助代码评审
Bug!Thx!Bug!
☐投入大
☐KPI 不痛不痒
☐使用主体和责任主体不一致☐一步登天想要终极AI 代码质量改进工具、流程落地难
Bug!
No Thx!
DevOps: 代码质量责任应该左移
设计代码
开发
代码
评审
入库测试发布
1.非研发人员主导,沟通成本高,推动修复周期长
2.很难形成标准推动研发实施
3.形成技术债,偿债成本高
1.代码签入前,研发人员有义务修复问题
2.测试人员早期加入,更懂项目研发的情况,沟通成本低,加快上线
3.能逐步形成好的编码规范和最佳实践
检查代码风格问题挺准,但是我warning 都不看,还看这个?
大多数开发人员眼中的静态分析工具检查逻辑问题好,但耗时长还挺多误报,想用而不敢用