软件体系结构期末考试资料
软件体系结构期末考试复习资料

软件体系结构仅供参考Chapter 11.构件的概念,构件的分类方法构件是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通讯接口和实现代码的复合体。
构件模型是对构件本质特性的抽象描述。
三个主要流派:OMG的CORBA;SUN的EJB;Microsoft的DCOM分类方法:关键字分类法、刻画分类法、超文本组织方法2.软件危机的表现软件成本日益增长、开发进度难控制、软件质量差、软件维护困难3.构件的重用:检索和提取构建,理解和评价构件,修改构件,构件组装。
4.软件体系结构的意义:①是风险承担者进行交流的手段。
②是早期设计决策的体现。
③是可传递和可重用的模型。
5.软件体系结构的发展经历了几个阶段1) "无体系结构" 设计阶段(以汇编语言进行小规模应用程序开发为特征)2) 萌芽阶段(控制流图和数据流图)3) 初期阶段(UML)4) 高级阶段(高层抽象结构为中心)6.软件体系结构定义(填空)软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。
Chapter 21.软件体系结构建模的种类结构模型、框架模型、动态模型、过程模型、功能模型2.4+1视图(会画图,详细描述)逻辑视图,主要支持系统的功能需求,即系统提供给最终用户的服务开发视图,主要侧重于软件模块的组织和管理。
进程视图,侧重于系统的运行特性,主要关注一些非功能性的需求。
物理视图,主要考虑如何把软件映射到硬件上场景可以看作是那些重要系统活动的抽象,它使四个视图有机联系起来3.软件体系结构的核心模型五种元素[Chapter2 ppt 29]构件、连接件、配置、端口、角色4、软件体系结构的核心模型(会画,1对N的关系)5、软件体系结构的生命周期:需求分析阶段,建立软件体系结构阶段,设计阶段,实现阶段,测试阶段。
软件体系结构期末大题

软件体系结构期末大题1.基于构件的软件开发的优势是什么?基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用2.尝试用自己的语言介绍Kruchten的“4+1”模型。
Kruchten 提出了一个"4+1"视图模型,从5个不同的视角包括包括逻辑试图、进程视图、物理视图、开发视图、场景视图来描述软件体系结构。
每一个视图只关心系统的一个侧面,5个试图结合在一起才能反映系统的软件体系结构的全部内容。
3.在希赛公司的一个财务管理系统,财务部要客户提供…………4.不同的体系结构风格具有各自的特点、优劣和用途。
试对管道-过滤器风格、事件驱动风格、分层系统、C2风格和基于消息总线的风格进行分析比较。
P52-56(1)管道和过滤器特点:@使得软构件具有良好的隐蔽性和高内聚、低耦合的特点;@允许设计者将整个系统的输入输出行为看成是多个过滤器的行为的简单合成;@支持软件重用。
只要提供适合在两个过滤器之间传送的数据,任何两个过滤器都可被连接起来;@系统维护和增强系统性能简单。
新的过滤器能够添加到现有系统中来;旧的能够被改进的过滤器替换掉;@允许对一些如吞吐量、死锁等属性的分析;@支持并行执行。
每个过滤器是作为一个单独的任务完成,因此可与其它任务并行执行缺点:①一般导致进程成为批处理的结构。
②不适合处理交互的应用。
③因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。
(2)。
软件体系结构与设计模式期末复习

体系结构期末复习一、选择题(一)1. 设计模式的基本原理是( C )A.面向实现编程B.面向对象编程C.面向接口编程D.面向组合编程2. 设计模式的两大主题是( D )A.系统的维护与开发B.对象组合与类的继承C.系统架构与系统开发D.系统复用与系统扩展3. 依据设计模式思想,程序开发中应优先使用的是( A )关系实现复用。
A.组合聚合B.继承C.创建D. .以上都不对4. 关于继承表述错误的是( D )A.继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法。
B.泛化类(超类)可以显式地捕获那些公共的属性和方法。
特殊类(子类)则通过附加属性和方法来进行实现的扩展。
C.破坏了封装性,因为这会将父类的实现细节暴露给子类。
D.继承本质上是“白盒复用”,对父类的修改,不会影响到子类。
5. 常用的设计模式可分为( A )A.创建型、结构型和行为型B.对象型、结构型和行为型C.过程型、创建型和结构型D.抽象型、接口型和实现型6. “不要和陌生人说话”是对( D )设计原则的通俗表述。
A.接口隔离B.里氏代换C.依赖倒转D. .迪米特法则7. 在适配器模式中,对象适配器模式是对( A )设计原则的典型应用A.合成聚合B.里氏代换C.依赖倒转D. .迪米特法则8. 将一个类的接口转换成客户希望的另一个接口,这句话是对(C)设计模式的描述A.策略模式B.桥接模式C.适配器模式D.单例模式9. 以下设计模式中属于结构模式的是( D )A. 观察者模式B.单例模式C.策略模式D.外观模式10. 以下不属于对象行为型模式是( D )A. 命令模式B.策略模式C.访问者模式D.桥接模式11. 下面的类图表示的是哪个设计模式( D )A. 抽象工厂模式B.观察者模式C.策略模式D.桥接模式12. Open-Close开闭原则的含义是一个软件实体( A )A.应当对扩展开放,对修改关闭。
B.应当对修改开放,对扩展关闭。
软件体系结构-期末大题

