软件体系结构复习题

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

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

答案:√3、超文本组织方法与基于数据库系统的构件库组织方法不同,它基于全文检索技术。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

答案:×25、XML是W3C制定的作为Internet上数据交换和表示的标准语言,是一种允许用户定义的标记语言。

()答案:√26、WSDL是可扩展的,使得在通信时无论使用何种消息格式或网络协议,都可以对端点及其消息进行描述。

()答案:√27、SOA模型具有松散耦合、粗粒度服务、标准化接口等特征。

()答案:√28、从概念上讲,SOA有3个主要的抽象级别,分别是操作、服务和业务流程。

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

答案:X31、利用设计模式可以方便地重用成功的设计和结构。

答案:√32、ABSD方法是基于体系结构的设计方法,它描述了系统的主要设计元素及其关系。

()答案:√33、在模式目录中,每个模式描述的多少与别的模式无关。

答案:√34、软件系统的可靠性依赖于状态的执行顺序和每一个状态的可靠性()答案:√35、.基于体系结构描述的软件测试包括黑盒测试和根据路径测试。

( )答案:√36、在体系结构级进行风险评估是更有利于开发阶段的前期评估。

()答案:×37、容错体系结构风格的目的是通过一系列的容错构件修正初始系统的错误来改善系统的稳定性。

()答案:×38、ATAM评估方法主要通过理解体系结构方法来分析体系结构,在这一步,由设计师确定体系结构方法,由分析小组捕获并进行分析。

()答案:×由分析小组捕获,但不进行分析39、评估方法质量属性中安全性不包括完整性。

()答案:×40、软件体系结构的评估方法主要有调查问卷、检查表、场景、度量、比较5种()答:×调查问卷、检查表、场景、度量、比较是软件体系结构的5种评估方式,评估方法有ATAM、SAAM、ARID三种。

41、软件体系结构评估只针对一个体系结构,不可以针对一组体系结构()。

答案:×42、正式的对软件产品线的理论研究到20世纪80年代中期才出现。

()答案:×43、软件重用长期以来一直是软件工程界不断追求的目标。

()答案:√44、产品开发活动取决于产品线范围,核心资源库、产品计划和需求的输出。

()答案:√45、软件产品线的建立通常有4种方式,其划分依据有两种。

()答案:√二、填空题1、软件元素包括、、、、甚至领域知识。

答案:程序代码、测试用例、设计文档、设计过程、需求分析文档2、软件工程包括3个要素:、和。

答案:方法、工具、过程3、软件重用过程中需要重用的开发组织结构予以支持,它包括:______、_______、_________4、三组成员组成。

5、答案:构件开发组、构件应用组、协调组。

6、采用层次式软件体系结构,将产品的系统构件模型定义为4个层次,分别为:、、、。

答案:系统构件层、通用类构件层、业务构件层、表现层5、软件体系结构的模型分为5种:结构模型、框架模型、动态模型、过程模型和功能模型。

答案:结构模型,动态模型。

6、软件体系结构的名片型分为:______、框架模型、_______、_________、功能模型。

答案:结构模型、动态模型、过程模型7、根据建模的侧重点不同,可以将软件体系结构的模型分为5种:、框架模型、、过程模型和动能模型。

答案:结构模型,动态模型。

8、软件体系结构的生命周期模型主要分为需求分析阶段,建立软件体系结构阶段()和实现阶段。

答:设计阶段9、软件体系结构应建立于传统的软件开发过程的________和________阶段之间。

答案:需求分析、软件设计10、黑板系统主要由__________ 、____________ 和_________ 组成。

答案:知识源、合办数据结构、控制11、三层C/S结构风格是由_________ 、_________ 和__________ 构成的。

答案:表示层、功能层、数据层12、消息总线对消息过滤提供了________和___________两种方式。

答案:转换、阻塞13、正交软件体系结构由____和_____构成。

答案:组织层、线索的构件14、C/S体系结构服务器主要负责有效的管理系统的资源主要负责_________、_________、_________和_________。

答案:数据库安全性的要求、数据库访问并发性的控制、数据库前端的客户应用程序的全局数据完整性规则、数据库的备份与恢复15、层次系统最广泛的应用是____________.答案:分层通信协议16、软件体系结构的描述方法主要有、、基于软构件的系统描述语言和。

答案:图形表达工具、模块内连接语言、软件体系结构描述语言17、ADL是一种在底层语义模拟支持下的形式化语言。

基于底层语义的工具为体系结构的、分析、、、设计过程等提供支持。

答案:表示、演化、细化18、可重用的体系结构描述框架可以从、、和四个视点出发描述体系结构。

答案:需求视点、设计视点、实现视点、测试视点19、支持对构件之间交互的形式化和分析。

答案:Wright20、典型的ADL在充分继承和吸收传统程序设计语言的和特点的同时,还应该具有构造、抽象、重用、组合、异构和分析推理等多种能力和特性。

能力指的是ADL使得其描述的每一个系统元素都有其自己的局部结构。

答案:精确性、严格性,组合21、体系结构的动态性分为“_________ ”“_________”“_________”三类。

答案:交互式动态性、结构化动态性、体系结构动态性22、基于构件的动态体统结构模型(CBDSAM)支持运行系统的动态更新。

该模型分为三层,分别是应用层、_________和________________。

答案:中间层、体系结构层23、体系结构的动态性主要分为几类:_________、_________、___________。

答案:交互式动态性,结构化动态性、体系结构化动态性。

24、对动态软件体系结构的形式化描述通常有______、_______、_________三种方法。

答案:图形化方法、进程代数方法、逻辑描述方法25、一个完整的Web服务包括3种逻辑构件:______ 、______、_______。

答案:服务提供、服务代理、服务请求26、Web服务栈的五层标准为:发现服务层、描述层、________、________、________。

答案:消息格式层、编码格式层、传输协议层27、Web服务开发生命周期分为:________、________、________、________四个阶段。

答案:构建、部署、运行、管理。

28、OOAD、EA和BPM分别从___________层、___________层和__________层3个层次上为SOAD提供了理论支撑。

答案:基础设计、应用结构、业务组织。

29、MVC模式的中的M,V,C分别对应______、_______、_________三种单词。

答案:Model,View,Controller30、模式的问题陈述用一个强制条件_______集来表示。

答案:force31、ABSD方法取决于决定系统的体系结构驱动,所谓体系结构驱动,是指构成体系结构的______________、_____________、___________的组合。

