软件体系结构(考试习题集含答案)

合集下载

软件体系结构 习题答案

软件体系结构 习题答案

软件体系结构习题答案软件体系结构习题答案1. 什么是软件体系结构?软件体系结构是指软件系统的整体结构和组织方式,它描述了软件系统中各个组件之间的关系以及它们的功能和行为。

软件体系结构通常包括多个层次,从整体到细节逐渐展开,以便更好地理解和设计软件系统。

2. 为什么软件体系结构很重要?软件体系结构对于软件系统的开发和维护具有重要意义。

它可以提供一个框架,指导软件开发者进行系统设计和实现。

良好的软件体系结构可以提高软件系统的可维护性、可扩展性和可重用性,同时降低开发和维护的成本。

3. 软件体系结构有哪些常见的模式?常见的软件体系结构模式包括分层模式、客户端-服务器模式、发布-订阅模式、模型-视图-控制器模式等。

每种模式都有其特定的应用场景和优缺点,开发者可以根据具体需求选择合适的模式。

4. 什么是分层模式?分层模式是一种常见的软件体系结构模式,将软件系统划分为多个层次,每个层次负责不同的功能。

通常包括表示层、业务逻辑层和数据访问层。

这种模式可以提高系统的可维护性和可扩展性,同时降低各个层次之间的耦合度。

5. 客户端-服务器模式是什么?客户端-服务器模式是一种常见的软件体系结构模式,将软件系统划分为客户端和服务器两部分。

客户端负责用户界面和用户交互,而服务器负责处理客户端的请求并提供相应的服务。

这种模式可以实现分布式计算和资源共享,提高系统的可伸缩性和可靠性。

6. 发布-订阅模式是什么?发布-订阅模式是一种常见的软件体系结构模式,用于实现消息传递和事件通知。

发布者将消息发布到一个或多个主题,而订阅者可以选择订阅感兴趣的主题并接收相关的消息。

这种模式可以实现解耦和灵活的通信方式,适用于分布式系统和异步通信。

7. 模型-视图-控制器模式是什么?模型-视图-控制器(MVC)模式是一种常见的软件体系结构模式,用于实现用户界面和业务逻辑的分离。

模型负责处理数据和业务逻辑,视图负责显示用户界面,而控制器负责协调模型和视图之间的交互。

软件体系结构试题库软件工程试题和答案

软件体系结构试题库软件工程试题和答案

软件体系结构试题库软件工程试题和答案软件体系结构试题库软件工程试题和答案一、判断题1、软件重用是指重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。

答案:√2、可重用技术对构件库组织方法要求不但要支持精确匹配,还要支持相似构件的查找。

答案:√3、软件体系结构充当一个理解系统构件和它们之间关系的框架,特别是那些始终跨越时间和实现的属性。

答案:√5、构件能够由其它复合构建和原子构件经过连接而成。

()答案:√6、体系的核心模型由5种元素组成:构建、连接体、配置、端口和角色()答案:√7、软件体系结构的核心由5种元素组成:构件、连接件、配置端口和角色。

其中,构件、连接件和配置是最基本的元素()答案:√8、开发视图主要支持系统的功能需求,即系统提供给最终用户的服务()答案:X9、构件、连接件以及配置是体系结构的核心模型最基本的元素()答案:√10、HMB风格不支持系统系统自顶向下的层次化分解,因为它的构件比较简单。

答案:×11、正交软件体系结构由组织层和线索的构件构成。

答案:√13、线索是子系统的特例,它由完成不同层次功能的构建组成,每一条线索完成整个系统中相对独立的一部分功能。

()答案:√14、层次系统中支持抽象程度递增的系统设计是设计师能够把一个复杂系统按照递增的步骤进行分解,同时支持功能增强,可是不支持重用。

答案:×16、在软件设计中占据着主导地位的软件体系结构描述方法是图形表示工具。

答案:√18、体系结构设计是整个软件生命周期中关键的一环,一般在需求分析之后,软件设计之前进行。

答案:√19、基于软构件的系统描述语言是较好的一种以构件为单位的软件系统描述语言。

答案:√21、基于构件的动态系统结构模型分为三层,风别是应用层、中间层、和体系结构层。

答案:√23、基于构件的动态系统结构模型分为应用层,中间层和体系结构层。

答案:√29、一般的说,一个模式有一下4个基本成分,1.模式名称,2.问题,3.解决方案,4.效果,这句话是正确()答案:√30、设计模式的概念最早是由美国的一位计算机专家提出的。

2020-2021大学《软件体系结构》期末课程考试试卷A(含答案)

2020-2021大学《软件体系结构》期末课程考试试卷A(含答案)

2020-2021《软件体系结构》期末课程考试试卷A专业:考试日期:时间:总分:分闭卷一大题:判断题(共10小题,每小题2分,共20分)1. 构架就是系统的总体结构。

()2. 架构设计中对不同风险承担者提出的要求都要一视同仁,全部予以解决。

()3. 软件架构的风格、软件体系的框架和软件的设计模式,其实就是同一个概念。

()4.在C2风格的系统中每个构件和连接件都有一个顶部一个底部。

构件的顶部与某连接件的底部连接,构件的底部与某连接件的顶部连接,构件与构件之间也可以直接连接。

()5.可修改性战术的主要目的是减少由某个变更直接或者间接影响的模块的数量。

()6. 设计师对系统的质量属性应平等看待,在系统设计中全部予以解决。

()7.应将产生数据的模块和使用数据的模块分离开。

()8. 构架评审中对所有问题都要一视同仁。

()9.通过ATAM评审可以得到明确的量化指标。

()10.根据架构提供的结构图就可以对组件之间的行为进行判断。

()二大题:名词解释题(共2小题,每小题8分,共16分)1. 什么是软件架构2.什么软件架构风格?三大题:论述与应用题(共5小题,1—4小题,每题10分,第5小题24分,共64分)1. 功能,架构,质量属性之间的关系?2.可用性和可靠性有什么区别?3.为什么软件设计中要应用架构样式?4.在用户登录的过程中,需要到后台数据库进行身份验证,试以JSP页面验证技术的发展说明不同战术对质量属性的影响。

5.请根据所学的知识对你的暑期实训作业进行架构设计(应至少包括:➀项目背景、➁需求分析、➂系统架构设计、➃构架的表述、➄质量属性效用树、➅对系统构架的再分析等几个部分)。

院系:专业班级:姓名:学号:装订线2020-2021《软件体系结构》期末课程考试试卷A答案专业:考试日期:时间:总分:分闭卷一大题:判断题(共10小题,每小题2分,共20分)1. 构架就是系统的总体结构。

(错)2. 架构设计中对不同风险承担者提出的要求都要一视同仁,全部予以解决。

软件体系结构试题(试题+答案)

软件体系结构试题(试题+答案)

1、设计模式一般用来解决什么样的问题( a)A.同一问题的不同表相 B不同问题的同一表相C.不同问题的不同表相D.以上都不是2、下列属于面向对象基本原则的是( c )A.继承B.封装C.里氏代换 D都不是3、Open-Close原则的含义是一个软件实体( a )A.应当对扩展开放,对修改关闭.B.应当对修改开放,对扩展关闭C.应当对继承开放,对修改关闭D.以上都不对4、当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用( a )模式。

A.创建型B.结构型 C行为型 D.以上都可以5、要依赖于抽象,不要依赖于具体。

即针对接口编程,不要针对实现编程,是( d ) 的表述A.开-闭原则B.接口隔离原则C.里氏代换原则D.依赖倒转原则6、依据设计模式思想,程序开发中应优先使用的是( a )关系实现复用。

A, 委派 B.继承 C创建 D.以上都不对复用方式:继承和组合聚合(组合委派)7、设计模式的两大主题是( d )A.系统的维护与开发 B 对象组合与类的继承C.系统架构与系统开发D.系统复用与系统扩展8、单子模式中,两个基本要点( a b )和单子类自己提供单例A .构造函数私有 B.唯一实例C.静态工厂方法D.以上都不对9、下列模式中,属于行为模式的是( b )A.工厂模式 B观察者 C适配器以上都是10、“不要和陌生人说话”是( d )原则的通俗表述A.接口隔离B.里氏代换C.依赖倒转D.迪米特:一个对象应对其他对象尽可能少的了解11、构造者的的退化模式是通过合并( c )角色完成退化的。

A.抽象产品 B产品 C创建者 D使用者12、单子(单例,单态)模式类图结构如下:下列论述中,关于”0..1”表述的不正确的是( d )A.1表示,一个单例类中,最多可以有一个实例.B.”0..1”表示单例类中有不多于一个的实例C.0表示单例类中可以没有任何实例D.0表示单例类可以提供其他非自身的实例13、对象适配器模式是( a )原则的典型应用。

软件体系结构考试试题

软件体系结构考试试题

