2018第33周总结

《一线架构师实践指南》一书的4个核心主张是:

  1. 方法体系是大趋势;
  2. 质疑驱动的架构设计;
  3. 多阶段架构设计方法;时刻提醒关注非功能需求,从预备架构、概念架构到细化架构设计;
  4. 每个阶段都要形成自己的最佳实践方法;预备架构要建立ADMEMS矩阵,理清需求管理;概念架构要用鲁棒图或目标-场景-角色表,设计逻辑架构实现;细化架构要使用5视图方法,覆盖架构设计的方方面面。

 

开放群组架构TOGAF是一个架构框架或工具,用来架构的接受、创建、使用和维护。它基于一个迭代的过程模型,有一些最佳实践和一套可重用的已有架构资产组成。其核心是架构开发方法ADM,是一套高度抽象的方法论,是用来指导企业建立和维护企业架构的开发步骤,帮助架构师在不同层(业务、应用、数据、技术)上进行架构设计,是架构师能确保各种复杂需求被考虑到,同时对过程使用到的架构开发工具提出了一些指导策略。

 

云计算架构师需要有很强的软实力和硬实力,软实力如沟通、表达、决策能力,影响力、高情商等;硬实力人科研、工程、业务、敏锐的嗅觉能力等。

 

一个软件系统是为了满足特定的功能需求。正如一个组织部门是为了完成一项事业。这都是在成事的层面。背后则是真正的推动力量必然是人, 是利益相关者。在政治上,是领袖,领袖的联盟成员即领袖的班底,各级官僚,老百姓等。在软件系统的利益相关者,用户客户,项目经理,开发、运维。甲方乙方各自是一个系统,又因为一个软件系统联结成为一个共同的系统。

为了解决特定问题,就需要对问题进行建模,模型就是人们在长期的解决问题过程中,形成的经验套路。为了能让甲方满意,就要找到甲方的关注点,即要需求分析,进而成为软件系统的关键约束,达成人之间的契约约束。
架构的能力是在实战中演练出来的,是逢山开路,遇水搭桥,踏着荆棘一步步写出来的,跟优秀的作家产生的道路几乎一模一样。然而,优秀的作家,即便获得了诺贝尔奖,还一定还会笔耕不辍,自己撰写一部又一部新作品。那么,『架构师』,程序员中的佼佼者,为何就脱离生产线,变成了高高在上的指挥者?

 

如果你是一个作家,那么谋篇布局的能力无疑比遣词造句更影响你的职业生涯;同样作为一个程序员,了解背后的原理,比熟悉一门语言、一个框架对你的职业发展会有更深远的影响。

术的特点是容易过时,或者附加值越来越小。如何使用工具在每天都有新发明的计算机领域无疑是非常容易过时的,公司也不会为使用工具的经验投资太多钱,毕竟够用就行。
道是我们在领域内不断精进成长的根本:只有了解背后的原理,你才可能在每天都有新系统新语言新框架诞生的科技领域存活;某个框架你并没有摸过,但是你知道哪些指标和特性是选择取舍的依据;某个系统你才听说,但是看了架构设计,你就知道它在你的使用场景下会有什么样的表现,可能会有什么样的坑;再或者你看了某个论文,发现它的原创性设计能改进在你们现有的系统解决之前无法解决问题等等。这样的你,往往比只是对语言熟悉,API精通的码农更受欢迎和尊重。

 

优秀架构师必须具备的四种思维:抽象思维、分层思维、分治思维、演化思维。如果说架构的本质是管理复杂性,那么抽象、分层、分治、演化是架构师应对和管理复杂性四种最基本的武器。

架构设计不是静态的,而是动态演化的。只有能够不断应对环境变化的系统,才是有生命力的系统。所以即使你掌握了抽象、分层和分治这三种基本思维,仍然需要演化式思维,在设计的同时,借助反馈和进化的力量推动架构的持续演进。
架构师在关注技术,开发应用的同时,需要定期梳理自己的架构设计思维,积累时间长了,你看待世界事物的方式会发生根本性变化,你会发现我们生活其中的世界,其实也是在抽象、分层、分治和演化的基础上构建起来的。另外架构设计思维的形成,会对你的系统架构设计能力产生重大影响。可以说对抽象、分层、分治和演化掌握的深度和灵活应用的水平,直接决定架构师所能解决问题域的复杂性和规模大小,是区分普通应用型架构师和平台型/系统型架构师的一个分水岭。

posted on 2018-08-19 17:07  时间朋友  阅读(171)  评论(0编辑  收藏  举报

导航