1.何为软件架构?

  软件架构,指从宏观视点阐明一套软件体系的组成和特性。 架构规划与需求剖析,概要规划,详细规划最大的区别在于“宏观”二字。要去架构师有必要具有大局观,从大局视点考虑问题。

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

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

架构师的自我修养

3. 架构师的职责?

3.1 架构师介于需求与研制中心的人

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

3.2 架构师是统领大局的将军
3.3 架构师要作为技能大牛霸占技能难题

  架构师要有一种“不吃不喝也要处理问题”的狠劲,一种见山开山,遇河架桥的精神去霸占技能难题。 但是人的精力是有限的,霸占问题不能架构师一个人单打独斗,团队中架构师往往起到指引方向的效果。比如指定明确的技能方向,落实首要的规划思路等。

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

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

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

  • 处理方案架构师: 侧重交流客户,理解事务,为客户指定技能处理方案。
  • 体系架构师:能力愈加均衡,负责从项目的需求剖析到技能落地的全流程
  • 渠道架构师:更侧重于技能,将技能难题封装成开发渠道,支撑事务体系
  • 企业架构师:从详细项目中独立出来,更侧重于规划未来的技能战略

4.架构师的思想形式

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

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

5.1 可以将事务转换成技能

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

5.2 能合理利用技能支撑事务
5.3 具有前瞻思想和战略思想

6. “5视图法”架构规划

怎样做高质量的架构规划呢?咱们需要按照一定的章法,一步一步的进行,以防止遗漏要害内容。当面对杂乱问题时,最有用的处理思路是“分而治之”,将杂乱问题划分为多个相对独立的问题,别离进行考量,处理。在架构规划上相同的可以采用这种思路,即“5视图法”,即将规划的杂乱体系从5个不同 的维度视图进行剖析考虑。

  • 逻辑架构
  • 数据架构
  • 开发架构
  • 运转架构
  • 物理架构