《软件体系结构期末复习题.doc》由会员分享,可在线阅读,更多相关《软件体系结构期末复习题.doc(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、?软件体系构造?期末复习题简答题:1、 软件体系构造建模的种类有: 构造模型、框架模型、动态模型、过程模型、功能模型。2、 “4+1视图模型从5个不同的视角包括: 逻辑视图、进程视图、物理视图、开发视图与场景视图来描述软件体系构造。 3、 构件:是具有某种功能的可重用的软件模板单元,表示了系统中主要的计算元素与数据存储。 连接件:表示构件之间的交互。 配置:表示构件与连接件的拓扑逻辑与约束。 端口:表示构件与外部环境的交互点。 角色:定义了该连接交互的参与者。4、画出“4+1视图模型图,分析各局部的原理与功能。5、 软件体系构造风格: 是描述某一特定应用领域中系统组织方式的惯用模式。6、软件体
2、系构造Software Architecture软件体系构造以组件与组件交互的方式定义系统,说明需求与成品系统之间的对应关系,描述系统级别的可伸缩性、能力、吞吐量、一致性与兼容性等属性。 软件体系构造由组件、连接件与属性组成。7、分层系统的优点有: 1支持基于抽象程度递增的系统设计,使设计者可以把一个复杂系统按递增的步骤进展分解; 2支持功能增强,因为每一层至多与相邻的上下层交互,因此功能的改变最多影响相邻的上下层; 3支持重用。只要提供的效劳接口定义不变,同一层的不同实现可以交换使用。这样,就可以定义一组标准的接口,而允许各种不同的实现方法。8、分层系统的缺点有: 1并不是每个系统都可以很容
3、易地划分为分层的模式,甚至即使一个系统的逻辑构造是层次化的,出于对系统性能的考虑,系统设计师不得不把一些低级或高级的功能综合起来; 2很难找到一个适宜的、正确的层次抽象方法。9、 B/S体系构造的优点有什么?答:1基于B/S体系构造的软件,系统安装、修改与维护全在效劳器端解决。用户在使用系统时,仅仅需要一个浏览器就可运行全部的模块,真正到达了“零客户端的功能,很容易在运行时自动升级。 2B/S体系构造还提供了异种机、异种网、异种应用效劳的联机、联网、统一效劳的最现实的开放性根底。10、B/S体系构造的缺点有什么?答:1B/S体系构造缺乏对动态页面的支持能力,没有集成有效的数据库处理功能。 2B
4、/S体系构造的系统扩展能力差,平安性难以控制。 3采用B/S体系构造的应用系统,在数据查询等响应速度上,要远远地低于C/S体系构造。 4B/S体系构造的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理(OLTP)应用。11、 DSSA 答案:DSSA就是在一个特定应用领域中为一组应用提供组织构造参考的标准软件体系构造11、软件体系构造的动态性主要分为: 交互式动态性、构造化动态性、体系构造动态性等三类。12、请画出基于构件的动态系统构造模型画。13、软件产品线产品线是一个产品集合,这些产品共享一个公共的、可管理的特征集,这个特征集能满足选定的市场或任务领域的特定需求。这些系统
5、遵循一个预描述的方式,在公共的核心资源(core assets)根底上开发的14、SOA 即service-oriented architecture,面向效劳架构。它是一个组件模型,它 将应用程序的不同功能单元(称为效劳)通过这些效劳之间定义良好的接 口与契约联系起来。接口是采用中立的方式进展定义的,它应该独立于 实现效劳的硬件平台、操作系统与编程语言。这使得构建在各种这样的 系统中的效劳可以以一种统一与通用的方式进展交互。14、 RIA15、 中间件15、 设计模式答:一些设计面向对象的软件开发的经历总结,就是系统的命名、解释、与评价某一个重要的面向对象的可重现的面向对象的设计方案。15、
6、 软件体系构造测试与传统软件测试区别16、UML中的交互图有两种,分别是顺序图与协作图,请分析一下两者之间的主要差异与各自的优缺点。掌握利用两种图进展的设计的方法。答:顺序图可视化地表示了对象之间随时间发生的交互,它除了展示对象之间的关联,还显示出对象之间的消息传递。与顺序图一样,协作图也展示对象之间的交互关系。顺序图强调的是交互的时间顺序,而协作图强调的是交互的语境与参与交互的对象的整体组织。顺序图按照时间顺序布图,而协作图按照空间组织布图。顺序图可以清晰地表示消息之间的顺序与时间关系,但需要较多的水平方向的空间。协作图在增加对象时比拟容易,而且分支也比拟少,但如果消息比拟多时难以表示消息之
7、间的顺序。17. 管道过滤器风格构造特点1使得软构件具有良好的隐蔽性与高内聚、低耦合的特点;2允许设计者将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成; 3支持软件重用。4系统维护与增强系统性能简单。5允许对一些如吞吐量、死锁等属性的分析;6支持并行执行。但是,这样的系统也存在着假设干不利因素。 1通常导致进程成为批处理的构造。这是因为虽然过滤器可增量式地处理数据,但它们是独立的,所以设计者必须将每个过滤器看成一个完整的从输入到输出的转换。2不适合处理交互的应用。当需要增量地显示改变时,这个问题尤为严重。3因为在数据传输上没有通用的标准,每个过滤器都增加了解析与合成数据的工作,这样
8、就导致了系统性能下降,并增加了编写过滤器的复杂性。18. 什么是设计模式?它与风格、框架有什么区别与联系?设计模式是对通用设计问题的重复解决方案。软件体系构造风格是描述某一特定应用领域中系统组织方式的惯用模式。软件框架是整个或局部系统的可重用设计模式比框架更加抽象框架是模式的特例化设计模式被实现成为框架后,可以极大的减轻从设计到实现的鸿沟利用了模式的框架比没有利用模式的框架更容易理解、更能被设计与实现重用通常成熟的框架包含了多种设计模式一个框架不仅可以具体实现一个模式,还可以具体的实现多个模式设计模式与风格两者为近义词,通常情况下可以互相通用风格主要是指大的,宏观的设计。模式既可宏观,又可微观
9、。19. 软件体系构造测试的内容与准那么是什么?内容:构件端口行为与连接件约束是否一致、兼容,单元间的消息是否一致、可达,相关端口是否可连接,体系构造风格是否可满足。准那么:测试覆盖所有的构件及各个构件的接口。各个连接件的接口、构件之间的直接连接、构件之间的间接连接。20、请简述MVC,介绍各自的作用与用途。答案:MVC是三个单词的缩写,分别为:模型(Model),视图(View)与控制 Controller)。MVC模式的目的就是实现Web系统的职能分工。 Model是应用对象,所有的操作都在这里实现,它假设需要取得视图中的对象或更新视图,需通过控制器来进展处理。View是模型在屏幕上的表示
10、,模型在进展操作后,其结果是通过视图显示的。Controller用于管理用户与视图发生的交互,定义用户界面对用户输入的响应方式。一旦用户需要对模型进展处理,不能直接执行模型,而必须通过控制器间接实现的。 选择题1、设计模式一般用来解决什么样的问题( A) A.同一问题的不同表相 B不同问题的同一表相 C.不同问题的不同表相 D.以上都不是2、以下属于面向对象根本原那么的是( C ) D都不是3、Open-Close原那么的含义是一个软件实体( A ) A.应当对扩展开放,对修改关闭. B.应当对修改开放,对扩展关闭 C.应当对继承开放,对修改关闭 D.以上都不对5、要依赖于抽象,不要依赖于具体
11、。即针对接口编程,不要针对实现编程,是(D )的表述 A.开-闭原那么 B.接口隔离原那么 C.里氏代换原那么 7、设计模式的两大主题是( D B 对象组合与类的继承9、以下模式中,属于行为模式的是( B ) B观察者 C适配器 D 以上都是10、常用的软件体系构造评估的方法不包括C11、不属于软件体系构造的核心模型的最根本的元素是 D A 构件 B 连接件 C 配置 D 角色12、选项中部属于“4+1试图模型的是: C A 逻辑视图 B 物理视图 C 连接视图 D 开发视图13、以下说法错误的一项的是 D A:逻辑视图主要支持系统的功能需求,即系统提供应最终用户的效劳B:开发视图也称模块视图
12、,主要侧重于软件模块的组织与管理C:进程视图侧重与系统的运行特性,主要关注一些功能性需求,例如系统的性能与可用性。D:物理视图主要考虑如何吧软件映射到硬件上,它不需要要考虑到系统性能、规模、可靠性等。14、在三层C/S体系构造中,_是最重要的构件。 A A 中间件 B 末尾件C 功能层D 数据层15、C/S系统中,效劳器的以下任务中哪一个是错的? A A 数据库一致性要求B 数据库访问并发性控制C 数据库前端的客户应用程序的全局数据完整性规那么D 数据库的备份与恢复16、 与C/S体系构造相比,B/S体系构造也有许多缺乏之处一下说法正确的选项是 A A B/S体系构造缺乏对动态页面的支持能力,
13、没有集成有效的数据库处理能力B B/S体系构造的系统扩展能力差,但是平安性比拟容易控制C 采用B/S架构构的应用系统,在数据查询等响应速度上,要远远的高于C/S体系构造D B/S体系构造的数据提交一般以页面为单位,数据的动态交互性不强,利于在线事务处理Online Transaction Processing,OLTP应用。17、以下关于软件体系构造描述方法说法错误的选项是( B )A图形表达工具在软件设计中占据主导地位。B由于软件设计语言与模块内连接语言具有严格的语义根底,因此它们能支持较小的软件单元进展描述。C基于软构件的系统描述语言将软件系统描述成一种是由许多以特定形式相互作用的特殊软件
14、实体构造组成的组织或系统。D软件体系构造描述语言是参照传统程序设计语言的设计语言的设计与开发经历,重新设计、开发与使用针对软件体系构造描述语言。18、以下选项中关于ADL与其他语言的比拟说法中错误的选项是B ADL与需求语言的区别在于后者描述的问题空哦关键,而前者那么扎根于解空间中ADL与建模语言的区别在于后者对局部的关注要大于对整体的关注ADL与传统的程序设计语言的构成元素由许多一样与相似之处,有各自有着很大的不同ADL集中在构件的表示上。19、对动态软件体系构造的形式化描述通常可以采用的方法? D A、图形化方法 B、代数进程方法 C、逻辑方法 D、以上皆是20、以下哪些特征不属于动态体系
15、构造特征 D ? A 可构造性动态特征 B 适应性动态特征 C 智能性动态特征 D 平安性动态特征21、通常,一个Web效劳可以分为4个逻辑层,分别为数据层Data Layer、数据访问层Data Access Layer、业务层Business Layer与监听者Listener。离客户端最近的是监听者,离客户最远的是_: A A 数据层Data LayerB 数据访问层Data Access LayerC 业务层Business LayerD 监听者Listener22、Web效劳是采用_ B_格式的信息来定义与描述对外的公共接口与绑定。23、下面哪个不属于设计模式方法分类 D A Coa
16、d的面向对象模式 B 代码模式C 框架应用模式 D 遗传算法24、一般来说,模式有以下四个根本成分: A 、问题、解决方案、效果 。A模式名称 B. 时间C. 地点 D. 思想25、软件体系构造的文档要求与软件开发工程中的其他文档是相似的,以下哪项属于体系构造文档化过程的主要输出结果 A A 体系构造需求规格说明 B 体系构造概要设计说明C 体系构造详细设计说明 D 体系构造总体框架说明26、在设计模式目录下,以下哪种设计模式是关于类的 AA. Factory Method B.Builder 27、以下选项中不是软件体系构造的严重性分级的一项为哪一项CA灾难性的 B危急的C较大的D边际性的2
17、8、以下不属于传统的软件测试与基于体系构造的软件测试都需要研究的对象是? D A、测试内容 B、测试准那么C、测试用例 D、测试语言29、在体系构造中,应用于当前环境中有多个构建同时运行的情况,主要用来提高系统性能的构造风格是 B A、顺序构造风格 B、并行/管道过滤器构造风格 C、容错构造风格 D、调用返回构造风格30、以下哪一个测试过程是测试构件之间的接口以保证构件能够交互,它将构件本身抽象为单元,并关注与构件间的消息传递,构件的交互行为可以通过形式化规约得到,可以提前进展C A、单元测试B、模块测试C、集成测试D、系统测试31、评估方法质量属性中可修改性不包括C。A、可维护性 B、可扩展
18、性C完整性 D可移植性32、 A 是场景中解释或描述风险承当者怎样金发与系统的交互局部。A刺激 B环境 C响应 D互操作 33、软件评估中关注大可修改性包含可维护性,可扩展性, B 与构造重组4个方面。 A 。可用性 B 。可移植性 C 。可变性 D 。互操作性34、产品线就是由在系统的组成元素与功能方面具有共性与 B 相似的多个系统组成的系统族。A、异步性 B、个性 C、 可变性 D、继承性35、一下哪个不是领域工程阶段的主要任务B 。A、领域设计 B、需求分析 C、领域分析 D、领域实现36、软件危机的原因不包括 D :A用户需求不明确 B、缺乏正确的理论指导C、软件规模越来越大 D、软件
19、复杂度越来越低37、常用的软件体系构造评估的方法不包括:C A。体系构造权衡分析法 B。软件体系构造分析法C。系统体系构造分析法 D。中间设计的积极评审 38、不属于软件体系构造的核心模型的最根本的元素是D A 构件 B 连接件 C 配置 D 角色39、选项中部属于“4+1试图模型的是: C A 逻辑视图 B 物理视图C 连接视图 D 开发视图40、某公司欲对其内部的信息系统进展集成,需要实现在系统之间快速传递可定制格式的数据包,并且当有新的数据包到达时,接收系统会自动得到通知。另外还要求支持数据重传,以确保传输的成功。针对这些集成需求,应该采用 D 的集成方式。A. 远程过程调用B. 共享数
20、据库C. 文件传输D. 消息传递 41、在RUP中采用“4+1视图模型来描述软件系统的体系构造。在该模型中,最终用户侧重于 C ,系统工程师侧重于 D 。A. 实现视图B. 进程视图C. 逻辑视图D. 部署视图42、 某银行系统采用Factory Method方法描述其不同账户之间的关系,设计出的类图如下所示。其中与Factory Method中的“Creator角色相对应的类是 A ;与“Product角色相对应的类是B 。 A. BankB. AccountC. Checking D. Savings43、是一个独立可交付的功能单元,外界通过接口访问其提供的效劳。CA. 面向对象系统中的对
21、象ObjectB. 模块化程序设计中的子程序SubroutineC. 基于构件开发中的构件ComponentD. 系统模型中的包Package44、软件的横向重用是指重用不同应用领域中的软件元素。 C 是一种典型的、原始的横向重用机制。A. 对象B. 构件C. 标准函数库D. 设计模式45、 在基于构件的软件开发中, A 描述系统设计蓝图以保证系统提供适当的功能; B用来了解系统的性能、吞吐率等非功能性属性。A. 逻辑构件模型B. 物理构件模型C. 组件接口模型D. 系统交互模型46对象管理组织OMG基于CORBA根底设施定义了四种构件标准。其中, D 的状态信息是由构件自身而不是由容器维护。
22、A. 实体构件B. 加工构件C. 效劳构件D. 会话构件47、分布式系统开发中,通常需要将任务分配到不同的逻辑计算层。业务数据的综合计算分析任务属于 B 。A. 表示逻辑层B. 应用逻辑层D. 数据层48、 在客户机/效劳器系统开发中,采用 D 时,应将数据层与数据处理层放置于效劳器,应用逻辑层、表示逻辑层与表示层放置于客户机。A. 分布式表示构造B. 分布式应用构造C. 分布式数据与应用构造D. 分布式数据构造49、软件架构是降低本钱、改良质量、按时与按需交付产品的关键因素。以下关于软件架构的描述,错误的选项是 A 。A. 根据用户需求,能够确定一个最正确的软件架构,指导整个软件的开发过程B
23、. 软件架构设计需要满足系统的质量属性,如性能、平安性与可修改性等C. 软件架构设计需要确定组件之间的依赖关系,支持工程方案与管理活动D. 软件架构能够指导设计人员与实现人员的工作50、某游戏公司欲开发一个大型多人即时战略游戏,游戏设计的目标之一是能够支持玩家自行创立战役地图,定义游戏对象的行为与之间的关系。针对该目标,公司应该采用D 架构风格最为适宜。A. 管道-过滤器B. 隐式调用 C. 主程序-子程序 D. 解释器51、 (A)将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。A. Adapter适配器模式B. Command命令模式C
24、. Singleton单例模式D. Strategy策略模式52、UML提供了一系列的图支持面向对象的分析与设计,其中_(1)_给出系统的静态设计视图;_(2)_对系统的行为进展组织与建模是非常重要的;_(3)_与_(4)_都是描述系统动态视图的交互图,其中_(3)_描述了以时间顺序组织的对象之间的交互活动,_(4)_强调收发消息的对象的组织构造。A、状态图 B、用例图 C、时序图 D、配置图E、协作图 F、类图答:1F 2B 3C 4E设计题:1、设计一个简化的网上个人银行查询系统,用户可以通过Internet查询自己帐户的收支明细、余额与修改密码。1. 说明系统的假设干质量属性,并以场景图
25、的形式分别描述一个可用性场景与一个平安性场景。2. 使用ADD方法说明系统的初步设计。3. 描述ATAM方法的步骤。4. 选取两个质量属性以表格形式生成质量属性效用树参考答案:分别描述两个质量属性的场景图。下面场景表现了网上个人银行查询系统的性能。500用户户试图同时登陆系统网上个人银行查询系统平均响应时间5秒正常运行请求被处理下面场景表现了网上个人银行查询系统的修改性。希望改变操作界面代码只修改界面代码或配置文件维护时用户修改不产生副作用,在2小时内完成场景可以用文本表示,也可以用图形表示。2请描述构架设计的ADD方法中对模块求精的5个步骤。答题要点:a. 从具体的质量场景与功能需求集合中选
26、择构架驱动因素。b. 选择满足构架驱动因素的构架模式。 c. 实例化模块并根据用例分配功能,使用多个视图进展表示。d. 定义子模块的接口。e. 验证用例与质量场景并对其进展求精,使它们成为子模块的限制。3. 描述ATAM方法的步骤。ATAM方法的表述商业动机的表述构架的表述对构架方法进展分类生成质量属性效用树分析构架方法集体讨论并确定场景优先级再次分析构架方法结果的表述 4. 选取两个质量属性以表格形式生成质量属性效用树效用树的表格形式如下表所示。 质量属性属性求精场景场景用文字描述,并要标明场景的优先级与实现的难易。系统的质量属性有多种,请列举其中六种:可用性、可修改性、性能、平安、可测试性、易用性、可移植、可重用、可集成任选六个。2、画出下面场景的时序图: 1.收款员启动一次销售(makeNewSale() 2.收款员输入商品标识(enterItem(itemID,quantity) 3.销售完毕,系统计算并显示总金额endSale 4.顾客付款,系统处理支付。(makePayment(amount)参考答案如下:3、在 系统中假设有两个打 的个案:使用 卡与对方付款,其中Phone User是 用户,请画出其usecase diagram。答:usecase diagram如下所示:第 17 页