软件体系结构考试试题一、选择题(每题 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、可重用技术对构件库组织方法要求不仅要支持精确匹配,还要支持相似构件的查找;答案:√3、软件体系结构充当一个理解系统构件和它们之间关系的框架,特别是那些始终跨越时间和实现的属性;答案:√5、构件可以由其他复合构建和原子构件通过连接而成;答案:√6、体系的核心模型由5种元素组成:构建、连接体、配置、端口和角色答案:√7、软件体系结构的核心由5种元素组成:构件、连接件、配置端口和角色;其中,构件、连接件和配置是最基本的元素答案:√8、开发视图主要支持系统的功能需求,即系统提供给最终用户的服务答案:X9、构件、连接件以及配置是体系结构的核心模型最基本的元素答案:√10、HMB风格不支持系统系统自顶向下的层次化分解,因为它的构件比较简单;答案:×11、正交软件体系结构由组织层和线索的构件构成;答案:√13、线索是子系统的特例,它由完成不同层次功能的构建组成,每一条线索完成整个系统中相对独立的一部分功能;答案:√14、层次系统中支持抽象程度递增的系统设计是设计师可以把一个复杂系统按照递增的步骤进行分解,同时支持功能增强,但是不支持重用;答案:×16、在软件设计中占据着主导地位的软件体系结构描述方法是图形表达工具;答案:√18、体系结构设计是整个软件生命周期中关键的一环,一般在需求分析之后,软件设计之前进行;答案:√19、基于软构件的系统描述语言是较好的一种以构件为单位的软件系统描述语言;答案:√21、基于构件的动态系统结构模型分为三层,风别是应用层、中间层、和体系结构层;答案:√23、基于构件的动态系统结构模型分为应用层,中间层和体系结构层;答案:√29、一般的说,一个模式有一下4个基本成分,1.模式名称,2.问题,3.解决方案,4.效果,这句话是对的答案:√30、设计模式的概念最早是由美国的一位计算机专家提出的;答案:X31、利用设计模式可以方便地重用成功的设计和结构;答案:√33、在模式目录中,每个模式描述的多少与别的模式无关;答案:√36、在体系结构级进行风险评估是更有利于开发阶段的前期评估;答案:×39、评估方法质量属性中安全性不包括完整性;答案:×41、软件体系结构评估只针对一个体系结构,不可以针对一组体系结构;答案:×43、软件重用长期以来一直是软件工程界不断追求的目标;答案:√二、填空题1、软件元素包括程序代码、设计文档、设计过程、需求分析文档、测试用例甚至领域知识;答案:程序代码、测试用例、设计文档、设计过程、需求分析文档2、软件重用过程中需要重用的开发组织结构予以支持,它包括:_构建开发组_____、_构建应用组______、_协调组________3、三组成员组成;4、答案:构件开发组、构件应用组、协调组;5、采用层次式软件体系结构,将产品的系统构件模型定义为4个层次,分别为:系统构建层、通用类构建层、业务类构建层、表现层;答案:系统构件层、通用类构件层、业务构件层、表现层5、软件体系结构的模型分为5种:结构模型、框架模型、动态模型、过程模型和功能模型;答案:结构模型,动态模型;8、软件体系结构的生命周期模型主要分为需求分析阶段,建立软件体系结构阶段设计阶段和实现阶段;答:设计阶段9、软件体系结构应建立于传统的软件开发过程的_需求分析_______和_软件设计_______阶段之间;答案:需求分析、软件设计11、三层C/S结构风格是由__表示层_______、__功能层_______和_数据层_________构成的;答案:表示层、功能层、数据层12、消息总线对消息过滤提供了___转换_____和___阻塞________两种方式;答案:转换、阻塞13、正交软件体系结构由__组织层__和__线索的构建___构成;答案:组织层、线索的构件14、C/S体系结构服务器主要负责有效的管理系统的资源主要负责_数据库安全性的要求________、__数据库访问并发性的控制_______、_数据库前端的客户应用的全局数据完整性规则________和数据库的备份与恢复_________;答案:数据库安全性的要求、数据库访问并发性的控制、数据库前端的客户应用程序的全局数据完整性规则、数据库的备份与恢复16、软件体系结构的描述方法主要有图形表达工具、模块内连接语言、基于软构件的系统描述语言和软件体系结构描述语言;答案:图形表达工具、模块内连接语言、软件体系结构描述语言17、ADL是一种在底层语义模拟支持下的形式化语言;基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等提供支持;答案:表示、演化、细化18、可重用的体系结构描述框架可以从需求、设计、实现和测试四个视点出发描述体系结构;答案:需求视点、设计视点、实现视点、测试视点20、典型的ADL在充分继承和吸收传统程序设计语言的和特点的同时,还应该具有构造、抽象、重用、组合、异构和分析推理等多种能力和特性;能力指的是ADL使得其描述的每一个系统元素都有其自己的局部结构;答案:精确性、严格性,组合21、体系结构的动态性分为“_________”“_________”“_________”三类;答案:交互式动态性、结构化动态性、体系结构动态性22、基于构件的动态体统结构模型CBDSAM支持运行系统的动态更新;该模型分为三层,分别是应用层、_________和________________;答案:中间层、体系结构层23、体系结构的动态性主要分为几类:_________、_________、___________;答案:交互式动态性,结构化动态性、体系结构化动态性;24、对动态软件体系结构的形式化描述通常有______、_______、_________三种方法;答案:图形化方法、进程代数方法、逻辑描述方法25、一个完整的Web服务包括3种逻辑构件:______、______、_______;答案:服务提供、服务代理、服务请求29、MVC模式的中的M,V,C分别对应______、_______、_________三种单词;答案:Model,View,Controller32、设计模式的基本成分包括______________、___________、___________、__________;答案:模式名称、问题、解决方案、效果;39、体系结构评估中,一般采用刺激,环境,和_____三方面来对场景进行描述;答案:响应40、可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力;包括可维护性、可扩展性、、可移植性4个方面;答案:结构重组;42、软件重用是为了解决_____答案:软件危机43、________的开发是大型软件系统开发的关键环节;答案:软件体系结构44、领域工程阶段的主要任务有_____、______和______三个阶段;答案:领域分析、领域设计、领域实现45、软件体系结构设计的主要目的是满足对软件的_____;答案:质量需求三、选择题1、软件危机的原因不包括:A、用户需求不明确B、缺乏正确的理论指导C、软件规模越来越大D、软件复杂度越来越低答案:D2、下列选项中,哪个不是重用组织框构中的主要组成成员:A.协调组B.构件应用组C.构件需求组D.构件开发组答案:C3、常用的软件体系结构评估的方法不包括:A体系结构权衡分析法B.软件体系结构分析法C系统体系结构分析法D中间设计的积极评审答案:C4、下列选项中,不是软件危机的原因的是:CA、用户需求不明确B、缺乏正确的理论指导C、软件规模越来越小D、软件的复杂度越来越高P25、不属于软件体系结构的核心模型的最基本的元素是A构件B连接件 C配置D角色答案:D6、选项中不属于“4+1”试图模型的是:A逻辑视图B物理视图C连接视图D开发视图答案:C7、下列说法错误的一项的是A:逻辑视图主要支持系统的功能需求,即系统提供给最终用户的服务B:开发视图也称模块视图,主要侧重于软件模块的组织和管理C:进程视图侧重与系统的运行特性,主要关注一些功能性需求,例如系统的性能和可用性;D:物理视图主要考虑如何吧软件映射到硬件上,它不需要要考虑到系统性能、规模、可靠性等;答案:D8、Kruchten在1995提出了“4+1”模型,从5个不同的视角来描述软件体系结构,其中“4”不包括的视图是A逻辑视图B开发视图C物理视图D场景视图答案:D9、下列哪个选项是描述系统的静态结构A.逻辑视图和开发视图B.进程视图和物理视图C.开发视图和物理视图D.开发视图和进程视图答案:A11、正交软件体系结构的有点有A结构清晰,易于理解B易修改,可维护性强C可移植性强,重用程度大D以上都是答案:D12、C/S系统中,服务器的以下任务中哪一个是错的A数据库一致性要求B数据库访问并发性控制C数据库前端的客户应用程序的全局数据完整性规则D数据库的备份与恢复13、下列哪个不是黑板系统的组成部分A.知识源B.黑板数据结构C.控制D.内存答案:D14、与C/S体系结构相比,B/S体系结构也有许多不足之处一下说法正确的是AB/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理能力BB/S体系结构的系统扩展能力差,但是安全性比较容易控制C采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远的高于C/S体系结构DB/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,利于在线事务处理OnlineTransactionProcessing,OLTP应用;答案:A15、以下不是正交软件体系结构优点的是A.结构清晰,易于理解B.已修改,可维护性强C.可移植性强,重用粒度大D.很大很复杂答案:D16、以下关于软件体系结构描述方法说法错误的是A.图形表达工具在软件设计中占据主导地位;B.由于软件设计语言和模块内连接语言具有严格的语义基础,因此它们能支持较小的软件单元进行描述;C.基于软构件的系统描述语言将软件系统描述成一种是由许多以特定形式相互作用的特殊软件实体构造组成的组织或系统;D.软件体系结构描述语言是参照传统程序设计语言的设计语言的设计和开发经验,重新设计、开发和使用针对软件体系结构描述语言;答案:B20、下列选项中关于ADL与其他语言的比较说法中错误的是A.ADL与需求语言的区别在于后者描述的问题空哦关键,而前者则扎根于解空间中B.ADL与建模语言的区别在于后者对部分的关注要大于对整体的关注C.ADL与传统的程序设计语言的构成元素由许多相同和相似之处,有各自有着很大的不同D.ADL集中在构件的表示上;29、下面哪个不属于设计模式方法分类ACoad的面向对象模式B代码模式C框架应用模式D遗传算法答案:D30、一般来说,模式有以下四个基本成分:、问题、解决方案、效果;A.模式名称B.时间C.地点D.思想答案:A31、软件体系结构的文档要求与软件开发项目中的其他文档是相似的,下列哪项属于体系结构文档化过程的主要输出结果A体系结构需求规格说明B体系结构概要设计说明C体系结构详细设计说明D体系结构总体框架说明答案:A33、在设计模式目录下,以下哪种设计模式是关于类的A.答案:A36、在体系结构中,应用于当前环境中有多个构建同时运行的情况,主要用来提高系统性能的结构风格是A、顺序结构风格B、并行/管道—过滤器结构风格C、容错结构风格D、调用—返回结构风格答案:B39、评估方法质量属性中可修改性不包括;A.可维护性B;可扩展性C.完整性D.可移植性答案:C40、是场景中解释或描述风险承担者怎样金发与系统的交互部分;A.刺激B.环境C.响应D.互操作答案:A41、软件评估中关注大可修改性包含可维护性,可扩展性,和结构重组4个方面;A;可用性B;可移植性C;可变性D;互操作性答案:B43、一下哪个不是领域工程阶段的主要任务;A、领域设计B需求分析C、领域分析D、领域实现答案:B四、名词解释1、软件危机答案:是指计算机软件的开发和维护过程中所遇到的一系列严重问题2、软件重用答案:是指在两次或多次不同的软件开发过程中重复使用相同或相近软件元素的过程;3、构件组装4、答案:构件组装是指将库中的构件经适当修改后相互连接,或者将它们与当前开发项目中的软件元素相连接,最终构成新的目标软件;5、构件答案:是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通信接口和实现代码的复合体;7、场景scenarios:答:场景可以看做是那些重要系统活动的抽象,它使4个视图有机联系起来,从某种意义上说场景是最重要的需求抽象;9、软件体系结构答案:软件体系结构是一个设计,它包括所建立系统中的各元素构件和连接件的描述、元素之间的交互、指导装配的范例和对范例的约束;10、软件体系结构风格答案:软件体系结构风格是描述某一特定领域中系统组织方式的惯用模式;13、C2体系结构风格答案:C2体系结构风格可以概括为通过连接件绑定在一起的、按照一组规则运作的并行构件网络;14、COBRBA接口池答案:COBRBA接口池包括分布计算机环境中所有可用的服务器对象的接口表示它使动态搜索可用服务器的接口,动态构造请求及参数成为可能;17、连接件:答案:连接件是用来建立构件间的交互以及支配这些交互规则的体系结构构造模块;18、体系结构配置:答案:体系结构配置或拓扑是描述体系结构的构件与连接件的连接图;体系结构配置提供信息来确定构件是否正确连接、接口是否分配、连接件构成的通信是否正确,并说明实现要求行为的组合含义;19、构造能力:答案:构造能力指的是ADL能力使用较小的独立体系结构元素来建造大型软件系统;20、ADL:答案:ADL是这样一种形式化语言,他在底层语义模型的支持下,为软件系统的概念结构建模提供了具体语法和概念模型;21、软件体系结构的动态性答案:软件系统在运行时刻的体系结构变动;29、需求答案:用户对目标软件系统在功能、行为、性能、设计约束等方面的期望31、模式答案:模式是指从某个具体的形式中得到的一种抽象,在特殊的非任意性的环境中,该形式不断地重复出现;33、设计模式答案:一些设计面向对象的软件开发的经验总结,就是系统的命名、解释、和评价某一个重要的面向对象的可重现的面向对象的设计方案;38、可修改性答案:可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力;通常以某些具体的变更为基准,通过考察这些变更的代价衡量可修改性;可修改性包括:1可维护性2可扩展性3结构重组4可移植性40、基于场景的评估方法;答:场景是一系列有序地使用或修改系统的步骤;这种评估方式分析软件体系结构对场景也就是对系统的使用或修改活动的支持程度,从而判断该体系结构对这一场景所代表的质量需求的满足程度; 基于场景的评估方式涉及的基本活动包括确定应用领域的功能和软件体系结构之间的映射,设计用于体现待评估质量属性的场景以及分析软件体系结构对场景的支持程度;五、问答题1、纵观软件体系结构技术的发展过程,从最初的“无结构”设计到现行的基于体系结构的软件开发,可以认为经历了哪四个阶段答案:1“无体系结构”设计阶段;以汇编语言进行小规模应用程序开发为特征2萌芽阶段;出现了程序结构设计主题,以控制流图和数据流图构成软件结构为特征3初期阶段;出现了从不同侧面描述系统的结构模型,以UML为典型代表4高级阶段;以描述系统的高层抽象结构为中心,不关心集体的建模细节,划分了体系结构模型与软件结构的界限,该阶段以Kruchten,提出了“4+1”模型为标志,由于概念尚不统一,描述规范也不能达成一致认识,因此在软件开发实践中软件体系结构上布恩那个发挥重要作用;2、试述下可重用技术对构件库组织方法的几点要求:答案:1支持构件库的各种维护动作,如增加、删除以及修改构件,尽量不要影响构件库的结构;2不仅要支持精确匹配,还要支持相似构件的查找;3不仅能进行简单的语法匹配,而且还能够查找在功能或行为方面等价或相似的构件;4对应用领域具有较强的描述能力和较好的描述精度;5库管理员和用户容易使用3、简要概产生软件危机的原因4、答案:1.用户需求不明确2.缺乏正确的理论指导3.软件规模越来越大4.软件复杂度越来越高;5、软件体系结构的定义众多,你是如何理解软件体系结构的软件体系结构在软件系统中有何作用6、答案:1软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素继承的模式以及这些模式的约束组成;软件体系结构不仅指定了系统的组织结构和拓扑结构,还显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理;2体系结构是风险承担者进行交流的手段;它明确了对系统实现的约束条件,决定了开发和维护组织的组织结构,制约着系统的质量属性,可以预测软件的质量,是推理和控制更改更简单,有助于循序渐进的原型设计;同时,软件体系结构是可传递和可重用的模型;6、体系结构的生命周期模型分为哪几个阶段答案:1、需求分析阶段2、建立软件体系结构阶段3、设计阶段4、实现阶段7、软件体系结构是必需,软件体系结构的生命周期分为哪几个阶段答:软件体系结构的生命周期可以分为需求分析阶段、建立软件体系结构阶段、设计阶段、实现阶段四个阶段;8、请简述软件体系结构的生命周期;答:以自然语言进行软件结构的非形式化描述,接着运用合适的形式化数学理论模型对上一阶段的非形式化描述进行规范定义,从而得到软件形式结构的形式化规范描述;对设计好的软件体系结构进行验证和求精,直到不需要进行求精验证时,转入软件体系结构的实施;在此阶段将软件结构实施于系统设计中,并将其结构的构件和连接件有机组织在一起;判断软件体系结构是否需要扩展,演化;需要从则重复以上步骤,否则对该体系结构进行评价、度量,转入终结阶段;11、试阐述与C/S体系结构相比,B/S体系结构的不足之处;答案:1、B/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理功能;2、B/S体系结构的系统扩展能力差,安全性难以控制;3、采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远的地低于C/S体系结构;4、B/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理应用;12、C/S系统中客户端应用程序有哪些主要任务答案:1、提供用户与数据库的交互界面2、向数据库服务器提交用户请求并接受来自数据库服务器的信息3、利用客户端应用程序对存在于客户端的数据执行应用逻辑要求;14、请简述三层C/S结构的优点答案:1、允许合理的划分三层结构的功能,使之在逻辑上保持相对独立性,从而使整个系统的逻辑结构更为合理清晰,能提高系统和软件的可维护性和可扩展性;2、允许更灵活的选用相应的平台和硬件系统使之在处理负荷能力上与处理特性上分别适应于结构清晰的三层,并且具有可升级性和开放性3、可并行开发,各层可选择各自最适合语言使之高效开发,从而达到较高的性价比4、允许利用功能层有效的隔离开表示层和数据层,未授权的用户难以通过如黑客手段访问数据层,同时也更加合理和有效的控制18、在C2中,连接件和构件是如何工作的答案:连接件负责构建之间消息的传递,而构件维持状态,执行操作并通过两个名字分别为top和buttom的端口和其他的构件交换信息;每个接口包含一种可发送的消息和一组可接受的消息,构件之间的消息要么是请求其他构件执行某个操作的请求消息,要么是通知其他构件自身执行某个操作或状态发生改变的通知消息;构件之间的消息交换不能之间进行,而只能通过连接件来完成;29、设计模式的基本成分有哪4条答案:1、模式名称2、问题3、解决方案4、效果31、软件工程的研究主要有哪三个方向答案:1、软件过程分析和建模;2、软件过程支持;3、软件过程评估和改进;32、简述一下演化开发阶段的八个步骤答案:需求变动归类;制订体系结构演化计划修改、增加或删除构件;更新构件的相互作用;产生演化后的体系结构迭代;对以上步骤进行确认,进行阶段性技术评审;对所做的标记进行处理;33、设计模式可以分为几类答案:创建型、结构型、行为型;1.什么是体系结构描述语言它与程序语言以及UML有哪些区别与联系ADL是在底层语义模型的支持下,为软件系统的概念体系结构建模提供了具体语法和概念框架;基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等提供支持;其三个基本元素是:构件、连接件、体系结构配置;跟其他语言的比较:◎构造能力:ADL能够使用较小的独立体系结构元素来建造大型软件系统;◎抽象能力:ADL使得软件体系结构中的构件和连接件描述可以只关注它们的抽象特性,而不管其具体的实现细节;◎重用能力:ADL使得组成软件系统的构件、连接件甚至是软件体系结构都成为软件系统开发和设计的可重用部件;◎组合能力:ADL使得其描述的每一系统元素都有其自己的局部结构,这种描述局部结构的特点使得ADL支持软件系统的动态变化组合;◎异构能力:ADL允许多个不同的体系结构描述关联存在;◎分析和推理能力:ADL允许对其描述的体系结构进行多种不同的性能和功能上的多种推理分析;2.管道过滤器风格结构特点1使得软构件具有良好的隐蔽性和高内聚、低耦合的特点;2允许设计者将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成;3支持软件重用;4系统维护和增强系统性能简单;5允许对一些如吞吐量、死锁等属性的分析;6支持并行执行;但是,这样的系统也存在着若干不利因素;1通常导致进程成为批处理的结构;这是因为虽然过滤器可增量式地处理数据,但它们是独立的,所以设计者必须将每个过滤器看成一个完整的从输入到输出的转换;2不适合处理交互的应用;当需要增量地显示改变时,这个问题尤为严重;3因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性;4.什么是设计模式它与风格、框架有什么区别与联系设计模式是对通用设计问题的重复解决方案;软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式;软件框架是整个或部分系统的可重用设计模式比框架更加抽象框架是模式的特例化设计模式被实现成为框架后,可以极大的减轻从设计到实现的鸿沟利用了模式的框架比没有利用模式的框架更容易理解、更能被设计与实现重用通常成熟的框架包含了多种设计模式一个框架不仅可以具体实现一个模式,还可以具体的实现多个模式设计模式与风格两者为近义词,通常情况下可以互相通用风格主要是指大的,宏观的设计;模式既可宏观,又可微观;7.什么是软件危机,软件危机的具体表现有哪些软件危机:落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象;软件危机的表现:软件成本日益增长开发进度难以控制软件质量差。

软件体系结构试题库(软件工程)

软件体系结构试题库(软件工程)

软件体系结构试题库(软件工程)一、判断题4、软件体系结构充当一个理解系统构件和它们之间关系的框架,特别是那些始终跨越时间和实现的属性。

答案:√6、体系的核心模型由5种元素组成:构建、连接体、配置、端口和角色()答案:√7、软件体系结构的核心由5种元素组成:构件、连接件、配置端口和角色。

其中,构件、连接件和配置是最基本的元素()答案:√8、开发视图主要支持系统的功能需求,即系统提供给最终用户的服务()答案:某9、构件、连接件以及配置是体系结构的核心模型最基本的元素()答案:√10、HMB风格不支持系统系统自顶向下的层次化分解,因为它的构件比较简单。

答案:某11、正交软件体系结构由组织层和线索的构件构成。

答案:√12、基于事件的隐式调用风格的思想是构件不直接调用一个过程,而是触发或广播一个或多个事件。

答案:√13、线索是子系统的特例,它由完成不同层次功能的构建组成,每一条线索完成整个系统中相对独立的一部分功能。

()答案:√15、相交关系R是一个等价关系。

答案:√16、在软件设计中占据着主导地位的软件体系结构描述方法是图形表达工具。

答案:√17、Rapide是一种可执行的ADL,其目的在于通过定义并模拟基于事件的行为对分布式同步系统建模。

答案:某18、体系结构设计是整个软件生命周期中关键的一环,一般在需求分析之后,软件设计之前进行。

答案:√19、基于软构件的系统描述语言是较好的一种以构件为单位的软件系统描述语言。

答案:√20、需求语言与ADL的区别在于后者描述的是问题空间,而前者则扎根于解空间中。

答案:某21、基于构件的动态系统结构模型分为三层,风别是应用层、中间层、和体系结构层。

答案:√22、ADL提供了一种形式化机制来描述软件体系结构,大多数ADL不进描述系统的静态结构,也支持对体系结构动态性的描述()答案:某23、基于构件的动态系统结构模型分为应用层,中间层和体系结构层。

答案:√24、2000年世界计算机大会提出,软件体系结构中最为重要的三个研究方向是:体系结构风格,静态体系结构和动态体系结构。

软件设计与体系结构练习题参考答案

软件设计与体系结构练习题参考答案

一、选择题CDABC DABCC ACDCC BADCA DDCBC ADBDA二、判断题√√X√√√√X X√X√√√X X X X X√√X√ X X X三、简答题1、简述实体类的概念及其作用。

实体类实现所谓的对象关系映射(Object Relational Mapping,简称ORM),是为了解决面向对象的类与关系数据库的表之间,存在的不匹配的现象,通过使用描述对象和关系之间映射的元数据,在程序中的类对象,与关系数据库的表之间建立持久的关系,用于在程序中描述数据库表。

本质上就是将数据从一种形式转换到另外一种形式。

简单地说,就是描述一个业务实体的类。

实体类对象是现实世界中实体对象在计算机中的表示,在层与层之间以及层内模块间进行数据传输。

2、敏捷开发宣言。

我们正在通过亲身实践以及帮助他人实践,揭示更好的软件开发方法,通过这项工作,我们认为:个体和交互胜过过程和工具可以工作的软件胜过面面俱到的文档客户合作胜过合同谈判响应变化胜过遵循计划虽然右项也有其价值,但我们认为左项更加重要。

3、简述XP的短交付周期的概念。

迭代计划: XP项目每两周交付一次可以工作的软件。

每两周的迭代都实现了利益相关者的一些需求,在每次迭代结束时,会给利益相关者演示迭代生成的系统,以得到他们的反馈。

迭代是一次较小的交付,可能会被加入到产品中,也可能不会。

每个周期(Iteration)开发的需求都是用户最需要的东西。

发布计划:XP团队通常会创建一个计划来规划随后大约6次迭代的内容。

一次发布通常需要2-3个月的工作。

它表示了一次较大的交付,通常此次交付会被加入到产品中。

发布计划不是一成不变的,客户可以随时改变计划的内容,他可以取消用户故事,编写新的用户故事,或者改变用户故事的优先级别。

但是客户应该更改后面迭代的内容,尽量不要更改下一次迭代。

4、测试驱动开发的概念及其积极作用。

编写所有产品代码的目的都是为了使失败的单元测试能够通过。

软件体系结构试题与解答

软件体系结构试题与解答

模拟试题(一)第一题: 名词解释(每题5分, 共20分)1.软件体系构造(Software Architecture)2.软件体系构造风格(Software Architecture Style)3.软件质量属性4.质量属性驱动旳设计措施(ADD)第二题: 单项选择(每题4分, 共20分)1. 下面哪种方略可以用来满足可测试性(Testability)旳质量属性?A) 心跳(Heartbeat) B) 模块旳抽象化(Generalize the module)C) 记录/重放 D) 授权顾客2. “系统在提供服务给合法顾客旳同步抵制未授权使用旳能力”这是哪种质量属性关怀旳问题?A) 性能 B) 可测试性C) 可移植性 D) 安全性3. 下面哪种视图不属于软件体系构造中定义旳“4+1”视图?A) 物理视图 B) 设计视图C) 场景视图 D) 开发视图4. 下面旳图是什么图?A) 序列图 B) 组件图C) 对象图 D) 用例图5. 下面旳图形描述了何种体系构造风格?A) C/S B) 有序批处理 C) 主程序/子程序 D) 面向对象第三题:简答(每题5分, 共20分)1.请描述管道-过滤器体系构造风格旳特点并给出适合使用这种风格旳一种应用场景。

