先说答案。画架构图分四步走:第一,搞清楚要画的架构图的类型;第二,确认架构图中的关键要素(比如产品、技术、服务);第三,梳理关键要素之间的关联:包含、支撑、同级并列等;第四,输出关联关系清晰的架构图。
应用架构图接下来,我们作进一步解读:
一、架构图的定义及作用什么是架构图?
维基百科、百度百科其实都没有关于它的直接定义。不过我们可以进行拆分理解:架构图=架构+图这样问题就转化成,什么是架构,以及什么是图?关于架构,百度百科上是这样定义的:架构,又名软件架构,是有关软件整体结构与组件的抽象描述,于指导型软件系统各个方面的设计。iso/iec 42010:20072 中对架构则有如下定义:
the fundamental organization of a system, embodied in its components, their relationships to each other and the environment, and the principles governing its design and evolution.(系统架构,体现在它的组成部分、它们之间的相互关系和环境中,以及控制其设计和演化的原则。)也就是说,架构是由系统组件,以及组件间相互关系共同构成的集合体。而架构图,则是用来表达这种集合的载体。它的作用也很简单,两个:划分目标系统边界将目标系统的结构可视化进而减少沟通障碍,提升协作效率。
二、架构的分类及画法架构大致可以分为4类:
业务架构、应用架构、数据架构和技术架构,整体逻辑关系如下:
架构分类业务架构:使用一套方法论/逻辑对产品(项目)所涉及到的业务进行边界划分。所以熟悉业务是关键。比如做一个团购网站,你需要把商品类目、商品、订单、订单服务、支付、退款等进行清晰划分,而业务架构不需要考虑诸如我用什么技术开发、我的并发大怎么办、我选择什么样的硬件等等。
产品架构图应用架构:它是对整个系统实现的总体上的架构,需要指出系统的层次、系统开发的原则、系统各个层次的应用服务。例如,下图就将系统分为数据层、服务层、通讯层、展现层,并细分写明每个层次的应用服务。
应用架构图数据架构:是一套对存储数据的架构逻辑,它会根据各个系统应用场景、不同时间段的应用场景 ,对数据进行诸如数据异构、读写分离、缓存使用、分布式数据策略等划分。数据架构主要解决三个问题:第一,系统需要什么样的数据;第二,如何存储这些数据;第三,如何进行数据架构设计。
大数据架构图技术架构:应用架构本身只关心需要哪些应用系统,哪些平台来满足业务目标的需求,而不会关心在整个构建过程中你需要使用哪些技术。技术架构则是应接应用架构的技术需求,并根据识别的技术需求,进行技术选型,把各个关键技术和技术之间的关系描述清楚。技术架构解决的问题包括:纯技术层面的分层、开发框架的选择、开发语言的选择、涉及非功能性需求的技术选择。
智能家居在物联网时代何去何从
VR推高对OLED面板需求 缺货短期恐无法缓解
新能源造车这个事情 不是满怀抱负就是满怀财富
最大亮点2015 CES:智能家居新产品惊爆眼球
运用CAN232B转换器实现RS232/CAN网络的数据智能转换
如何画架构图
美格智能高算力智能模组SNM951助力云游戏产业快速发展
ST-Ericsson出货逾650万 领跑TD芯片市场
谷歌发布了3D模型查看器Article,将兼容所有的浏览器
看门狗实验
Qorvo 荣获半导体业 “奥斯卡”——GSA 最受尊敬公司奖
土壤检测化验室建设方案的参数信息详解
一文详解SoC中常用的总线
IBM财务机器人正式上线,赋能企业“数智”升级
漫步者辅听产品践行企业社会责任 助力国家老龄事业发展
pcb行业中所有你需要知道如何选择电子合同制造商 华强PC
为什么中国厂商开始转向14nm制程的订单?
可惜魅族没有后悔药
电磁兼容的国际标准化组织介绍
电子车速里程表的单片机实现方案