架构漫谈随笔
简单聊一聊我对架构的理解吧:
首先从源头上讲,架构源于建筑,源于人们的大规模集群式的劳动
架构的定义中说,把一个整体(完成人类生存的所有工作)切分成不同的部分(分工),由不同角色来完成这些分工,并通过建立不同部分相互沟通的机制,使得这些部分能够有机的结合为一个整体,并完成这个整体所需要的所有活动,这就是架构。
可以看到架构的核心关键在于分解问题,量化问题。
架构的核心关键是找到问题的核心
按照之前架构的定义,做好架构首先需要做的就是识别出需要解决的问题。一般来说,如果把真正的问题找到,那么问题就已经解决了 80% 了。这个能力基本上就决定了架构师的水平。
文章中提到了这样的观点:1.架构师解决的是别人的问题
2.架构师解决的问题是可以别人可以自己解决的问题。
综上我觉得反映出的问题就是架构的核心问题了。架构师是用来做什么的
很明显问题本身是可以被人们自行解决的,所以架构师是用来把问题量化成为每个人可以解决的问题,并且并不参与任务的执行,这就是所谓的,架构师解决的是别人本以结局的问题。
识别问题的途中常出现一些预料之外的问题,比如说:
被告知要处理一个问题,但是交过来的实际上是一个解决方案,不是问题本身
被告知要处理一个问题,直接通过直觉就有了一个解决方案,马上考虑解决方案如何落地,或者有几种解决方案,选哪个合适。
这些都是需要架构师进行分析和解决的。
接下来是如何做
首先第一点,确定人物
所有的概念基本都有一个很大的问题,就是缺乏主语。而我们大家都心照不宣的忽略这个主语,沟通的时候也都以为大家都懂得对方说的主语是谁,结果大家都一起犯错误。识别问题的一个最大的前提就是要搞清楚:是谁的问题。这个搞清楚了,问题的边界也就跟着确定了,再去讨论问题才有意义。
接下来就是将问题的各个子部分联系起来,建立好沟通机制,共同解决问题
最后关于 本文做一个文末总结:
发现问题永远都比解决问题来的更加重要。