2.请简要阐明黑板风格旳定义。

3.请简要阐明体系构造权衡分析措施和该措施旳特点。

4. 什么是“4+1视图”, 分别给出每个视图旳名称和重要关注点。

软件体系构造分析: 效用树(20分)某企业要开发一种在线交易系统, 该系统重要关注性能、可更改性、可用性和安全这五个质量属性。

负责开发旳团体分析了各个质量属性, 设计了一种参照旳体系构造。

该团体欲采用效用树技术对体系构造进行评估, 下面是有关旳场景: ☎∙∙站点 断电后 可以在 秒内完毕流量到站点 旳迁移;●信用卡交易需要有99.999% 旳安全性;●顾客旳授权数据库需要在 99.999% 旳状况下保证可用;●视频必须实时传播;●可以在4人-周内完毕对Web顾客界面旳变化网络失效和恢复必须在1.5分钟内完毕;●减少对客户数据库访问旳时间至200毫秒以内;请根据以上描述, 构建对应旳效用树2. 软件体系构造构建(20分)Travelling 是一家新兴旳旅游服务提供商, 可以在线为顾客提供在线旳实时旅游信息服务, 包括路线信息, 景点简介, 公交线路查询等, 其系统旳基本旳功能如下所示:☎∙∙顾客可以在网站上注册帐号和密码 成为该站点旳客户;☎∙∙客户可以使用浏览器访问网上旳站点 搜索并返回感爱好旳景点信息;☎∙∙该企业需要集成来自旅游线路提供商旳数据库 提供旅游线路支持;需要集成来自景点旳信息提供商旳数据库提供景点信息;需要集成公交企业旳应用系统提供公交信息查询能力。

