30. 技术专题-‌架构设计-架构图 文章目录前言一、架构图有哪几种二、Zachman框架是什么三、陪你画个架构图1. 架构选型图2. 微服务架构3. 技术架构图TOGAFThe Open Group Architecture Framework开放群组架构框架‌TOGAF有一套非常完善的企业架构理论它描述了一种开发和管理企业体系结构生命周期的方法并构成了TOGAF的核心。所涉及到的知识非常丰富值得认真学习和应用。前言很多程序员画架构图头疼不知道画什么、怎么画分享、评审、述职、答辩只要你在程序员这个行业就几乎离不开要画图。一提到画图很多人就想站会起来喊”内卷“、”内卷啦“、”PPT工程师“但程序代码本身就是一种数学逻辑的具体实现如果没有一些图表配合文字的阐述讲真很难让所有人都能在共同的共识下进行交流。这不像是文科”八表流云澄夜色九霄华月动春城“ 上来就能联想到它是在描述啥。但是偏理科代码逻辑或架构设计只能把抽象的内容用图表的形式展现出来让大家在同一的共识下共同协同工作。而我们画的架构图、流程图、结构图、功能图、逻辑图等都需要好看、好懂、好用、好搞因为好看是为了提升沟通效率好懂是为了提升交流共识好用是为了提升交付质量好搞是为了提升实施速度。这就像君子在追求漂亮姑娘一样好看就想主动撩一下、有品行和共同的三观很快让你开口说我懂你、接下来就是交付质量和实施速度了那也是水到渠成的事。好别激动接下来我们就开始专心研究研究架构图都有哪些该怎么画有什么手法。一、架构图有哪几种仅说技术架构图的话通常我们指的是选型各项技术组件来支撑整个服务建设的系统架构。但用于不同人群范围和不同场景下会有其他分类如图 26-1 架构图分类业务架构需求初期业务的结果和过程描述一般比较模糊可能来自于某个老板、运营或用户的反馈。客户说海尔洗衣机洗土豆会堵海尔立马设计专门的土豆洗衣机 业务方向往往是定方向和结果的叫战略主要包括业务规划、业务模块和流程以及问题域的列表等。应用架构服务复用、跨组协同简单、灵活、整合是应用架构必须考虑的点就像你要上线一个聊天功能那么聊天内容的输入法、文字识别、舆情监控以及视频服务、支付服务等它们都是在应用架构分层下沉淀到平台的产物在供各个方使用。产品架构业务提需求产品定方案相对于业务的粗放流程产品架构会更加细腻以及考虑各个模块的分层和边界。数据架构数据的获取、数据的存放和数据的使用是数据架构要解决的三个问题数据库存放、大数据汇总、数据分析等。技术架构是离程序员最近的架构设计它不仅是系统搭建的架构图设计还包括了结构、功能、流程、逻辑等内容。它的具体描述就是整个系统如何落地的具体实现方案。二、Zachman框架是什么Zachman框架由约翰 扎科曼John Zachman 在1987年创立的全球第一个企业架构理论其论文《信息系统架构框架》至今仍被业界认为是企业架构设计方面最权威的理论。Zachman框架Zachman framework是一种逻辑结构它可以对企业信息按照不同分类和不同角度进行表示。Zachman框架从横向六个角度看待企业这个六个观点可以分为什么内容、如何工作、什么地点、谁负责、为什么这么做称为W5H。框架的列由一组工件组成分为规划者、拥有者、设计者架构师、建造者、分包者、产品或者有时表示为视点范围上下文业务概念系统逻辑技术物理组件组装和操作类。整体如图 26-2 TOGAF Zachman框架表格横向六项 代表了用于描述信息系统的某一个方面对于任何一个事物只要在这几个基本方面对其进行清洗的解释就足够可以描述清楚。数据What即什么内容什么是业务数据信息或对象功能How即如何工作业务如何运作即什么是业务流程网络Where即何处企业运营、部署在哪里人Who即何人负责什么人什么是业务部门及其等级制度时间When即什么时间业 务计划和工作流程是什么什么时候执行原因Why即为什么做为什么选择的解决方案这是怎么产生的表格纵向六项代表了在信息系统构造过程中所涉及到的人在描述信息系统时所采用的视角包括范围/规划者Planner此视图描述了业务目的和策略充当其他视图将被派生和管理的上下文。业务模型/拥有者Owner这是对信息系统必须在其中运作的组织的描述。系统模型/设计师Designer该视图概述了系统如何满足组织的信息需求。技术模型/建造者Builder这是系统如何实施的表示它使特定的解决方案和技术显而易见。详细表述/分包者Sub-Contractor这些表示说明了某些系统元素的特定于实现的细节在生产开始之前需要进一步说明的部分。功能系统/产品Functioning Enterprise在1987年的论文《A framework for information systems architecture》中并没有这一行的内容实际上此行的内容也并不在架构描述的范畴的之内不过为了使得架构Zachman框架对于架构的表述更加完备这一行最终还是被加了进去。根据TOGAF的定义企业是具有一系列共同目标组织的集合而架构则是为了有效地实现这一系列目标。在实现的过程中 定义了企业的结构和运作模式的概念蓝图SearchCIO以及构成企业的所有关键元素和其关系的综合描述Zachman。通过创建、沟通和优化用以描述企业未来状态和发展的关键原则和模型以将业务愿景和战略转化成有效的企业变更的过程Gartner。可以这一部分内容会比较绕但可以作为架构设计的知识扩展进行学习理解以及运用。三、陪你画个架构图简单来说架构图就是为了达成交流共识的实现方案演示并不一定非得拘泥于某种形式只要你能画的清楚讲的明白就最合适不过了。1. 架构选型图难度⭐⭐⭐作用通常在新项目开发初期都要做一些技术选型工作。在负载、网关、架构、治理、框架、服务、数据以及环境和支撑服务上要选择适合当前开发的技术。2. 微服务架构微服务架构简化版难度⭐⭐⭐⭐作用技术选型完毕后接下来就是对于这些技术的运用。这个过程有点像搭积木一样把每一个区域用适合此位置的积木填充进去。如果是团队初建或者是技术升级那么这个过程还是比较复杂的需要大量的验证。不过其实互联网的技术分层和使用已经相对稳定搭建一个这样的微服务并不会耗费太长的时间。3. 技术架构图难度⭐⭐⭐⭐作用技术架构图主要是对于研发层面做技术实现指导的它可以把系统分层和实现结构划分清楚。另外一般也会把案例工程的结构拿出来一起讲解这样可以让团队伙伴快速的进入开发。五、总结本章节讲解了什么是架构图架构图的分类和怎么画架构图通过这样的内容可以让大家对架构图有一个全貌的认知。在以后自己画架构图了也可以非常明确的知道面对的什么用户群体要画的内容是什么。TOGAF有一套非常完善的企业架构理论它描述了一种开发和管理企业体系结构生命周期的方法并构成了TOGAF的核心。所涉及到的知识非常丰富值得认真看一下。好看能把一件事做的好看非常重要好看能让人提起兴趣、好看可以使沟通成本降低。也鼓励大家尽可能把经过自己手里的东西做的好看一些。本文的引用仅限自我学习如有侵权请联系作者删除。参考知识工作两三年了整不明白架构图都画啥_画了200张架构图后,总结出了5个套路!-CSDN博客