2015-2016年,珍爱线下门店已新增覆盖城市9个,与此同时,CRM系统大小故障却发生了数十起... ...
珍爱网是以“网络征选+人工红娘”模式提供婚配服务的婚恋相亲平台。CRM系统承载了整个珍爱网会员的全生命周期管理,涵盖资源挖掘、用户触达渠道以及服务跟进体系。
CRM系统对珍爱5400名红娘来说,是承载她们全部工作的核心平台;对公司业务来说,承载着引流、转化、支付、客户服务等全部环节。最最重要的是,公司收入的80%都是依托CRM系统完成的。
然而在珍爱网成立10年之际,运行10年之久的CRM系统已不足以支撑业务的快速发展了。
Part.1
我们为什么要做DevOps
经过分析,我们发现CRM系统目前面临着以下问题:
技术上——
-
传统的系统架构,不再适应敏捷开发,模块耦合,数据库存在单点故障;
-
容错性差,冗余代码多,修复bug和实现新功能变得困难和耗时。
产品上——
-
产品功能不够场景化、电子化、智能化;
-
无法快速响应业务变化,迭代周期长。
我们可是背负着“成就天下姻缘”使命呢,系统重构,研发流程改进,迫在眉睫。
2017年1月25日,捷豹项目组成立,只为给业务打造一个“简单·好用”专注于婚恋相亲的综合服务平台。
捷豹CRM系统(PC端、Pad端、小程序端)的版本发布周期为一周一个常规迭代,紧急版本按天发布。
捷豹CRM系统整体设计思路如下图,我们希望能够实现系统的服务解耦、动静分离以及高可用。
然而大家都知道,微服务架构中每个服务都具有业务属性,并且能独立地被开发、测试、构建、部署。换句话说,每个服务都是一个可交付的“系统”。
那么问题来了,如何让需求以小批量形式在团队的各个角色间顺畅流动,并以较短的周期完成小粒度的持续发布呢?
答案当然是 TAPD DevOps流水线,简直是神助攻!
Part.2
整体效果
TAPD DevOps流水线支持集成主流的研发工具,覆盖产品研发全生命周期,提供可视化交付流水线,可以将DevOps各个环节进行统一展示和管理,真正实现一站式持续交付。
自2017年10月起,我们就应用TAPD的DevOps流水线,开展了一系列持续交付和持续改进实践。
持续交付部分
CI和CD实现过程使用Gitlab、Jenkins、Sonar、Jacoco、Nexus、EasyOps、Docker、Kubernetes等工具,分别在代码管理、集成编译、包管理、自动化测试、发布阶段集成到TAPD流水线统一展示和管理。
持续改进部分
在TAPD流水线实践DevOps的过程中,我们也打通了各环节的研发数据。
通过TAPD迭代详情中的Dashboard,可以统计并展示当前迭代的研发效能数据,包括:需求完成情况、缺陷新增和解决情况、代码提交与关联趋势、每日构建统计、构建产物版本情况、自动化测试、部署发布等全过程数据,研发效能度量更直观、更深入,让改进方向更明确,也让效能提升更明显。