答案:业务质量功能需求32、设计模式的基本成分包括______________、___________、___________、__________。

答案:模式名称、问题、解决方案、效果。

33、ABSD的全称是:____________________________答案:基于体系结构的软件设计34、软件体系结构的可靠性风险分析方法有__________和_____________答案:动态方法、构建依赖图(CDG)35、实现完整测试的典型方法是利用测试准则定义测试需求,进而生成测试用例.参照相关研究工作,可定义、等测试路径。

答案:构件或连接件内部消息的传递路径、构件或连接件内部端口的执行顺序路径36、构建依赖图是用于在体系结构级进行可靠性分析的模型。

合集下载

软件体系结构知识点复习

软件体系结构知识点复习

一、什么是软件系统结构软件体系结构也称为软件构架(有时简称构架),是系统的一个或多个结构,它包括:软件的组成元素(组件),这些元素(组件)的外部可见特性,以及这些元素(组件)之间的相互关系。

含义:(1)系统由一个或多个结构组成,其中任何一个结构并不能与构架等同。

(2)每个系统都有一个体系结构。

(3)软件体系结构是系统的抽象。

(4) 构架定义了软件元素以及各元素间的交互关系。

(5) 以往作为体系结构传递的线框图,事实上并等同于体系结构。

二、构架商业周期(ABC)1.构架由什么决定?构架是否由系统需求决定?×软件构架是技术、商业和社会因素共同作用的结果。

2. 构架从哪里来?(影响构架的因素)影响构架的因素主要包括:❑系统涉众(stakeholder)、主要有:管理者:成本要低,人人都得干活营销人员:特性突出、投放市场快、成本低、可与同类产品相匹敌。终端用户:行为、性能、安全性、可靠性、易用性。维护人员:可修改性强。客户:成本低、及时交付、不要频繁修改。❑开发组织・组织内对现存构架的重用・对某个基础设施进行长期的商业投资以实现某些战略目标・开发组织本身的机构也会影响构架的形成❑构架师的素质和经验构架师先前的一些经验、教育、培训以及所接触到过的成功构架模式都会影响到他们对某种构架的选择。

❑技术环境当前技术发展水平代表了某个时代的构架师的普遍素质和经验,对架构有很大的影响力。

❑其它因素其它如社会、法律、人文环境等都会对构架产生影响。

3.构架的反影响力・构架会影响开发组织的结构・构架会影响开发组织的目标・构架会影响客户对下一个系统的要求・构建系统的过程丰富了整个开发团队的经验,从而将影响设计师对后继系统的设计・一些系统会影响并实际改变软件工程的环境,也就是系统开发人员学习或实践的技术环境。

4.构架的商业周期软件构架是技术、商业和社会等诸多因素作用的结果,而软件构架的存在反过来又会影响技术、商业和社会环境,从而影响未来的软件构架。

软件系统分析与设计复习资料参考答案

软件系统分析与设计复习资料参考答案

参考答案选择题1.D2.C3.D4.C5.B6.D7.C8.B9.D10.A11.B12.A13.B14.D15.A16.B17.A18.D19.C20.A21.D22.B23.B24.D25.D26.B27.B28.A29.A30.C31.A32.B33.A34.B35.B36.A37.B38.A39.A40.C41.A42.C43.C44.D45.A46.B47.D48.C49.D50.C51.C52.A53.D54.B55.A56.A57.D58.A59.D60.A61.B62.D63.C64.A65.A66.C67.C68.A69.D70.A71.D72.A73.C74.A75.D判断改错题1.(√)2.(×)有“泳道”概念的是活动图。

3.(×)题目中描述的是CORBA。

4.(×)水平坐标表示一组对象,垂直坐标表示时间顺序。

5.(√)6.(×)UML是建模语言,不是方法论。

7.(√)8.(√)9.(×)两者没有明显分界,需要反复迭代的进行。

10.(×)OOCASE通过外部接口可以方便的调用其它工具软件。

11.(×)定义不同。

12.(√)13.(√)14.(×)完成使命的对象可以被销毁。

15.(×)由图和文字描述组成。

16.(√)17.(×)描述的是白盒复用。

18.(√)19.(F)它不能直接调用EJB构件,而是通过使用代理来调用。

20.(F)不能有嵌套的动作或递归的动作表达式。

21.(T)22.(F)需求模型也是可复用的软件制品。

23.(F)构件图主要用于建立系统的静态实现模型。

24.(F)OOCASE通过外部接口可以方便的调用其它工具软件。

25.(F)“对象+消息”的程序设计模式。

26.(F)通过频繁使用设计样式来设计更大更复杂的系统。

27.(T)28.(T)29.(T)30.(F)协作图强调对象之间的关系,而时序图强调一组对象之间错作调用的时间顺序。

uml复习题

uml复习题

《新修的同学实验报告一定要交》《新修的同学实验报告一定要交》《考试时间 16周,请班长费心通知》周,请班长费心通知》《复习》《复习》《论述》基于UML 的软件开发的一般过程答:UML 是按OO 思想进行系统建模时使用的一组表示法,它并不对采用何种OO 分析、分析、设计以及设计以及开发过程模型构成限制。

开发过程模型构成限制。

基于基于UML 的软件开发通常是以体系结构为中心,的软件开发通常是以体系结构为中心,用例驱动的迭代用例驱动的迭代和增量式开发,并结合职责分配模式进行具体设计。

开发过程可以包括计划和细化、迭代的构造和实施3大阶段。

在经过一个初步的计划和细化阶段后,进入若干迭代构造开发周期,每个周期都包含分析、设计、构造和测试步骤。

(1)计划和细化:通过各种传统的需求获取手段(调查、访谈、原型等)得出系统目标、系统功能和系统属性,系统功能和系统属性,撰写系统规格说明。

撰写系统规格说明。

撰写系统规格说明。

基于参与者和外部事件基于参与者和外部事件基于参与者和外部事件(动宾词组)(动宾词组)构建用例,以增进对领域过程和功能需求的理解《做什么》。

按照风险、业务主线及对体系结构的影响程度(系统属性)划分用例的优先级,并据此决定用例的时间调度。

对高优先用例采用扩展格式细化。

同时建立概念模型草案、系统体系结构草案。

(2)分析阶段:根据当前周期的用例描述,采用概念目录列表、非正式分析或事务模式,识别出相关概念,建立初始概念模型,根据通用关联列表和信息存储的需要,为概念模型添加关联和属性。

