软件体系结构复习题及答案

合集下载

UML考试题及答案

UML考试题及答案

UML考试题及答案《UML与面向对象方法学》复习题二、单选题1.(A)不是UML体系的组成部分。

A.应用领域B.规则C.基本构造块D.公共机制2.在UML中,有四种事物,下面哪个不是(B)。

A.结构事物B.静态事物C.分组事物D.注释事物3.以下(C)不是RUP中的优秀方法。

A.迭代的开发软件B.不断的验证软件质量C.配置管理与变更管理D.支持正向与逆向工程4.下面(D)属于UML中的动态视图。

A.类图B.用例图C.对象图D.状态图5.在UML中,()把活动图中的活动划分为若干组,并将划分的组指定给对象,这些对象必须履行该组所包括的活动,它能够明确地表示哪些活动是由哪些对象完成的。

AA.泳道B.同步条C.活动D.组合活动6.用例之间有几种不同的关系,下列哪个不是他们之间可能的关系()。

BA.include B.connect C.generalization D.extend7.event表示对一个在时间和空间上占据一定位置的有意义的事情的规格说明,下面哪个不是事件的类型()。

CA.信号B.调用事件C.源事件D.时间事件8.通常对象有很多属性,但对于外部对象来说某些属性应该不能被直接访问,下面哪个不是UML中的类成员访问限定性()。

DA.public B.protected C.private D.friendly9.在UML中,类之间的关系有一种关系称为关联,其中多重性用来描述类之间的对应关系,下面哪个不是其中之一()。

AA.*....*B.0....*C.1....*D.0.(1)10.关于包的描述,不正确的是()。

BA.和其他建模元素一样,每个包必须有一个区别于其他包的名字B.export使一个包中的元素可以单向访问另一个包中的元素C.包的可见性分为public、protected、privateD.包中可以包含其他元素,比如类、接口、组件、用例等等11.Use Case用来描述系统在事件做出响应时所采取的行动。

《软件工程》11套考试复习练习试题、作业题[含答案解析]

《软件工程》11套考试复习练习试题、作业题[含答案解析]

作业1:1. 软件是计算机系统中与硬件相互依存的另一部分,它是包括( A )、( B )及( C )的完整集合。

其中,( A )是按事先设计的功能和性能要求执行的指令序列。

( B )是使程序能够正确操纵信息的数据结构。

( C )是与程序开发、维护和使用有关的图文材料。

供选择的答案:A~C. ①软件②程序③代码④硬件⑤文档⑥外设⑦数据⑧图表2. 开发软件时对提高软件开发人员工作效率至关重要的是( A )。

软件工程中描述生存周期的瀑布模型一般包括计划、( B )、设计、编码、测试、维护等几个阶段,其中设计阶段在管理上又可以依次分成( C )和( D )两步。

供选择的答案:A.①程序开发环境②操作系统的资源管理功能③程序人员数量④计算机的并行处理能力B.①需求分析②需求调查③可行性分析④问题定义C、D.①方案设计②代码设计③概要设计④数据设计⑤运行设计⑥详细设计⑦故障处理设计⑧软件体系结构设计3. 从供选择的答案中选出适当字句填入下列关于软件发展过程的叙述中的( )内。

有人将软件的发展过程划分为4个阶段:第一阶段(1950~1950年代末)称为“程序设计的原始时期”,这时既没有( A ),也没有( B ),程序员只能用机器指令编写程序。

第二阶段(1950年代末~1960年代末)称为“基本软件期”。

出现了( A ),并逐渐普及。

随着( B )的发展,编译技术也有较大的发展。

第三阶段(1960年代末~1970年代中期)称为“程序设计方法时代”。

这一时期,与硬件费用下降相反,软件开发费急剧上升。

人们提出了( C )和( D )等程序设计方法,设法降低软件的开发费用。

第四阶段(1970年代中期~现在)称为“软件工程时期”。

软件开发技术不再仅仅是程序设计技术,而是包括了与软件开发的各个阶段,如( E )、( F )、编码、单元测试、综合测试、( G )及其整体有关的各种管理技术。

