论架构师思维

   “道生一,一生二,二生三,三生万物。”

                                                 --《道德经》

在给客户做了很多次领域驱动设计工作坊与研究了一些企业架构框架之后,我逐渐发现,对于一个架构师来说,有两个东西是最重要的,不是抽象能力,不是写PPT的能力,他倆是基本能力了。我这里说的是两个思维范式,一个是一分为二,另一个是合二为一。

一分为二

先说一分为二。这里的二只是一个虚数,可以是一分为三,一分为四,也可以是一分为多。它有两个层面的意思,关注点分离与正反面思考。

关注点分离

第一个层面是思考层面的关注点分离。人脑的思考负载是承受不了整个非常复杂的领域的,必须得把它拆分,同一时间只思考其中一个方面,别的方面先忽略掉,不然就会陷入思考瘫痪的情况,无从下手。基于事件风暴来开展领域驱动设计,肯定也是基于每一个业务场景来做的,不可能同时做,我也不知道怎么同时做。

同时,还要关注你所应该关注的。例如,在做ES过程中,往往会遇到某些事件会跟第三方系统或者是人的交互,客户就会问需不需要把第三方系统和人的具体事件也识别出来,我一般说不需要,因为那不是你的系统所需要关注的,实际上你也关注不了,别人会做什么你怎么知道呢?我们要做的是清晰界定系统的边界事件,这就足够了。这同样是关注点分离的思想。

思考层面的关注点分离必然会导致最后架构设计上的职责分离。架构上的职责分离,就是指系统的分层,分治,其实就是老生常谈的高内聚。DDD里面,战术层面识别聚合,战略层面划分子域与限界上下文,无不是为了追求架构设计上的分层,分治 。至于职责分离能够做到什么程度,这就需要不断的练习,积累经验了。

正反面思考

第二个层面是正反向思考。最近发现一个比较有意思的现象。当有一篇公众号文章从正面把一件事物捧上天时,不过几天立刻就会有另外一个公众号发一篇文章从反面把这件事批得一无是处。举个最近的比较典型的两篇文章,一篇是《在中国,反抗应试教育的人,是真蠢》,另一篇《日本一位诺奖得主:东亚教育是在浪费时间》。有兴趣的同学可以搜索来读一下。一篇把中国应试教育捧上天,另一篇把中国应试教育踩落地。两篇文章谁对谁错呢?我说两篇都对,但都只看到了一面。比较合理的做法应该是从正反两个方面都思考应试教育的优缺点。这些明显有带节奏倾向的公众号文章越来越多,而且越来越有迷惑性,让人难以分辨。而这种以偏概全的做法在软件开发领域也经常碰到,最典型的例子莫过于微服务。这几年微服务架构可以说非常火热,很多人言必称微服务。刚开始的时候很多人写了很多文章不断吹嘘微服务架构比单体架构优越,绝口不谈微服务所带来的挑战,以至于很多人开发一个非常简单的系统也一定要赶上微服务的潮流。然而一开始开发后就叫苦连天。后面慢慢的才有一些人开始写文章批判微服务架构。这里不过多的讨论微服务架构的优劣,只是想说明这些无脑带节奏的行为其实都是不负责任的,往往都是带有商业目的。作为一名架构师,应该具备独立地从正反两个方向思考的能力,并时常保持警惕,严防有所企图者对某一事物的单方面吹嘘。

合二为一

说完一分为二,现在说一下合二为一。这里的二也是个虚数,可以是合三为一,也可以是合多为一

合二为一的核心原则是“平衡”二字。我经常跟别人说,架构无他,唯独“平衡”二字。作为架构师,追求的是基于此时此地此况,综合考虑的最优解,而不是完美解。完美解并不存在,所有的解都是妥协的结果。举个例子,我们都知道两个上下文如果出现循环引用,意味着可能它们之间关系过于紧密,可以考虑合并,或者把导致循环引用的那部分抽出来单独作为一个上下文。但是如果它们之间有一个是第三方系统,那合并的做法就走不通了。那是不是一定要把那部分抽离呢?这个时候就要一分为二了,不能只看到正面的优点,还要想想反面的缺点,求得一个“平衡”的最优解。

合二为一的思维模式在企业架构里面尤为重要。例如在TOGAF中,把企业架构分为业务架构、数据架构、应用架构和技术架构四个层面,四个层面不是独立的,而是互相紧密联系和约束,统一形成一个完整的企业架构;而且,TOGAF还提出了视角与视点的概念,即认为即使是同一层面,不同的利益关系人从不同的角度观看架构,看到的东西是不一样的。例如,同样是技术架构,软件开发者看到的是系统逻辑架构,运维人员看到的是系统的部署架构,系统管理员看到的是基础设施架构。FEA的五大参考参考模型,DoDAF的八大视图,其实说的都是从不同的视角观看企业架构。这就要求企业架构师在给企业建模时,必须通盘考虑,谋求各个干系人的利益最大化。

分析和看待问题时一分为二,必然要求我们在解决问题时合二为一。不然,我们解决问题的方法绝对是有问题的,以偏概全的情况大概率就会出现了。

最后说一下“拍板”的问题。人思考的角度一多,就会容易出现模凌两可,做决策时犹豫不决的情况。我自己经常也是这样,说的好听叫谨慎,不好听叫多虑。怎么拿捏这个度其实也是一种“平衡”。另外一个思考的角度是承认架构是可以演变的,一时的决策并不是那么的重要,保持架构的持续演化才是最重要的。这个就是演进式架构的思想,是面向失败的架构。但是话又说回来,这又会是另一个“微服务”糖衣炮弹吗?

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,783评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,360评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 142,942评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,507评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,324评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,299评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,685评论 3 386
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,358评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,652评论 1 293
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,704评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,465评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,318评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,711评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,991评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,265评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,661评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,864评论 2 335