软件体系结构试题库(软件工程)试题和答案

软件体系结构试题库(软件工程)试题和答案

1、软件重用是指重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。

答案:√2、可重用技术对构件库组织方法要求不仅要支持精确匹配,还要支持相似构件的查找。

答案:√3、软件体系结构充当一个理解系统构件和它们之间关系的框架,特别是那些始终跨越时间和实现的属性。

答案:√5、构件可以由其他复合构建和原子构件通过连接而成。

()答案:√6、体系的核心模型由5种元素组成:构建、连接体、配置、端口和角色()答案:√7、软件体系结构的核心由5种元素组成:构件、连接件、配置端口和角色。

其中,构件、连接件和配置是最基本的元素()答案:√8、开发视图主要支持系统的功能需求,即系统提供给最终用户的服务()答案:X9、构件、连接件以及配置是体系结构的核心模型最基本的元素()答案:√10、HMB风格不支持系统系统自顶向下的层次化分解,因为它的构件比较简单。

答案:×11、正交软件体系结构由组织层和线索的构件构成。

13、线索是子系统的特例,它由完成不同层次功能的构建组成,每一条线索完成整个系统中相对独立的一部分功能。

()答案:√14、层次系统中支持抽象程度递增的系统设计是设计师可以把一个复杂系统按照递增的步骤进行分解,同时支持功能增强,但是不支持重用。

答案:×16、在软件设计中占据着主导地位的软件体系结构描述方法是图形表达工具。

答案:√18、体系结构设计是整个软件生命周期中关键的一环,一般在需求分析之后,软件设计之前进行。

答案:√19、基于软构件的系统描述语言是较好的一种以构件为单位的软件系统描述语言。

答案:√21、基于构件的动态系统结构模型分为三层,风别是应用层、中间层、和体系结构层。

答案:√23、基于构件的动态系统结构模型分为应用层,中间层和体系结构层。

答案:√29、一般的说,一个模式有一下4个基本成分,1.模式名称,2.问题,3.解决方案,4.效果,这句话是对的()答案:√30、设计模式的概念最早是由美国的一位计算机专家提出的。

软件体系结构期末考试考题及答案

软件体系结构期末考试考题及答案