将用例分解为系统事件,并对应系统操作,建立系统顺序图;分析系统操作被调用后系统状态(概念)的变化,为系统操作建立契约,进一步理解系统行为《做的效果》。

(3)设计阶段:设计一个合理的体系结构,建立真实用例。

针对每个系统操作,使用操作契约和契约的后置条件以及用例描述文档作为起点,按照职责分配模式或BCE 模式为对象(来自概念模型)分配职责,通过协作图体现对象间的交互《怎么做》。

计算机系统结构复习题(附答案) (1)

计算机系统结构复习题(附答案) (1)

计算机系统结构复习题和重点(附答案)一、单项选择题1.实现汇编语言源程序变换成机器语言目标程序是由()A.编译程序解释B.编译程序翻译C.汇编程序解释D.汇编程序翻译2.系列机软件必须保证()A.向前兼容,并向上兼容B.向前兼容,并向下兼容C.向后兼容,力争向上兼容D.向后兼容,力争向下兼容3.浮点数尾数基值r m=8,尾数数值部分长6位,可表示规格化正尾数的个数是()A.56个B.63个C.64个D.84个4.在IBM370系统中,支持操作系统实现多进程共用公用区管理最有效的指令是()A.“执行”指令B.“程序调用”指令C.“比较与交换”指令D.“测试与置定”指令5.关于非专用总线三种控制方式中,下列叙述错误..的是()A.集中式定时查询,所有部件共用同一条“总线忙”线B.集中式定时查询,所有部件都用同一条“总线请求”线C.集中式独立请求,所有部件都用同一条“总线请求”线D.集中式串行链接,所有部件都用同一条“总线请求”线6.磁盘外部设备适合于连接到()A.字节多路通道B.数组多路通道或选择通道C.选择通道或字节多路通道D.数组多路通道或字节多路通道7.在Cache存储器中常用的地址映象方式是()A.全相联映象B.页表法映象C.组相联映象D.段页表映象8.在指令级高度并行的超级处理机中,下列叙述正确的是()A.超标量处理机利用资源重复,要求高速时钟机制B.超流水线处理机利用资源重复,要求高速时钟机制C.超标量处理着重开发时间并行性,要求高速时钟机制D.超流水线处理机着重开发时间并行性,要求高速时钟机制9.间接二进制n方体网络是一种()A.多级立方体网络B.多级全排列网络C.单级立方体网络D.多级混洗交换网络10.多端口存储器适合于连接A.紧耦合多处理机B.松耦合多处理机C.机数很多的处理机D.机数可变的多处理机二、填空题11.多处理机实现的是___________、___________间的并行。

系统结构复习

系统结构复习

