《软件设计与体系结构-复习试题范文(共7页).doc》由会员分享,可在线阅读,更多相关《软件设计与体系结构-复习试题范文(共7页).doc(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上名词解释1.设计模式 一些设计面向对象的软件开发的经验总结,就是系统的命名、解释、和评价某一个重要的面向对象的可重现的面向对象的设计方案。2.软件体系结构(Software Architecture) 软件体系结构以组件和组件交互的方式定义系统,说明需求与成品系统之间的对应关系,描述系统级别的可伸缩性、能力、吞吐量、一致性和兼容性等属性。软件体系结构由组件、连接件和属性组成。3.软件体系结构风格(Software Architecture Style) 软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式。体系结构风格定义了一个系统家族,即一个体系结构定义一
2、个词汇表和一组约束。词汇表中包含一些构件和连接件类型约束指出系统中构件和连接件的组合方式,体系结构风格反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。4.软件产品线 产品线是一个产品集合,这些产品共享一个公共的、可管理的特征集,这个特征集能满足选定的市场或任务领域的特定需求。这些系统遵循一个预描述的方式,在公共的核心资源(core assets)基础上开发的。5.体系结构描述语言 体系结构描述语言(ADL)是在底层语义模型的支持下,为软件系统的概念体系结构建模提供了具体语法和概念框架。基于底层语义的工具为体系结构的表示、分析、演化、细化、设计
3、过程等提供支持。其三个基本元素是:构件、连接件、体系结构配置。6.软件重用 指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程。软件元素包括程序代码、测试用例、设计文档、设计过程、需要分析文档甚至领域知识。通常,可重用的元素也称作软构件,可重用的软构件越大,重用的粒度越大。7.构件 是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通信接口和实现代码的复合体。8.构件组装 构件组装是指将库中的构件经适当修改后相互连接,或者将它们与当前开发项目中的软件元素相连接,最终构成新的目标软件。9.体系结构配置 体系结构配置或拓扑是描
4、述体系结构的构件与连接件的连接图。体系结构配置提供信息来确定构件是否正确连接、接口是否分配、连接件构成的通信是否正确,并说明实现要求行为的组合含义。10.易用性 易用性关注一个用户完成需要的工作的容易程度以及系统提供的用户支持的种类,包括:学习系统特性。如果用户对某一特定系统或者系统的特定方面不熟悉,系统应该怎样使得学习变得容易?高效地使用系统。系统在帮助用户更高效操作方面能做些什么?11.场景(scenarios) 场景可以看做是那些重要系统活动的抽象,它使4个视图有机联系起来,从某种意义上说场景是最重要的需求抽象。12.MVC MVC是模型(Model),视图(View)和控制(Contr
5、oller)三个单词的缩写。MVC模式的目的就是实现Web系统的职能分工。Model是应用对象,所有的操作都在这里实现,它若需要取得视图中的对象或更新视图,需通过控制器来进行处理。View是模型在屏幕上的表示,模型在进行操作后,其结果是通过视图显示的。Controller用于管理用户与视图发生的交互,定义用户界面对用户输入的响应方式。一旦用户需要对模型进行处理,不能直接执行模型,而必须通过控制器间接实现的。13.C2体系结构风格 C2体系结构风格可以概括为通过连接件绑定在一起的、按照一组规则运作的并行构件网络。14.SOA 即service-oriented architecture,面向服务
6、架构。它是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。Framework 是整个或部分系统的可重用设计,从设计模式角度来看,框架为大粒度的可复用的部件。从体系结构角度来看,框架是一个领域体系结构。15.DSSA Domain Specific Software Architecture:特定领域软件体系结构。建立一种基于体系结构的方法,这需要对体系结构,其一般性构件和互联,以及客户的需求按
7、何种方式由构件来集成都要达成共识。简答题1.什么是体系结构描述语言?它与程序语言以及UML有哪些区别与联系?ADL是在底层语义模型的支持下,为软件系统的概念体系结构建模提供了具体语法和概念框架。基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等提供支持。其三个基本元素是:构件、连接件、体系结构配置。跟其他语言的比较:构造能力:ADL能够使用较小的独立体系结构元素来建造大型软件系统;抽象能力:ADL使得软件体系结构中的构件和连接件描述可以只关注它们的抽象特性,而不管其具体的实现细节;重用能力:ADL使得组成软件系统的构件、连接件甚至是软件体系结构都成为软件系统开发和设计的可重用部件
8、;组合能力:ADL使得其描述的每一系统元素都有其自己的局部结构,这种描述局部结构的特点使得ADL支持软件系统的动态变化组合;异构能力:ADL允许多个不同的体系结构描述关联存在;分析和推理能力:ADL允许对其描述的体系结构进行多种不同的性能和功能上的多种推理分析。2.管道过滤器风格结构特点使得软构件具有良好的隐蔽性和高内聚、低耦合的特点;允许设计者将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成;支持软件重用;系统维护和增强系统性能简单;允许对一些如吞吐量、死锁等属性的分析;支持并行执行。但是,这样的系统也存在着若干不利因素。通常导致进程成为批处理的结构。这是因为虽然过滤器可增量式地处
9、理数据,但它们是独立的,所以设计者必须将每个过滤器看成一个完整的从输入到输出的转换。不适合处理交互的应用。当需要增量地显示改变时,这个问题尤为严重。因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。3.什么是设计模式?它与风格、框架有什么区别与联系?设计模式是对通用设计问题的重复解决方案。软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式。软件框架是整个或部分系统的可重用设计。模式比框架更加抽象,框架是模式的特例化。设计模式被实现成为框架后,可以极大的减轻从设计到实现的鸿沟,利用了模式的框架比没有利用模式的
10、框架更容易理解、更能被设计与实现重用。通常成熟的框架包含了多种设计模式,一个框架不仅可以具体实现一个模式,还可以具体的实现多个模式。设计模式与风格两者为近义词,通常情况下可以互相通用,风格主要是指大的,宏观的设计。模式既可宏观,又可微观。4.软件体系结构测试的内容与准则是什么?内容:构件端口行为与连接件约束是否一致、兼容,单元间的消息是否一致、可达,相关端口是否可连接,体系结构风格是否可满足。准则:测试覆盖所有的构件及各个构件的接口。各个连接件的接口、构件之间的直接连接、构件之间的间接连接。5.什么是软件危机,软件危机的具体表现有哪些?软件危机:落后的软件生产方式无法满足迅速增长的计算机软件需
11、求,从而导致软件开发与维护过程中出现一系列严重问题的现象。软件危机的表现:软件成本日益增长;开发进度难以控制;软件质量差软件维护困难。6.说明Web服务的体系结构模型?它的三个核心协议分别是什么?Web服务的体系结构模型:Web服务是一种崭新的分布式计算模型,是Web上数据和信息集成的有效机制。三个构成元素为:Serverice Broker、Service Provider、Service Requester三个核心协议:简单对象访问协议SOAP;统一描述、发现和集成协议UDDI;Web服务描述语言WSDL。7.简述接口对于构件的重要意义。只能通过构件的接口来使用构件中定义的操作。构件可以让
12、它的接口被其他构件使用,以使其他构件可以使用这个构件中定义的操作。提供服务的构件提供了导出接口,访问服务的构件使用了导入接口。8.类图在UML中有何重要作用?为开发人员提供这种模仿现实世界的表达方式。让分析员使用客户所采用的术语和客户交流,促使客户说出所要解决的问题的重要细节。9.阐述用例对于系统开发人员来说的价值。用例是用来从用户的观察角度收集系统需求的一项技术,便于分析员与客户和用户交流,使系统更符合用户的需求。10.简述如何在实际工作中发现类。在与客户的交谈中,要注意客户用来描述业务实体的名词术语。这些名词可作为领域模型中的类。还要注意你听到的动词,因为这些动词可能会构成这些类中的操作。
13、当得到一组类的核心列表后,应当向客户询问在业务过程中每个类的作用。他们的回答将告诉你这些类的职责。11.简述B/S架构的优点。基于B/S体系结构的软件,系统安装、修改和维护全在服务器端解决。用户在使用系统时,仅仅需要一个浏览器就可运行全部的模块,真正达到了“零客户端”的功能,很容易在运行时自动升级。B/S体系结构还提供了异种机、异种网、异种应用服务的联机、联网、统一服务的最现实的开放性基础。12.C/S系统中客户端应用程序有哪些主要任务?提供用户与数据库的交互界面;向数据库服务器提交用户请求并接受来自数据库服务器的信息;利用客户端应用程序对存在于客户端的数据执行应用逻辑要求。13.什么软件体系
14、结构风格?软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式。体系结构风格定义了一个系统家族,即定义一个词汇表和一组约束。词汇表中包含一些构件和连接件类型,而这组约束指出系统是如何将这些构件和连接件组合起来的。14.简述MVC,介绍各自的作用和用途。MVC是模型(Model),视图(View)和控制Controller)是三个单词的缩写。MVC模式的目的就是实现Web系统的职能分工。Model是应用对象,所有的操作都在这里实现,它若需要取得视图中的对象或更新视图,需通过控制器来进行处理。View是模型在屏幕上的表示,模型在进行操作后,其结果是通过视图显示的。Controller用于
15、管理用户与视图发生的交互,定义用户界面对用户输入的响应方式。一旦用户需要对模型进行处理,不能直接执行模型,而必须通过控制器间接实现的。15.软件体系结构的定义众多,你是如何理解软件体系结构的?软件体系结构在软件系统中有何作用?软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素继承的模式以及这些模式的约束组成。软件体系结构不仅指定了系统的组织结构和拓扑结构,还显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。体系结构是风险承担者进行交流的手段。它明确了对系统实现的约束条件,决定了开发和维护组织的组织结构,制约
16、着系统的质量属性,可以预测软件的质量,是推理和控制更改更简单,有助于循序渐进的原型设计。同时,软件体系结构是可传递和可重用的模型。填空题1、软件元素包括程序代码、测试用例、设计文档、设计过程、需求分析文档甚至领域知识。2、软件工程包括3个要素:方法、工具和过程。3、软件重用过程中需要重用的开发组织结构予以支持,它包括:构件开发组、构件应用组、协调组三组成员组成。4、采用层次式软件体系结构,将产品的系统构件模型定义为4个层次,分别为:系统构件层、通用类构件层、业务构件层、表现层。5、软件体系结构的模型分为5种:结构模型、框架模型、动态模型、过程模型和功能模型。6、软件体系结构的生命周期模型主要分
17、为需求分析阶段、建立软件体系结构阶段、设计阶段和实现阶段。7、软件体系结构应建立于传统的软件开发过程的需求分析和软件设计阶段之间。8、三层C/S结构风格是由表示层、功能层和数据层构成的。9、消息总线对消息过滤提供了转换和阻塞两种方式。10、正交软件体系结构由组织层和线索的构件构成。11、C/S体系结构服务器主要负责有效的管理系统的资源,主要负责数据库安全性的要求、数据库访问并发性的控制、数据库前端的客户应用程序的全局数据完整性规则和数据库的备份与恢复。12、层次系统最广泛的应用是分层通信协议。13、软件体系结构的描述方法主要有图形表达工具、模块内连接语言、基于软构件的系统描述语言和软件体系结构
18、描述语言。14、ADL是一种在底层语义模拟支持下的形式化语言。基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等提供支持。15、可重用的体系结构描述框架可以从需求视点、设计视点、实现视点和测试视点四个视点出发描述体系结构。16、Wright支持对构件之间交互的形式化和分析。17、典型的ADL在充分继承和吸收传统程序设计语言的精确性和严格性特点的同时,还应该具有构造、抽象、重用、组合、异构和分析推理等多种能力和特性。组合能力指的是ADL使得其描述的每一个系统元素都有其自己的局部结构。18、体系结构的动态性分为“交互式动态性”、“结构化动态性”、“体系结构动态性”三类。19、基于构件
19、的动态体统结构模型(CBDSAM)支持运行系统的动态更新。该模型分为三层,分别是应用层、中间层和体系结构层。20、对动态软件体系结构的形式化描述通常有图形化方法、进程代数方法、逻辑描述方法三种方法。21、一个完整的Web服务包括3种逻辑构件:服务提供者、服务代理和服务请求。答:22、Web服务栈的五层标准为:发现服务层、描述层、消息格式层、编码格式层、传输协议层。23、Web服务开发生命周期分为:构建、部署、运行、管理四个阶段。24、OOAD、EA和BPM分别从基础设计层、应用结构层和业务组织层3个层次上为SOAD25、MVC模式的中的M,V,C分别对应Model、View、Controlle
20、r三个单词。26、ABSD的全称是:Architecutre Based Software Development,即基于架构的开发方法。27、ABSD方法取决于决定系统的体系结构驱动,所谓体系结构驱动,是指构成体系结构的业务、质量、功能需求的组合。28、设计模式的基本成分包括模式名称、问题、 解决方案、效果。29、软件体系结构的可靠性风险分析方法有动态方法和构建依赖图(CDG)。30、实现完整测试的典型方法是利用测试准则定义测试需求,进而生成测试用例.参照相关研究工作,可定义构件或连接件内部消息的传递路径、构件或连接件内部端口的执行顺序路径等测试路径。31、构建依赖图是用于在体系结构级进行可
21、靠性分析的概率模型。32、一个复杂的系统通常包括顺序、并行计算、容错和客户/服务器等常用的结构风格模型。33、SAAM方法是最早形成文档并得到广泛使用的软件体系结构分析方法,最初用来分析体系结构的可修改性的。34、体系结构评估中,一般采用刺激、环境和响应三方面来对场景进行描述。35、可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力。包括可维护性、可扩展性、结构重组、可移植性4个方面。36、SAAM评估方法可以对许多许多质量属性及系统功能进行快速评估。37、软件重用是为了解决软件危机。38、软件体系结构的开发是大型软件系统开发的关键环节。39、软件体系结构设计的主要目的是满足对软件的质量需求。40、MVC模型的基本工作原理是基于观察者模式,实现是基于命令模式。综合题:1.请简述并画出“4+1”视图模型答案:“4+1”视图模型即从5个不同的视角(逻辑视图,进程视图,物理视图,开发视图和场景视图)来描述软件体系结构。每个视图之关心系统的一个侧面,5个视图结合在一起才能反映系统的软件体系结构的全部内容。 2. 体系结构演化3. 试简述一下软件产品线的双生命周期模型专心-专注-专业