您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[2023第十二届全球TOP100软件案例研究峰会]:京东零售-刘晓成-如何实现大规模且持续增长的应用架构升级与治理 - 发现报告
当前位置:首页/行业研究/报告详情/

京东零售-刘晓成-如何实现大规模且持续增长的应用架构升级与治理

AI智能总结
查看更多
京东零售-刘晓成-如何实现大规模且持续增长的应用架构升级与治理

解密B端复杂业务应用的防治艺术: 如何实现大规模且持续增长的应用架构升级与治理 刘晓成京东零售架构师 讲师简介 刘晓成 京东零售架构师 “京东零售架构师,京东零售认证讲师,先后在创业公司、腾讯、滴滴、京东多家公 司任职,关注复杂业务、高可用架构领域。 21年加入京东,曾负责黄金链路逆向退款业务团队,完成多个遗留债务应用架构升级,同时负责订单履约、自主售后、资费结算、服务市场等BP架构工作。 目前主要负责软件工程服务防治体系的建设,致力于为业务提供风险的预防识别以及构建风险因子的洞察诊断能力。 过往曾获PMP认证、腾讯云技术社区22年最佳作者、InfoQ写作平台百位签约作者和审核版主。 www.top100summit.com ” www.top100summit.com 目录 一、零售电商B端业务的演进 二、大规模且持续增长的应用挑战 三、软件工程服务的防治体系建设与实践四、总结与展望 www.top100summit.com 亮点介绍 ? 几十W 几百+ 几百+ ZoomIn ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 几千应用 … ZoomOut www.top100summit.com 一、零售电商B端业务的演进 二、大规模且持续增长的应用挑战 三、软件工程服务的防治体系建设与实践四、总结与展望 零售电商B端业务的演进 以大型百货店为单一业态: 1917:先施百货 1918:永安百货 1956:公私合营(国营百货公司+农村供销社) 业态… 发展 年份集贸式零售 改革开放前,百货商 经营店实行计划资源分配; 定位改革开放后,国有大型企业百货为零售主体。 大型百货倒闭,业态多样化: 1991:联华超市 1994:物美超市 1995:家乐福等外资超市 其他:当当、亚马逊、苏宁、国美、万达等… 2003:香港上市,2004:苏宁上市 连锁店式零售 零售体系发展迅速,零售业态逐渐丰富,百货商店,连锁超市,便利店等共存。 非典疫情、互联网+等,电商高速发展:2003:淘宝网 2004:新浪一拍网 2005:腾讯拍拍网 2008:百度有啊 2004:京东多媒体网 2006:淘宝商城 2008:唯品会 2010:凡客 2010:美团网 …2014.5:京东上市, 1990年前 1991-2002 2003-2015 2016-至今 2014.9:阿里巴巴上市 电子商务零售 零售业进入电子商务时代,C2C、B2C、B2B等多种模式共存。 线上流量红利结束,全渠道 +用户为中心驱动价值凸显,业态专业化、精细化:2015:阿里盒马生鲜 2015:拼多多 2018:抖音快手电商战略 其他:微信、微博、小红书、B站等… 电子商务领域出现的各类创新模式和业态,如直播电商、内容电商、社交电商、移动电商、新零售、兴趣电商、信任电商、C2M(用户直连制造)、即时零售 全渠道新零售 零售业向全渠道运营演进,以消费者为中心,线上与线下渠道同时运营。 www.top100summit.com www.top100summit.com 零售电商B端业务的演进 www.top100summit.com 一、零售电商B端业务的演进 二、大规模且持续增长的应用挑战 三、软件工程服务的防治体系建设与实践四、总结与展望 大规模且持续增长的应用挑战 局部视角 管理者视角 团队视角 业 重 技 人 务 复 术 力 不 建 负 成 满 设 债 本 意 多 重 高 软件各种小问题(系统稳定性差)多版本多分支应用交付(应用功能交付难) 软件经常无法使用(系统可用性差) 多个平台重复运营(数据未打通) 用户视角 需求多、重复开发、加班频繁(需求压力大) 问题故障不断,排查难(人肉运维苦) www.top100summit.com 全局视角 渠道 商城业务海外业务商业化业务健康业务… 大规模且持续增长的应用挑战 挑战 [人、货、场]线上与线下融合难度高 顾客人群差异、运营差异、渠道差异、营销策略差异、商品结构差异等 [体验与效率]技术栈不统一、前后端未分离 物流配送、时效、服务等要求效率不同,多套重复建设,体验差异大 业B2C商家 务POP商家 模VC商家 式 … 风控 权益 会员 结算 售后 履约 门店 库存 交易 商品 商家 产 品 能 力 DBESMQCacheRPC… 基 础 设 施 B2B商城 零售商、贸易商以及第三方定制化需求的商家 线下供货B2S 采购、退供、预测补货等 O2O到店到家POP到店、到家自营到店、到家 线下数字化 门店ERP、POS收银、门店科技、DMS等 www.top100summit.com 架构迷思 大规模且持续增长的应用挑战 消费者 终端体验 逻辑规则、稳定性、性能 软件工程的“皮” 领域模型、技术方案、业务流程 软件工程的“肉” 服务者 业务价值、业务运营模式 改编自《换个角度认识软件》-ThoughtWorks林宁 软件工程的“骨” 软件工程的“魂” www.top100summit.com 大规模且持续增长的应用挑战 架构迷思 环境的复杂多变 个体的有限知识 老板的战略目标: 打造一款用于海军战斗的航空母舰 www.top100summit.com www.top100summit.com 一、京东零售B端业务的演进 二、大规模且持续增长的应用挑战 三、软件工程服务的防治体系建设与实践四、总结与展望 www.top100summit.com 软件工程服务的防治体系建设与实践 ISO/IEC42010:20072中对架构有如下定义: Thefundamentalorganizationofasystem,embodiedinitscomponents,theirrelationshipstoeachotherandtheenvironment,andtheprinciplesgoverningitsdesignandevolution. 架构 关系 元素 架构是系统的基础组织方式,包括各组成部分、关系(组成部分之间、组成部分与环境之间)以及指导其设计和演进的原则。 约束 架构设计架构设计原则 www.top100summit.com 软件工程服务防治体系 跨团队、跨系统的企业级架构宏观规划治理 企业架构(EA) 软件工程服务的防治体系建设与实践 统一战略体系:构建企业级视角 战略价值驱动设计方案 战略愿景不清,缺乏价值共识 平台工具 应用架构(AA) 业务架构(BA) 价值设定价值探查价值分析价值拆解价值实现价值验证 架构治理业务复杂度 业务域 业务场景 业务身份 业务流程 子领域 领域服务 领域能力 扩展点 系统重复建设,业务复杂, 业务身份 集合 骨架 切面 垂直维度水平维度内核维度 架构治理数据复杂度 流程规范 信息孤岛严重 数据架构(DA) 数据错误,体验不一致 前后端分离网关统一系统平台化组件统一单元化部署关停并转 架构治理技术复杂度 技术架构(TA) 技术栈不统一,基础设施维护难 软件工程服务的防治体系建设与实践 统一作战地图:构建企业级视角 1、明确问题域2、面向业务分析 3、面向流程约束4、面向模型设计 5、面向技术实现 www.top100summit.com 业务域盘点确认系统现状整理 对外接口、依赖接口、库表、 业务逻辑、流程 产品现状整理 整理当前业务方、整理各个业务 场景逻辑差异、整理近1年项目 需求改动、整理业务方未来诉 业务侧沟通 当前业务现状、目前问题及诉求、业务未来规划方向 业务建模统一语言沟通 将业务名词、业务身份、业 务含义、业务场景、维度等统一管理 业务模式分析 业务运营流程梳理,整理业务、功能、场景、行为、事件等分析,确定业务价值 业务领域分离 将业务逻辑、领域逻辑相隔离,明确区分业务边界、领域边界 流程建模通用流程设计 将业务运营流程中相似逻辑 进行合并,形成可复用的流程设计 可变点设计 将业务运营流程中差异化的内容进行扩展点能力抽离 业务身份设计 根据业务场景细分业务运营流程,并明确业务定义规则,统一用业务身份进行区分 领域建模业务模型设计 将业务与数据分离,业务模 型聚焦领域服务、领域能力、扩展点。 数据模型设计 对象与存储分离,将对象模型进行集合、骨架、切面相分离,比如DDD中的聚合、实体、值对象等。 能力模型设计 将能力进行组装,形成特定业务身份场景下的解决方案,提供基础服务、扩展服务等。 服务实现分层架构设计 以接口层、应用层、领域服 务、领域能力、扩展点、扩展点实现、基础设施、持久化为8层逻辑分离。 平台化代码结构 以视图服务层、能力聚合层、共享基础层进行业务聚合,以垂直、水平、内核进行module拆分。 业务、能力可视化将数据模型翻译成特定Schema模型可视化,将能力模型上报进行能力可视化。 架构成熟度评估体系 (代码与设计一致性、代码宏观质量、代码微观质量) 业务价值度量反馈体系 (人、货、场的价值树拆解指标,诸如GMV、NPS等) www.top100summit.com 软件工程服务的防治体系建设与实践 统一技术方案:构建企业级视角 对抗熵增的斗争:在本质复杂度天然存在的情况下,我们倾向于优先处理偶然复杂度 集团/事业部条线/敏捷团队研发小组成员 大规模应用&最小单元管理单体应用&分层架构管理代码层面&扩展点实现 www.top100summit.com 软件工程服务的防治体系建设与实践 顶层设计规划:商家生态案例解析 www.top100summit.com 问题域 愿景 驱动 引申全局 问题 驱动 局部规划 全局规划 软件工程服务的防治体系建设与实践 演进式驱动规划:快退案例解析 识别有效问题 确定目标范围 设计落地规划 实施融合过程 保障切量机制 收集一线反馈 驱动 架构演进 面向模型设计 软件工程服务的防治体系建设与实践 实践案例分析:从需求到治理实践 面向业务分析 业务 共性业务 2B业务 分销 B商城 提取共性业务 社会化门店 线下零售商 线上店 专卖店 面向流程约束 通用流程 定制化业务 渠道场景业务 业务身份ID 订单锁定 拦截意向单审核 订单删单 厂直商家审核 对公转账退款 业务模型 单 商家业务子域 实物 扩展点 领域服务 扩展点 领域能力 数据模型 子领域 领域事件领域对象 能力模型流程编排扩展点实现 订 流程模型 识别设计 面向技术实现 数据复杂度 元数据PO 业务数据BO(集合、骨架、切面)外数据DTO 执行生效上报 业务复杂度 API 业务身份ID 需求 需求 交付管理 MQ 业务解析 Worker 数据 映射 流程框架 PersistenceInfrastrutureExtensionExtensionDomain ImplementAbility DomainOrchestrServiceatione UserInterface 技术复杂度下沉 打包编译部署服务 配置管理平台 基础设施平台 应用 身份识别 扩展点实现 JAR运行 身份管理 语言管理 需求管理 指标管理 工具管理 任务管理 应用管理 www.top100summit.com 软件工程服务的防治体系建设与实践 实践案例分析:从负债到预防探索 -微服务架构设计规范 -第三方系统集成规范 -技术选型指南 -开源软件使用规范 -API设计规范-编码规范 -特殊解决方案评审规则 … 标准规范 反馈修正 反馈修正 架构方案评审 反馈修正自动 化工具扫描 手工上报跟踪 www.top100summit.com 反馈修正可视化分 析 软件工程服务的防治体系建设与实践 团队效果数据