中国地质大学(武汉)计算机学院吴湘宁计算机体系结构习题及答案第一章基础知识1.名词解释翻译解释模拟仿真透明性程序访问局部性[答案]略2. 一个经解释实现的计算机可以按功能划分为四级. 每一级为了执行一条指令需要下一级的N条指令. 若执行第一级的一条指令需要的时间为K ns, 那么执行第二、三、四级的一条指令各需要多少时间?3. 计算机系统按功能划分层次结构的好处主要体现在哪些方面?[答案] (1) 有利于理解软件, 硬件和固件在系统中的地位和作用;(2) 有利于理解各种语言的实质和实现途径;(3) 有利于推动计算机系统结构的发展;(4) 有利于理解计算机系统结构的定义.4. 什么是透明性? 对计算机系统结构, 下列哪些是透明的? 哪些是不透明的?1) 存储器的模m交叉存取; 2) 浮点数据表示; 3) I/O系统是采用通道方式还是I/O处理机方式; 4) 阵列运算部件; 5) 数据总线宽度; 6) 通道是采用结合型的还是独立型的; 7) 访问方式保护; 8) 程序性中断; 9) 串行、重叠还是流水控制方式; 10) 堆栈指令; 11) 存储器的最小编址单位; 12) Cache存储器.[答案] 一种本来是存在的事务或属性, 但从某种角度看却好像不存在, 称为透明性.对计算机系统结构来说透明的是: 1), 4), 5), 6), 9), 12)对计算机系统结构来说不透明的是:2), 3), 7), 8), 10), 11)5. 什么是计算机体系结构? 什么是计算机组成? 什么是计算机实现? 并说明三者的关系和相互影响?[答案] 计算机系统结构是计算机系统的软, 硬件分界面, 是机器语言程序员或是编译程序员所需了解的计算机属性;计算机组成是计算机系统结构的逻辑事项;计算机实现是计算机组成的物理实现.三者的关系和互相影响为:(1) 具有相同系统结构的计算机可以采用不同的组成;(2)(2) 一种计算机组成可以采用多种不同的计算机实现;(3) 计算机组成、计算机实现对计算机系统结构有着很大的影响;(4) 计算机系统结构的设计不应限制计算机组成和实现技术,应能用于高档机,也可用于低挡机;(5) 在不同时期, 计算机系统结构,、组成和实现所包含的内容会有所变化,三者之间的界线常常很模糊.6. 从机器(汇编)语言程序员角度看, 以下哪些是透明的?1) 指令地址存储器; 2) 指令缓冲器; 3) 时标发生器; 4) 条件码寄存器; 5) 乘法器; 6) 主存地址寄存器; 7) 磁盘外设; 8) 先行进位链; 10) 通用寄存器; 11) 中断字寄存器.[答案] 对机器(汇编)语言程序员来说透明的有: 2), 3), 5), 6), 8), 9)对机器(汇编)语言程序员来说不透明的有: 1), 4), 7), 10), 11)7. 假设在一台40 MHz处理机上运行200 000条指令的目标代码, 程序主要由四种类型的指令所组成. 根据程序跟踪实验结果, 各类指令的混合比和每类指令的CPI值如表1.9所示.(1) 试计算在单处理机上执行上述该程序时的平均CPI;(2) 根据(1)所得到的CPI, 计算相应的MIPS速率及程序的执行时间.[答案] (1) 2.24 CPI (2) 17.86 MPIS; 0.0112 s8. 某工作站采用时钟频率为15 MHz、处理速率为10 MIPS的处理机来执行一个程序,假定每次存储器存取为1周期延迟, 试问:(1) 此计算机的有效CPI是多少?(2) 假定将处理机的时钟频率提高到30 MHz, 但存储器子系统速率不变, 这样, 每次存储器存取需要两个时钟周期. 如果30%的指令每条只需要一次存储存取, 而另外5%的指令每条需要两次存储存取, 还假定已知混合程序的指令数不变, 并与原工作站兼容, 试求改进后的处理机性能.[答案] (1) 1.5 CPI; (2) 15.8 MPIS9.什么是并行性?它分为哪两种类型?开发计算机系统并行性的主要技术途径有哪三个?沿这些途径分别发展出什么类型的计算机?[答案]略10.实现软件移植的途径有哪些?[答案]略11.什么是Flynn分类法,按照Flynn分类法可将计算机系统分为哪几类?[答案]略第二章指令系统1. 名词解释数据类型、数据表示、规格化浮点数、Huffman编码、扩展编码、RISC[答案]略2. 某模型机有8条指令I1~I8, 它们的使用频度分别为0.3, 0.3, 0.2, 0.1, 0.05, 0.02, 0.02, 0.01.(1) 试分别用Huffman编码和平均码长最短的等长扩展码(限定为两种码长)对其操作码进行编码.(2) 分别计算Huffman编码和等长扩展码编码的平均长度.[答案] (1) 操作码的Huffman编码和2-4等长扩展码编码如下表1所示.(2) Huffman编码的平均长度为2.38位; 等长扩展码编码的平均码长为2.8位.3. 某模型机有10条指令I1~I10, 它们的使用频度分别为0.3, 0.24, 0.16, 0.12, 0.07, 0.04, 0.03,0.02, 0.01, 0.01.(1) 计算机采用等长操作码表示时的信息冗余量.(2) 要求操作码平均码长最短, 试设计操作码的编码, 并计算所设计操作码的平均长度. (3) 设计2-5扩展操作码编码,并计算平均码长.(4) 设计2-4(2/8)等长扩展码编码,并计算平均码长. [答案] (1) 采用等长操作码表示时的信息冗余量为33.5%. (2) 操作码的Huffman编码如表2所示, 此种编码的平均长度为2.7位.(3) 操作码的2-5扩展码编码如表2所示, 此种编码的平均长度为2.9位.(4) 操作码的2-4(2/4)等长扩展码编码如表2所示, 此种编码的平均长度为2.92位.4. 何谓指令格式的优化? 操作码和地址码的优化一般采用哪些方法?[答案] 指令格式的优化是指通过采用多种不同的寻址方式, 地址制, 地址形式和地址码长度以及多种指令字长, 并将它们与可变长操作码的优化表示相结合, 就可以构成冗余度尽可能少的指令字. 操作码的优化采用扩展操作码编码法. 地址码优化有以下四种方法:(1) 在指令中采用不同的寻址方式;(2)(2) 在指令中采用多地址制;(3) 同一种地址制还可以采用多种地址形式和长度, 也可以考虑利用空白处来存放直接操作数或常数等;(4) 在以上措施的基础上, 还可以进一步考虑采用多种指令字长度的指令.5. 若某机设计有如下指令格式的指令:三地址指令12种, 一地址指令254种, 设计指令的长度为16位, 每个地址码字段的位数均为4位. 若操作码的编码采用扩展操作码, 问二地址指令最多可以设计多少种? [答案] 二地址指令最多可以设计48种.6. 一台模型机共有九条指令I1~I9, 各指令的使用频度分别为0.3,0.2,0.2,0.1,0.08,0.6,0.03, 0.02, 0.01. 该模型机有8位和16位两种指令字长. 8位字长指令为寄存器----寄存器(R--R)二地址类型, 16位字长指令为寄存器----存储器(R--M)二地址变址寻址类型.(1) 试设计有两种码长的扩展操作码, 使其平均码长最短, 并计算此种编码的平均码长. (2) 在(1)的基础上, 该机允许使用多少个可编址的通用寄存器?(3) 若采用通用寄存器作为变址寄存器, 试设计该机的两种指令格式, 并标出各字段的位数.(4) 计算变址寻址的偏移地址范围.[答案] (1) 操作码的2-5扩展码编码如表3所示, 此种编码的平均长度位2.9位.2) 在(1)的基础上, 该机允许使用8个可编址的通用寄存器.(3) 该机的两种指令格式及各字段的位数如下:R-R型: 操作码OP (2位) | 源寄存器RS (3位) | 目的寄存器Rd (3位)R-M型: 操作码OP (5位) | 源寄存器RS (3位) | 变址寄存器RX (3位) | 偏移地址 (5位)(4) 变址寻址的偏移地址范围为-16~+15.7. 简述CISC的特点.[答案] CISC的特点如下:(1) 庞大的指令系统;(2) 采用了可变长度的指令格式;(3) 指令使用的寻址方式繁多;(4) CISC指令系统中包括一些用于特殊用途的指令, 各种指令的使用频度相当悬殊.8. 从指令格式, 寻址方式以及平均CPI三个方面, 比较经典CISC和纯RISC体系结构.[答案] 略9.简述RISC设计的一般原则。

软件工程复习题及参考答案

软件工程复习题及参考答案

