软件工程试卷附答案

上传人:枫** 文档编号:564752928 上传时间:2023-10-04 格式:DOCX 页数:10 大小:20.85KB
返回 下载 相关 举报
软件工程试卷附答案_第1页
第1页 / 共10页
软件工程试卷附答案_第2页
第2页 / 共10页
软件工程试卷附答案_第3页
第3页 / 共10页
软件工程试卷附答案_第4页
第4页 / 共10页
软件工程试卷附答案_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《软件工程试卷附答案》由会员分享,可在线阅读,更多相关《软件工程试卷附答案(10页珍藏版)》请在金锄头文库上搜索。

1、单项选择题(每题2分,共40分)1. 软件生存周期模型有多钟,下列选项中,(C)不是软件生存周期模型。A. 螺旋模型B.增量模型 C.功能模型 D.瀑布模型2. 以下说法错误的是(C)。A. 增量模型是在瀑布模型的基础上加以修改而形成的B. 增量模型推迟某些阶段或所有阶段中的细节,从而较早地产生工作软件C. 瀑布模型和增量模型都属于整体开发模型D. 瀑布模型规定在开始下一个阶段的工作之前,必须完成前一阶段的所有细节3. 可行性分析中,系统流程图用于描述(A)。A. 当前运行系统B.当前逻辑模型C. 目标系统D.新系统4. 研究软硬件资源的有效性是进行(A)研究的一方面。A. 技术可行性B.经济

2、可行性C.社会可行性D.操作可行性5. 数据字典中,一般不包括下列选项中的(D)条目。A. 数据流B.数据存储C.加工D.源点与终点6. SA方法的分析步骤是首先调查了解当前系统的工作流程,然后(A)。A. 获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻 辑模型B. 获得当前系统的物理模型,抽象出目标系统的逻辑模型,建立目标系统的物 理模型C.获得当前系统的逻辑模型,抽象出目标系统的物理模型,建立目标系 统的逻辑模型D.获得当前系统的逻辑模型,抽象出目标系统的物理模型,建立目标系统的物理模型7、通过(B )可以完成数据流图的细化。A. 结构分析 B.功能分解 C.数据分析D

3、.系统分解8、对软件进行分解,是为了( C)。A. 降低模块的复杂程度B. 降低模块间接口的复杂程度C. 降低模块的复杂程度,并降低模块间接口的复杂程度D. 降低模块的复杂程度,并提高模块间接口的复杂程度9、为了提高模块的独立性,模块内部最好是(C)。A. 逻辑内聚B.时间内聚 C.功能内聚D.通信内聚10、在软件结构设计完成后,对于下列说法,正确的是(C)。A. 非单一功能模块的扇入数大比较好,说明本模块重用率高B. 单一功能的模块扇入高时应重新分解,以消除控制耦合的情况C. 一个模块的扇出太多,说明该模块过分复杂,缺少中间层D. 一个模块的扇入太多,说明该模块过分复杂,缺少中间层11、在软

4、件开发过程中,以下说法正确的是(B)。A. 程序流程图是逐步求精的好工具B. N-S图不可能任意转移控制,符合结构化原则C. 判定表是一种通用的设计工具D. 程序流程图和N-S图都不易表达模块的层次结构12、面向数据结构的设计方法(Jackson方法)是进行(B)的形式化的方法。A. 系统设计 B.详细设计 C.软件设计D.编码13、所有的对象可以成为各种对象类,每个对象类都定义了一组(B)A. 说明B. 方法C. 过程D. 类型14、以下说法错误的是(D)A. 对象具有很强的表达能力和描述功能B. 对象是人们要进行研究的任何事务C. 对象是封装的基本单位D. 类封装比对象封装更具体、更细致1

5、5、以下说法正确的是(B)A. 功能模型不包括对象模型中值的约束条件B. 功能模型说明对象模型中操作的含义C. 功能模型说明动态模型中约束的含义D. 功能模型说明对象模型中动作的意义16、以下说法错误的是(D)A. 面向对象方法不仅支持过程抽象,而且支持数据抽象B. 某些面向对象的程序设计语言还支持参数化抽象C. 信息隐蔽通过对象的封装性来实现D. 在面向对象方法中,类是最基本的模块17、以下说法错误的是(A)A. 多态性防止了程序相互依赖性而带来的变动影响B. 多态性是指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果C.多态性与继承性相结合使软件具有更广泛的重用性和可扩充性D