软件体系结构期末考试考题及答案简答题:软件体系结构定义: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、可重用技术对构件库组织方法要求不仅要支持精确匹配,还要支持相似构件的查找;答案:√3、软件体系结构充当一个理解系统构件和它们之间关系的框架,特别是那些始终跨越时间和实现的属性;答案:√5、构件可以由其他复合构建和原子构件通过连接而成;答案:√6、体系的核心模型由5种元素组成:构建、连接体、配置、端口和角色答案:√7、软件体系结构的核心由5种元素组成:构件、连接件、配置端口和角色;其中,构件、连接件和配置是最基本的元素答案:√8、开发视图主要支持系统的功能需求,即系统提供给最终用户的服务答案:X9、构件、连接件以及配置是体系结构的核心模型最基本的元素答案:√10、HMB风格不支持系统系统自顶向下的层次化分解,因为它的构件比较简单;答案:×11、正交软件体系结构由组织层和线索的构件构成;答案:√13、线索是子系统的特例,它由完成不同层次功能的构建组成,每一条线索完成整个系统中相对独立的一部分功能;答案:√14、层次系统中支持抽象程度递增的系统设计是设计师可以把一个复杂系统按照递增的步骤进行分解,同时支持功能增强,但是不支持重用;答案:×16、在软件设计中占据着主导地位的软件体系结构描述方法是图形表达工具;答案:√18、体系结构设计是整个软件生命周期中关键的一环,一般在需求分析之后,软件设计之前进行;答案:√19、基于软构件的系统描述语言是较好的一种以构件为单位的软件系统描述语言;答案:√21、基于构件的动态系统结构模型分为三层,风别是应用层、中间层、和体系结构层;答案:√23、基于构件的动态系统结构模型分为应用层,中间层和体系结构层;答案:√29、一般的说,一个模式有一下4个基本成分,1.模式名称,2.问题,3.解决方案,4.效果,这句话是对的答案:√30、设计模式的概念最早是由美国的一位计算机专家提出的;答案:X31、利用设计模式可以方便地重用成功的设计和结构;答案:√33、在模式目录中,每个模式描述的多少与别的模式无关;答案:√36、在体系结构级进行风险评估是更有利于开发阶段的前期评估;答案:×39、评估方法质量属性中安全性不包括完整性;答案:×41、软件体系结构评估只针对一个体系结构,不可以针对一组体系结构;答案:×43、软件重用长期以来一直是软件工程界不断追求的目标;答案:√二、填空题1、软件元素包括程序代码、设计文档、设计过程、需求分析文档、测试用例甚至领域知识;答案:程序代码、测试用例、设计文档、设计过程、需求分析文档2、软件重用过程中需要重用的开发组织结构予以支持,它包括:_构建开发组_____、_构建应用组______、_协调组________3、三组成员组成;4、答案:构件开发组、构件应用组、协调组;5、采用层次式软件体系结构,将产品的系统构件模型定义为4个层次,分别为:系统构建层、通用类构建层、业务类构建层、表现层;答案:系统构件层、通用类构件层、业务构件层、表现层5、软件体系结构的模型分为5种:结构模型、框架模型、动态模型、过程模型和功能模型;答案:结构模型,动态模型;8、软件体系结构的生命周期模型主要分为需求分析阶段,建立软件体系结构阶段设计阶段和实现阶段;答:设计阶段9、软件体系结构应建立于传统的软件开发过程的_需求分析_______和_软件设计_______阶段之间;答案:需求分析、软件设计11、三层C/S结构风格是由__表示层_______、__功能层_______和_数据层_________构成的;答案:表示层、功能层、数据层12、消息总线对消息过滤提供了___转换_____和___阻塞________两种方式;答案:转换、阻塞13、正交软件体系结构由__组织层__和__线索的构建___构成;答案:组织层、线索的构件14、C/S体系结构服务器主要负责有效的管理系统的资源主要负责_数据库安全性的要求________、__数据库访问并发性的控制_______、_数据库前端的客户应用的全局数据完整性规则________和数据库的备份与恢复_________;答案:数据库安全性的要求、数据库访问并发性的控制、数据库前端的客户应用程序的全局数据完整性规则、数据库的备份与恢复16、软件体系结构的描述方法主要有图形表达工具、模块内连接语言、基于软构件的系统描述语言和软件体系结构描述语言;答案:图形表达工具、模块内连接语言、软件体系结构描述语言17、ADL是一种在底层语义模拟支持下的形式化语言;基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等提供支持;答案:表示、演化、细化18、可重用的体系结构描述框架可以从需求、设计、实现和测试四个视点出发描述体系结构;答案:需求视点、设计视点、实现视点、测试视点20、典型的ADL在充分继承和吸收传统程序设计语言的和特点的同时,还应该具有构造、抽象、重用、组合、异构和分析推理等多种能力和特性;能力指的是ADL使得其描述的每一个系统元素都有其自己的局部结构;答案:精确性、严格性,组合21、体系结构的动态性分为“_________”“_________”“_________”三类;答案:交互式动态性、结构化动态性、体系结构动态性22、基于构件的动态体统结构模型CBDSAM支持运行系统的动态更新;该模型分为三层,分别是应用层、_________和________________;答案:中间层、体系结构层23、体系结构的动态性主要分为几类:_________、_________、___________;答案:交互式动态性,结构化动态性、体系结构化动态性;24、对动态软件体系结构的形式化描述通常有______、_______、_________三种方法;答案:图形化方法、进程代数方法、逻辑描述方法25、一个完整的Web服务包括3种逻辑构件:______、______、_______;答案:服务提供、服务代理、服务请求29、MVC模式的中的M,V,C分别对应______、_______、_________三种单词;答案:Model,View,Controller32、设计模式的基本成分包括______________、___________、___________、__________;答案:模式名称、问题、解决方案、效果;39、体系结构评估中,一般采用刺激,环境,和_____三方面来对场景进行描述;答案:响应40、可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力;包括可维护性、可扩展性、、可移植性4个方面;答案:结构重组;42、软件重用是为了解决_____答案:软件危机43、________的开发是大型软件系统开发的关键环节;答案:软件体系结构44、领域工程阶段的主要任务有_____、______和______三个阶段;答案:领域分析、领域设计、领域实现45、软件体系结构设计的主要目的是满足对软件的_____;答案:质量需求三、选择题1、软件危机的原因不包括:A、用户需求不明确B、缺乏正确的理论指导C、软件规模越来越大D、软件复杂度越来越低答案:D2、下列选项中,哪个不是重用组织框构中的主要组成成员:A.协调组B.构件应用组C.构件需求组D.构件开发组答案:C3、常用的软件体系结构评估的方法不包括:A体系结构权衡分析法B.软件体系结构分析法C系统体系结构分析法D中间设计的积极评审答案:C4、下列选项中,不是软件危机的原因的是:CA、用户需求不明确B、缺乏正确的理论指导C、软件规模越来越小D、软件的复杂度越来越高P25、不属于软件体系结构的核心模型的最基本的元素是A构件B连接件 C配置D角色答案:D6、选项中不属于“4+1”试图模型的是:A逻辑视图B物理视图C连接视图D开发视图答案:C7、下列说法错误的一项的是A:逻辑视图主要支持系统的功能需求,即系统提供给最终用户的服务B:开发视图也称模块视图,主要侧重于软件模块的组织和管理C:进程视图侧重与系统的运行特性,主要关注一些功能性需求,例如系统的性能和可用性;D:物理视图主要考虑如何吧软件映射到硬件上,它不需要要考虑到系统性能、规模、可靠性等;答案:D8、Kruchten在1995提出了“4+1”模型,从5个不同的视角来描述软件体系结构,其中“4”不包括的视图是A逻辑视图B开发视图C物理视图D场景视图答案:D9、下列哪个选项是描述系统的静态结构A.逻辑视图和开发视图B.进程视图和物理视图C.开发视图和物理视图D.开发视图和进程视图答案:A11、正交软件体系结构的有点有A结构清晰,易于理解B易修改,可维护性强C可移植性强,重用程度大D以上都是答案:D12、C/S系统中,服务器的以下任务中哪一个是错的A数据库一致性要求B数据库访问并发性控制C数据库前端的客户应用程序的全局数据完整性规则D数据库的备份与恢复13、下列哪个不是黑板系统的组成部分A.知识源B.黑板数据结构C.控制D.内存答案:D14、与C/S体系结构相比,B/S体系结构也有许多不足之处一下说法正确的是AB/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理能力BB/S体系结构的系统扩展能力差,但是安全性比较容易控制C采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远的高于C/S体系结构DB/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,利于在线事务处理OnlineTransactionProcessing,OLTP应用;答案:A15、以下不是正交软件体系结构优点的是A.结构清晰,易于理解B.已修改,可维护性强C.可移植性强,重用粒度大D.很大很复杂答案:D16、以下关于软件体系结构描述方法说法错误的是A.图形表达工具在软件设计中占据主导地位;B.由于软件设计语言和模块内连接语言具有严格的语义基础,因此它们能支持较小的软件单元进行描述;C.基于软构件的系统描述语言将软件系统描述成一种是由许多以特定形式相互作用的特殊软件实体构造组成的组织或系统;D.软件体系结构描述语言是参照传统程序设计语言的设计语言的设计和开发经验,重新设计、开发和使用针对软件体系结构描述语言;答案:B20、下列选项中关于ADL与其他语言的比较说法中错误的是A.ADL与需求语言的区别在于后者描述的问题空哦关键,而前者则扎根于解空间中B.ADL与建模语言的区别在于后者对部分的关注要大于对整体的关注C.ADL与传统的程序设计语言的构成元素由许多相同和相似之处,有各自有着很大的不同D.ADL集中在构件的表示上;29、下面哪个不属于设计模式方法分类ACoad的面向对象模式B代码模式C框架应用模式D遗传算法答案:D30、一般来说,模式有以下四个基本成分:、问题、解决方案、效果;A.模式名称B.时间C.地点D.思想答案:A31、软件体系结构的文档要求与软件开发项目中的其他文档是相似的,下列哪项属于体系结构文档化过程的主要输出结果A体系结构需求规格说明B体系结构概要设计说明C体系结构详细设计说明D体系结构总体框架说明答案:A33、在设计模式目录下,以下哪种设计模式是关于类的A.答案:A36、在体系结构中,应用于当前环境中有多个构建同时运行的情况,主要用来提高系统性能的结构风格是A、顺序结构风格B、并行/管道—过滤器结构风格C、容错结构风格D、调用—返回结构风格答案:B39、评估方法质量属性中可修改性不包括;A.可维护性B;可扩展性C.完整性D.可移植性答案:C40、是场景中解释或描述风险承担者怎样金发与系统的交互部分;A.刺激B.环境C.响应D.互操作答案:A41、软件评估中关注大可修改性包含可维护性,可扩展性,和结构重组4个方面;A;可用性B;可移植性C;可变性D;互操作性答案:B43、一下哪个不是领域工程阶段的主要任务;A、领域设计B需求分析C、领域分析D、领域实现答案:B四、名词解释1、软件危机答案:是指计算机软件的开发和维护过程中所遇到的一系列严重问题2、软件重用答案:是指在两次或多次不同的软件开发过程中重复使用相同或相近软件元素的过程;3、构件组装4、答案:构件组装是指将库中的构件经适当修改后相互连接,或者将它们与当前开发项目中的软件元素相连接,最终构成新的目标软件;5、构件答案:是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通信接口和实现代码的复合体;7、场景scenarios:答:场景可以看做是那些重要系统活动的抽象,它使4个视图有机联系起来,从某种意义上说场景是最重要的需求抽象;9、软件体系结构答案:软件体系结构是一个设计,它包括所建立系统中的各元素构件和连接件的描述、元素之间的交互、指导装配的范例和对范例的约束;10、软件体系结构风格答案:软件体系结构风格是描述某一特定领域中系统组织方式的惯用模式;13、C2体系结构风格答案:C2体系结构风格可以概括为通过连接件绑定在一起的、按照一组规则运作的并行构件网络;14、COBRBA接口池答案:COBRBA接口池包括分布计算机环境中所有可用的服务器对象的接口表示它使动态搜索可用服务器的接口,动态构造请求及参数成为可能;17、连接件:答案:连接件是用来建立构件间的交互以及支配这些交互规则的体系结构构造模块;18、体系结构配置:答案:体系结构配置或拓扑是描述体系结构的构件与连接件的连接图;体系结构配置提供信息来确定构件是否正确连接、接口是否分配、连接件构成的通信是否正确,并说明实现要求行为的组合含义;19、构造能力:答案:构造能力指的是ADL能力使用较小的独立体系结构元素来建造大型软件系统;20、ADL:答案:ADL是这样一种形式化语言,他在底层语义模型的支持下,为软件系统的概念结构建模提供了具体语法和概念模型;21、软件体系结构的动态性答案:软件系统在运行时刻的体系结构变动;29、需求答案:用户对目标软件系统在功能、行为、性能、设计约束等方面的期望31、模式答案:模式是指从某个具体的形式中得到的一种抽象,在特殊的非任意性的环境中,该形式不断地重复出现;33、设计模式答案:一些设计面向对象的软件开发的经验总结,就是系统的命名、解释、和评价某一个重要的面向对象的可重现的面向对象的设计方案;38、可修改性答案:可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力;通常以某些具体的变更为基准,通过考察这些变更的代价衡量可修改性;可修改性包括:1可维护性2可扩展性3结构重组4可移植性40、基于场景的评估方法;答:场景是一系列有序地使用或修改系统的步骤;这种评估方式分析软件体系结构对场景也就是对系统的使用或修改活动的支持程度,从而判断该体系结构对这一场景所代表的质量需求的满足程度; 基于场景的评估方式涉及的基本活动包括确定应用领域的功能和软件体系结构之间的映射,设计用于体现待评估质量属性的场景以及分析软件体系结构对场景的支持程度;五、问答题1、纵观软件体系结构技术的发展过程,从最初的“无结构”设计到现行的基于体系结构的软件开发,可以认为经历了哪四个阶段答案:1“无体系结构”设计阶段;以汇编语言进行小规模应用程序开发为特征2萌芽阶段;出现了程序结构设计主题,以控制流图和数据流图构成软件结构为特征3初期阶段;出现了从不同侧面描述系统的结构模型,以UML为典型代表4高级阶段;以描述系统的高层抽象结构为中心,不关心集体的建模细节,划分了体系结构模型与软件结构的界限,该阶段以Kruchten,提出了“4+1”模型为标志,由于概念尚不统一,描述规范也不能达成一致认识,因此在软件开发实践中软件体系结构上布恩那个发挥重要作用;2、试述下可重用技术对构件库组织方法的几点要求:答案:1支持构件库的各种维护动作,如增加、删除以及修改构件,尽量不要影响构件库的结构;2不仅要支持精确匹配,还要支持相似构件的查找;3不仅能进行简单的语法匹配,而且还能够查找在功能或行为方面等价或相似的构件;4对应用领域具有较强的描述能力和较好的描述精度;5库管理员和用户容易使用3、简要概产生软件危机的原因4、答案:1.用户需求不明确2.缺乏正确的理论指导3.软件规模越来越大4.软件复杂度越来越高;5、软件体系结构的定义众多,你是如何理解软件体系结构的软件体系结构在软件系统中有何作用6、答案:1软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素继承的模式以及这些模式的约束组成;软件体系结构不仅指定了系统的组织结构和拓扑结构,还显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理;2体系结构是风险承担者进行交流的手段;它明确了对系统实现的约束条件,决定了开发和维护组织的组织结构,制约着系统的质量属性,可以预测软件的质量,是推理和控制更改更简单,有助于循序渐进的原型设计;同时,软件体系结构是可传递和可重用的模型;6、体系结构的生命周期模型分为哪几个阶段答案:1、需求分析阶段2、建立软件体系结构阶段3、设计阶段4、实现阶段7、软件体系结构是必需,软件体系结构的生命周期分为哪几个阶段答:软件体系结构的生命周期可以分为需求分析阶段、建立软件体系结构阶段、设计阶段、实现阶段四个阶段;8、请简述软件体系结构的生命周期;答:以自然语言进行软件结构的非形式化描述,接着运用合适的形式化数学理论模型对上一阶段的非形式化描述进行规范定义,从而得到软件形式结构的形式化规范描述;对设计好的软件体系结构进行验证和求精,直到不需要进行求精验证时,转入软件体系结构的实施;在此阶段将软件结构实施于系统设计中,并将其结构的构件和连接件有机组织在一起;判断软件体系结构是否需要扩展,演化;需要从则重复以上步骤,否则对该体系结构进行评价、度量,转入终结阶段;11、试阐述与C/S体系结构相比,B/S体系结构的不足之处;答案:1、B/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理功能;2、B/S体系结构的系统扩展能力差,安全性难以控制;3、采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远的地低于C/S体系结构;4、B/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理应用;12、C/S系统中客户端应用程序有哪些主要任务答案:1、提供用户与数据库的交互界面2、向数据库服务器提交用户请求并接受来自数据库服务器的信息3、利用客户端应用程序对存在于客户端的数据执行应用逻辑要求;14、请简述三层C/S结构的优点答案:1、允许合理的划分三层结构的功能,使之在逻辑上保持相对独立性,从而使整个系统的逻辑结构更为合理清晰,能提高系统和软件的可维护性和可扩展性;2、允许更灵活的选用相应的平台和硬件系统使之在处理负荷能力上与处理特性上分别适应于结构清晰的三层,并且具有可升级性和开放性3、可并行开发,各层可选择各自最适合语言使之高效开发,从而达到较高的性价比4、允许利用功能层有效的隔离开表示层和数据层,未授权的用户难以通过如黑客手段访问数据层,同时也更加合理和有效的控制18、在C2中,连接件和构件是如何工作的答案:连接件负责构建之间消息的传递,而构件维持状态,执行操作并通过两个名字分别为top和buttom的端口和其他的构件交换信息;每个接口包含一种可发送的消息和一组可接受的消息,构件之间的消息要么是请求其他构件执行某个操作的请求消息,要么是通知其他构件自身执行某个操作或状态发生改变的通知消息;构件之间的消息交换不能之间进行,而只能通过连接件来完成;29、设计模式的基本成分有哪4条答案:1、模式名称2、问题3、解决方案4、效果31、软件工程的研究主要有哪三个方向答案:1、软件过程分析和建模;2、软件过程支持;3、软件过程评估和改进;32、简述一下演化开发阶段的八个步骤答案:需求变动归类;制订体系结构演化计划修改、增加或删除构件;更新构件的相互作用;产生演化后的体系结构迭代;对以上步骤进行确认,进行阶段性技术评审;对所做的标记进行处理;33、设计模式可以分为几类答案:创建型、结构型、行为型;1.什么是体系结构描述语言它与程序语言以及UML有哪些区别与联系ADL是在底层语义模型的支持下,为软件系统的概念体系结构建模提供了具体语法和概念框架;基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等提供支持;其三个基本元素是:构件、连接件、体系结构配置;跟其他语言的比较:◎构造能力:ADL能够使用较小的独立体系结构元素来建造大型软件系统;◎抽象能力:ADL使得软件体系结构中的构件和连接件描述可以只关注它们的抽象特性,而不管其具体的实现细节;◎重用能力:ADL使得组成软件系统的构件、连接件甚至是软件体系结构都成为软件系统开发和设计的可重用部件;◎组合能力:ADL使得其描述的每一系统元素都有其自己的局部结构,这种描述局部结构的特点使得ADL支持软件系统的动态变化组合;◎异构能力:ADL允许多个不同的体系结构描述关联存在;◎分析和推理能力:ADL允许对其描述的体系结构进行多种不同的性能和功能上的多种推理分析;2.管道过滤器风格结构特点1使得软构件具有良好的隐蔽性和高内聚、低耦合的特点;2允许设计者将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成;3支持软件重用;4系统维护和增强系统性能简单;5允许对一些如吞吐量、死锁等属性的分析;6支持并行执行;但是,这样的系统也存在着若干不利因素;1通常导致进程成为批处理的结构;这是因为虽然过滤器可增量式地处理数据,但它们是独立的,所以设计者必须将每个过滤器看成一个完整的从输入到输出的转换;2不适合处理交互的应用;当需要增量地显示改变时,这个问题尤为严重;3因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性;4.什么是设计模式它与风格、框架有什么区别与联系设计模式是对通用设计问题的重复解决方案;软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式;软件框架是整个或部分系统的可重用设计模式比框架更加抽象框架是模式的特例化设计模式被实现成为框架后,可以极大的减轻从设计到实现的鸿沟利用了模式的框架比没有利用模式的框架更容易理解、更能被设计与实现重用通常成熟的框架包含了多种设计模式一个框架不仅可以具体实现一个模式,还可以具体的实现多个模式设计模式与风格两者为近义词,通常情况下可以互相通用风格主要是指大的,宏观的设计;模式既可宏观,又可微观;7.什么是软件危机,软件危机的具体表现有哪些软件危机:落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象;软件危机的表现:软件成本日益增长开发进度难以控制软件质量差。

