摘要
这是一篇架构师思考方法论的学习笔记,原文对什么是架构,什么是架构师,架构师如何定义和分析问题进行了比较深刻的探究。
一,什么是架构
架构的三要素:
- 职责明确的模块或者组件
- 组件间明确的关联关系
- 约束和指导原则
三要素是关于架构这个名词通用的定义,不局限于软件开发领域。下面具两个例子便于理解:
例1:软件架构
- 模块:模型、域
- 关系:一对一、一对多(模型);依赖(域)
- 原则:单一职责、开闭原则、里氏替换原则等等
例2:组织架构
- 模块:部门
- 关系:管理 or 上报
- 原则:各种管理原则、财务原则
下面我们具体讨论的还是软件开发中的架构。
二,什么是架构师
架构师这个角色的职责是:识别并定义问题,创建、选择或调整架构,从而找到最优的方案,解决问题。
这其实也是架构师做事的一般套路