1.基于构件的软件开发的优势是什么?基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用2.尝试用自己的语言介绍Kruchten的“4+1”模型。
Kruchten 提出了一个"4+1"视图模型,从5个不同的视角包括包括逻辑试图、进程视图、物理视图、开发视图、场景视图来描述软件体系结构。
每一个视图只关心系统的一个侧面,5个试图结合在一起才能反映系统的软件体系结构的全部内容。
3.在希赛公司的一个财务管理系统,财务部要客户提供…………4.不同的体系结构风格具有各自的特点、优劣和用途。
试对管道-过滤器风格、事件驱动风格、分层系统、C2风格和基于消息总线的风格进行分析比较。
P52-56(1)管道和过滤器特点:@使得软构件具有良好的隐蔽性和高内聚、低耦合的特点;@允许设计者将整个系统的输入输出行为看成是多个过滤器的行为的简单合成;@支持软件重用。
只要提供适合在两个过滤器之间传送的数据,任何两个过滤器都可被连接起来;@系统维护和增强系统性能简单。
新的过滤器可以添加到现有系统中来;旧的可以被改进的过滤器替换掉;@允许对一些如吞吐量、死锁等属性的分析;@支持并行执行。
每个过滤器是作为一个单独的任务完成,因此可与其它任务并行执行缺点:①通常导致进程成为批处理的结构。
②不适合处理交互的应用。
③因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。
(2)(3)分层系统体系结构有以下优点:第一,支持基于抽象程度递增的系统设计。
这允许设计者可以将一个复杂系统设计按递增的步骤进行分解。
第二,支持功能增强。
因为每层至多和与之相邻的上层和下层交互,所以,改变某层的功能最多只会影响与之相邻的其它两层。
第三,支持重用。
与抽象数据类型一样,只要对相邻层提供同样的接口,每层可以有很多不同的可相互替代的实现方法。
软件体系结构期末考试资料