软件体系结构试题最全试题+答案

软件体系结构试题最全试题+答案

1、设计模式一般用来解决什么样的问题( a)A.同一问题的不同表相 B不同问题的同一表相C.不同问题的不同表相D.以上都不是2、下列属于面向对象基本原则的是( c )A.继承B.封装C.里氏代换 D都不是3、Open-Close原则的含义是一个软件实体( a )A.应当对扩展开放,对修改关闭.B.应当对修改开放,对扩展关闭C.应当对继承开放,对修改关闭D.以上都不对4、当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用( a )模式。

A.创建型B.结构型 C行为型 D.以上都可以5、要依赖于抽象,不要依赖于具体。

即针对接口编程,不要针对实现编程,是( d ) 的表述A.开-闭原则B.接口隔离原则C.里氏代换原则D.依赖倒转原则6、依据设计模式思想,程序开发中应优先使用的是( a )关系实现复用。

A, 委派 B.继承 C创建 D.以上都不对复用方式:继承和组合聚合(组合委派)7、设计模式的两大主题是( d )A.系统的维护与开发 B 对象组合与类的继承C.系统架构与系统开发D.系统复用与系统扩展8、单子模式中,两个基本要点( a b )和单子类自己提供单例A .构造函数私有 B.唯一实例C.静态工厂方法D.以上都不对9、下列模式中,属于行为模式的是( b )A.工厂模式 B观察者 C适配器以上都是10、“不要和陌生人说话”是( d )原则的通俗表述A.接口隔离B.里氏代换C.依赖倒转D.迪米特:一个对象应对其他对象尽可能少的了解11、构造者的的退化模式是通过合并( c )角色完成退化的。