6、. 封装性是保证软件部件具有优良的模块性的基础 18、软件可维护性的特征中相互矛盾的是(C)。A. 可修改性和可理解性B. 可测试性和可理解性C. 效率和可修改性D. 可理解性和可读性19、以下说法正确的是(C)。A. 组装结构可用来描述现实世界中的一般的抽象关系B. 分类结构可用来描述现实世界中的类的组成的抽象关系C. 面向对象的继承性是子类自动共享父类数据结构和方法的机制D. 面向对象的唯一性是指将具有一致性的数据结构(属性)和行为(操作)的对象抽象成类20、以下说法错误的是(A)A. 面向对象分析与面向对象设计的行医没有明显区别B. 在实际的软件开发过程中面向对象分析与面向对象设计的界限

7、是模糊的C. 面向对象分析和面向对象设计活动一个多次迭代的过程D. 从面向对象分析到面向对象设计,是一个逐渐扩充模型的过程一、多项选择题(每题2分,共20分)1、软件危机产生的主要原因是(AE )。A.软件本身的特点B.用户使用不当C.硬件可靠性差D.对软件的错误认识E.缺乏好的开发方法和手段2、以下说法中正确的是(BCD)。A.快速原型思想是在研究概要设计阶段的方法和技术中产生的B. 探索型和实验型快速原型采用的是抛弃策略C. 演化型快速原型采用附加策略D. 快速原型是利用原型辅助软件开发的一种新思想3、下列叙述中,(ABD)是不正确的。A. 软件系统中所有的信息流都可以认为是事物流B. 软

8、件系统中所有的信息流都可以认为是变换流C. 事务分析和变换分析的设计步骤是基本相似的D. 事务分析和变换分析的设计步骤完全不同4、在程序的描述和分析中,下列哪个不是用以指明数据来源、数据流向和数据处 理的辅助图形(ACD)。A.瀑布模型B.数据流图C. 数据结构图D.业务图5、软件维护是保证软件正常、有效的重要手段,而软件的下述特性中(ABCD)有 利于软件的维护。A.可测试性B.可理解性C. 可修改性D.可移植性6、软件需求规格说明书的内容包括对(ACD )的描述。A.主要功能B.算法的详细过程C.用户界面及运行环境D.软件的性能7、下列说法正确的是(ACD)。A.变换型的DFD是由输入、变

9、换(或称处理)和输出三部分组成B. 变换型数据处理的工作过程一般分为三步:处理数据、变换数据和再处理数C. 变换输入端的数据流为系统的逻辑输入,它将外部形式的数据变换成内部形 式,送给主加工。D. 变换输出端为逻辑输出,它把主加工产生的数据的内部形式转换成外部形式 后物理输出。8、以下说法正确的是(ABC)。A. 面向对象方法不仅支持过程抽象,而且支持数据抽象B. 某些面向对象的程序设计语言还支持参数化抽象C. 信息隐藏通过对象的封装性来实现D. 在面向对象方法中,类是最基本的模块9、在程序设计过程中,要为程序调试做好准备,主要体现在(ABC)。A. 采用模块化、结构化的设计方法设计程序B.

10、编写程序时要为调试提供足够的灵活性C. 根据程序调试的需要,要选择并安排适当的中间结果输出和必要的断点D. 以上答案都不正确10、对象间的关系可以有哪几种关系(BCD)。A. 一对多关系B. 一般-特殊关系C.整体-部分关系D.二、填空题(每空1分,共15分)1. 快速原型的思想是在研究需求分析的方法和技术中产生的。2. 可行性研究_的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。3. 经过需求分析,开发人员已经基本上理解了用户的要求,确定了目标系统的功能, 定义了系统的数据,描述了处理这些数据的基本策略。将这些共同的理解进行整理,最后形成文档需求规格说明书

