京东Y事业部打造一体化质量管理平台
互联网企业质量管理的困惑
作为互联网时代的互联网企业,我们的研发模式和传统模式相比,最显著的不同在于发布节奏加快了,这个加快不是快了10%,20%,50%,而是加快了几倍,甚至几十倍,上百倍。面对加快了几倍几十倍甚至上百倍的发布频率,互联网企业如何进行质量保障,如何做到项目各角色间协同高效工作、如何保证发布的质量,成为了我们需要面对和解决的最大难题。
俗话说得好:实践出真知。面对环境的变化,Y事业部质量管理团队,明知山有虎,偏向虎山行。在摸爬滚打中,经过两年多的实践,与产品、研发、测试各团队经过多次的研讨,实践-改进-再实践-再改进,探索出了一条适合于互联网企业的质量管理之路,充分体现了Jder勇于创新,永不放弃的精神。在京东人面前,永远没有不可能三个字,京东就是将一个个的不可能变成了可能而创造的业界奇迹。
“从0到1”缔造Y事业部质量管理体系
在快速发布的研发环境中,一切质量管理方法最基本的要求就是简单有效,任何复杂的方法都无法真正落地。经过反复实践,我们总结出了适用于互联网企业质量管理体系,它遵循以下原则:
1) 化繁为简:将传统复杂的质量管理方案简化为最实用最有效的几个关键流程,形成我们必须遵循的三四五原则;
三四五原则
2) 适用为王:不管什么样的方法,能够在研发工作中落地才是关键,我们的体系在正式推广之前,经过各个团队试点及反馈,最终为大家所认可,更适用于各团队的工作协同;
3) 工具护航:首先在线下实践,成熟后便加入到管理平台(TIP平台)中去,通过TIP线上操作来提高效率和效果,能够用系统工具实现的便不用人工。在工具开发过程中和公司现有的工具或平台打通,充分发挥已有工具平台的作用;
关键流程系统化
4) 快速反馈,快速改进:各个关键流程在实践过程中会遇到一些特殊情况,流程的Owner快速将问题反馈到质量管理团队,质量管理团队收集和分析数据,快速进行改进,讨论通过后快速发布;
5) 分享:我们总结出来的方法及开发出来的工具平台,热烈欢迎其它团队使用,并提供无偿的培训和技术支持。用的团队越多,越能体现这套质量管理体系的价值,也能从兄弟团队中得到更多有益的反馈,从而可以使这套体系更完善和更高效。这和传统企业中各个部门相对封闭,敝帚自珍的作风也大不相同。
“从1到1+”打造一体化质量管理平台
Y事业部质量管理体系经过一年多的稳定运行后,极大地减少了跨团队沟通成本、有效地预防了线上事故的发生,提升了线上系统质量。与此同时,由于京东整体业务的不断增长,规模的不断扩充,我们的研发体系软件工程、项目管理、质量管理等各环节的支撑系统不能完全无缝衔接,各部分的数据缺乏统一管理,部分系统自动化程度不足等等问题依然困扰着大家。在这样的环境下,我们经过充分调研与讨论,提出了一体化质量管理平台的设想。在质量团队的共同努力下,在经过原型设计、系统架构、详细设计、编码&单元测试、集成测试后,一体化质量管理平台(QIP)正式上线。
一体化质量管理平台设计
项目需求全生命周期自动化管理:
一体化质量平台将涵盖Y事业部所有项目/需求(无论是否PMP立项),同时通过与PMP系统的有效衔接,实现项目/需求信息的实时同步,避免重复工作,确保项目/需求的全面性和准确性。从源头也即产品需求开始,确保需求的新增、排期、研发(自测及提测)、测试、上线及线上验证等各个环节在系统中实现紧密衔接,提升各团队间协同工作效率,同时各个环节的数据得到有效保存。
通过项目中角色在项目过程各个流程环节的线上操作(eg. 研发自测和提测、测试接受提测、测试总结、线上验证等),系统自动触发需求状态的流转,无需手动变更需求实现状态,避免了人为操作的不及时或不准确问题,最终达成需求的上线,实现需求全生命周期闭环管理。
需求状态流转
流程重要节点质量控制:研发质量管理(自测环境、提测、代码评审)
系统增加对项目流程中关键节点的质量把控,如研发提交测试前的自测环节的监控(只有研发自测通过的代码,方可进行线上提测)、代码评审的校验(提测的代码分支必须通过代码评审)、代码扫描情况跟踪,尽可能地在项目前期发现潜在问题,减少后续的返工,降低线上问题发生的风险,提高线上系统质量。
为了提升研发提测质量,我们将提测前的自测流程作为项目的必备环节。为帮助研发同事解决研发自测环境的问题,我们提供Docker+Mock的研发自测环境解决方案。Docker平台实现自测服务器申请、配置、管理、部署等功能,帮助研发同事轻松实现自测环境部署,而且Docker容器部署已集成到QIP平台中,通过QIP平台中就可以实现打包、编译、部署一键完成;同时为了解决外围依赖接口的环境不稳定问题,测试团队开发出了Mock接口仿真平台,开发人员只需做一次初始化配置,系统即可自动实现所有外围接口仿真功能,帮助开发人员完成开发及自测工作。
自动化项目质量评分与满足审计要求:
QIP平台中已实现项目质量评分,设定了多项质量指标、评分标准及权重,在项目完成后,系统提取各个阶段的客观数据来对项目进行整体质量评分,给管理层展示各个项目的实际质量情况,让大家做到心中有数,为事业部项目评优提供参考。
系统提供一系列的数据,QA人员可定期提取系统数据(如:需求变更率、研发自测通过率、代码评审率、千行代码缺陷率、测试覆盖率、项目按时上线率等等),审计质量体系与流程的运行情况,给管理层呈现客观准确的分析报告。另外公司对外需要接受SOX合规的审计,通过QIP平台实施的项目/需求将能确保符合SOX审计的要求。
线上运维问题追溯:
通过与线上运维管理系统的打通,将实现线上问题的全程追溯,从而有针对性地根据原因分析出解决方案,避免问题再次发生,达到持续改进的目的。另外,系统后续将提供Dashboard,供各级管理者实时查看项目/需求/资源等状态,并且可以根据需要定制图表模板,实现多种查询需求,让大家做到心中有数。
简而言之,QIP--自动化、可视化、可追溯、可评估、可度量的一体化质量管理平台,将作为Y事业部产品、研发、测试、项目/产品运营团队间的高效协同、保障质量的工作平台,为我们的线上系统高质量运行提供一份保障。让我们一起保持初心、砥砺前行!
关于京东Y事业部
京东Y事业部成立于2016年11月,其定位是以服务无界零售为核心,着重智慧供应链能力的打造,核心使命是用技术创新让供应链迈向卓越。Y事业部正在京东集团未来十二年战略转型的指引下,全面探索和应用大数据挖掘、人工智能、区块链、物联网等一系列技术,持续推动供应链管理创新与应用,携手合作伙伴链接世界,智创未来。
京东Y事业部打造一体化质量管理平台的更多相关文章
- Y事业部打造一体化质量管理平台
互联网企业质量管理的困惑 作为互联网时代的互联网企业,我们的研发模式和传统模式相比,最显著的不同在于发布节奏加快了,这个加快不是快了10%,20%,50%,而是加快了几倍,甚至几十倍,上百倍.面对加快 ...
- 利用R语言打造量化分析平台
利用R语言打造量化分析平台 具体利用quantmod包实现对股票的量化分析 1.#1.API读取在线行情2.#加载quantmod包3.if(!require(quantmod)){4. instal ...
- Django+xadmin打造在线教育平台(一)
目录 在线教育平台(一) 在线教育平台(二) 在线教育平台(三) 在线教育平台(四) 在线教育平台(五) 在线教育平台(六) 在线教育平台(七) 在线教育平台( ...
- 手把手教你用SonarQube+Jenkins搭建--前端项目--代码质量管理平台 (Window系统)
前言 网上教程大多介绍的是Linux系统下SonarQube+Jenkins如何使用,这是因为这两款软件一般都是部署在服务器上,而大多数服务器,采用的都是Linux系统.大多数服务器用Linux的原因 ...
- 微信事业群WXG成立 致力于打造微信大平台
今天,微信之父张小龙带领微信团队成立微信事业群(WeiXin Group,简称WXG),致力于打造微信大平台,由他们负责微信基础平台.微信开放平台.微信支付拓展.O2O等微信延伸业务的发展,并包括邮箱 ...
- 持续集成篇_05_SonarQube代码质量管理平台的介绍与安装
1.SonarQube的介绍 SonarQube是一个管理代码质量的开放平台. 可以从七个维度检测代码质量(为什么要用SonarQube): (1)复杂度分布(complexity):代码复杂度过高将 ...
- SonarQube代码质量管理平台工具
1.Sonar轮廓介绍 Sonar (SonarQube)是一个开源平台,用于管理源代码的质量.Sonar 不只是一个质量数据报告工具,更是代码质量管理平台.支持的语言包括:Java.PHP.C#.C ...
- Sonar——代码质量管理平台
Sonar——代码质量管理平台 一.基本认识 Sonar (SonarQube)是一个开源平台,用于管理源代码的质量. Sonar 不只是一个质量数据报告工具,更是代码质量管理平台.通过插件机制,So ...
- SonarQube代码质量管理平台比较好的搭建和使用资料
http://www.voidcn.com/blog/lidujun1028/article/p-3831235.html Sonar (SonarQube)是一个开源平台,用于管理源代码的质量. ...
随机推荐
- BBS登录功能
BBS登录功能 一.后端实现 1.实现验证码 from PIL import Image, ImageDraw, ImageFont import random from io import Byte ...
- HDU - 4578 线段树+三重操作
这道题自己写了很久,还是没写出来,也看了很多题解,感觉多数还是看的迷迷糊糊,最后面看到一篇大佬的才感觉恍然大悟. 先上一篇大佬的题解:https://blog.csdn.net/aqa20372995 ...
- P1781 宇宙总统
题目地址:https://www.luogu.com.cn/problem/P1781 题目描述:地球历公元 6036 年,全宇宙准备竞选一个最贤能的人当总统,共有 n 个非凡拔尖的人竞选总统,现在票 ...
- zabbix自定义添加主机
1.安装zabbix-agent [root@web01 ~]# rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/3.4/rhe ...
- windows下使用vs code调试简单的C程序
常使用visual studio code(vs code)打开.c文件,如果让vs code具备调试技能估计会比较有用 准备工作: 1. vs code安装插件:cpptools 2. window ...
- linux下tab作用的描述?
[Tab] 接在一串指令的第一个字的后面,则为命令补全; 实例怎么描述?什么叫一串指令的第一个字?[Tab] 接在一串指令的第二个字以后时,则为『文件补齐』 实例怎么描述?什么叫一串指令的 ...
- socket 基础 X-mind
- office 无法打开xlsx文件的问题
1. 设置content-type和header response.setContentType("application/vnd.openxmlformats-officedocument ...
- 爬虫笔记(一)——快速使用urllib库
本人以前用的都是python2.7,但看网上很多教程都是以python3为例的,所以便切换版本,导入urllib.lxml.beautifulsoup4等库. 下面介绍下两个版本对urllib库的区别 ...
- iTOP-iMX6UL开发板-MiniLinux-CAN测试使用文档
本文档介绍的是迅为iMX6UL开发板在 MiniLinux 系统环境下 iTOP-iMX6UL CAN 实验调试步骤.给用户提供了“can_libs.rar”.“can_tools.zip”和“can ...