课程简介
★ 需求梳理——架构设计的第一枪
★ 架构选型——做好每个场景大类的架构选型
★ 应用架构——功能架构/部署架构/集成架构/数据类型/数据分布设计
★ 技术架构——技术栈选型/接口技术选型
★ 架构产物——架构文档高质量之道
★ 详设前奏——详细需求质量决定详细设计质量
★ 详细设计——用例驱动的OOD实践
课程大纲
一、需求梳理——架构设计的第一枪
实践难点|遗漏需求,造成架构先天不足
实践难点|忽视行业,造成产品效果平庸
架构需求梳理一求全|上渠道中业务下支持右接口,全面盘点应用需求
架构需求梳理二求专|洞察行业特点,盘点全部功能后划分场景大类
举例|业务场景大类:交易,查询,批处理,报表,BI
举例|技术场景大类:负载均衡,数据共享,数据灾备
【贯穿案例】售票系统,老师示范
【对标练习】客户自选,老师指导
二、架构选型——做好每个场景大类的架构选型
设计思想|架构模式支撑起场景大类
设计思想|命令查询职责分离架构的启发
设计思想|网页与视频场景分离架构的启发
设计思想|支付与对账场景分离架构的启发
架构模式要素|产品划分/接口机制/数据共享/进程组织
架构模式变迁|传统分布式/SOA/微服务
接口机制变迁|进程通信/ESB/API网关
数据共享变迁|DB/配置服务器/分布式内存DB
案例|银行核心系统的交易场景/批处理场景
案例|银行核心系统的交易架构
案例|淘宝的交易场景/批处理场景
案例|淘宝的交易架构(微服务)
练习|彩票系统的交易场景/批处理场景
【贯穿案例】售票系统,老师示范
【对标练习】客户自选,老师指导
三、应用架构——功能架构/部署架构/集成架构/数据类型/数据分布设计
设计思想|设计功能分布/流程分布/数据分布
工具准备|UML和流程图建模工具Visio
工具准备|非标图形就用PowerPoint
应用功能架构:前端/业务/支持/接口
应用部署架构:组件/组件分布/组件协作图
应用集成架构:识别对外接口
数据开源及数据类型
数据分布架构
【贯穿案例】售票系统,老师示范
【对标练习】客户自选,老师指导
四、技术架构——技术栈选型/接口技术选型
设计思想|从场景类型、到架构选型、到技术定型
架构模式变迁|传统分布式/SOA/微服务
接口机制变迁|进程通信/ESB/API网关
数据共享变迁|DB/配置服务器/分布式内存DB
技术栈选型|企业软件技术选型
技术栈选型|技术产品评估方法
【贯穿案例】售票系统,老师示范
【对标练习】客户自选,老师指导
五、架构产物——架构文档高质量之道
反面案例|避免白开水式架构文档
正面案例|内容充实逻辑完整的架构文档这样写
【贯穿案例】售票系统,老师示范
【对标练习】客户自选,老师指导
六、详设前奏——详细需求质量决定详细设计质量
技巧|核心功能的场景/流程/规则/界面分析
案例|详细需求写法文档
价值|打磨核心功能缔造领先产品
价值|详细需求的质量决定详细设计的质量
【贯穿案例】售票系统,老师示范
【对标练习】客户自选,老师指导
七、详细设计——用例驱动的OOD实践
理论鸟瞰|用例驱动的详细设计方法
详细设计|程序内模块划分,模块分层
详细设计|功能=模块协作链
详细设计|用Visio UML画序列图或协作图
【贯穿案例】售票系统,老师示范
【对标练习】客户自选,老师指导