版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、持续代码扫描的演进之路熊志男 京东时间线2015/02搭建代码扫描平台小团队成功案例2015/05大团队成功初见成效2015/072015/10大团队遇到瓶颈2016代码扫描持续演进开始之前:公司统一代码质量平台统一部署和统一入口;基于SonarQube和Jenkins 实现;多Master,执行速度快;集成其他插件(Findbugs、PMD、Checkstyle等)固定周期代码扫描;上线前代码质量分析;全量规则代码扫描;基于SonarQube的Total Quality 质量体系(多维度)代码质量周报代码质量靠部分成员自觉;团队代码质量数据在研发体系垫底技术&实现流程&标准团队&文化敏捷先锋
2、团队:首先尝试持续代码扫描大团队敏捷转型敏捷转型先锋团队Scrum实践持续集成持续代码扫描敏捷先锋团队:首先尝试持续代码扫描大团队敏捷转型敏捷转型先锋团队Scrum实践持续集成持续代码扫描持续集成之:持续代码扫描原生的开源框架:SonarQube和Jenkins;单Master,单执行机,满足小团队需求;及时反馈机制:Jenkins的Monitor view集成其他插件(Findbugs)以手工配置为主团队单分支开发模式;提交触发代码扫描;基于80/20原则的TOP20代码规则集;关注单个质量维度:代码违规设置代码违规数量阈值研发Leader重视代码质量;团队成员积极性高敏捷文化形成技术&实现
3、流程&标准团队&文化初露锋芒:小团队影响力提升优秀实践:部门 公司 业界横向推广:大团队全面铺开整合开源框架:POPCI系统;单Master,多执行机,执行机与应用绑定;两种反馈机制:实时反馈和周报数据反馈;集成其他插件(Findbugs,CPD);通过脚本实现配置和批量导出数据;各团队开发模式不统一;主干提交触发代码扫描;基于80/20原则的TOP9代码规则集;基于SonarQube的质量体系:SQALE(多维度)设置代码违规数量基线阈值(不新增)各研发Leader积极推动减少代码违规数据;各团队成员配合要求修改违规各团队文化各不相同技术&实现流程&标准团队&文化傲视群雄:大团队优秀实践阶段
4、成果:代码质量数据研发体系排名第一;研发人员逐步建立代码质量红线意识;瓶颈期:无法深入落地问题来了: 缺乏持续的目标; 基础框架不完善,维护任务量井喷; 流程标准不灵活,各团队无法定制; 易用性较差,团队成员学习成本高;蛰伏期:持续改进从研发痛点入手与架构师沟通了解团队痛点个人违规数据汇总优化基础框架执行机资源池并行多流水线流程/标准定制化Merge Request流程代码规则集裁剪简化运维工作自动化运维脚本引入开源类库持续演进目标的转变追求绝对数字消灭TOP9违规易用性差向上负责提升排名服务研发提升相对质量过滤低级错误提高易用性体现研发个人代码质量向下负责持续改进流程演进流程/标准演进:由统
5、一规则集 转变为 统一规则集和定制规则集相结合;由分散复杂的质量维度 转变为 简明集中的质量维度;由单个串行流水线 转变为 多个并行流水线;由单一的代码扫描机制 转变为 全流程的代码扫描机制;质量维度聚合可发布性:可靠性:安全性:可维护性:全流程代码扫描编辑器插件代码扫描; (团队规则集)GIT Pre-commit 代码扫描 (零容忍规则集)分支变更代码扫描; (团队规则集)GIT Merge request代码扫描: (团队规则集)主干变更代码扫描; (POP基础规则集)本地代码扫描分支代码扫描主干代码扫描流程改进框架改进单服务器&单执行机小团队时期大团队推行多服务器(主/备)执行机资源池
6、(独占资源池、共享资源池)外部系统对接(获取批量系统数据)扫描提速(Maven任务多线程执行)拆分系统(独立编译中心)流程改进简化运维手动配置代码扫描任务手动导出代码质量数据手动配置脚本化&系统化自动配置代码扫描任务(Python Jenkins Client)自动导出代码质量数据(SonarQube api)对接gitlab系统(Python gitlab Client)提供一键接入功能及接口实现落地风口来了更加关注内在质量:由面向用户的前端系统 转变为 主要提供服务的后台中心系统由要求不新增违规 转变为 清理遗留代码违规由TOP9规则集为主 转变为 POP基础规则集(50)为主由以代码质量为主 转变为 代码质量、安全质量、可维护性多维度由测试推动为主 转变为 研发主动要求接入代码扫描效果用户数据&开放合作用户增加:用户量200+,超过部门内部总研发人数;由部门内部用户扩展至部门外部用户(服饰家居、零售、运营研发);开放合作:与外部门合作进行SonarQube插件开发;制定执行机资源共享计划,为外部门提供代码扫描支持;效果研发团队内建质量提升过滤低级违规清理遗留违规清理冗余代码交付效率提升减少返工早发现、早修改代码质量意识提高主动扫描代码不断提出改进需求影响力提升优秀团队展示平台对外输出实
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年长白山职业技术学院单招职业技能笔试参考题库带答案解析
- 2025年化工技能大赛试题及答案
- 2026年浙江经贸职业技术学院单招职业技能笔试备考题库带答案解析
- 2026年青岛工程职业学院单招职业技能笔试备考试题带答案解析
- 2024年【茶艺师(高级)】考试题及茶艺师(高级)试题及答案
- 2025招标投标(评标评审专家)试题及参考答案
- 组合抗震支吊架安装工程施工组织设计方案
- 2026年重庆科创职业学院高职单招职业适应性测试备考试题带答案解析
- 2025年高职测绘地理信息技术(地理信息采集)期中测试卷及答案
- 自我介绍课件音乐
- 运动素质知到课后答案智慧树章节测试答案2025年春浙江大学
- 《河南省住宅室内装饰装修施工合同(示范文本)》
- 金带街道燃气管网改造工程初步设计(说明书)
- 2024年中国燃气具行业分析及2025年机会预测
- 证券公司前台工作总结
- 汽车租赁服务项目管理规章制度
- DB13T 1264-2010 远程射雾技术应用规范
- JGJT46-2024《施工现场临时用电安全技术标准》条文解读
- 低压配电柜工程施工组织设计方案
- 员工奖励申请表格模板(可修改)
- 二年级上册思维应用题20道
评论
0/150
提交评论