供选择的答案:A ~ D:①汇编语言②操作系统③虚拟存储器概念④高级语言⑤结构式程序设计⑥数据库概念⑦固件⑧模块化程序设计E ~ G:①使用和维护②兼容性的确认③完整性的确认④设计⑤需求定义⑥图象处理4. 软件工程过程有哪几个基本过程活动?试说明之。

软件体系结构与设计模式期末复习

软件体系结构与设计模式期末复习

体系结构期末复习一、选择题(一)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. 应当对扩展开放,对修改关闭。

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

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

参考答案选择题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)协作图强调对象之间的关系,而时序图强调一组对象之间错作调用的时间顺序。

计算机系统结构复习题(附答案) (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、在需求分析过程中,分析员要从用户那里解决的最重要的问题是给该软件提供哪些信息。

错3、需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据。

错4、建立用例模型的步骤包括确定角色、确定用例和绘制用例图。

错5、数据流图建立系统的功能模型,它由数据流、加工和数据存贮组成。

错6、软件配置管理是一组标识、组织和控制修改源程序的活动. 错7、UML是一种直观化、明确化、构建和文档化软件产物的通用语言。

错8、好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。

对9、边界值分析方法是取输入/输出等价类的边界值作为测试用例。

对10、面向对象的分析是面向计算机系统建立软件系统的对象模型.错11、(D)是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。

A 软件过程B 软件测试C 软件生存周期D 软件工程12、ISO9000是由ISO/TC176制定的关于(B)和质量保证的国际标准。

A 质量控制B 质量管理C 质量策划D 质量改进13、CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级.除第1级外,每个等级都包含了实现该成熟度等级目标的若干(B).A 关键实践B 关键过程域C 软件过程能力D 软件过程14、在软件开发的各种资源中,(D)是最重要的资源。

A 开发工具B 方法C 硬件环境D 人员15、软件的复杂性是(A),它引起人员通信困难、开发费用超支、开发时间超时等问题。

A 固有的B 人为的C 可消除的D 不可降低的16、在各种不同的软件需求中,(D)描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明。

A 业务需求B 功能需求C 非功能需求D 用户需求17、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于(A)系统。

A 需求不确定的B 需求确定的C 管理信息D 决策支持18、(A)意味着一个操作在不同的类中可以有不同的实现方式.A 多态性B 多继承C 类的可复用D 信息隐蔽19、时序图反映对象之间发送消息的时间顺序,它与(D)是同构的。

系统结构复习

系统结构复习

中国地质大学(武汉)计算机学院吴湘宁计算机体系结构习题及答案第一章基础知识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设计的一般原则。

软件工程复习题及参考答案3(EF)

软件工程复习题及参考答案3(EF)

《软件工程》课程复习资料一、填空题:1.基于计算机系统总体可靠性与以下三个方面紧密关联:硬件可靠性、软件可靠性和。

2.面向对象的软件过程是以为基础,利用特定的软件工具直接完成从对象客体的描述到软件结构之间的转换。

3.需求分析的任务主要有两个:通过对问题及环境的理解、分析和综合,建立分析模型;在完全弄清用户对软件系统的确切要求的基础上,用把用户的需求表达出来。

4.需求开发又分为可行性研究、需求导出和分析、和需求验证。

5.对象包含两个基本的因素,和方法。

6.数据流图包括以下两种类型:变换型数据流图和。

7.系统设计阶段的输出结果是适应应用软件要求的、类间关系以及子系统的规格说明。

8.软件测试是为了发现而执行程序的过程。

9.软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批,并利用它们去运行程序,以发现程序错误的过程。

10.软件变更可以是修改代码错误的简单变更、更正设计错误的较大范围的变更、对描述错误进行修正或者增加新需求的重大改进。

软件变更可以考虑以下几个策略:、体系结构转换、软件再工程等策略。

11.软件维护性是软件的内在固有属性,它是的重要组成部分。

12.质量评审和自动化的软件评估是质量控制的两种方式。

评审活动主要包括、进展评审和质量评审等几种不同类型。

二、单项选择题: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.Grenford J.Myers就软件测试目的提出的观点不包括以下哪项? [ ]A.测试是程序的执行过程,目的在于发现错误B.证明软件的功能和性能与需求说明相符合C.一个好的测试用例在于能发现至今未发现的错误D.一个成功的测试是发现了至今未发现的错误的测试9.黑盒测试又称为 [ ]A.结构测试B.代码测试C.功能测试D.路径测试10.纠错技术主要是指定位程序错误采用的工具和手段,常用的定位错误方法不包括 [ ]A.插入打印语句B.设置断点C.根据结果推理D.掩蔽部分程序11.为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的误使用,应当进行的诊断和改正错误的过程,就叫做 [ ]A.完善性维护B.适应性维护C.改正性维护D.预防性维护12.( )和自动化的软件评估是质量控制的两种方式,其中前者是由一组人员对软件、文档编制和软件制作过程进行评审。

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

概述部分1、请分析软件危机的主要表现和原因。

表现:a)软件成本日益增加:开发、部署与应用成本高b)开发进度难以控制:不能按期完成c)软件质量差:错误率高,不能满足用户的需求,没有生命力d)软件维护困难:成本高,维护效果不理想,可能带来潜在的错误原因:1.用户需求不明确2.缺乏正确的理论指导3.软件规模越来越大4.软件复杂度越来越高2、请说明软件规模与复杂度对软件过程的影响及解决方法。

