求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
   
 
  认证   课程   如何成为   技能学习 工作指南    
 
 
 

如何成为

俎涛·火龙果软件工程技术中心

如何成为一个架构师呢?这是经常被学员问到的问题?每当听到这样的问题,我们都可以从知识、技能、经验、素养四个方面给出能力要求解答。

但是大多数时候,大家都觉得说的有道理,也都知道这些道理,还是无法成为一个理想中的需求分析师。这成为经常困惑我的问题。

当我培养孩子学习的时候,发现同样的问题也困扰我:分明孩子知道什么是一个好的学生,却无法成为那个理想中的好学生。不是不努力,而是缺乏理智的灯塔。

当为孩子整理知识体系的时候,我发现,一个好的学生,其实并不只是学习知识考试。而是应该了解自己面临的知识体系是什么样子,为什么学习知识体系,学习后有什么价值,如何运用?这些其实并不是一个学科的问题,而是涉及到了从人到知识的认知整体:认知的起点-世界观,认知的终点-价值观,认知的过程-方法论,认知的收益-技能。而我们只有全部回答了这些问题,才能有可能从根本上回答一个很简单的问题“如何成为一个好学生”。很多时候,所谓的好学生,也只是盲目的、考试驱动的 “学习好”。让我们看看从一个更大的角度看人和知识体系的关系。如下图:

所以一个合格架构人员应该树立:

  • 架构的价值观:架构设计工作的最终目的。
  • 架构的世界观:架构都有哪些内容,这些内容会组织为哪些文档、模型和产品形态。
  • 架构的方法论:架构设计的工作基本思路和策略。
  • 架构的技能:如何做好各种架构工作,例如架构分析、概念架构设计、逻辑架构设计、开发架构设计、运行架构设计。

在《基础知识》章节,将给出前三个(即:价值观、世界观、方法论)的说明,在《工作指南》中,将对具体技能给出实际案例指导。

工程哲学之需求观

我们最终的目的是做出满足用户需求的产品,而架构的工作范围涉及从架构相关需求分析、架构设计到结果验证。在这个过程中,成为一个优秀的架构设计师,需要首先在意识层次明确三个方面:

  • 架构价值观:架构的价值是为开发打下坚实的基础,以便能够高效率、低成本的满足需求、同时通过架构提高技术竞争力,实现可持续的产品发展。
  • 架构的范围观:架构从所关注的人,分为三个视角:首先是用户视角,让用户基于架构能够了解清楚产品的价值组织,例如常说的服务目录架构;然后是从开发视角,让开发者基于架构能够清楚了解开发组件的组织,以及如何快速开发,例如常说的组件结构与构建关系;最后是从运维的视角,让运维人员基于架构能够清楚的了解运维的软件和硬件资源,以便能够快速响应问题,保证系统可靠运行,例如常说的devOps框架的运行服务监控与管理。
  • 架构的发展观:架构不是在一拓而就的,而是大致经历了如下的发展:参考某个架构,做小部分修订,这样的架构具有成熟度。随着功能的追加,内部越来越复杂而凌乱,进行梳理,提炼更特定的架构,此时架构趋于稳定。随着业务和技术的不断发展,架构无法满足新的需求,需要进化或者放弃。

 

榜样的力量

一个好的架构师需要很多能力,需要不断的学习和锻炼。这可能会让我们却步不前。那好,来看看榜样的成长历程吧,让榜样在前方照亮成长的信念、鼓励我们的勇气。

通过Linux之父的演讲,了解他的成长历程,启发我们用心思考:架构师应该关注什么,如何为其他开发着打下地基。