物理架构?软件架构三要素分别是开发架构、物理架构、运行架构。1、开发架构 反映的是开发期的质量需求,表明开发过程应遵循开发团队所在组织所规定/要求的软件过程规范,特别是有关产品线技术管理的要求,并制定/满足相应的设计决策,那么,物理架构?一起来了解一下吧。
程序设计中的架构是指是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计。
软件架构所指的就是说相应的系列性的抽象模式,可以为设计大型软件系统的各个方面提供相应的指导。从本质上来看,软件架构是属于一种系统草图。
在软件架构所描述的对象就是直接的进行系统抽象组件构成。连接系统的各个组件之间就是做到把组件之间所存在的通讯比较明确与相对细致的实施描述。
处于相应的系统实现环节,那么就会使得细化这些抽象组件成为现实的组件,比如可以是具体的某个类或者是对象。从面向对象领域进行分析,那么各个组件之前实施的连接实现往往是接口。
扩展资料:
程序设计中架构的三种分类:
1、逻辑架构:
软件系统系统当中的各个元件之间所存在的关系,比如外部系统接口、用户界面、商业逻辑元件、数据库等。
2、物理架构:
究竟是怎样做到在硬件当中放置软件元件。例如处于上海与北京进行分布的分布式系统的物理架构,这也就是说全部的元件都是属于物理设备,主要的有主机、整合服务器、应用服务器、代理服务器、存储服务器、报表服务器、Web服务器、网络分流器等。
3、系统架构:
相应的系统存在着性能、强壮性、可扩展性、灵活性、可靠性等这些非功能性特征。
软件的物理架构规定了组成软件系统的物理元素、这些物理元素之间的关系、以及它们部署到硬件上的策略。
物理架构可以反映出软件系统动态运行时的组织情况。此时,上述物理架构定义中所提及到的“物理元素”就是进程、线程、以及作为类运行时实例对象等,而进程调度、线程同步、进程或线程通信等则进一步反映物理架构的动态行为。
物理架构非常广泛。例如,架构设计中可能需要专门说明数据是如何产生、存储、共享、复制的,这时可以利用物理架构,展示软件系统在运行期间数据时由哪些运行单元如何产生的,数据又如何被使用、如何被存储哪些数据要跨网络复制和共享等方面的设计决策
软件架构三要素分别是开发架构、物理架构、运行架构。
1、开发架构
反映的是开发期的质量需求,表明开发过程应遵循开发团队所在组织所规定/要求的软件过程规范,特别是有关产品线技术管理的要求,并制定/满足相应的设计决策,具体涉及程序包、框架。
2、物理架构
反映安装和部署需求,软件和硬件部署方案,设备部署和安装方案。
3、运行架构
反映的是运行期的质量要求,它针对系统运行要求,例如:并发、实时等性能和安全有关的要求。
基本架构描述方向:
1、开发架构:反映的是开发期的质量需求。表明开发过程应遵循开发团队所在组织所规定/要求的软件过程规范,特别是有关产品线技术管理的要求,并制定/满足相应的设计决策;具体涉及程序包、框架。
2、物理架构:反映安装和部署需求,软件和硬件部署方案,设备部署和安装方案。
3、运行架构:反映的是运行期的质量要求。它针对系统运行要求,例如,并发、实时等性能。安全有关的要求。
4、逻辑架构:反映的是功能需求是如何被分解和协同实现的。逻辑架构设计是规划组成系统的所有构件,为它们分配不同的职责,使得这些构件能通过写作,完成功能需求。
不同的架构方法论,会将架构分为不同视图,每个视图侧重某一个方面、领域的问题。
比如希赛推的ADMEMS架构体系,分为以下几种视图:
1.数据架构:描述数据的存储结构、格式等方面。
2.物理架构:描述机器的物理部署、网络拓扑方面。
3.运行架构:描述运行期线程、进程间的交互工作机制。
4.逻辑架构:指如何将代码分成不同模块、组件,以及之间的职责分配、交互行为。
5.开发架构:主要指开发工具的选择,程序单元的划分,开发管理规范流程等方面。
例如分为哪些工程、项目,源代码管理,自动化编译构建、测试、部署等。
目前国际上运用比较广泛的是TOGAF架构体系,他把架构分为业务架构、数据架构、应用架构、技术架构等几个方面。
想详细的了解这些架构视图,可以参考这些架构体系相关的书、资料。
另外有很多人无缘无故的抨击架构概念,不知道是出于调侃还是无知。
埃及的金字塔、神庙的建设,不是几个平常的泥瓦匠聚在一起就能够造出来的。
像SAP、OracleERP,国内的金蝶等大规模的系统,以及空间站、火箭的控制系统等,没有系统性的架构方法、规范、流程,结果只能是悲剧。
当规模、复杂度没有达到一定程度,比如在一些小的团队、产品中,架构过程可能融入到老板、经理、组长、资历较深的一些开发者中,融入在大家的日常工作中,以至于感觉不到架构的存在。
架构=框架与构造,假如将一个应用程序看做一辆车,程序员就是生产制造人员,程序中的每个关键词、常量、变量是制造汽车用的各种原材料,而函数、类、功能模块、定义就是使用原材料制造的不同级别的零部件,然后程序员将这些部件组装起来。而架构就是指导程序员如何组装程序的图纸。
架构规定了函数、类、模块之间的关系、逻辑、运行机制。那么架构师就是规划程序项目的人,架构师可以不懂编程细节,但是他必须懂得合理安排各功能块之间的关系,使整个项目具有很高的可维护性、很低的维护成本、很高的开发效率。
顺便说下,虽然我也是个程序员,但程序员就是打工的,俗称“码农”,架构师的工资比程序员高多了。当然一些小项目,当你自己规划程序的时候,你也在小规模地架构程序,比如决定是否将一个函数封装在A类,或是B类中。
以上就是物理架构的全部内容,1.数据架构:描述数据的存储结构、格式等方面。2.物理架构:描述机器的物理部署、网络拓扑方面。3.运行架构:描述运行期线程、进程间的交互工作机制。4.逻辑架构:指如何将代码分成不同模块、组件,以及之间的职责分配、。