软件工程课程复习资料一、单项选择题:1.下面哪些UML图描述系统行为A.用例图B.类图C.对象图2.属于概要设计活动的是A.软件结构设计B.数据结构设计C.算法设计3.属行为型设计模式的是A.组合模式B.工厂方法模式C.观察者模式4.下列说法正确的是A.UML 是软件开发方法B.UML是系统描述语言C.UML是软件开发过程5.根据程序流程图划分的模块通常是A.信息内聚的模块B.过程内聚的模块C.逻辑内聚的模块6.如果某程序中的比较个数是m,则其 McCabe环形复杂度为A.m-1B.mC.m+17.按ISO9000-3的说明,下列属软件配置项的是A.软件开发方法B.软件开发组织管理制度C.软件开发合同8.软件测试的目的是A.证明软件无错B.发现软件中的所有错误C.尽可能发现软件系统中的错误9.软件重构关注的是A.软件体系结构B.模块细节C.软件性能10.软件项目开发计划的内容有A.数据分析B.风险分析C.功能分析11.在UML的类图中,描述整体与部分关系的是A.泛化关系B.聚合关系C.依赖关系12.软件过程能力成熟度模型CMM用以评价A.软件过程能力B.组织能力C.学习能力13.因计算机硬件和软件环境的变化而作出的修改软件的过程称为A.完善性维护B.改正性维护C.适应性维护14.对项目软件而言,软件功能需求信息主要由谁提供A.软件用户B.软件开发人员C.软件项目管理人员15.IDEF0 图反映不出A.系统做什么B.系统功能由谁做C.系统如何做16.原型模型是一种什么开发过程模型A.自顶向上B.由外至内C.增量式17.系统流程图描述A.物理系统B.逻辑系统C.软件体系结构18.需求规格说明书的内容不应该包括A.软件确认准则B.软件的性能描述C.算法过程的详细描述19.适合需求模糊或需求不确定系统开发的软件开发模型是A.瀑布模型B.RAD 模型C.原型模型20.UML 图中描述系统结构的是A.组件图B.顺序图C.状态图21.面向对象方法是一种什么软件开发方法A.层次化B.迭代增量式C.逐步求精22.不可以用来衡量软件可维护性的是A.可靠性B.可用性C.可行性23.系统分析员在需求分析最后负责编写A.用户手册B.概要设计说明书C.可行性研究报告24.为了提高软件的可靠性、可维护性等而对软件的修改称为A.改正性维护B.适应性维护C.预防性维护25.在结构化方法中,为使需求改变对软件影响较小,应该使软件结构A.与问题结构对应B.与问题结构独立C.与用户界面对应26.单元测试的计划应该在什么阶段完成A.需求分析B.概要设计C.详细设计27.下列属面向对象软件开发方法的是A.LCP 方法B.OMT 方法C.IDEF0 方法28.强调信息隐藏的软件工程设计方法是A.Jackson 方法B.Parnas 方法C.SA/SD 方法29.描述系统动态行为的模型是A.包图B.软件结构图C.状态图30.考虑输入条件组合的测试用例设计方法是A.等价分类法B.语句覆盖法C.因果图法31.下列能减少支援性维护活动的是A.利用软件包B.进行配置管理C.对用户进行适当培训32.只支持单重继承的程序设计语言是A.C++B.DelphiC.C33.IDEF0 图的顶层图是A.A0 图B.A-0 图C.A-1图34.在UML的用例图中,扩展关系是一种A.泛化关系B.依赖关系C.关联关系35.独立测试小组开始介入测试是在A.模块测试阶段B.集成测试阶段C.确认测试阶段36.在成本估计中容易低估局部问题的方法是A.基于经验模型的估计B.自底向上估计C.自顶向下估计37.在IDEF1X图中,如果子实体与父实体存在联系,则子实体将继承父实体的A.全部属性B.主关键字属性C.非主关键字属性38.结构化分析方法使用的工具是A.数据流图B.类图C.软件结构图39.白盒测试设计用例的方法是A.等价分类法B.基本路径覆盖法C.因果图法40.在衡量软件质量时,最重要的标准是A.可维护性好B.可用性好C.满足用户功能需求41.瀑布模型是一种A.演化模型B.顺序模型C.增量模型42.模块的独立程度可以由什么定性标准度量A.耦合度B.复杂度C.可靠性43.以下选项中,不属于对象的特点有A.继承B.多态C.封闭44.面向数据结构的设计方法有A.Parnas 方法B.Jackson 方法C.IDEF0 方法45.与UML配合最好的软件开发方法是A.RUP 方法B.Coad/Yourdon方法C.IDEF4方法二、填空题:1.统一建模语言UML提供了两种描述整体/部分关系的方法,分别是和 ;2.软件是计算机程序、及的完整集合,将其统称为软件配置,这些项称为软件配置项;通过正式复审的软件配置项称为 ,只有通过正式的变化控制过程才能改变它;3.纯收入是指在整个生存周期之内的与投资之差;4.瀑布模型是以驱动的软件生存周期模型,适合需求明确的软件系统开发;5.在单元测试期间,应该为被测模块编写相应的测试软件,一般地模块接收测试数据,并把数据传给被测模块,而模块则模拟实际模块完成少量数据处理;6.IDEF0方法用严格的自顶向下、逐层分解的方式进行系统的功能描述,其顶层图将图在建模范围内分解成个主要部分得到;7.如果一个模块完成多个逻辑上相近或相关的功能,并且每次调用只选择该模块中的一个功能执行,则称此模块为内聚的模块;8.程序静态分析的对象是 ;常生成各种引用表,如列出各模块中出现的全部标号;9.在数据流图中,每个加工至少有一个和一个 ;10.两个小组独立地测试同一个程序,第一组发现25个错误,第二组发现30个错误,在两个小组发现的错误中有15个是共同的,那么可以估计程序中的错误总数是 ;11.设E为程序图G中边的总数; N 为程序图中结点的总数,则该程序图的环形复杂度为 ;12.汽车有一个发动机;若用UML描述汽车和发动机之间的关系,则它们之间是_____关系;13.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略,即策略和策略;14.在基本路径测试中,以详细设计为基础,导出控制流程图的拓扑结构: 程序图,在计算了程序图的之后,确定只包含独立路径的基本路径图,其中独立路径是包括一组的一条路径;从程序图来看,一条独立路径是至少包含有一条在其他独立路径中未有过的边的路径;15.在多层次的结构图中,其模块结构的层次数称为结构图的 ;结构图中同一层模块的最大模块数称为结构图的 ;16.耦合性是指两个模块之间的关系,模块之间的联系越复杂,每个模块的独立性就 ;17.可行性研究实质上是进行了一次过程;18.需求分析的任务是 ;19.NS图的主要优点是它强制设计人员使用技术,从而可保证软件设计的质量;20.结构型模式涉及如何组合类和对象,从而构成更大的对象,一是采用来组合接口或实现形成更大的结构;另一种方式通过方式来形成;21.为了便于对照检查,测试用例应由和预期的两部分组成;22.软件开发时,一个错误发现得越晚,为改正它所付出的代价就 ;23.在UML的用例图中,根据参与者与用例关系的不同,参与者可分为和次要参与者,参与者之间的关系只有关系;24.评价软件质量可以从三个方面进行,即产品或中间产品、和项目;25.软件配置管理是一组用于在计算机软件的整个生存周期内管理的活动;26.通过抽象,可以确定组成软件的 ;通过信息隐蔽,可以定义和实施对模块的过程细节和局部数据结构的 ;27.UML表示法的基础是 ,它描述建模元素的语义;28.条件覆盖是指设计足够的测试用例,使得至少出现一次;29.面向数据流图的结构化分析方法是根据的原则,按照系统中数据处理的流程,用数据图来建立系统的模型;30.评估软件企业的质量管理有两种方法,一种是按照认证,另外一种是按照CMM认证;31.风险估计从两个方面来度量,一是估计 ,二是估计与风险相关的问题出现后将会带来的损失;三、名词解释:1.集成测试2.设计模式3.信息隐藏4.用例5.结构化方法6.MVC四、判断题:1.测试计划、测试用例和出错统计等一般不用长期保存;2.在面向对象方法中,需求分析和设计没有差别;3.应用设计模式使得软件灵活,可重用性提高,应该尽量多使用;4.UML 是一种建模语言,可以被任何面向对象方法使用;5.任何系统都需要对数据进行处理,因而数据流图可描述任何系统;6.软件开发就是编写程序代码;7.面向对象软件开发最适合采用迭代、增量式的开发模型;8.设计模式是一种可以重用的面向对象软件设计方案;9.软件测试就是检查程序是否正确;10.软件项目计划在可行性研究阶段就已定稿;11.软件工程认为软件设计的最终目标是要取得最佳方案;12.只要对软件进行严格的测试,就能发现软件中的所有错误;13.初级技术人员在编码阶段参与软件项目的程度在各类人员中最高;14.单元测试常常在编码阶段进行;15.CMM 描述和分析了软件过程能力的发展与改进的程度;16.为了加快开发速度,可以一边写程序,一边设计文档;17.没有发现任何错误的测试是无效的测试;18.软件结构图中不能有控制信息流动;19.单元测试常常由独立的测试小组进行;20.用例建模只能用于面向对象软件系统的开发;21.数据流建模方法是一种自顶向下的需求分析方法;22.为了减少程序的长度,最好不要在程序中增加注释;五、简答题:1.在需求分析和设计阶段建立原型的好处有哪些2.什么是模块的扇入和扇出3.UML的特点是什么4.层次图和层次方框图有何区别5.软件测试对象应包括哪些内容6.试简要叙述文档在软件工程中的作用;7.为何螺旋模型主要适合开发人员和用户为同一个组织机构成员的软件项目的开发8.软件测试为何需要尽早和不断地进行9.简要说明如何实现MVC;10.试给出一种开源软件框架,并简要说明开源软件存在的问题;11.IDEF0方法有什么特点12.快速原型模型有几种各有何特点六、综合题:1.某网络学院决定开发一个管理所有学生和教师信息的交互式网络系统,该系统提供如下服务:1浏览学生信息:网络学院的任何人员,包括学生和老师,均可以浏览学院任何学生的信息,包括姓名、学号和专业名称;2浏览教师信息:网络学院的任何人,包括学生和老师,均可以浏览学院任何教师的信息,包括姓名、工号和职称;3登录:网络学院给学院每个人一个账号;拥有授权帐号的学生和老师,可以使用系统提供的页面设置个人密码,并使用该账号和密码向系统注册;4修改个人信息:学生或老师向系统注册后,可以发送电子邮件或使用系统提供的页面,对个人信息进行修改;5删除个人信息:只有网络学院的管理人员才能删除不再是学院学生或老师的人员的有关信息;试问哪些是参与者哪些是用例并用UML的用例图描述系统行为;2.试据下述伪代码描述的模块,改用NS图描述;BeginabDo Until x6If xl thenfIf x4 thenDo Until x5iEnd UntilElseghEnd ifElseSelect Case x2Case 1:Do While x3cEnd WhileCase 2:dCase 3:eEnd SelectEnd ifEnd UntilEnd3.某五星级宾馆共有H间客房;每间客房的房间号、房间等级、床位数以及占用状态分别存放在数组ROOM、RANK、NBED和STATUS中;房间等级用整数表示;房间状态有:空闲0表示和占用1表示;客房以房间为单位出租;试设计一个算法,依据散客的要求预定房间,要求输入为:人数M,房间等级要求RR为0表示任意等级均可;输出为:可供选择的房间号;要求用程序流程图描述算法;4.某医院打算开发一个以计算机为中心的患者监护系统,以解决医院人手不够和对危重病人的及时监护;该系统应能做到以下几点:随时接受每个病人的生理信号;定时记录病人情况形成患者日志;当病人生理信号超出医生规定的安全范围时向值班护士发告警信息;此外,护士在需要时,还可要求系统印出指定病人的病情报告;试椐此叙述绘出对应的DFD图;5.试采用设计模式描述算术表达式不含圆括号的设计方案;算术表达式是由加、减、乘、除和操作数构成的表达式,操作数假定为实数;6.请根据如下程序流程图设计该程序段的判定覆盖测试用例,其中输入为A,B,X,输出为X;参考答案一、单项选择题:1.A2.A3.C4.B5.B6.C7.C8.C9.B 10.B 11.B 12.A 13.C 14.A 15.C 16.B 17.A 18.C 19.C 20.A 21.B 22.C 23.A 24.C 25.A 26.C 27.B 28.B 29.C 30.C31.C 32.B 33.A 34.B 35.C 36.C 37.B 38.A 39.B 40.C 41.B 42.A 43.C 44.B 45.A二、填空题:1.聚集组合2.描述计算机程序的文档数据基线3.累计经济效益折合成现在值4.文档5.驱动模块桩模块6.A-0 3-67.逻辑 8.源程序标号交叉引用表9.输入流输出流 10.5011.E – N + 2 12.聚合13.深度优先广度优先 14.环形复杂性以前没有处理的语句或条件15.深度宽度 16.依赖越低17.大大压缩简化了的系统分析和设计过程 18.确定系统必须完成哪些工作19.结构化 20.继承对象组合21.输入数据预期输出结果 22.越大23.主要参与者泛化 24.过程25.变化 26.过程实体存取限制27.UML 元模型 28.判定表达式中每个条件的各种可能的值29.分解与抽象功能 30.ISO900131.风险发生的可能性三、名词解释:1.集成测试也称组装测试或联调;是指在单元测试的基础上,将所有模块按照概要设计要求组装成一个完整的系统而进行的测试;模块组装的方式有两种:渐增式和非渐增式;2.设计模式是普通面向对象设计问题的解决方案,这类问题以一组交互类的形式出现,用户根据需要定制这些交互类以形成专门的设计;所有设计模式均可以从四个方面加以描述:模式名称、问题描述、解决方案和效果;3.信息隐藏是指在模块设计时,使得一个模块内包含的信息过程或数据,对于不需要这些信息的其他模块来说是不能访问的;这样,改变模块的内部过程和数据的设计不会影响到其它模块;4.用例是参与者为达到某个目的而与系统进行的一系列交互,执行结果将为参与者提供可度量的价值;从参与者的角度来看,用例应该是一个完整的任务,在一个相对较短的时间内完成;5.结构化方法是一种传统的软件开发方法,其总的指导思想是自顶向下、初步求精、单入口、单出口,其基本原则是抽象和功能分解;6.MVC即模型、视图、控制器;其中,模型是应用对象,其包含一些数据值,维护数据并提供数据的访问方法;视图显示模型的部分或说有数据,多个视图可以以不同的方式来显示模型中数据;控制器处理用户输入事件;四、判断题:1.×2.×3.×4.√5.√6.×7.√8.√9.× 10.× 11.× 12.× 13.√ 14.√ 15.√16.× 17.√ 18.× 19.× 20.× 21.√ 22.×五、简答题:1.在需求分析和设计阶段建立原型的好处有:1增进开发人员和用户对系统需求的一致理解,明确软件需求,尤其是功能含糊的需求;2原型提供了一种有力的学习手段,能够使用户尽早接触系统;3原型可以用来识别或化解风险;4原型有的可以原封不动地成为产品,有的略加修改就可以成为最终系统的一个组成部分,这样有利于建成最终系统;2.扇入则定义为一个模块被调用或控制的模块个数;扇出表示一个模块直接调用或控制的其他模块数目;3.UML的特点是:1统一了面向对象方法的有关概念和描述方法;2表达能力强,能对各种并发分布式系统进行建模,且UML还提供了扩展机制;3UML专注于一种标准的建模语言,而不是一个开发过程;4.层次图主要用来描绘软件的层次结构,矩形框代表一个模块,矩形框之间的连线表示模块之间的调用关系,常与IPO图一起形成HIPO图;层次方框图主要描述系统的组成关系,一般自用域需求分析;5.软件测试并不等于程序代码测试,其应该贯穿于软件定义与开发的整个期间;因此,需求分析、概要设计以及程序编码等各阶段所得的文档,包括需求规格说明、概要设计说明、详细设计规格说明以及源程序代码都应成为软件测试的对象;6.在软件工程中,文档的作用是:1提高软件开发过程的能见度;2记录开发过程的有关信息便于使用与维护;3作为开发人员阶段工作成果和结束标志;4提高开发效率;5提供软件运行、维护和培训有关资料;6便于用户了解软件功能、性能;7.因为如果开发人员和用户属于不同的组织机构,则一般在正式的软件开发之前均需要签订合同,所有的风险分析均必须在签订合同之前完成;但螺旋模型需要在软件开发的每一个阶段都进行风险分析,当重要风险不能解决时,项目应该终止;由此螺旋模型可能因为风险使得合同在完成之前就终止,从而导致法律诉讼;故螺旋模型不适合开发人员和用户属于不同组织机构的情况;8.软件测试不应仅仅作为一个独立的软件开发阶段,而应贯穿到软件开发的各个阶段中;通过各阶段的评审,在早期把错误解决,以减少错误放大效应,这样不仅可以提高软件质量,而且也是降低软件成本的一个重要措施;由此,软件测试应该尽早和不断地进行;9.MVC是Model-View-Controller的简写;"Model" 代表的是应用的业务逻辑通过JavaBean,EJB组件实现, "View" 是应用的表示层由JSP页面产生,"Controller" 是提供应用的处理过程控制一般是一个Servlet,通过MVC把应用逻辑,处理过程和显示逻辑分成不同的组件实现;10.Struts是采用Java Servlet/JavaServer Pages技术,开发Web应用程序的开源应用框架; Struts框架主要有如下功能:1包含一个controller servlet,能将用户的请求发送到相应的Action对象; 2JSP 自由tag库,并且在controller servlet中提供关联支持,帮助开发人员创建交互式表单应用;3提供了一系列实用对象,如XML处理、通过Java reflection APIs自动处理JavaBeans属性、国际化的提示和消息等;开源软件存在的主要问题有:1技术服务支持较少;2版本控制困难;3性能不够稳定;4文档不全,等等;11.IDEF0方法的特点是:1采用方框和箭头等简单的图形符号描述系统的活动和数据流,描述活动所受到的约束条件及实现机制,清楚地反映了系统的功能;2采用严格的自顶向下、逐层分解的方式建立系统功能模型;顶层确定系统范围,采用抽象原则,然后有控制的逐步展开有关活动的细节,符合SA方法的分析策略;同时,IDEF0规定每张图至少有3个、最多有6个方框,上界6保证采用层次性描述复杂问题的可理解性,下界3保证分解有意义;12.根据原型的不同作用,有三类原型模型:⑴探索型原型;这种类型的原型模型是把原型用于开发的需求分析阶段,目的是要弄清用户的需求,确定所期望的特性,并探索各种方案的可行性;它主要针对开发目标模糊,用户与开发着对项目都缺乏经验的情况,通过对原型的开发来明确用户的需求;⑵实验型原型;这种原型主要用于设计阶段,考核实现方案是否合适,能否实现,对于一个大型系统,若对设计方案心中没有把握时,可通过这种原型来证实设计方案的正确性;⑶演化型原型;这种原型主要用于及早向用户提交一个原型系统,该原型系统或者包含系统的框或者包含系统的主要功能;在得到用户的认可后,将原型系统不断扩充演变为最终的软件系统,它将原型的思路扩展到软件开发的全过程;六、综合题:1. System 网络学院人员管理人员教师学生登录修改个人信息浏览学生信息浏览教师信息删除个人信息2.3.4.5.6.1选择测试路径:Ⅰ:a→ b → d 判定A>1∨B=0为假;判定A=2∧X>1为假Ⅱ:a→ c → e 判定A>1∨B=0为真;判定A=2∧X>1为真2选择测试用例Ⅰ:输入A=1 B=1 X=1 预期输出 X=1Ⅱ:输入A=2 B=0 X=4 预期输出 X=4。