填空题:1.构件是指语义完整,语法正确和有可重用价值的单位软件是软件重用过程中可以明确便是的系统;构造上它是予以描述,通讯接口和实现代码的复合体.2.构件获取渠道(1)直接使用作适应性修改(2)通过遗留工程(3)市场上购置(4)开发新的构件3.构件分类与组织:关键字分类法,刻面分类法,超文本组织方法4.基于数据的组装技术:这种组装技术也要求库中构件以子程序形式出现5.软件体系构造建模种类:构造模型,框架模型,动态模型,过程模型,功能模型6.体系构造风格定义了一个系统家族即定义了一个词汇表和一组约束7.有两种不同构件:中央数据构造说明当前状态,仓库是一黑板系统8.C/S体系构造有三个主要组成局部:数据库效劳器,客户应用程序,网络9.ADL的根本元素:构件,连接件,体系构造配置10.软件体系构造描述方法:图像表达工具,模块内连接语言,基于软构件的系统描述语言,软件体系构造描述语言11.Web效劳:数据层,数据访问层,业务层,业务面,监听者12.简单对象访问协议:SOAP信封,SOAP编码规那么,SOAP RPC表示,SOAP绑定13.Web效劳特点:使用标准标准协议;使用协议的标准性;高度集成能力;完好的封装;松散耦合选择题:1构件模型的三个主要流派OMG,Sun的E,Microsoft的D2.构件管理:构件描述,构件分类与组织,人员及权限管理3.构件重用:检索与提取构件,理解与评价构件,修改构件,构件组装4.软件体系构造的开展史:无体系构造设计阶段,萌芽阶段,初期阶段,高级阶段5.分层系统优点:支持基于抽象程度递增的系统设计;支持功能增强;支持重用6.黑板系统的构成:知识源,黑板数据构造,控制7.面向对象系统优点:改变一个对象的表示不影响其他对象;分解成一些交互的代理程序集合8.W3C是万维网联盟9.Web效劳作为一种新兴的Web应用模式,是一种崭新的分布式计算模型,是Web上数据和信息集成的有效机制10.Web效劳就像Web上的构件编程,开发人员通过调用Web应用编程接口,将Web效劳集成进他们的应用程序就像调用本地效劳一样11.Web效劳开发生命周期:构件,部署,运行,管理12.Web效劳栈:程序设计语言【程序构件(组成程序的根本元素及其取值或值域范围);操作符(连接构件的各种功能符号); 抽象规那么(有关构件和操作符的命名表达规那么);限制规那么(一组选择并决定具体使用何种抽规那么来作用于有关的根本构件及其操作符的规那么和原理);标准说明(有关句法的语义关联说明);】软件体系构造【系统构件(模块化级别的系统组成成分实体,这些实体可以被施以抽象的特性化处理,并以多种方式得到使用);连接件(对组成系统的有关抽象实体进展各种连接的连接机制); 组合模式(系统中的构件和连接件进展连接组合的特殊方式也就是软件体系构造风格); 限制规那么(决定有关模式能够作为子系统进展大型软件系统构造和开发的合法子系统的有关构件); 标准说明(有关系统组织构造方面的语义关联说明)】1.软件体系构造定义:软件体系构造为软件系统提供了一个构造、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。
[精选]软件体系结构期末试题+答案资料
![[精选]软件体系结构期末试题+答案资料](https://img.taocdn.com/s3/m/e9bf54e5b14e852458fb579b.png)
1.以下关于系统性能的叙述中,不正确的是(17)。
(17)A. 常见的Web服务器性能评估方法有基准测试、压力测试和可靠性测试B. 评价Web服务器的主要性能指标有最大并发连接数、响应延迟和吞吐量C. 对运行系统进行性能评估的主要目的是以更好的性能/价格比更新系统D. 当系统性能降到基本水平时,需要查找影响性能的瓶颈并消除该瓶颈2某公司欲对其内部的信息系统进行集成,需要实现在系统之间快速传递可定制格式的数据包,并且当有新的数据包到达时,接收系统会自动得到通知。
另外还要求支持数据重传,以确保传输的成功。
针对这些集成需求,应该采用(21)的集成方式。
(21)A. 远程过程调用 B. 共享数据库C. 文件传输 D. 消息传递3 在RUP中采用“4+1”视图模型来描述软件系统的体系结构。
在该模型中,最终用户侧重于(26),系统工程师侧重于(27)。
(26)A. 实现视图 B. 进程视图 C. 逻辑视图 D. 部署视图(27)A. 实现视图 B. 进程视图 C. 逻辑视图 D. 部署视图4.某银行系统采用Factory Method方法描述其不同账户之间的关系,设计出的类图如下所示。
其中与Factory Method中的“Creator”角色相对应的类是(33);与“Product”角色相对应的类是(34)。
(33)A. BankB. AccountC. CheckingD. Savings(34)A. BankB. AccountC. Checking5.是一个独立可交付的功能单元,外界通过接口访问其提供的服务。
(35)A. 面向对象系统中的对象(Object)B. 模块化程序设计中的子程序(Subroutine)C. 基于构件开发中的构件(Component)D. 系统模型中的包(Package)6 软件的横向重用是指重用不同应用领域中的软件元素。
(31)是一种典型的、原始的横向重用机制。
(31)A. 对象 B. 构件 C. 标准函数库 D. 设计模式7.在基于构件的软件开发中,(36)描述系统设计蓝图以保证系统提供适当的功能;(37)用来了解系统的性能、吞吐率等非功能性属性。
最新软件体系结构期末试题+答案

1.以下关于系统性能的叙述中,不正确的是(17)。
(17)A. 常见的Web服务器性能评估方法有基准测试、压力测试和可靠性测试B. 评价Web服务器的主要性能指标有最大并发连接数、响应延迟和吞吐量C. 对运行系统进行性能评估的主要目的是以更好的性能/价格比更新系统D. 当系统性能降到基本水平时,需要查找影响性能的瓶颈并消除该瓶颈2某公司欲对其内部的信息系统进行集成,需要实现在系统之间快速传递可定制格式的数据包,并且当有新的数据包到达时,接收系统会自动得到通知。
另外还要求支持数据重传,以确保传输的成功。
针对这些集成需求,应该采用(21)的集成方式。
(21)A. 远程过程调用 B. 共享数据库C. 文件传输 D. 消息传递3 在RUP中采用“4+1”视图模型来描述软件系统的体系结构。
在该模型中,最终用户侧重于(26),系统工程师侧重于(27)。
(26)A. 实现视图 B. 进程视图 C. 逻辑视图 D. 部署视图(27)A. 实现视图 B. 进程视图 C. 逻辑视图 D. 部署视图4.某银行系统采用Factory Method方法描述其不同账户之间的关系,设计出的类图如下所示。
其中与Factory Method中的“Creator”角色相对应的类是(33);与“Product”角色相对应的类是(34)。
(33)A. BankB. AccountC. CheckingD. Savings(34)A. BankB. AccountC. Checking5.是一个独立可交付的功能单元,外界通过接口访问其提供的服务。
(35)A. 面向对象系统中的对象(Object)B. 模块化程序设计中的子程序(Subroutine)C. 基于构件开发中的构件(Component)D. 系统模型中的包(Package)6 软件的横向重用是指重用不同应用领域中的软件元素。
(31)是一种典型的、原始的横向重用机制。
(31)A. 对象 B. 构件 C. 标准函数库 D. 设计模式7.在基于构件的软件开发中,(36)描述系统设计蓝图以保证系统提供适当的功能;(37)用来了解系统的性能、吞吐率等非功能性属性。
软件体系结构期末大题培训资料

软件体系结构期末⼤题培训资料软件体系结构期末⼤题1.基于构件的软件开发的优势是什么?基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻⽤来⽀持和升级⼤型系统所需要的维护负担,从⽽降低了软件开发的费⽤2.尝试⽤⾃⼰的语⾔介绍Kruchten的“4+1”模型。
Kruchten 提出了⼀个"4+1"视图模型,从5个不同的视⾓包括包括逻辑试图、进程视图、物理视图、开发视图、场景视图来描述软件体系结构。
每⼀个视图只关⼼系统的⼀个侧⾯,5个试图结合在⼀起才能反映系统的软件体系结构的全部内容。
3.在希赛公司的⼀个财务管理系统,财务部要客户提供…………4.不同的体系结构风格具有各⾃的特点、优劣和⽤途。
试对管道-过滤器风格、事件驱动风格、分层系统、C2风格和基于消息总线的风格进⾏分析⽐较。
P52-56(1)管道和过滤器特点:@使得软构件具有良好的隐蔽性和⾼内聚、低耦合的特点;@允许设计者将整个系统的输⼊输出⾏为看成是多个过滤器的⾏为的简单合成;@⽀持软件重⽤。
只要提供适合在两个过滤器之间传送的数据,任何两个过滤器都可被连接起来;@系统维护和增强系统性能简单。
新的过滤器可以添加到现有系统中来;旧的可以被改进的过滤器替换掉;@允许对⼀些如吞吐量、死锁等属性的分析;@⽀持并⾏执⾏。
每个过滤器是作为⼀个单独的任务完成,因此可与其它任务并⾏执⾏缺点:①通常导致进程成为批处理的结构。
②不适合处理交互的应⽤。
③因为在数据传输上没有通⽤的标准,每个过滤器都增加了解析和合成数据的⼯作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。
(2)(3)分层系统体系结构有以下优点:第⼀,⽀持基于抽象程度递增的系统设计。
这允许设计者可以将⼀个复杂系统设计按递增的步骤进⾏分解。
第⼆,⽀持功能增强。
因为每层⾄多和与之相邻的上层和下层交互,所以,改变某层的功能最多只会影响与之相邻的其它两层。
软件体系结构考试试题

软件体系结构考试试题一、选择题(每题 2 分,共 20 分)1、以下哪种软件体系结构风格强调将系统分解为多个独立的子系统,每个子系统都具有特定的功能和接口?()A 管道过滤器风格B 分层风格C 客户服务器风格D 仓库风格2、在软件体系结构中,以下哪个不是评估软件质量的重要属性?()A 可维护性B 可扩展性C 开发成本D 性能3、哪种架构视图主要关注系统的逻辑结构和组件之间的关系?()A 逻辑视图B 开发视图C 进程视图D 物理视图4、以下哪种模式用于解决软件系统中并发访问共享资源的问题?()A 观察者模式B 单例模式C 责任链模式D 线程同步模式5、软件体系结构的设计原则不包括以下哪一项?()A 高内聚低耦合B 开闭原则C 依赖倒置原则D 快速开发原则6、以下关于微服务架构的描述,错误的是?()A 每个微服务都可以独立部署B 微服务之间通过轻量级的通信机制进行通信C 微服务架构适合小型应用系统D 微服务架构可以提高系统的可扩展性7、哪种架构风格适用于实时系统?()A 事件驱动风格B 解释器风格C 黑板风格D 以上都不是8、在软件体系结构中,以下哪个不是组件的重要特征?()A 接口B 实现C 依赖关系D 版本号9、以下哪种架构模式可以提高系统的容错性?()A 主从模式B 对等模式C 分布式模式D 以上都是10、以下关于软件体系结构描述语言(ADL)的说法,正确的是?()A 可以精确地描述软件体系结构B 不能描述软件体系结构的动态特性C 只适用于特定的软件开发方法D 以上都不对二、填空题(每题 2 分,共 20 分)1、软件体系结构的三要素包括_____、_____和_____。
2、常见的软件体系结构风格有_____、_____、_____等。
3、架构评估的方法包括_____、_____和_____。
4、分层架构中,每一层都为上一层提供_____,同时使用下一层提供的_____。
5、客户端服务器架构中,服务器通常负责_____,客户端负责_____。
软件体系结构期末大题样本

1.基于构件的软件开发的优势是什么?基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装, 更快地构造系统, 减轻用来支持和升级大型系统所需要的维护负担, 从而降低了软件开发的费用2.尝试用自己的语言介绍Kruchten的”4+1”模型。
Kruchten 提出了一个"4+1"视图模型, 从5个不同的视角包括包括逻辑试图、进程视图、物理视图、开发视图、场景视图来描述软件体系结构。
每一个视图只关心系统的一个侧面, 5个试图结合在一起才能反映系统的软件体系结构的全部内容。
3.在希赛公司的一个财务管理系统, 财务部要客户提供…………4.不同的体系结构风格具有各自的特点、优劣和用途。
试对管道-过滤器风格、事件驱动风格、分层系统、 C2风格和基于消息总线的风格进行分析比较。
P52-56(1)管道和过滤器特点:@使得软构件具有良好的隐蔽性和高内聚、低耦合的特点;@允许设计者将整个系统的输入输出行为看成是多个过滤器的行为的简单合成;@支持软件重用。
只要提供适合在两个过滤器之间传送的数据, 任何两个过滤器都可被连接起来;@系统维护和增强系统性能简单。
新的过滤器能够添加到现有系统中来; 旧的能够被改进的过滤器替换掉;@允许对一些如吞吐量、死锁等属性的分析;@支持并行执行。
每个过滤器是作为一个单独的任务完成, 因此可与其它任务并行执行缺点: ①一般导致进程成为批处理的结构。
②不适合处理交互的应用。
③因为在数据传输上没有通用的标准, 每个过滤器都增加了解析和合成数据的工作, 这样就导致了系统性能下降, 并增加了编写过滤器的复杂性。
( 2)( 3)分层系统体系结构有以下优点:第一, 支持基于抽象程度递增的系统设计。
这允许设计者能够将一个复杂系统设计按递增的步骤进行分解。
第二, 支持功能增强。
因为每层至多和与之相邻的上层和下层交互, 因此, 改变某层的功能最多只会影响与之相邻的其它两层。
第三, 支持重用。
软件体系结构期末考试

软件体系结构期末考试
一、题目(论述题):
结合参与开发的软件工程项目,①论述采用的软件体系结构风格或应用框架,②论述采用的软件设计基本原则和策略。
二、题目要求:
(1)简要说明软件体系结构的性质、研究意义和目标是什么?
(2)简要说明软件设计风格、软件应用框架和软件设计模式的特征和区别?
(3)简要说明系统中采用的中间件的作用和目标,(如果没有,请选择一种与系统契合的中间件进行描述)。
(4)假设系统没有采用SOA的架构,请简述SOA软件体系结构的基本概念,Web Service 的主要协议。
三、内容要求
作业格式要求:
1、给出的标题。
2、报告内容组织结构清晰,语句流畅,无错别字。
3、图、表描述恰当、与内容契合、清晰。
图、表序号标注准确。
4、A4纸,宋体小4号字,标准页边距,行间距固定值18磅,页码右下。
交打印稿。
不多于20页,可正反面打印。
四、评分细则
1、题目整体结构、语言表达、整体格式(20分)
2、软件体系结构的性质、研究意义和目标(5分)
3、软件设计风格、软件应用框架和软件设计模式的特征和区别(5分)
4、系统中间件表述(5分)
5、SOA、WebService简述(5分)
6、论述部分,既要描述,也要有论证(包括适当的评估)(60分)
五、总评成绩
期末成绩*70%+平时成绩。
软件体系结构期末考试考题

精品文档简答题:、软件体系结构定义:1由构成系统的元素的,,行为和属性的高级抽象软件体系结构为软件系统提供了一个结构软体系结构不仅.,指导元素集成的模式以及这些模式的约束组成描述,这些元素的相互作用提还显示了系统需求和构成系统的元素之间的对应关系,指定了系统的组织结构和拓扑结构, 供了一些设计决策的基本原理。
4+1视图模型:2、最终用逻辑视图:,开发视图和场景视图)--个不同角度(逻辑视图,进程视图,物理视图从5;吞吐量等,性能可扩充性,,软件管理;进程视图:系统集成人员,户功能需求;开发视图:编程人员通信等。
安装,:系统工程人员,系统拓扑,物理视图3、体系结构的核心模型,,其中构件连接件和配置是最基本的元素。
,,连接件配置,端口,角色: 由5种元素组成构件表示了系统中主要的计算元素和数据存(1)构件是具有某种功能的可重用性的软件模板单元, ,复合构件和原子构件;,储构件有两种(2)连接件表示了构件之间的交互;配置表示了构件和连接件的拓扑逻辑和约束。
(3))风格优点:客户4、三层C/S(/服务器能提高系统和软件允许合理得划分三层结构的功能(1),使之在逻辑上保持相对独立性,; 的可维护性和可扩展性使之在处理负荷能力上与处理特性上(2) 允许更灵活有效地选用相应的平台和硬件系统, 精品文档.精品文档分别适应于结构清晰的三层,并且这些平台和各个组成部分可以具有良好的可升级性和开放性;(3)应用的各层可以并行开发,可以选择各自最适合的开发语言;(4)利用功能层有效地隔离开表示层与数据层,未授权的用户难以绕过功能层而利用数据库工具或黑客手段去非法访问数据层,为严格的安全管理奠定了坚持的基础。
三层比二层好在:三层C/S体系结构中增加了一个应用服务区可以将整个应用逻辑驻留在应用服务器上,而只有表示层存在客户机上,三层C/S体系结构将应用层序分成表示层,功能层和数据层三部分。
5、同传统分布式体系结构相比Web服务体系结构的主要优势:高度的通用性和易用性;完全的平台,语言独立性;高度的集成性;容易部署和发布6、UML的主要内容用例图;类图;对象图;顺序图;通信图;状态图;活动图;构件图;部署图7、与C/S相比,B/S的优点:基于B/S体系结构的软件,系统安装、修改和维护全在服务器端解决。
软件体系结构-期末大题

1.基于构件的软件开发的优势是什么?基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用2.尝试用自己的语言介绍Kruchten的“4+1”模型。
Kruchten 提出了一个"4+1"视图模型,从5个不同的视角包括包括逻辑试图、进程视图、物理视图、开发视图、场景视图来描述软件体系结构。
每一个视图只关心系统的一个侧面,5个试图结合在一起才能反映系统的软件体系结构的全部内容。
3.在希赛公司的一个财务管理系统,财务部要客户提供…………4.不同的体系结构风格具有各自的特点、优劣和用途。
试对管道-过滤器风格、事件驱动风格、分层系统、C2风格和基于消息总线的风格进行分析比较。
P52-56(1)管道和过滤器特点:@使得软构件具有良好的隐蔽性和高内聚、低耦合的特点;@允许设计者将整个系统的输入输出行为看成是多个过滤器的行为的简单合成;@支持软件重用。
只要提供适合在两个过滤器之间传送的数据,任何两个过滤器都可被连接起来;@系统维护和增强系统性能简单。
新的过滤器可以添加到现有系统中来;旧的可以被改进的过滤器替换掉;@允许对一些如吞吐量、死锁等属性的分析;@支持并行执行。
每个过滤器是作为一个单独的任务完成,因此可与其它任务并行执行缺点:①通常导致进程成为批处理的结构。
②不适合处理交互的应用。
③因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。
(2)(3)分层系统体系结构有以下优点:第一,支持基于抽象程度递增的系统设计。
这允许设计者可以将一个复杂系统设计按递增的步骤进行分解。
第二,支持功能增强。
因为每层至多和与之相邻的上层和下层交互,所以,改变某层的功能最多只会影响与之相邻的其它两层。
第三,支持重用。
与抽象数据类型一样,只要对相邻层提供同样的接口,每层可以有很多不同的可相互替代的实现方法。
软件体系结构与设计模式期末复习

体系结构期末复习一、选择题(一)1. 设计模式的基本原理是( C )A.面向实现编程B.面向对象编程C.面向接口编程D.面向组合编程2. 设计模式的两大主题是( D )A.系统的维护与开发B.对象组合与类的继承C.系统架构与系统开发D.系统复用与系统扩展3. 依据设计模式思想,程序开发中应优先使用的是( A )关系实现复用。
A.组合聚合B.继承C.创建D. .以上都不对4. 关于继承表述错误的是( D )A.继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法。
B.泛化类(超类)可以显式地捕获那些公共的属性和方法。
特殊类(子类)则通过附加属性和方法来进行实现的扩展。
C.破坏了封装性,因为这会将父类的实现细节暴露给子类。
D.继承本质上是“白盒复用”,对父类的修改,不会影响到子类。
5. 常用的设计模式可分为( A )A.创建型、结构型和行为型B.对象型、结构型和行为型C.过程型、创建型和结构型D.抽象型、接口型和实现型6. “不要和陌生人说话”是对( D )设计原则的通俗表述。
A.接口隔离B.里氏代换C.依赖倒转D. .迪米特法则7. 在适配器模式中,对象适配器模式是对( A )设计原则的典型应用A.合成聚合B.里氏代换C.依赖倒转D. .迪米特法则8. 将一个类的接口转换成客户希望的另一个接口,这句话是对(C)设计模式的描述A.策略模式B.桥接模式C.适配器模式D.单例模式9. 以下设计模式中属于结构模式的是( D )A. 观察者模式B.单例模式C.策略模式D.外观模式10. 以下不属于对象行为型模式是( D )A. 命令模式B.策略模式C.访问者模式D.桥接模式11. 下面的类图表示的是哪个设计模式( D )A. 抽象工厂模式B.观察者模式C.策略模式D.桥接模式12. Open-Close开闭原则的含义是一个软件实体( A )A.应当对扩展开放,对修改关闭。
B.应当对修改开放,对扩展关闭。
软件体系结构期末考试题

软件体系结构-设计模式练习题11.面向对象分析与设计中的(1)是指一个模块在扩展性方面应该是开放的,而在更改性方面应该是封闭的;而(2)是指子类应当可以替换父类并出现在父类能够出现的任何地方。
(1) A.开闭原则 B.替换原则 C.依赖原则 D.单一职责原则(2) A.开闭原则 B.替换原则 C.依赖原则 D.单一职责原则2.(3)限制了创建类的实例数量,而(4)将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
(3) A.命令模式(Command)B.适配器模式(Adapter)C.策略模式(Strategy) D.单例模式(Singleton)(4) A.命令模式(Command) B.适配器模式(Adapter) C.策略模式(Strategy) D.单例模式(Singleton)3. (5)设计模式允许一个对象在其内部状态改变时改变它的行为。
下图为这种设计模式的类图,已知类 State 为抽象类,则类(6)的实例代表了Context 对象的状态。
(5) A.单件(Singleton) B.桥接(Bridge) C.组合(Composite) D.状态(State)(6) A. Context B. ConcreteStateA C. Handle D. State4.某公司欲开发一门户网站.将公司的各个分公司及办事处信息进行整合。
现决定采用Composite设计模式来实现公司的组织结构关系.并设计了如下图所示的UML类图。
图中与Composite模式中的“Component”角色相对应的类是 (7) .与“Composite”角色相对应的类是 (8) 。
(7) A. Company B. FinanceDepartment C. HRDepartment D. ConcreteCompany(8) A. Company B. FinanceDepartment C. HRDepartment D. ConcreteCompany5.某软件公司正在设计一个通用的嵌入式数据处理平台.需要支持多种数据处理芯片之间的数据传递与交换。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件体系结构期末
考试资料
填空题:
1.构件是指语义完整,语法正确和有可重用价值的单位软件是软件重用过程中能够明确便是的系统;结构上它是予以描述,通讯接口和实现代码的复合体.
2.构件获取渠道(1)直接使用作适应性修改(2)经过遗留工程(3)市场上购买(4)开发新的构件
3.构件分类与组织:关键字分类法,刻面分类法,超文本组织方法
4.基于数据的组装技术:这种组装技术也要求库中构件以子程序形式出现
5.软件体系结构建模种类:结构模型,框架模型,动态模型,过程模型,功能模型
6.体系结构风格定义了一个系统家族即定义了一个词汇表和一组约束
7.有两种不同构件:中央数据结构说明当前状态,仓库是一黑板系统
8.C/S体系结构有三个主要组成部分:数据库服务器,客户应用程序,网络
9.ADL的基本元素:构件,连接件,体系结构配置
10.软件体系结构描述方法:图像表示工具,模块内连接语言,基于软构件的系统描述语言,软件体系结构描述语言
11.Web服务:数据层,数据访问层,业务层,业务面,监听者
12.简单对象访问协议:SOAP信封,SOAP编码规则,SOAP RPC表示,SOAP绑定
13.Web服务特点:使用标准规范协议;使用协议的规范性;高度集成能力;完好的封装;松散耦合
选择题:
1构件模型的三个主要流派OMG,Sun的EJB,Microsoft的DCOM
2.构件管理:构件描述,构件分类与组织,人员及权限管理
3.构件重用:检索与提取构件,理解与评价构件,修改构件,构件组装
4.软件体系结构的发展史:无体系结构设计阶段,萌芽阶段,初期阶段,高级阶段
5.分层系统优点:支持基于抽象程度递增的系统设计;支持功能增强;支持重用
6.黑板系统的构成:知识源,黑板数据结构,控制
7.面向对象系统优点:改变一个对象的表示不影响其它对象;分解成一些交互的代理程序集合
8.W3C是万维网联盟
9.Web服务作为一种新兴的Web应用模式,是一种崭新的分布式计算模型,是Web上数据和信息集成的有效机制
10.Web服务就像Web上的构件编程,开发人员经过调用Web应用编程接口,将Web服务集成进她们的应用程序就像调用本地服务一样
11.Web服务开发生命周期:构件,部署,运行,管理
12.Web服务栈:程序设计语言
【程序构件(组成程序的基本元素及其取值或值域范围);操作符(连
接构件的各种功能符号);
抽象规则(有关构件和操作符的命名表示规则);限制规则(一组选择并决定具体使用何种抽规则来作用于有关的基本构件及其操作符的规则和原理);规范说明(有关句法的语义关联说明); 】
软件体系结构【系统构件(模块化级别的系统组成成分实体,这些实体能够被施以抽象的特性化处理,并以多种方式得到使用);连接件(对组成系统的有关抽象实体进行各种连接的连接机制); 组合模式(系统中的构件和连接件进行连接组合的特殊方式也就是软件体系结构风格);
限制规则(决定有关模式能够作为子系统进行大型软件系统构造和开发的合法子系统的有关构件); 规范说明(有关系统组织结构方面的语义关联说明)】
1.软件体系结构定义:软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。
软件体系结构不但指定了系统的组织结构和拓扑结构,而且显示系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。
2.软件体系结构的意义:1.是风险承担者进行交流的手段。
2.是早期设计决策的体现。
3.是可传递和可重用的模型。
3."4+1"视图模型:逻辑视图:主要支持系统的功能需求,即系统
提供给最终用户的服务。
最终用户:功能需求; 进程视图:侧重于系统的运行特性,主要关注一些非功能性的需求,例如系统的性能和可用性。
系统集成人员:性能可扩充性,吞吐量; 开发视图:也称模块视图,主要侧重于软件模块的组织和管理。
软件人员:软件管理; 物理视图:主要考虑如何把软件映射到硬件上,它一般要考虑系统性能、规模、可靠性等。
系统工程人员:系统拓扑,安装,通信等. 场景:能够看作是那些重要系统活动的抽象,它使四个视图有机联系起来,从某种意义上说场景是最重要的需求抽象。
4.体系结构风格概念: 是描述某一特定应用领域中系统组织方式的惯用模式。
体系结构风格的四要素:提供一个词汇表、定义一套配置规则、定义一套语义解释原则和定义对基于这种风格的系统所进行的分析。
软件体系结构风格分类:①数据流风格(批处理序列;管道/过滤器)②调用/返回风格(主程序/子程序;面向对象风格;层次结构)③独立构件风格(进程通信;事件系统)④虚拟机风格(解释器)⑤仓库风格(数据库系统;超文本系统;黑板系统)
5.管道和过滤器:1.每个构件都有一组输入和输出,构件读输入的数据流,经过内部处理,然后产生数据流。
(过滤器)2.过滤器必须独立,不能与其它过滤器分享数据,而且一个过滤器不知道它上游和下游的标识。
3.一个管道/过滤器网络输出的正确性并。