写点什么

Week1- 架构是什么 & 如何做架构

用户头像
wyzwlj
关注
发布于: 2020 年 06 月 10 日

1、What:架构是什么

    1)架构=架构元素+元素间的关系

    2)架构是对一个系统进行建模,是一个系统的完整抽象

    引申:如何进行抽象和建模? DDD or ......



2、Why:为什么需要做架构,架构解决了什么问题

    1)帮助相关方从不同的角度了解系统

    2)不同的角度对应于架构的4+1视图



3、Who:架构是给谁做的,用户是谁

    1)架构是先给人做的,再给系统做的,第一优先级是人。记住不能因为系统需要而去做架构,首先应该关注需要被解决问题的人

    2)做架构前要先明确相关方有哪些、明确重点对象(老板 or 工程师 or 其他),不同角色的 关注点或问题点是不同的



4、When:什么时候做架构

    1)软件设计的的三个阶段(需求分析、概要设计、详细设计)均涉及到架构设计,其中架构师主要负责概要设计+详细设计,有时可能会部分涉及需求分析的工作



5、Where:哪些地方需要做架构

    1)物理结构 VS 逻辑结构

    2)系统结构 VS 模块结构 VS 类结构



6、How:怎么做架构设计

    1)明确相关方&问题场景,基于人和具体的场景进行分析

    2)基于相关方和问题,进行需求分析阶段的用例设计,确定系统功能,输出用例图、活动图、状态图、时序图

    3)对系统进行概要设计,输出 部署图、子系统时序图、子系统活动图、组件图、组件时序图、组件活动图

    4)对系统进行详细设计,输出 类图、类的状态图、类的时序图、类方法的活动图

    引申:基于金字塔结构(自顶向下、总分)进行架构设计,即  整体部署图->子系统&子系统关系->组件&组件关系->类&类关系



7、How much:做到什么程度

    1)没有最优的架构,只有最合适的架构



8、怎么成为架构师

    1)架构师是一个角色、一个Title,而不是一个职位

    2)架构师不在于你是不是,而在于你有没有做架构的工作。你去做架构你就是架构师,不要等着被任命为架构师后再去做架构工作



用户头像

wyzwlj

关注

还未添加个人签名 2018.05.02 加入

还未添加个人简介

评论

发布
暂无评论
Week1-架构是什么&如何做架构