第10章 细化架构设计
![](https://i-blog.csdnimg.cn/blog_migrate/0232f88506e8863b7e6f04415dc9a427.png)
![](https://i-blog.csdnimg.cn/blog_migrate/81490a080bb3f053eacbe61694a7605b.png)
10.1 从2视图方法到5视图方法
10.1.1 回顾:2视图方法
![](https://i-blog.csdnimg.cn/blog_migrate/ff2ac8ba9689352b7805374f8177e336.png)
10.1.2 进阶:5视图方法
![](https://i-blog.csdnimg.cn/blog_migrate/5d6e24990f3ce083570a66f59e4c76cd.png)
![](https://i-blog.csdnimg.cn/blog_migrate/67f9386a6169f9f3fdccf6758e45fe48.png)
![](https://i-blog.csdnimg.cn/blog_migrate/6c36295e0dcab60c99a570868e6b2a63.png)
备注:
不同的视图,就是从不同的维度在看目标软件系统。
相同的系统,不同的视角,看到的结果是不相同的。
就像一个公司:有财务、研发、有销售、有生产等部门一样。
10.2 程序员向架构师转型的关键突破——学会系统思考
![](https://i-blog.csdnimg.cn/blog_migrate/4779df91db1bc7636f83d406a6317934.png)
目标软件就是一个系统
所谓系统思考,就是整体的视角参看整个系统,从不同的视角、不同的用户、不同的层面、不同的阶段观察软件系统。而不是从某个单一的角度观察系统。
从看事物的表面到洞察器内部的结构组成以及他们之间的关系
10.2.1 系统思考之“从需求到设计”
![](https://i-blog.csdnimg.cn/blog_migrate/e6e8586b93cd0f2701470833afb2df8e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/597785e449af057851256bf93a75ecca.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1a0cd62d3a6ed57b867b3bd093f947f6.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b7a76dd9269ec53c6d4b11c7c88bec73.png)
10.2.2 系统思考之“5个设计视图”
![](https://i-blog.csdnimg.cn/blog_migrate/4d7afcd250bb6ff9180462f558d74a87.png)
![](https://i-blog.csdnimg.cn/blog_migrate/73a27bb919ef5ec8edf2e21ae313c193.png)
10.3 5视图方法实践——5个视图、15个设计任务
![](https://i-blog.csdnimg.cn/blog_migrate/5cf6286729c69ca49cf9a28553a49f90.png)
10.3.1 逻辑架构=模块划分+接口定义+领域模型
![](https://i-blog.csdnimg.cn/blog_migrate/27d714523f0346dbe5fe548b388bc402.png)
备注:
逻辑架构是架构师最基本、最常见的架构设计工作。
很多时候,即使没有其他视角的架构设计,逻辑架构设计也是不可缺少的。
![](https://i-blog.csdnimg.cn/blog_migrate/ef57d86ad9120d3fa69d66bba07d4abc.png)
![](https://i-blog.csdnimg.cn/blog_migrate/56710f11a8d6bfa20b25d71967d1db82.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d63aedc47d76ba92c4eefbbd89e75fca.png)
备注:
协作决定接口的思想告诉我们,所有的接口定义,都需要与其他模块进行协商,而不是单方向决定。
10.3.2 开发架构=技术选型+文件划分+编译关系
![](https://i-blog.csdnimg.cn/blog_migrate/90f3bb20671b44f62a79f258d56f2283.png)
![](https://i-blog.csdnimg.cn/blog_migrate/60a2dfd30b279bdfd63f09029a3132fa.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9f53c355f21f0d1e49bfc1f245dff23c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/6f6393e405319850da1d8e6ea25ea8bd.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4ac001ee2b2feee2b606a5f69ddd9dd5.png)
10.3.3 物理架构=硬件分布+软件部署+方案优化
![](https://i-blog.csdnimg.cn/blog_migrate/436ca6fedd1e355102c1e16c9e56539f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e5ed16e2e5414dd63f0cdc4ee3ff4db8.png)
![](https://i-blog.csdnimg.cn/blog_migrate/413e91fb21247ecf306b4fd10e056ff2.png)
10.3.4 运行架构=技术选型+控制流划分+同步关系
![](https://i-blog.csdnimg.cn/blog_migrate/00e0fddbf546fbbecd48f3aff3992dd9.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a9a02f6f1618cb92710fcf610c8b63b0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5bb85c686718550c3269c958e99dc21e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/21e876de3498dcb3b02370b5b8bec293.png)
10.3.5 数据架构=技术选型+存储格式+数据分布
![](https://i-blog.csdnimg.cn/blog_migrate/7e04bdf4965d6eb8f8c4b8e976a5369c.png)
10.4 实际应用(8)——PM Suite贯穿案例之细化架构设计
10.4.1 PM Suite接下来的设计任务
![](https://i-blog.csdnimg.cn/blog_migrate/daa38862e1746437d254c24038603fed.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0282585560a5056f8e4670d751e6e44f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d055c2134e281cfc231f5be2a8e5f771.png)
10.4.2 客户端设计的相关说明
![](https://i-blog.csdnimg.cn/blog_migrate/7bae589aee9d9a4eaf66d3462f454252.png)
![](https://i-blog.csdnimg.cn/blog_migrate/42c078fff69d46a303d282f613261055.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0411042ecea1de6ac58371eefa5efb71.png)
![](https://i-blog.csdnimg.cn/blog_migrate/dd8d70d730b674807393872f316e0458.png)