软件规模与复杂度增加后,软件开发和维护成本增加,开发进度难以控制,软件质量差,软件维护变得困难。

应更多地采用科学的分析、设计和实现方法以及辅助工具,增强软件分析和设计的力度,并通过构件化提高软件的重用能力。

3、什么是软件体系结构,由哪三个部分组成?(构件、连接件、约束)软件体系结构为软件系统提供了一个结构、属性和行为的高级抽象。

它不仅指定了系统的组织结构和拓扑结构,并且显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。

4、请简述软件重用的含义和意义。

可重用元素包括哪些种类?软件重用是指在多次不同的软件开发过程中重复使用相同或相近软件元素的过程。

(含义)可重用的元素包括程序代码、测试用例、设计文档、需求分析文档甚至领域知识。

(种类)可重用的元素越大,我们就说重用的粒度(Granularity)越大。

软件重用是软件产业工业化、工程化的重要手段。

软件重用对提高生产率,降低开发成本,缩短开发周期,改善软件质量以及提高灵活性和标准化程度大有帮助。

(意义)5、请简述常用的构件实现模型及其意义。

实现模型:1.CORBA2.EJB / DCOM / COM+意义:这些模型通常都定义了构件的实现方式、接口定义、访问方法等。

符合这些标准的任何构件都有很高的重用能力。

描述部分6、请用图示法说明4+1模型的5种视图之间的关系及关注点和涉众用户。

数据视图风格部分7、什么是软件体系结构的风格?它在软件开发过程中具有何种意义?软件体系结构风格是指设计、组织和实现软件体系结构的各种惯用模式和习惯用法,是对一系列体系结构设计的抽象。

(风格)利用软件体系结构风格,可以在不同的软件体系结构设计过程中重复使用同一个体系结构。

这样可以将软件复用粒度提高到软件体系结构一级。

通过学习软件体系结构风格,可以在软件体系结构设计过程中,采用成熟的体系结构风格,使得所设计的软件体系结构有良好的组织结构和通用性。

8、常见的软件体系结构风格主要有哪些种类?数据流风格:批处理序列,管道/过滤器调用/返回风格:主程序/子程序,面向对象风格,层次结构独立构件风格:进程通信,事件系统虚拟机风格:解释器,基于规则的系统仓库风格:数据库系统,超文本系统,黑板系统9、什么是虚拟机体系结构风格?这类软件主要由哪几个部分组成?(选择或者填空)通过软件手段建立一个虚拟的机器平台,并在该平台上解释运行所谓的“程序”代码。

(什么事虚拟机体系风格)正在被解释的程序(组成部分)虚拟机引擎构件用来保存被解释程序的状态的构件用来保存虚拟机引擎状态的构件10、请说明C/S结构软件的开放性和可扩展性特点的含义。

