架构师训练 Week1 - 学习总结
1. 软件架构
1.1 什么是软件架构
软件架构,是有关软件整体结构与组件的抽象描述,用于指导大型软件各个方面的设计
1.2 软件设计的三个阶段
需求设计,概要设计,详细设计,一般需求设计由产品经理完成
2. UML
2.1 什么是UML
Unified Modeling Language,或称为统一建模语言
以图形方式来描述软件的概念
2.2 UML的用处
UML可以用于描述
某个问题领域
构思中的软件设计
描述已经完成的软件实现
UML是为了沟通和交流使用,有助于思考
2.3 UML图的分类
静态图
包括用例图,对象图,类图,组件图,包图,部署图
动态图
包括协作图,序列图,活动图,状态图
我们一般重点关注其中七种图,用例图,对象图,类图,组件图,部署图,序列图,活动图,状态图,其它三种图可以由其它图进行转换
2.4 各种UML图
2.4.1 用例图
2.4.1 时序图/序列图
虚线表示生命线,可以用于软件设计的三个阶段
协作图可以由时序图自动生成,就是没有时序关系的时序图
2.4.3 活动图
用于描述流程,同样可以用于软件设计的三个阶段
2.4.4 状态图
用于描述状态变迁
2.4.5 组件图
主要用于概要设计阶段,静态关系和动态关系用组件时序图来画
2.4.6 部署图
主要是指物理部署,用于概要设计阶段
2.4.7 对象图
2.5 UML图的分工与流程
需求设计,业务流程,互动,子系统时序图,用例图,通常由产品经理画
架构师需要画概要设计和详细设计,一般先画部署图
3. 注意事项
架构设计是要有场景,不是炫技
4. 参考资料推荐
评论