软考架构师2023题

软考架构师2023题
1. 在软件架构设计中,高内聚低耦合是哪个设计原则的体现?
A. 模块化原则
B. 信息隐藏原则
C. 单一职责原则
D. 开放封闭原则
2. 软件架构中的哪种视图类型关注系统的功能分解和组织?
A. 逻辑视图
B. 开发视图
C. 运行时视图
D. 物理视图
3. 在软件架构设计中,使用哪种工具可以生成代码框架?
A. UML建模工具
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. 装饰器模式。

【软件体系结构】 复习

第一章1. 体系结构发现、演化、重用体系结构发现解决如何从已经存在的系统中提取软件的体系结构,属于逆向工程范畴。

由于系统需求、技术、环境、分布等因素的变化而最终导致软件体系结构的变动,称之为软件体系结构演化。

体系结构重用属于设计重用,比代码重用更抽象。

由于软件体系结构是系统的高层抽象,反映了系统的主要组成元素及其交互关系,因而较算法更稳定,更适合于重用。

2.基于软件体系结构的软件开发方法:问题定义—>软件需求—>软件体系结构—>软件设计—>软件实现3.评价软件体系结构的方法权衡分析方法(ATAM方法),软件体系结构分析方法(SAAM方法),中间设计的积极评审(ARID方法)第二章1. 建模结构模型:研究结构模型的核心是体系结构描述语言。

