写点什么

架构师训练营 - 第 1 课总结 -202006- 架构设计

发布于: 2020 年 06 月 08 日

1.架构简介

一切皆可架构.

领悟问题的真谛并决定用什么的方式面对问题.

构建一张动态网,问题作为输入,解决方案作为输出.

悟性很重要

2.软件架构简介

深度解读以下图,并烙在脑海里.

每个系统都有一个架构.

架构由许多架构元素组成,并由元素之间的静态动态关系形成.

所有这些设计都会在架构文档里阐明.

架构文档将会包含不同层级和方向的架构视图及文字说明.

这些架构文档,都将以系统/项目的相关方及关注点为导向.

否则将只会是一堆没有价值的信息.


架构设计不在于使用厉害的技术,而在于是否适用特定的场景需求(业务,现在资源)

3.成为架构师

那个做架构事情的人就是架构师

已有的成熟系统不需要新的架构师

然而在工作中可以抓住一切机会主动做架构的事情


以 PPT 为学习框架

在课程中互动思考

面向简历学习

面向面试学习

但学习不会获得经验

重新思考以往项目经验

最终使得知识立体化

知识先有精度才能有广度,否则瓶颈很快到来.毕竟所有系统,追根到底都相似,一通百通.

4.架构师职责

然而现实生活中,大规模的系统架构设计的工作机会几乎没有.更多的是系统维护,业务架构变更升级以及中小系统的架构设计.

5.如何画架构图

4+1 视图模型 : 逻辑+开发+流程+物理视图围绕着场景视图来设计.

架构是立体的,所有一个系统应该有不同维度层面关注点的架构视图.

为工作而工作,事情做的是对的按规则行事,但永远不尽人如意.因为本质上工作是为人而做.

所以图画成怎样,取决于具体使用的人.

模型就是一个系统的完整抽象.

主流建模工具- UML.




系统部署图举例



各个阶段均需抽象


6. UML 建模

关键: 使用哪种图在什么场合下能达到设计意图的展示.

为什么是统一建模语言?不只是一个画图工具.而是可以用来沟通交流思考

7 种主要 UML 建模图形.

图里的每条线,每个点,每个符号,都不应是多余的.

图里的元素数量应该适量.(推荐<=20 个).

依赖是更强的关联.

聚合元素可以不在同一生命周期,组合是一种强的聚合,必须在同一生命周期(汽车与配件,人与手).


需求设计阶段/文档: 核心用例图,活动图,状态图,时序图

概要设计阶段/文档: 部署图,系统时序图,系统活动图,组件图,组件时序图

详细设计阶段/文档: 核心类图,类时序图,状态图,方法活动图

(1 个组件可以由一个开发人员负责)


UML 静态图


UML 动态图


通用模型元素


通用关系


类之间的调用只有同步消息


需求阶段使用的用例图,不同层次的图展示不同的细节粒度


任何对象之间的动态调用时间顺序,可以在任意阶段使用的时序图


关注流程的活动图,可以在任意阶段使用,展示不同的细节粒度


应该是简单的,描述对像状态变化的图,一个例子


比较少用的协作图,可以由时序图转化,一个例 子


架构设计最重要的图-组件图.组件时序图也就是动态的组件图,一个例 子


物理架构的部署图,架构师的第一张图,一个例子


7.画图工具

https://app.diagrams.net/

Astah

Star UML

Plantuml

Draw.io

ProcessOn

8.练习


发布于: 2020 年 06 月 08 日阅读数: 104
用户头像

还未添加个人签名 2018.12.17 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营-第1课总结-202006-架构设计