A.抽象产品 B产品 C创建者 D使用者12、单子(单例,单态)模式类图结构如下:下列论述中,关于”0..1”表述的不正确的是( d )A.1表示,一个单例类中,最多可以有一个实例.B.”0..1”表示单例类中有不多于一个的实例C.0表示单例类中可以没有任何实例D.0表示单例类可以提供其他非自身的实例13、对象适配器模式是( a )原则的典型应用。

软件体系结构(考试习题集含答案)

软件体系结构(考试习题集含答案)

1.面向对象的方法优势表达在〔ABD 〕A.简化软件开发过程B.支持软件复用C.提高软件运行效率D.改善软件结构2.用户界面设计中的三条“黄金规那么〞是〔ABC 〕A.使系统处于用户控制之中B.减少用户的记忆负担C.保持界面的一致性D.保证用户的易学性3.用户界面的分析和设计过程是迭代的,其中包括的活动是〔ABCD 〕A.用户、任务以及环境的分析和建模B.界面设计C.界面实现D.界面确认4.界面确认需要注意三个方面〔ABC 〕A.界面正确完成了用户的任务,适应用户的任务变化B.易学性和易用程度C.用户的接受程度D.用户的习惯5.用户界面分析时通常采用的信息获取方式包括〔ABCD 〕A.用户会谈B.销售人员信息采集C.市场分析D.用户支持人员信息收集6.〔C 〕把完成一个特定功能的动作序列抽象为一个过程名和参数表A.数据抽象B.动作抽象C.过程抽象D.类型抽象7.〔A〕把一个数据对象的定义抽象为一个数据类型名A.数据抽象B.动作抽象C.过程抽象D.类型抽象8.软件体系结构设计需要考虑以下〔ABCD 〕A.适用性B.结构稳定性C.可扩展性D.可复用性9.模块设计时应该考虑〔AB 〕A.模块功能独立B.模块信息的隐藏C.模块接口的简单D.模块实现简单10.一个完整的软件设计的主要活动包括有〔ABCD 〕A.体系结构设计B.界面设计C.模块/子系统设计、D.数据模型、过程/算法设计等11.模块化是指把一个复杂的问题分割成假设干个可管理的小问题后,更易于理解,模块化正是以此为依据的,在划分模块的过程中应该考虑到〔ABC 〕A.模块的可分解性、可组装型B.模块的可理解性、连续性、C.模块保护D.尽可能低分割模块,使得问题的难度降到最1.什么是软件工程?构成软件工程的要素是什么?软件工程是将系统化的、标准的、可度量的方法应用于软件的开发、运行和维护过程,即将工程化应用于软件开发和管理之中,对所选方法的研究。

软件工程的要素由方法、工具和过程组成。

软件体系结构答案

软件体系结构答案

《软件体系结构》答案一、填空题(2×18空=36分)1、(方法)、(工具)、和(过程)2、(构件)3、(CORBA(通用对象代理结构))、(EJB)、DCOM(分布式构件对象模型)4、(用户界面类、数据库类)、(核心技术类)5、(构件提交者)、(超级系统管理员)6、(属性)、(服务)、(主题)7、(ADL)8、(模型-视图-控制器)9、(公共对象请求代理)10、(面向对象设计)二、简答题(共64分)1、(10分)答:体系结构设计有两大类方法:过程驱动方法和问题列表驱动方法。

过程驱动方法包括:(1)面向对象方法,与OOA/OOD相似,但更侧重接口与交互;(2)“4+1”模型方法;(3)基于的场景的纸时迭代方法。

基于过程驱动的体系结构设计方法适用范围广,易于裁剪,具备动态特点,通用性与实践性强。

问题列表驱动方法的基本思想是枚举设计空间,并考虑设计维的相关性以此来选择体系结构的风格。

该方法适用于特定的领域,是静态的,并可以实现量化体系结构设计空间。

2、(15分)答:三个组成部分:数据库服务器、客户应用程序和网络。

服务器负责有效的管理系统的资源,其任务集中于:(1)数据库安全性的要求;(2)数据库访问并发性的控制;(3)数据库前端的客户应用程序的全局数据完整性规则;(4)数据库的备份与恢复。

客户应用程序的主要任务是:(1)提供用户与数据库交互的节目;(2)向数据库服务器提交用户请求并接收来自数据库服务器的信息;(3)利用客户应用程序对存在于客户端的数据执行应用逻辑要求。

网络通信软件的主要作用是完成数据库服务器和客户应用程序之间的数据传输。

3、(15分)答:三层C/S体系结构是将应用功能分成表示层、功能层和数据层三个部分。

(1)表示层是应用的用户接口部分,担负着用户与应用间的对话功能。

它用于检查用户从键盘等设备输入的数据,显示应用输出的数据。

一般使用图形用户界面,操作简单,易学易用。

(2)功能层相当于应用的本体,它是将具体的业务处理逻辑编入程序中。

软件体系结构考试试题库软件工程考试试题和答案

软件体系结构考试试题库软件工程考试试题和答案
答案:D
8、Kruchten在1995提出了“4+1”模型,从5个不同的视角来描述软件体系结构,其中“4”不包括的视图是()
A逻辑视图B开发视图C物理视图D场景视图
答案:D
9、下列哪个选项是描述系统的静态结构()
A.逻辑视图和开发视图
B.进程视图和物理视图
C.开发视图和物理视图
D.开发视图和进程视图
4、下列选项中,不是软件危机的原因的是:C
A、用户需求不明确
B、缺乏正确的理论指导
C、软件规模越来越小
D、软件的复杂度越来越高P2
5、不属于软件体系结构的核心模型的最基本的元素是()
A构件B连接件C配置D角色
答案:D
6、选项中不属于“4+1”试图模型的是:()
A逻辑视图
B物理视图
C连接视图
D开发视图
答案:中间层、体系结构层
23、体系结构的动态性主要分为几类:_________、_________、___________。答案:交互式动态性,结构化动态性、体系结构化动态性。
24、对动态软件体系结构的形式化描述通常有______、_______、_________三种方法。
答案:图形化方法、进程代数方法、逻辑描述方法
答案:B
29、下面哪个不属于设计模式方法分类()
A Coad的面向对象模式
B代码模式
C框架应用模式
D遗传算法
答案:D
30、一般来说,模式有以下四个基本成分:()、问题、解决方案、效果。
A.模式名称
B.时间
C.地点
D.思想
答案:A
31、软件体系结构的文档要求与软件开发项目中的其他文档是相似的,下列哪项属于体系结构文档化过程的主要输出结果()

软件体系结构(考试习题集含答案)

软件体系结构(考试习题集含答案)

1、面向对象得方法优势体现在( ABD )A.简化软件开发过程B.支持软件复用C.提高软件运行效率D.改善软件结构2.用户界面设计中得三条“黄金规则”就是( ABC )A.使系统处于用户控制之中B.减少用户得记忆负担C.保持界面得一致性D.保证用户得易学性3.用户界面得分析与设计过程就是迭代得,其中包括得活动就是( ABCD )A.用户、任务以及环境得分析与建模B.界面设计C.界面实现D.界面确认4.界面确认需要注意三个方面( ABC )A.界面正确完成了用户得任务,适应用户得任务变化B.易学性与易用程度C.用户得接受程度D.用户得习惯5.用户界面分析时通常采用得信息获取方式包括( ABCD )A.用户会谈B.销售人员信息采集C.市场分析D.用户支持人员信息收集6.( C )把完成一个特定功能得动作序列抽象为一个过程名与参数表A.数据抽象B.动作抽象C.过程抽象D.类型抽象7.( A)把一个数据对象得定义抽象为一个数据类型名A.数据抽象B.动作抽象C.过程抽象D.类型抽象8.软件体系结构设计需要考虑以下( ABCD )A.适用性B.结构稳定性C.可扩展性D.可复用性9.模块设计时应该考虑(AB )A.模块功能独立B.模块信息得隐藏C.模块接口得简单D.模块实现简单10.一个完整得软件设计得主要活动包括有( ABCD )A.体系结构设计B.界面设计C.模块/子系统设计、D.数据模型、过程/算法设计等11.模块化就是指把一个复杂得问题分割成若干个可管理得小问题后,更易于理解,模块化正就是以此为依据得,在划分模块得过程中应该考虑到( ABC )A.模块得可分解性、可组装型B.模块得可理解性、连续性、C.模块保护D.尽可能低分割模块,使得问题得难度降到最1.什么就是软件工程?构成软件工程得要素就是什么?软件工程就是将系统化得、规范得、可度量得方法应用于软件得开发、运行与维护过程,即将工程化应用于软件开发与管理之中,对所选方法得研究。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.面向对象的方法优势体现在(ABD )A.简化软件开发过程B.支持软件复用C.提高软件运行效率D.改善软件结构2.用户界面设计中的三条“黄金规则”是(ABC )A.使系统处于用户控制之中B.减少用户的记忆负担C.保持界面的一致性D.保证用户的易学性3.用户界面的分析和设计过程是迭代的,其中包括的活动是(ABCD )A.用户、任务以及环境的分析和建模B.界面设计C.界面实现D.界面确认4.界面确认需要注意三个方面(ABC )A.界面正确完成了用户的任务,适应用户的任务变化B.易学性和易用程度C.用户的接受程度D.用户的习惯5.用户界面分析时通常采用的信息获取方式包括(ABCD )A.用户会谈B.销售人员信息采集C.市场分析D.用户支持人员信息收集6.(C )把完成一个特定功能的动作序列抽象为一个过程名和参数表A.数据抽象B.动作抽象C.过程抽象D.类型抽象7.(A)把一个数据对象的定义抽象为一个数据类型名A.数据抽象B.动作抽象C.过程抽象D.类型抽象8.软件体系结构设计需要考虑以下(ABCD )A.适用性B.结构稳定性C.可扩展性D.可复用性9.模块设计时应该考虑(AB )A.模块功能独立B.模块信息的隐藏C.模块接口的简单D.模块实现简单10.一个完整的软件设计的主要活动包括有(ABCD )A.体系结构设计B.界面设计C.模块/子系统设计、D.数据模型、过程/算法设计等11.模块化是指把一个复杂的问题分割成若干个可管理的小问题后,更易于理解,模块化正是以此为依据的,在划分模块的过程中应该考虑到(ABC )A.模块的可分解性、可组装型B.模块的可理解性、连续性、C.模块保护D.尽可能低分割模块,使得问题的难度降到最1.什么是软件工程?构成软件工程的要素是什么?软件工程是将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护过程,即将工程化应用于软件开发和管理之中,对所选方法的研究。