以体系结构的构件,连接件和其他概念来刻画结构。

并力图通过结构来反映系统的重要语义内容。

框架模型:与结构模型类似,但不太侧重细节,而侧重于整体结构。

动态模型:是对结构和框架模型的补充,研究系统大颗粒的行为性质。

过程模型:研究构造系统的步骤和过程,结构是遵循某些过程脚本的结果。

功能模型:认为体系结构是由一组功能构件按层次组成,下层向上层提供服务。

功能模型可以看作是一种特殊的框架模型。

4+1视图模型:逻辑视图、进程视图、物理视图、开发视图和场景视图逻辑视图主要支持系统的功能需求,即系统提供给最终用户的服务。

在逻辑视图中,系统分解成一系列的功能抽象,这些抽象主要来自问题领域。

这种分解不但可以用来进行功能分析,而且可用作标识在整个系统的各个不同部分的通用机制和设计元素。

在面向对象技术中,通过抽象、封装和继承,可以用对象模型来代表逻辑视图,用类图来描述逻辑视图开发视图通过系统输入输出关系的模型图和子系统图来描述。

进程视图侧重于系统的运行特性,主要关注一些非功能性的需求。

物理视图主要考虑如何把软件映射到硬件上。

逻辑视图和开发视图描述系统的静态结构,而进程视图和物理视图描述系统的动态结构。

