架构师的自我修养

科技公元 2022 2022-10-12

1.何为软件架构?

  软件架构,指从宏观角度说明一套软件系统的组成和特性。 架构设计与需求分析,概要设计,详细设计最大的区别在于“宏观”二字。要去架构师必须具有大局观,从全局角度思考问题。

2.软件架构包含哪些内容?

  • 逻辑架构:软件要为哪些用户提供什么样的功能,架构设计中的所有决策来源于需求。架构设计不能搞经验主义。
  • 数据架构:软件逻辑中的数据结构。功能性需求的核心是数据,所有业务流程都是围绕数据进行的。
  • 开发架构:就是软件代码的层次骨架。
  • 运行架构:软件在运行过程中的所体现出来的非功能需求。包括高性能,高可用,可扩展,安全等。
  • 物理架构:软件的物理部署以及网络拓扑。

架构师的自我修养

3. 架构师的职责?

3.1 架构师介于需求与研发中间的人

企业对架构师的要求:纪要技术好,也要懂业务一名合格的架构师就需要多思考,多学习,有丰富的项目经验

3.2 架构师是统领全局的将军
3.3 架构师要作为技术大牛攻克技术难题

  架构师要有一种“不吃不喝也要解决问题”的狠劲,一种见山开山,遇河架桥的精神去攻克技术难题。但是人的精力是有限的,攻克问题不能架构师一个人单打独斗,团队中架构师往往起到指引方向的作用。比如指定明确的技术方向,落实主要的设计思路等。

3.4 架构师作为战略规划师去规划未来战略

  拥有强大的战略眼光,能帮助企业进行技术规划,指定未来的技术发展方向。

根据侧重点,架构师可以分为以下几种类型:

  • 解决方案架构师: 侧重沟通客户,理解业务,为客户指定技术解决方案。
  • 系统架构师:能力更加均衡,负责从项目的需求分析到技术落地的全流程
  • 平台架构师:更侧重于技术,将技术难题封装成开发平台,支撑业务系统
  • 企业架构师:从具体项目中独立出来,更侧重于规划未来的技术战略

4.架构师的思维模式

  • 宏观思维
  • 抽象思维
  • 实例化需求

5.如何成为顶级架构师?

5.1 能够将业务转换成技术

作为顶级架构师,必须具备超强的落地能力,能够将用户的业务需求落地到技术方案,帮助研发团队开发出用户愿意使用的产品和功能。通过对业务的理解,梳理业务流程,发掘用户痛点,然后落地到技术上,有针对性的指定技术方案。

5.2 能合理利用技术支撑业务
5.3 具备前瞻思维和战略思维

6. “5视图法”架构设计

怎样做高质量的架构设计呢?我们需要按照一定的章法,一步一步的进行,以避免遗漏关键内容。当面对复杂问题时,最有效的解决思路是“分而治之”,将复杂问题划分为多个相对独立的问题,分别进行考量,解决。在架构设计上同样的可以采用这种思路,即“5视图法”,将要设计的复杂系统从5个不同 的维度视图进行分析思考。

  • 逻辑架构
  • 数据架构
  • 开发架构
  • 运行架构
  • 物理架构
Apipost 私有化火热进行中

评论