软件工程的要素由方法、工具和过程组成。

方法支撑过程和工具,而过程和工具促进方法学的研究。

2.什么是软件生存周期?软件开发过程模型与软件生存周期之间是何关系?软件产品从形成概念开始,经过开发、使用和维护,直到最后退役的全过程叫软件生存周期。

软件开发过程模型表示软件开发中各个活动的安排方式,出来软件开发各个活动之间关系,是软件开发过程的概括,是软件工程的重要内容,其为软件管理提供里程碑和进度表,为软件开发过程提供原则和方法,其包括有以软件需求完全确定为前提的瀑布模型,以渐进式开发模型的原型和螺旋模型,以形式化开发方法为基础的变换模型。

3.叙述软件设计在软件工程中所处的位置和重要性位置:软件需求分析--------需求规格说明------软件设计------设计文档- -----------软件编码总要性:(1)、是对软件需求的直接体现。

(2)、为软件实现提供直接依据(3)、将综合考虑软件系统的各种约束条件并给出相应方案(4)、软件设计的质量将决定最终软件系统的质量。

(5)、及早发现软件设计中存在的错误将极大减少软件修复和维护所需的成本。

4.软件设计应该包含哪些要素?软件设计应该包含:目标描述、设计约束、产品描述、设计原理、开发规划、使用描述。

5.简述UML的特点和用途。

、答:为使用者提供了统一的、表达能力强大的可视化建模语言,以描述应用问题的需求模型、设计模型和设计模型。

提供对核心概念的扩展机制,用户可加入核心概念中没有的概念和符号,可为特定应用领域提出具体的概念、符号表示和约束。

提供于实现语言和支持所有的方法学,覆盖了面向对象分析和设计的相关概念和方法学。

独立于任何开发过程,但支持软件开发全过程。

提供对建模语言进行理解的形式化基础,用元模型描述基本语义,OCL描述良定义规则,自然语言描述动态语义。

增强面向对象工具之间的互操作性,便于不同系统之间的集成。

支持较高抽象层次开发所需的各种概念,如协同、框架、模式和构件等,便于系统的重用。

6.在面向对象开发方法中,对象、类、继承、聚集、多态、消息等概念分别指什么?答:对象:是现实世界中个体或事物的抽象表示,是其属性和相关操作的封装。

类:是某些对象的共同特征的表示。

继承:类之间的继承关系是现实世界中遗传关系的直接模拟,它表示类之间的内在联系以及属性和操作的共享,即子类可以沿用某些父类的特征。

聚集:除遗传关系外,现实世界中还普遍存在着部分-整体关系。

多态:指在父类及其子类中,对接口的定义形式相同,却可以对相应多种接口的实现形态。

消息:消息传递时对象与其外表世界相互关联的唯一途径。

7.UML的结构建模和行为建模有何区别?答:结构建模被称为静态建模,主要用来描述系统中包含的元素以及元素之间的关系。

结构建模中的视图可以对各个层次和阶段的软件进行刻画。

这些模型对系统的逻辑结构或物理结构进行描述,并不涉及系统的动态行为和过程。

行为建模被称为动态建模,它主要用来刻画系统中的动态行为,过程和步骤。

UML行为建模中提供的视图可以从不同侧面来描述软件系统的动态过程。

结构建模对系统中的元素及其关系进行描述,而行为建模对这些元素完成特定任务的过程进行描述,两者相互结合就能够完成描述整个系统的特性。

8.与传统开发方法相比,面向对象开发方法有何优势?(1)、简化软件开发过程(2)支持软件复用(3)改善软件结构9.简述抽象与逐步求精在软件设计中的意义。

答:软件设计的困难随着问题的规模和复杂性不断增大,抽象是管理,控制复杂性的基本策略。

使用抽象技术便于人们用“问题域”本来的概念和术语描述问题,而无须过早地转化为不熟悉的结构。

而后不断的具体化,不断地用更接近计算机域的语言描述问题;最后在最低的抽象级别上给出可直接实现的“问题解”,即程序。

10.简述模块化与信息隐藏在软件设计中的意义。

答: 模块化即把软件划分为可独立命名和访问的部件,每个部件成为一个模块。

模块化以“分治法”为依据,即将一个复杂的问题分割成若干个可管理的小问题后,更易于求解。

模块因其可分解性、可组装性、可理解性、连续性及模块保护使软件管理更简单有效。

而且一个模块技术研发失败不会影响到另一个模块的技术研发,这样就大大降低了产品整体研发的风险。

信息隐藏是指在设计和确定模块时,使得一个模块内包含的特定信息(过程或数据)对于不需要这些信息的其他模块来说,是透明的。

不仅支持模块的并行开发,而且还可以减少测试和后期维护的工作量。

此外,整个系统欲扩充功能也只需“插入”新模块,原有的多数模块无需改动,提高了系统的灵活性和可扩展性。

11.内聚度、耦合度分别指的是什么?为什么软件设计要追求高内聚、低耦合?答:内聚度是一个模块内部各成分之间关联程度的度量。

耦合度是模块之间依赖程度的度量。

高内聚,低耦合的系统具有更好的重用性,维护性,扩展性,可以更高效的完成系统的维护开发,持续的支持业务的发展,而不会成为业务发展的障碍。

12.软件设计过程中包含哪些主要活动?分别介绍这些活动的主要目标。

答:a、软件设计计划:明确设计过程的输入制品并使其处于就绪状态,定义设计过程的目标、输出制品及其验收准则,确定覆盖设计过程中各个阶段的全局性设计策略,分配设计过程相关人员职责,针对设计过程中的活动制定工作计划。

b、体系结构设计:建立软件系统的体系结构,有时也称“顶层架构”。

c、界面设计:为用户使用目标软件系统以实现其所有业务需求而提供友好的人机交互界面。

d、模块/子系统设计:确定模块的接口定义,设计内部结构。

明确协作关系。

e、过程/算法设计:对模块内部的工作和执行过程进行描述,给出有关处理的精确说明。

f、数据模型设计:确定设计模型中需要持久保存的数据条目,基于关系数据模型设计这些数据条目的组织方式,必要时还需要设计特定于本软件项目将采用的关系数据库管理系统的优化机制,以提高持久数据操作的性能。

13.为什么软件设计是一个不断迭代的过程?答:设计者不可能一次就能完成一个完整的设计,软件设计肯呢刚是一个多次反复的过程,在设计过程中,需要不断的添加设计要素和设计细节,,并对先前的设计方案进行修正。

14.哪些要素可以用来评价软件设计的质量答:1、结构良好;2、充分性;3、可行性;4、简单性;5、实用性;6、灵活性;7、健壮性;8、可移植性;9、可复用性;10、标准化15.软件设计的质量对最终软件产品和软件开发过程会产生哪些影响答:1、开发效率;2、交付时间;3、风险管理;4、资源使用;5、成本;6、人员培训;7、合法性。

16.可信软件有什么特点?列举几种在生活中常用的可信软件。

答:特点:可靠性、可靠完全性、保密安全性、可生存性、实时性。

例如:嵌入式软件系统:飞船导航软件、武器控制系统。

大型分布式系统:银行网上交易系统、空管系统。

17.容错设计的主要思想和方法答:主要思想:软件容错设计是使得软件能发现失效危险并从临失效状态恢复的软件设计技术。

方法:恢复块技术、N-版本编程。

18.什么是软件设计规格说明?它在软件开发中起何重要用途?答:软件设计规格说明:软件设计过程中体现各个活动结果的文档,是软件设计的输出。

软件设计相关的内容包括软件体系结构描述、软件设计描述和软件接口设计描述部分。

其中对所开发软件的目标、范围、约束的定义,对软件的结构、接口、数据等方面的设计作出了详细的说明。

评审后的软件设计规格说明将作为后续软件实现活动的依据。

19.软件设计评审的目标是什么?设计评审中需要关注哪些方面?答:目标:确保设计规格说明书能够实现所有的软件需求,及早发现设计中缺陷和错误,并确保设计模型已经精化到合格的软件实现工程师能够造出符合软件设计者期望的目标软件系统。

1.设计模型是否能够充分地,无遗漏地支持所有软件需求的实现。

2设计模型是否已经精华至合理的程度,可以确保合格的软件实现工程师能偶构造出符合软件设计者期望的目标软件系统。

3设计模型的质量属性,即使设计模型是否已经经过充分的优化,以确保依照设计模型构造出来的目标软件产品能够表现出良好的软件质量属性。

20.基于UML的分析与设计过程包含哪些主要活动》答:1用例分析与设计2慨念模型与顶层架构设计3用户界面设计4数据模型设计5设计精化6类设计7部署模型设计21.用例分析与设计在设计过程中起到什么作用答:用例分析与设计可以分为发现和确定用例、生成用例图、对每个用例进行具体设计和描述等几个主要步骤。

它是基于UML的软件设计过程的基础,只有建立了清晰、准确的用例模型并对用例执行过程进行了较为全面的描述,才能使后续设计活动不会出现偏差。

在为各个用例建立交互图设计模型的过程中,可以逐步发现各种系统概念层对象,它们是问题领域中存在的概念或对象,非常直观和容易理解。

这些对象为下一步建立面向对象的概念模型提供了依据,并且可以作为顶层架构设计的基础。

相关文档
最新文档