开放性:由于客户端和服务器端提供开放的、标准的接口,使得在软件系统中采用不同的客户端开发工具和服务器端DBMS产品。

开放性本身也意味着开发和维护成本的降低。

可扩展性:在客户/服务器结构的系统中,可以方便地增加客户机数量而不影响整个系统。

有的系统甚至可以增加服务器,提高系统的数据处理能力和服务性能。

11、请说明三层C/S结构和B/S结构相对于传统C/S结构的优点。

(从传统C/S结构的缺点入手)a.胖客户机.b.用户界面不统一,不利于推广。

c.软件的维护和升级困难。

d.安全性不高。

相对优点是:结构合理、用户界面统一、维护升级简单、安全性高12.请设计一个具有B/S结构(或三层C/S结构)登录模块的体系结构,并说明每层的作用。

(基本不考、因为编程题已经有了)B/S结构:(1)第一层:客户层(或表现层、界面层),第二层:业务逻辑层(或应用层、功能层、应用服务器层),第三层:数据层(2)第一层只有浏览器,通过访问第二层的网页实现用户界面,即接受用户的名称、密码的输入,并向第二层传送用户名和密码,最后将登录结果显示出来。

(3)第二层接受第一层的用户名和密码,并通过访问第三层判断用户合法性,最后将登陆结果以网页形式返回给第一层。

(4)第三层在数据库或文件中存储用户名和密码,并为第二层提供数据访问服务。

三层C/S结构:(1)第一层:客户层(或表现层、界面层),第二层:业务逻辑层(或应用层、功能层、应用服务器层),第三层:数据层(2)第一层实现用户界面,并通过网络连接或进程通信形式向第二层提出服务请求,最后将登录结果显示出来。

(3)第二层实现业务逻辑,即接受第一层的服务请求,并执行相应功能(业务)代码,最后将处理结果返回给第一层;业务功能需要访问数据时向第三层提出数据访问请求。

(4)第三层在数据库或文件中存储用户名和密码,并为第二层提供数据访问服务。

12、MVC风格的含义MVC风格将各个构件划分成各自独立的三个部分:模型、视图和控制器,分别对应商务逻辑、外观呈现和请求处理。

设计部分13、软件体系结构分析与设计的关键环节包括哪几部分?需求分析、领域建模;关键需求的确定、概念性体系结构的设计、体系结构细化、体系结构验证。

14、软件需求的典型分类包括哪些种类?15、运行期质量属性和开发期质量属性的划分:(大概看一下、选择填空)16、什么是体系结构设计相关的领域建模?对需求分析的细化是软件结构设计相关的领域建模。

领域建模是建立领域模型的过程,而领域模型是对实际问题领域的抽象表示。

领域建模专注于分析问题领域本身,发掘重要的业务领域概念并建立它们之间的关系。

一般情况下,领域模型可以用UML类图或状态图表示。

鲁邦图包括哪几种对象?它们之间存在哪几种建模规则?还有哪些规则是禁止的?边界对象、控制对象、实体对象17、体系结构细化过程中采用的“5视图法”中包括哪些视图,通常都用什么方式描述?(1)逻辑视图:着重考虑功能需求,主要关注行为或指责的划分,并将不同的职责分配给逻辑层、功能模块或类等不同粒度的逻辑单元。

可以用包图、类图、对象图(静态部分)或序列图、协作图、状态图和活动图(动态内容)来描述。

(2)开发视图:主要考虑开发期质量属性,如可扩展性、可重用性、可移植性、易理解性、易测试性等等,其关注点是软件模块的实际组织方式。

可以用包图、类图、构件图表述。

(3)数据视图:关注点是持久化数据的组织,一般采用数据流图或E-R图表示,或者用带对象流的活动图代替数据流图,用类图代替E-R图。

(4)运行视图:着重考虑运行期质量属性,如性能、可伸缩性、持续可用性等,主要关注进程、线程、对象等运行期概念,以及相应的并发、同步、通信等问题,可以用包图、类图、对象图(静态部分)或序列图、协作图(动态部分)表述。

