软件系统的架构(ArchitECture)有两个要素是什么
答:1) 它是一个软件系统从整体到部分的最高层次的划分。c49eb7?应届生
一个系统通常是由元件组成的,而这些元件如何形成、相互之间如何发生作用,则是关于这个系统本身结构的重要信息。
详细地说,就是要包括架构元件(Architecture Component)、联结器(Connector)、任务流(TASk-flow)。所谓架构元素,也就是组成系统的核心”砖瓦”,而联结器则描述这些元件之间通讯的路径、通讯的机制、通讯的预期结果,任务流则描述系统如何使用这些元件和联结器完成某一项需求。
2) 建造一个系统所作出的最高层次的、以后难以更改的,商业的和技术的决定。在建造一个系统之前会有很多的重要决定需要事先作出,而一旦系统开始进行详细设计甚至建造,这些决定就很难更改甚至无法更改。显然,这样的决定必定是有关系统设计成败的最重要决定,必须经过非常慎重的研究和考察。
卡内基梅隆大学和加州大学埃尔文分校在这个领域作了很多研究。卡内基?梅隆大学的Mary Shaw和David Garlan于1996年写了一本叫做 Software Architecture perspective on an emerging DIscipline的书,提出了软件架构中的很多概念,例如软件组件、连接器、风格等等。 加州大学埃尔文分校的软件研究院所做的工作则主要集中于架构风格、架构描述语言以及动态架构。
一个系统通常是由元件组成的,而这些元件如何形成、相互之间如何发生作用,则是关于这个系统本身结构的重要信息。
详细地说,就是要包括架构元件(Architecture Component)、联结器(Connector)、任务流(TASk-flow)。所谓架构元素,也就是组成系统的核心”砖瓦”,而联结器则描述这些元件之间通讯的路径、通讯的机制、通讯的预期结果,任务流则描述系统如何使用这些元件和联结器完成某一项需求。
2) 建造一个系统所作出的最高层次的、以后难以更改的,商业的和技术的决定。在建造一个系统之前会有很多的重要决定需要事先作出,而一旦系统开始进行详细设计甚至建造,这些决定就很难更改甚至无法更改。显然,这样的决定必定是有关系统设计成败的最重要决定,必须经过非常慎重的研究和考察。
卡内基梅隆大学和加州大学埃尔文分校在这个领域作了很多研究。卡内基?梅隆大学的Mary Shaw和David Garlan于1996年写了一本叫做 Software Architecture perspective on an emerging DIscipline的书,提出了软件架构中的很多概念,例如软件组件、连接器、风格等等。 加州大学埃尔文分校的软件研究院所做的工作则主要集中于架构风格、架构描述语言以及动态架构。
【软件系统的架构(ArchitECture)有两个要素是什么】相关文章
1. 软件系统的架构(ArchitECture)有两个要素是什么
2. 若通过ObjectOutputStream向一个文件中多次以追加方式写入object,为什么用ObjectInputStream读取这些object时会产生StreamCorruptedExcepti
3. 软件测试LoadRunner面试题:What is a function to capture dynamic values in the web vuser script?
4. 什么是Connection-oriented Protocol/Connectionless Protocol面向连接的协议/无连接协议
5. Oracle的内存结构(Memory structures)
6. const char*, char const*, char*const的区别是什么
7. Java的for语句中break, continue和return的区别
8. Java的类可以定义为Protected或者Private得吗
9. OLEDBConnection和SQLConnection有什么区别
10. mysql_pconnect()和mysql_connect()有什么区别
本文来源:https://www.mianshiwenti.com/a11990.html
进入下载页面
上一篇:软件配置管理有什么好处
下一篇:广东北电-研发工程师笔面试
﹝软件系统的架构(ArchitECture)有两个要素是什么﹞相关内容
- Python里面search()和match()的区别
- 设计模式的基本要素是什么
- 软件测试LoadRunner面试题:Explain the Configuration of your systems
- 简述你对Statement,PreparedStatement,CallableStatement的理解
- Collection和Collections的区别
- How to detect and cleanup pending transactions in Oracle
- Java Servlet API中forward() 与redirect()的区别
- 简述安装Slackware Linux系统的过程
- 简述synchronized和java.util.concurrent.locks.Lock的异同
- 什么叫应用程序域?什么是托管代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?