【引领】当“移动核心”遇见DevOps:农行手机银行系统实践

发布于 2021-01-13 21:20

文/彭颖、韩肖、陈鑫

随着移动互联网技术的飞速发展及其在金融行业的深入,移动端已成为金融科技的主战场。手机银行作为金融服务、生活场景、数据智能的平台载体,正在对传统银行业务产生深刻的影响。中国农业银行手机银行系统一直致力于为用户提供智能化、场景化、强安全、重体验的智能移动金融平台,以实际行动引领着商业银行移动金融服务模式的升级。

手机银行系统作为农行核心的线上渠道,新趋势下业务需求呈井喷式发展,研发团队面临着需求变化快、版本更新频繁、交付时间短的现实问题。手机银行团队亟需一套贯穿需求、开发、测试、部署、运维的全流程、自动化、高效率的工作模式,以促进业务需求快速落地,从而达到持续交付的目的。

DevOps以快速高质量交付业务价值为核心目标,以业务、研发、运维密切协作,研发过程自动化,度量可视持续反馈为核心原则,正中手机银行的痛点。借由DevOps建设工程的契机,手机银行项目组与组织级各条线合力攻坚、携手共建,建成从需求、开发、测试到部署的端到端持续交付流水线,达到提质增效的目标。

一、精细化需求切块,全方位配置管理

手机银行项目采用敏捷研发模式,开发测试迭代周期为两周。在需求拆分时,保障细分的每个功能作为最小可投产单元,确保特性分支开发的生命周期在一周内。我们采用提交即构建、代码合并入主干前自动化代码检查、线上代码评审等手段最大程度地优化配置管理工作流,减小等待间隔,内建质量门禁杜绝向下游传递缺陷。通过自动触发持续集成流水线打包及持续部署流水线部署,缩短满足内部或者外部客户需求所需的前置时间,尤其是缩短代码部署所需的时间,有效地提高工作效率。

持续部署流水线以持续集成的程序包为起点,通过星云部署至各测试环境,完成全量的接口自动化(或界面自动化)测试、功能测试、性能测试、安全测试,测试通过后制品晋级准备投产。待生产变更完成后,持续部署流水线可实现自动将release分支合并至master分支并更新标签。

手机银行系统采用前后端分离技术,前端基于UMap框架开发,后端基于太行Boot框架开发。借DevOps部署流水线的建设契机,我们首次贯通了TFS、星云、UMap的工具链,实现流水线自动向测试环境部署前端离线包。


二、多指标度量管理,持续性跟踪优化



三、拥抱变化,展望未来

在实践的过程中,我们发现DevOps是敏捷思想的有力补充,传统的敏捷通过倡导快速迭代、小批量交付、团队节奏、可改善可持续的流程、保持沟通来解决开发与业务之间的鸿沟,快速响应变化。而DevOps是敏捷在开发完成后的延伸,着力于解决开发与测试、运维之间的鸿沟,业务和开发求快,而测试和运维,求的是稳定、安全和可靠的服务。与此同时,敏捷的快速迭代提高了构建和部署的频率,传统的构建部署流程复杂,多分支,环境不一,由人工操作容易出错,例如打包时选择了错误的代码版本,发布到错误的环境等。而DevOps最大化地利用工具和自动化流程替代人工重复冗余的操作。

手机银行作为新兴移动领域的代表,需求的迭代更新较快,并且还存在着运行环境碎片化的问题,理论上任何测试覆盖不到的操作系统和机型都可能会面临兼容性问题。据2020年10月份Android Top机型分布统计,Top 10的机型市场占用率都不足15%。通过DevOps的工具链贯通和流水线建设,我们实现了开发完成的代码自动打包部署到多个测试环境,并且进行接口和多机型的界面自动化测试。目前已积累了两千余条接口和界面自动化测试资产,之后我们将进一步推广和扩展,使得开发、测试和运维的工作协同更为高效和自动化。

另一方面,DevOps的发展是独木不成林的,现在有越来越多的技术给DevOps提供支撑,微服务架构理念和容器技术使得DevOps的实施变得更加容易,DevOps的各项自动化要求也推动团队优化现有架构、探索新技术。我们在实践过程中为了实现前端工程的提交及构建和自动部署也进行了模块的拆分和拆库,后续将进一步探索推动云上部署以及应用与配置分离。


雄关漫道真如铁,而今迈步从头越。手机银行试点DevOps评估工作已告一段落,而手机银行DevOps推广的新篇章才刚刚开始。项目组这一年来实践的结晶将推广落地至其他系统模块及后续的研发过程中,不断优化改进,积极为农业银行数字化转型贡献力量!

作者简介

彭颖,中国农业银行手机银行存款贷款团队项目经理,致力于手机银行存款贷款模块DevOps能力项的落地实施,负责手机银行DevOps 三级贯标工作,具备扎实的DevOps领域实践经验。 

韩肖,中国农业银行手机银行存款贷款团队技术骨干,在手机银行存款贷款模块DevOps能力项的落地实施中负责度量领域相关工作,提质增效。 

陈鑫,中国农业银行研发中心DevOps建设总体组成员,手机银行存款贷款模块DevOps贯标实施者。

往期精彩回顾

26.【引领】对标DevOps,探索掌银测试转型之路

25.【引领】TMMi测试过程改进回顾与展望

24.【引领】在识变和应变中登峰百万级TPS

23.【引领】农业银行性能测试一体化平台建设

22.【引领】安全高效供给数据,助力研发创新

21.【引领】持续提升制品管理能力,赋能应用研发

20.【引领】开源软件安全治理困局的解与破

19.【引领】蓝绿发布机制在农行电子银行领域投产环节的应用分析

18.【引领】谛听的过去、现在、未来——技术社交驱动研发能力开放共享

17.【引领】主动作为,提升网点服务保障能力

16.【引领】提升环境可用性,给研发者一个放心环境

15.【引领】产品创新和技术转型双轮驱动下的掌银测试质量思考与实践

14.【引领】网络建设向SDN演进的技术研究

13.【引领】拥抱数字化转型,引领智能化运维

12.【引领】关于深化网点转型的对策思考

11.【引领】应用安全的挑战与应对

10.【引领】用户价值驱动,稳步推进敏捷研发软着陆

9.【引领】创新谋变,农行应用运维体系演变与实践

8.【引领】拥抱变局、走出困局、实现破局 切实提升安全生产执行力

7.【引领】擎云平台踵事增华,全面提升研测自动化水平

6.【引领】创新引领发展,架构面向未来

5.【引领】结合TMMi浅析测试改进思路

4.【引领】系统支持要成为研发工作的开路先锋

3.【引领】为流程“瘦身”,为管理“添翼”

2.【引领】结合DevOps谈我行研发管理改进

1.【引领】“引”管理之道,“领”智远之行

轮值总编:马小斐

责任编辑:裴  霞

美      编:侯亚楠

技术支持:郑慧

我们的开心 · 总编辑部

(引 领)

-
快 乐 生 活
开 心 工 作


   
我 们 的 开 心

本文为“我们的开心”第4154期文章  
转载本号文章请联系我们
■欢迎来稿:请按“作品名-作者-部门”命名,发送到abckx@abchina.com

本文来自网络或网友投稿,如有侵犯您的权益,请发邮件至:aisoutu@outlook.com 我们将第一时间删除。

相关素材