第一周总结

用户头像
changtai
关注
发布于: 2020 年 06 月 10 日
第一周总结

1. 什么是软件架构

软件架构是有关软件整体结构与组件的抽象描述,用于指导大型软件系统各个方面的设计。

http://wanweibaike.com/wiki-%E8%BD%AF%E4%BB%B6%E6%9E%B6%E6%9E%84





2. 什么是架构师

架构师是做架构设计、对系统架构负责的那个人。

架构师是一定帽子,而不是一把椅子;架构师是一个角色而不是一个职位。

3. 做架构的时候,关注点有哪些

  • 编写架构设计文档

  • 开发编程框架

  • 重构软件代码

  • 设计系统架构

  • 进行技术选型

  • 优化系统性能

  • 模块分解与微服务架构重构

  • 保障系统安全与高可用

  • 大数据应用

  • 技术创新

  • 沟通管理

4. 架构视图:4+1视图模型

  • 逻辑视图:设计的对象模型。

  • 过程视图:捕捉设计的并发和同步特征。

  • 物理视图:描述了软件到硬件的映射,反映了部署特性。

  • 开发视图:描述了在开发环境中软件的静态组织结构。

  • 场景视图:描述用例场景。

5. UML建模



  • 静态图:用例图、对象图(不重要)、类图、组件图、包图(不重要)、部署图

  • 动态图:协作图(不重要)、序列图、活动图、状态图



元素之间的关系:

依赖、关联(依赖是相对轻量,如:方法内的局部变量;关联更重,如:类的成员变量)

实现、继承(实现是方法)

聚合、组合 (聚合是生命周期不一致,组合生命周期一致)



6. 软件设计中怎么使用UML



  • 需求分析阶段:用例图,活动图(不同的领域模型内,关键的业务流程),状态图(关键的业务对象核心状态)、时序图(依赖的外部系统)

  • 概要设计(组件):部署图(子系统)、时序图(子系统)、活动图(子系统)、组件(组件时序图)、组件活动图

  • 详细设计(类):时序图(类)、类图、状态图、活动图(方法)

7. 总结

架构设计不是一层不变的,在不同的场景下,同样的需求也会有不同的架构;架构设计文档是给人看的,要从相关方的角度出发,充分考虑他们关注点,来进行文档的编写。



用户头像

changtai

关注

还未添加个人签名 2018.04.30 加入

还未添加个人简介

评论

发布
暂无评论
第一周总结