架构图制作 架构( 二 )


架构可以分为:业务架构、应用架构、数据架构和技术架构 。
业务(逻辑)架构:使用一套方法论对产品(项目)所涉及到的需求的业务进行业务边界划分,简单的讲就是根据一套逻辑思路进行业务的拆分,总体原则是对业务进行业务边界的划分,比如做一个企业订购服务网站,你需要把商品类目、商品、订单、订单服务、支付、退款很清晰的划分出来,而业务架构不需要考虑诸如我用什么技术开发、我的并发大怎么办、我选择什么样的硬件等等 。
应用架构:应用是介于业务语言与技术语言之间,是对整个系统实现的总体上的架构,他需要指出系统的层次、系统开发的原则、系统各个层次的应用服务,例如,上述系统中可以分为、数据层(资源层)、数据服务层、中间构建服务层、业务逻辑层、表现层,并写明每个层次应用服务 。应用架构是要说明产品架构分哪些应用系统,应用系统间是如何集成的,考虑两个事情:第一、考虑的是子系统间的关系 。第二、考虑将可复用的组件或模块进行下沉,沉淀到平台层,为业务组件提供统一的支撑 。数据(持久化)架构:对存储数据(资源)的架构方法论,其架构原则同应用架构大同小异,即考虑到各个系统应用场景、不同时间段的应用场景对数据进行诸如数据异构、读写分离、数据库或NOSQL的策略、缓存的使用、分布式数据(数据库)策略等等 。数据架构主要解决三个问题:第一,系统需要什么样的数据;第二,如何存储这些数据;第三,如何进行数据架构设计 。
技术架构:应用架构本身只关心需要哪些应用系统,哪些平台来满足业务目标的需求,而不会关心在整个构建过程中你需要使用哪些技术 。技术架构是应接应用架构的技术需求,并根据识别的技术需求,进行技术选型,把各个关键技术和技术之间的关系描述清楚 。技术架构解决的问题包括:如何进行纯技术层面的分层、开发框架的选择、开发语言的选择、涉及非功能性需求的技术选择 。总体来看,首先需要熟悉业务,形成业务架构,根据业务架构,做出相应的数据架构和应用架构,最后通过技术架构落地实施 。
业务架构是战略,应用架构是承上启下,一方面承接业务架构的落地,另一方面影响技术架构的选型 。如何针对当前需求,选择合适的架构,如何面向未来,保证架构平滑过渡,这个是软件开发者,特别是架构师,都需要深入思考的问题 。
没有最优的架构,只有最合适的架构,一切系统设计原则都要以解决业务问题为最终目标,脱离实际业务的技术情怀架构往往是空中楼阁 。
架构是什么意思?架构,又名软件架构,是有关软件整体结构与组件的抽象描述,用于指导大型软件系统各个方面的设计 。架构描述语言(ADL)用于描述软件的体系架构 。现在已有多种架构描述语言,如Wright(由卡内基梅隆大学开发),Acme(由卡内基梅隆大学开发),C2(由UCI开发),Darwin(由伦敦帝国学院开发) 。ADL的基本构成包括组件、连接器和配置 。
什么是构架1、什么是架构和架构本质
架构一个系统在其所处环境中所具备的各种基本概念和属性,具体体现为其所包含的各个元素、他们之间的关系以及架构的设计和演进原则之中 。
架构的本质就是对系统进行有序化地重构以致符合当前业务的发展,并可以快速扩展 。
2、企业架构和系统架构
架构从应用上可以分为企业架构和系统架构 。
企业架构(Enterprise Architecture)是记录企业内所有信息系统、它们的相互关系以及它们如何完成企业使命的蓝图,是企业关注点 。
系统构架是对已确定的需求的技术实现构架、作好规划,运用成套、完整的工具,在规划的步骤下去完成任务,是系统关注点 。
3、架构的作用
复杂的软件项目通常有两个明显的特征:需求不确定和技术复杂 。需求不确定来自于客户,而技术的复杂性主要体现在需求让技术变复杂、技术本身也是复杂的、要让软件稳定运行是复杂的 。这些技术的复杂性,会导致软件开发变得复杂,开发成本很高,架构设计恰恰可以很好解决技术复杂的问题 。首先,架构可以降低满足需求和需求变化的开发成本 。其次,架构可以帮助组织人员一起高效协作 。再次,架构可以帮助组织好各种技术 。最后,架构可以保障服务稳定运行 。
4、什么是视角和视图
视角(Viewpoint):一个针对某视图所采用的观察角度的定义,是构建和使用某视图的规约的描述(通常采用一个适当的模式或模版的形式) 。通俗的说,视图描述了所看到的内容;而视角则描述了站在何处进行观察——一个能够决定你所能看到的事物的制高点或角度 。

秒懂生活扩展阅读