(5)物理视图:主要考虑安装和部署需求,描述运行环境的计算机、网络、硬件设施等情况。

同时,物理视图还必须关注如何配置硬件环境来配合软件的特殊质量属性。

一般用部署图和构件图描述。

分析与评估部分18、什么是软件的性能质量属性,应由什么指标来衡量?性能:指系统的响应能力,通常用单位时间内所处理的事务数量或完成某个事务处理所需要的时间对系统的性能进行定量表示。

19、什么是软件的可靠性质量属性,应由什么指标来衡量?(MTTF、MTBF)可靠性:软件系统在意外或错误使用的情况下,维持系统功能特性的基本能力,通常用平均失效等待时间和平均失效间隔时间来衡量。

(两个的比值接近1最好)20、什么是软件的可修改性,主要包含哪几个方面的内容?可修改性:是指能够快速地、以较高的性价比对系统进行变更的能力。

通常以某些具体的变更为基准,并通过变更的代价来衡量可修改性。

主要包括以下几个方面:1、可维护性2、可扩展性3、结构重组4、可移植性21、软件体系结构评估方法可以分为几类,每类又可包含哪些具体方法?基于质询(调查问卷、检查表)、基于场景(SAAM、ATAM)、基于度量22、什么是基于场景的评估方法?常用的基于场景的评估方法是什么?(SAAM、ATAM)这种评估方法分析软件体系结构对场景的支持程度,从而判断该体系结构对这一场景所代表的质量属性的满足程度。

例如,用一系列对软件的修改来反映可修改性方面的特性,用一系列攻击性操作来测试安全性方面的要求等等。

23、请用图示法表示SAAM方法的主要步骤及其关系。

典型软件结构部分24、典型的操作系统体系结构有哪几种,各自的典型代表是什么操作系统?a)模块结构:MS-DOS,uc/OSb)分层结构:THE系统、Unix系统/Linuxc)虚拟机结构:VM/370系统d)客户/服务器结构:“微内核”操作系统25、操作系统的典型质量属性:(时间比值越接近1,质量属性越好)安全、可靠、可维护、可移植、性能(a+b/a+b+c)26、请分析X window标准的三个组成部分的作用,并与传统C/S结构进行逻辑功能方面的比较。

X Server:处理输入/输出、维护X Client定义的资源、维护与X Client之间的网络连接。

X Client:指需要用图形界面与用户交互的应用程序。

X Protocol:X Client和X Server之间的通信规约,所有请求和事件都通过X 协议传递。

分布式计算部分27、请说明分布式结构软件的计算资源共享特点。

在分布式结构软件中,各个软件构件在物理上可以分布在不同的计算机中。

各个构件之间通过相互调用,完成统一的软件功能。

各个构件分别使用不同的计算机完成执行过程,从而达到计算资源共享的目的。

对于软件的使用者来说,他们感觉不到多个计算机以及相互之间的调用关系。

28、假设要实现基于RMI的分布式阶乘运算软件,请说明主要的开发、部署和运行步骤。

要求说明各个组成部分提供的主要功能。

开发步骤:(1)应编写远程接口及接口实现类。

远程接口定义供远程客户调用的方法(如long fact(int n)),而远程接口实现类应编写具体的阶乘运算代码。

(2)在远程接口实现类的基础上,生成远程接口实现类的存根类。

(rmic命令)(3)编写服务器类,该类主要完成远程接口实现类的实例化及将实例化对象绑定到某一命名地址上。

(4)编写客户端类,该类通过名称查找远程接口实现类的实例化对象,查找成功后通过具体参数调用阶乘方法,并得到阶乘结果。

部署和运行步骤:(1)将客户端类、存根类和远程接口类部署到客户端机器上。

(2)将服务器端类、远程接口实现类和远程接口类部署到服务器端。

(3)在服务器端启动RMI注册器。

(rmiregistry命令)(4)启动服务器端。

(5)运行客户端,通过访问服务器得到运算结果。

相关文档
最新文档