架构方法 - 架构师如何做架构总结 (1)

用户头像
Paula_l
关注
发布于: 2020 年 06 月 10 日
架构方法 - 架构师如何做架构总结(1)

什么是软件架构

架构是在组件,彼此间和与环境间关系,引导设计发展原则中体现的系统的基本结构。[IEEE 1471]

许多架构的定义不但承认了他们自己的结构元素,而且还有结构元素的组成,关系(任何连接部分都需支持这样的关系),接口。这些部件都以不同方式被提供。例如,连接段可以是套接字,同步的或异步的,与某个协议相关等。

关于更多具体细节, 可以参考: https://www.ibm.com/developerworks/cn/rational/rationaledge/content/mar06/eeles/

关于架构师

首先, 架构师是一个角色而不是职位。

架构师的主要职责

  • 编写架构设计文档

  • 开发编程框架

  • 重构软件代码

  • 设计系统架构

  • 进行技术选型, 解决技术应用中的问题

  • 优化系统性能

  • 模块分解与微服务架构

  • 保证系统安全与高可用

  • 大数据应用

  • 技术创新

  • 沟通管理

架构师主要能力

  • 编程能力

  • 基础技术掌握能力

  • 常用技术产品的能力与应用能力

  • 性能优化与分析故障的能力

  • 常用架构模式和框架的理解与应用能力

  • 建模以及设计文档的方法和能力

  • 业务理解与功能模块

  • 快速学习能力

  • 沟通与领导力

如何进行软件架构设计

主要通过4+1架构图视图从不同的角度诠释架构, 提供不同角度方案给对应相关方。

  • 比如对于运维或DevOps, 更加关注的是系统的搭建、部署、系统间的通信等;

  • 比如对于开发人员, 关注系统如何开发, 关注点在于系统层级、框架, 系统通用服务、业务通用服务、类和接口的设计、系统平台以及相关基础框架;



由于单一的视图无法完整的表达架构, 因此需要具备完整的视图集:

  • 逻辑视图(Logical View), 设计对象模型;

  • 过程视图(Process View), 捕捉设计的并发和同步特征;

  • 物理视图(Physical View), 描述了软件到硬件的映射, 反映了部署特性;

  • 开发视图(Development View), 描述了在开发环境中软件的静态组织结构;

  • 场景视图(Scenarios), 描述用例场景



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

Paula_l

关注

还未添加个人签名 2018.11.25 加入

还未添加个人简介

评论

发布
暂无评论
架构方法 - 架构师如何做架构总结(1)