博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
软件系统的架构(ArchitECture)有两个要素是什么?
阅读量:4164 次
发布时间:2019-05-26

本文共 586 字,大约阅读时间需要 1 分钟。

答:

1) 它是一个软件系统从整体到部分的最高层次的划分。

一个系统通常是由元件组成的,而这些元件如何形成、相互之间如何发生作用,则是关于这个系统本身结构的重要信息。

详细地说,就是要包括架构元件(Architecture Component)、联结器(Connector)、任务流(TASk-flow)。所谓架构元素,也就是组成系统的核心”砖瓦”,而联结器则描述这些元件之间通讯的路径、通讯的机制、通讯的预期结果,任务流则描述系统如何使用这些元件和联结器完成某一项需求。

2) 建造一个系统所作出的最高层次的、以后难以更改的,商业的和技术的决定。

在建造一个系统之前会有很多的重要决定需要事先作出,而一旦系统开始进行详细设计甚至建造,这些决定就很难更改甚至无法更改。显然,这样的决定必定是有关系统设计成败的最重要决定,必须经过非常慎重的研究和考察。

卡内基梅隆大学和加州大学埃尔文分校在这个领域作了很多研究。卡内基•梅隆大学的Mary Shaw和David Garlan于1996年写了一本叫做 Software Architecture perspective on an emerging DIscipline的书,提出了软件架构中的很多概念,例如软件组件、连接器、风格等等。 加州大学埃尔文分校的软件研究院所做的工作则主要集中于架构风格、架构描述语言以及动态架构。

转载地址:http://qslxi.baihongyu.com/

你可能感兴趣的文章
ACE篇之十:ACE容器之六(映射表管理器)
查看>>
ACE篇之十一:ACE容器之七(自调整的二叉树)
查看>>
基本的TCP/IP Socket用法(一)
查看>>
基本的TCP/IP Socket用法(二)
查看>>
处理事件及多个I/O流--ACE Reactor框架总览
查看>>
SIGINT and others
查看>>
vim编程常用命令(随时补充更新)
查看>>
一个简单的makefile示例及其注释
查看>>
python mysql
查看>>
高效人士的八个习惯
查看>>
mysql 赋给用户权限 grant all privileges on
查看>>
读取文件的几种方法
查看>>
yast 创建本地数据源
查看>>
vim 编码方式(encoding、fileencoding、fileencodings、termencoding介绍)
查看>>
程序员的十层楼
查看>>
windows 下php支持curl
查看>>
获取文件夹文件(C++)
查看>>
判断文件夹是否存在
查看>>
快速的内存分配器
查看>>
java中super 的两种用法
查看>>