“什么是架构”,“什么是架构师”,这种问题我们总不是很能明确的理解,但漫谈从认识架构讲到到最后的理清技术、业务和架构的关系,讲解的很详细,能让我们更深一步的了解这方面的内容。

 

架构在wikipedia中的定义,让我们觉得架构是一个过程,但是又不是很清晰,因此,作者就从人类居住环境开始类别架构,得出架构产生的五个动力:首先,必须有人执行的工作,如果人不参与这个活动,那么意味着没有地方需要升级改造,那么就不会需要架构,可以说,这是架构的一个前提条件;接着,由于个体人的力量有限,因而,我们开始做架构,这个就是原因;其次,人对系统要有更高的要求,简单的说,这个是因为一个点而来的,算是前提条件的原因;最后,更多的人参与进来使得系统有更高的质量和效率。既然了解其动力,便可挖掘其定义了。此处定义,比起一般的定义,更像一个过程。定义分为四个部分:根据要解决的问题,对目标系统的边界进行界定,接着对某个原则进行切分,然后对切分的内容设立沟通机制,最后将这些组装成一个整体,完成系统的所有工作。这里用一个通俗的理解就是老师把知识分块教授给我们,然后,我们整合知识系统去参加考试,反馈整个教学系统的质量。

后面文章解释了一个名词“名相”以说明为何一开始说概念并不清晰的原因,架构是一个抽象的概念,并非一个直接可以表达此意的物品。

在了解了架构的基本概念以后,我们要对它进行深入的了解。首先,我们要识别架构的问题,究竟什么叫做问题?笔者此处用了一个非常形象的“女主人让男人削土豆”例子来讲了这个道理。女主人要求男主人削土豆,那么她给了男主人一个命令,提供的“解决晚餐问题”一个解决方案。一般来说,我们所问的所说的,都是表层的“问题”或者“解决方案”,架构师与我们不一样的是,他们是通过现象看了本质,这个层次的人,可以知道,为什么要削土豆,为什么要削一半的土豆。其实多问几个为什么,我们就可以知道真正的问题--解决一家人吃晚饭的问题。这里,就可以识别出问题的主体,一家人。一再强调的是,正确认识问题,前提是,主体一定是人。那么最后就可以总结下如何识别问题了,要确定是谁的问题,是什么问题。

在确认主体之后,就要有所动作,就要对架构进行切分。那么究竟如何切分架构?切分的原因源于我们一开始讲的个人的力量的有限。首先需要认识到这里的切分,其实就是利益的调整,人本性是自私的,所以维护自己的利益这一点不可避免。那么既然涉及利益,那么我们就需要一个准则,确定如何划分了。第一,需要在能力范围内,并且相应的任务权利与义务对等;第二,切分是内部活动,内部无论如何切分,对整个系统的外部应该是透明的。也是说,切分的目的不是为了分割,而是为了更好的融合,为了达到整体效益的最大化。

架构师的主要任务是发现问题,发现这些问题背后的利益关系;在此基础之上,平衡自己与他人的利益,对自己所承担任务了然于心,可以在合理的标准下达到任务要求,这也就是架构师的权利和义务所在。

posted on 2018-07-13 10:20  似水似墨  阅读(118)  评论(0编辑  收藏  举报