11、.4. 两个模块通过全程变量相互作用,这种耦合方式称为_公共耦合 。5. 再详细设计阶段,除了对模块内的算法进行设计,还应对模块内的_数据结构_进行设计。6. 子类自动共享父类的属性和操作的机制称为继承。7. 在UML语言中,利用用例图_来对需求分析中的问题进行描述。8. 对象抽象是类,类的具体化就是对象。9. 用等价类划分法设计测试用例时,如果被测试程序的某个输入条件规定了取值范围,则可以确定一个合理等价类和两个不合理等价类。10. 用黑盒技术设计测试用例的方法有等价类划分、边界值分析、错误推测_和因果图。11. 在单元测试中,测试一个模块时,需要设计_驱动模块。三、简答题(每题6分,共24

12、分)1、测试面向对象软件时,单元测试、集成测试和确认测试各有哪些新特点?单元测试:集中检测软件设计的最小单元模块。通常,单元测试和编码属于软件过程 的同一个阶段。在编写出源程序代码并通过了编译程序的语法检查之后,就可以用详细设 计描述作指南,对重要的执行通路进行测试,以便发现模块内部的错误。可以应用人工测 试和计算机测试这样两种不同类型的测试方法,完成单元测试工作。这两种测试方法各有 所长,互相补充。通常,单元测试主要使用白盒测试技术,而且对多个模块的测试可以并 行地进行。集成测试:是测试和组装软件的系统化技术,例如,子系统测试即是在把模块按照设计要 求组装起来的同时进行测试,主要目标是发现与

13、接口有关的问题(系统测试与此类似)。例 如,数据穿过接口时可能丢失;一个模块对另一个模块可能由于疏忽而造成有害影响;把 子功能组合起来可能不产生预期的主功能;个别看来是可以接受的误差可能积累到不能接 受的程度;全程数据结构可能有问题等等。不幸的是,可能发生的接口问题多得不胜枚举。 确认测试:也称为验收测试,它的目标是验证软件的有效性。上面这句话中使用了确认(validation)和验证(verification)这样两个不同的术语, 为了避免混淆,首先扼要地解释一下这两个术语的含义。通常,验证指的是保证软件正确 地实现了某个特定要求的一系列活动,而确认指的是为了保证软件确实满足了用需求而进 行

14、的一系列活动。2. 为什么说类构件是目前比较理想的可重用软构建?它有哪些重用方式?面向对象技术中的“软件重用。面向对象技术中的“类”,是比较理想的 可重用的软构 件,不妨称之为类构件,可重用的软构件,不妨称之为类构件,在上一小节中 讲述的构 件组装模型,就是利用类构件来构造应用程 讲述的构件组装模型,序。可重用的软构 件应具备的特点1.可重用的软构件应具备的特点模块独立性强(1)模块独立性强(2) 具有高度可塑性 具有高度可塑性 接口清晰、简明、可靠(3)接口清晰、简明、可靠2. 类构件的重用方式 类构件的重用方式 实例重用(1)实例重用 继承重用(2)继承重用 面向对象方法特有的继承性,面向

15、对象方法特有的继承性,提供了一种对已有 的类构件 进行裁剪的机制。的类构件进行裁剪的机制。当已有的类构件不能通过实例重用完全满 足当前系统需求时,实例重用完全满足当前系统需求时,继承重用提供了 一种安全地修 改已有类构件,一种安全地修改已有类构件,以便在当前系统中重用 的手段 多态重用(3)多态重用 利用多态性不仅可以使对象的对外接口更加一般基类与派生类的许多对 外接口是相同的)化(基类与派生类的许多对外接口是相同的),从而降低了消息连接的 复杂程度,低了消息连接的复杂程度,而且还提供了一种简便可 靠的软构件组合机制, 系统运行时,靠的软构件组合机制,系统运行时,根据接收消息的 对象类型,由多态性 机制启动正确的方法,对象类型,由多态性机制启动正确的方法,去响应一个一般化的 消息,从而简化了消息界面和软构件连接3. 简述功能模型、对象模型、动态模型三种模型之间的关系。对象模型:表示了静态的结构化的系统数据性

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号