当前位置:首页 > 报告详情

A1--张梦涛--vivo活动平台系统技术债管理实践.pdf

上传人: 张** 编号:181221 2024-10-29 40页 7.17MB

1、vivo活动平台系统技术债管理实践张梦涛vivo互联网架构师张梦涛vivo 互联网架构师vivo互联网研发团队资深研发工程师,先后参与vivo礼品中台、vivo活动平台、vivo商城活动等多个项目的架构设计和核心业务建设,目前负责vivo日活千万级活动平台系统和vivo商城活动系统架构设计,负责的项目获得vivo公司金像奖和创新贡献奖等,致力于提高代码质量和软件工程师研发效能。目录C O N T E N T S1.技术债简介2.技术债管理机制3.技术债管理案例4.总结与展望技术债简介01含义、危害、分类技术债的含义技术负债(Technical debt),是程序设计及软件工程中的一个比喻。指开

2、发人员为了加速软件开发,在应该采用最佳方案时进行了妥协,改用了短期内能加速软件开发的方案,从而在未来给自己带来的额外开发负担。维基百科贷款买房?技术债的危害(1)效率:这是最直接的影响,当技术债不断增加,软件系统会变得非常脆弱。这种脆弱主要是由不良的架构设计或代码设计导致,技术债不断打破设计原则,让原则不复存在,以至于很难理清系统组件之间的关系和职责。当修改其中的一部分组件时,其他组件也会牵连,可能会陷入恶性循环。前台服务中台数据库技术债的危害(2)质量:随着项目逐渐发展,高质量要求的项目迭代速度更好,技术债的持续累积是导致质量下降的重要原因。(3)体验:软件产品需要不断演进才能在长时间后依然

3、还能适应市场,拥有较强生命力。技术债越多,复杂性越高,开发成本越高。每次迭代都需要解决设计不足或技术所带来的问题。对于研发人员和用户的体验都会有影响。(4)谨慎/无意对于之前认为的最佳方案现在看来并不是最好的解决方案。技术债的分类(1)冲动/有意虽然识别到这样做会导致技术债的积累,但是不清楚带来的后果。(2)冲动/无意通常是由于人员技能的不足。不知道如何设计更好的解决方案。(3)谨慎/有意面临业务压力时选择快速完成产品交付,然后再处理技术债务。技术债管理机制02遇到技术债按照现有方案,我们逐渐演化出一套稳定的技术债机制,相应的按照以下步骤进行处理:发现技术债紧急?修复上线伺机修复搁置待修复直接

4、修复问题跟进丢失?识别技术债想要管理技术债,首先就是要识别技术债。通常我们在识别技术债的时候可以从以下几个类别去筛查。记录技术债序号所属项目描述类型状态创建人创建时间处理人规划版本上线时间备注1A活动结果查询缺少缓存常规类待开始张三2024.7.30紧急2A*常规类待开始张三2024.7.31范围广3B*架构类待开始李四2024.7.3*4B*架构类待开始李四2024.7.3分析技术债(价值/成本矩阵)价值成本1243高价值+低成本高价值+高成本低价值+低成本低价值+高成本拆 分拆 分解决技术债序号所属项目描述类型状态创建人创建时间处理人规划版本上线时间备注1A活动结果查询缺少缓存常规类进行中

5、张三2024.7.30张三1.1紧急2A*常规类进行中张三2024.7.31李四1.4范围广*nB*架构类已上线李四2024.7.3张三1.12024.9.31(1)利用好版本gap(2)工作量最小化(3)价值最大化(4)做好回归阶段审视技术债管理机制 团队治理技术债的过程中确定主要责任人(1)明确管理机制和责任分配 开发人员对技术债有正确的认知(2)主动预防原则 需要遵循高价值优先的原则修复技术债(3)高价值优先原则常见问题1、技术债是不是越少越好?并不是!不能为了追求技术债的减少而放弃一些业务发展的机会。2、如何“说服”产品和项目落地技术债机制?共同的目标都是把产品做好,不是说服?而是提供

6、稳定有效的解决方式,技术债的稳定可以让产品做的更好。技术债管理案例03案例一:慢SQL303404505606707808909202000500010000150002000025000Q4慢SQL数量目标项目项目A项目B项目C项目D项目E项目F项目G大于1秒钟分析慢SQL数据量 删除数据 分库分表 ES&缓存SQL语句 所有字段都必需?联表查询 索引充分?嵌套查询复杂策略 数据清理 数据对账 数据聚合分析慢SQL数据清理策略清理任务表名分表联表条件分页配置中心获取配置拼装SQL执行任务表名分表联表条件分页时间时间范围范围清理策略清理策略分表策略分表策

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
本文主要介绍了vivo在活动平台系统技术债务管理方面的实践经验。作者张梦涛,vivo互联网架构师,参与过多项核心项目,包括vivo礼品中台、vivo活动平台和vivo商城活动等。其管理技术债务的实践包括:识别、分析、解决和跟进技术债务,并形成了一套稳定的技术债务管理机制。 技术债务是指在软件开发过程中,为了快速完成任务而采取的短期解决方案,这将导致未来需要额外的工作来修复。技术债务的危害包括效率低下、质量下降、用户体验差和研发成本增加。 vivo的技术债务管理机制包括:发现技术债务、紧急修复、上线修复、搁置修复和直接修复。同时,vivo也利用版本gap、工作量最小化和价值最大化原则来优化技术债务管理。 在案例部分,作者分享了vivo在慢SQL处理和代码质量提升方面的实践经验。通过对慢SQL进行分析和清理,vivo成功提升了数据库性能。同时,通过代码质量的提升,vivo也提高了项目的稳定性。 总之,vivo通过建立稳定的技术债务管理机制,提升了研发效能,为公司的持续发展提供了有力支持。
"如何有效管理技术债务?" "如何提升代码质量与研发效能?" "技术债务治理的实践与挑战是什么?"
客服
商务合作
小程序
服务号
折叠