软件体系结构-复习题

《软件体系结构》习题一、单选题第一章概述1、软件开发模型大体上可以分为3种类型。

第1种是以软件需求完全确定为前提的;第2种是在软件开发初期阶段只能提供基本需求时采用的;第3种是以形式化为基础的变换模型。

A.协同模型B.瀑布模型C.变换模型D.迭代式模型2、根据《信息技术软件生存周期过程》标准,企业为实现ERP系统而准备招标书的活动属于生存周期基本过程中的过程,与该活动属于同一过程的活动还有。

A.总体规划B.系统实现C.获取D.供应A.启动B.准备投标C.系统需求分析D.项目管理3、螺旋模型是一种演进式的软件过程模型,结合了原型开发方法的系统性和瀑布模型可控性特点。

它有两个显著特点,一是采用的方式,逐步加深系统定义和实现的深度,降低风险;二是确定一系列,确保项目开发过程中的相关利益者都支持可行的和令人满意的系统解决方案。

A.逐步交付B.顺序C.循环D.增量A.实现方案B.设计方案C.关键点D.里程碑4、极限编程是一种重要的敏捷开发方法,包括策划、设计、编码和测试4个框架活动的规则和实践。

下面关于极限编程的叙述,错误的是。

A.极限编程中使用的重要技术是重构,既包括设计技术的重构,也包括构建技术的重构B.极限编程提倡在基本设计完成后立即进行编码实现,并进行测试C.极限编程活动中的关键概念之一是“结对编程”,推荐两个人面对同一台计算机共同开发代码D.极限编程过程中建立的单元测试应当使用一个可以自动实施的框架,支持代码修改后即时的回归测试策略5、把整个软件开发流程分成多个阶段,每一个阶段都由目标设定、风险分析、开发和有效性验证以及评审构成。

A.原型模型B.瀑布模型C.螺旋模型D.V模型6、某企业使用了某厂商的软件产品,随后该厂商又推出了这种产品的新版本。

该企业信息中心正在考虑是否需要升级该软件。

信息中心未做出立即更新软件版本的决定,最可能的原因是。

A.需要等待用户部门做出支付软件版本升级费用的预算B.用户部门还没有要求软件版本升级C.虽然新版软件在社会上已普遍使用,但信息中心还是担心存在潜在问题D.新版软件与其他用户部门正在使用的软件不兼容7、某小型软件公司欲开发一个基于Web的考勤管理系统,客户对系统的基本功能、表现形式等要求并不明确。

UML复习题+答案

1.用例的extend和include之间的区别是什么Extend指通过附件行为获取其他用例来扩展当前用例。

如果初始迭代实线的用例功能,在后续迭代有所改进,那么就存在用例扩展关系。

Include指一个用例功能包含在另一个用例功能之内。

当另一个用例要求一个用例的功能时,那么就存在用例包含关系。

2.关联中的组合和聚合之间的区别是什么聚合关系反映了一个对象是另一个对象的一部分,或者说表明了一个对象是由若干个其他对象组成的。

组合关系描述部分对象依赖于整体对象,这种依赖关系通过如下两种方式表现出来:首先,在任一给定时刻,一个部分对象只能属于一个组合对象;其次,当一个组合对象被撤销时,所有依赖于这个组合对象的部分对象都将同时被撤销。

3.抽象类和接口之间的区别是什么接口是您能实现多继承,因为类能够实线多个接口。

但是,抽象类不支持多继承。

一个类无法继承多个抽象类。

抽象类包含属性和方法,这些属性和方法可以是public、private或protected。

接口只包含方法。

抽象类可提供部分方法的定义,但是接口不提供任何定义。

抽象类用于同一包中,而接口则可以在多个包中实现。

4.静态建模和动态建模之间的区别是什么静态建模表示软件系统的静态或结构成分,也称为结构建模;它包含类和对象关系图;它有助于描绘系统成分之间的关系和依赖性。

动态建模表示软件系统静态成分的行为,也成为行为建模;它包含交互、活动和状态关系图;它有助于表达系统在一段时间内的行为并对其建模。

5.UML的主要包括的3种构造成分UML主要包括三个基本构造块:事物(Things)、关系(Relationships)和图(Diagrams)。

事物是是实体抽象化的最终结果,是模型中的基本成员,UML中包含结构事物、行为事物、分组事物和注释事物。

关系是将事物联系在一起的方式,UML中定义了四种关系:依赖、关联、泛化、实现。

图是事物集合的分类,UML中包含多种图:类图、对象图、包图、组件图、部署图、用例图、顺序图、协作图、状态图、活动图。

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