3架构中期
什么是备选架构?
备选架构定义了系统可行的架构模式和技术选型
备选方案筛选过程
**头脑风暴 :**对可选技术进行排列组合,得到可能的方案
红线筛选:根据系统明确的约束和限定,一票否决某些方案(主要是内部的制度或者客户的约束)
4R设计:确定Role、Relation,基于核心场景来设计Rule
数量:3-5 哥,太少或者太多都不太合适。
差异性:有比较明显的差异
粒度:覆盖核心业务场景
架构备选方案困难
主要靠平时积累,不然排列组合也是巧妇难为无米之炊。
评估和选择备选方案
- 360度环评+优先级排序
从多个维度评估各个备选方案,优先级排序:将维度按照优先级排序,逐级筛选
常见架构评估维度和注意事项:
性能、可用性、可扩展、成本、安全、技术复杂度、团队技术储备、可运维性等。还是需要结合实际情况。
4 架构设计后期
中期备选方案设计给老板/利益干系人看,所以是俗称的PPT。而后期的详细架构设计给开发团队看,除了架构图外,还需要大量的文档,得用文字把相关概念、架构规范、质量等写明白。
详细架构设计
案例:微服务
架构设计文档写作
这些供参考,还得结合自己的业务落地,以【业务背景】为例:1.解决什么问题2.带来什么价值3.达成什么目标4.完成什么任务5.处于什么地位。
系统边界黑盒图来描述系统定位
【总体架构设计】
1.Rank 2.Role 3.Relation
【详细说明】
1.来源于备选架构设计文档
2.用系统边界白盒图来展示Rank
3.用系统架构图来展示Role和Relation
把系统当成白盒,描述系统内的Role与同级别其它系统交互和关联关系
【详细架构设计】
1.Rule 2.架构规范
【详细说明】1.结合备选架构的Rule和架构规范2.用系统序列图来展示Rule
【架构质量设计】1.可测试性设计2.可维护性设计3.可运维性设计4.安全/成本设计
【详细说明】1.可能会增加新的Role,例如管理后台2.不需要面面俱到,看实际需要
【架构演进规划】
1.架构分期落地规划
【详细说明】1.主要是为了设定项目计划