五邑大学20062007软件工程试题及答案
第 1 页 共 8 页 命题人: 审批人: 试卷分类(A 卷或 B 卷) A 五邑大学 试 卷 学期: 2006 至 2007 学年度 第 1 学期 课程: 软件工程 专业: 班级: 姓名: 学号: 题号 一 二 三 四 五 六 七 八 九 十 总分 得分 一、 单项选择题( 在每小题的四个备选答案中, 选出一个正 确的答案序号填在括号内。每小题 1 分,共 20 分) 1. 信息隐蔽概念与( A )这一概念直接的相关。 A. 模块的独立性 B. 模块类型的划分 C. 软件结构定义 D. 软件生命周期 2. 下列方法中不属于面向对象的开发方法有( C )。 A. Booch方法 B. Coad方法 C. VDM方法 D. OMT方法 3. 不属于详细设计的主要工具有( C ) 。 A. IPO图 B. PAD图 C. PDL D. SC 4. 选择结构的复杂性比顺序结构的复杂性要( B )。 A. 小 B. 大 C. 相等 D. 无法比较 5. 软件需求分析是保证软件质量的重要步骤,它的实施应该是在( C )。 A.编码阶段 B . 软件开发全过程 C . 软件定义阶段 D . 软件设计阶段 6. 模块内聚度越高,说明模块内各成分彼此结合的程度越( B ) 。 A.松散 B. 紧密 C. 无法判断 D. 相等 得分 试卷编号 第 2 页 共 8 页 7. 软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而且影 响软件的( A ) 。 A. 可理解性 B. 可维护性 C. 可扩展性 D. 可移植性 8. 单元测试阶段主要涉及( C )的文档。 A. 需求设计 B. 编码和详细设计 C. 详细设计 D. 概要设计 9. 鱼是一种水生动物。鱼与水生生物之间的关系是( A )。 A. 一般与特殊关系 B. 组装关系 C. 整体成员关系 D. has a 10. 下列选项不属于软件工程方法学三要素的是( D )。 A.方法 B.工具 C.过程 D.操作 11. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往 往是( A ) 。 A.运行和维护阶段 B.设计阶段 C.代码实现阶段 D.测试阶段 12. . 黑盒测试在设计测试用例时,主要需要研究( A ) 。 A.需求规格说明与概要设计说明 B.详细设计说明 C.项目开发计划 D.概要设计说明与详细设计说明 13. 可行性研究要进行一次( D )需求分析。 A. 深入的 B. 详尽的 C. 彻底的 D. 简化的、压缩了的 14. 下列属于维护阶段的文档是( C )。 A.软件规格说明 B.用户操作手册 C.软件问题报告 D.软件测试分析报告 15. 数据字典的最基本功能是( C )。 A.数据库设计 B.数据通信 C.数据定义 D.数据维护 第 3 页 共 8 页 16. 以下关于数据流图的说法不正确的是( C )。 A.数据流图舍去了具体的物理元素,只剩下数据的流动、加工处理和存储 B.数据流图是用作结构化分析建模的一种工具 C.传统的数据流图主要由处理、数据源点/ 终点、数据流、控制流、数据存储组成 D.数据流图的编绘采用自上向下、逐层分解的方法 17. 选择程序设计语言的关键因素是( D )。 A.软件应用领域 B.软件执行环境 C.软件开发方法 D.算法和数据结构 18. 所谓软件过程的里程碑,通常是指( C )。 A.一定的时间间隔 B.每个项目活动 C.基线 D.开发进度月报 19. 程序的三种基本控制结构是( B )。 A.过程、子程序与分程序 B.顺序、选择和重复 C.递归、堆栈和队列 D.调用、返回和转移 20. 因计算机硬件和软件环境的变化而作出的修改软件的过程称为( B )。 A.改正性维护 B.适应性维护 C.完善性维护 D.预防性维护 第 4 页 共 8 页 二、 填空题 (每小题 2 分,共 16 分) 1 .软件不仅仅是程序,还应该有一整套_______ 文档_____________ 。 2 .传统的软件生命期模型是______ 瀑布模型______________ 。 3 .Jackson程序设计方法是一种______ 面向数据结构_ _________的设计方法。 4. 黑盒测试也称为______功能测试_____,白盒测试也称为____结构测试_______。 5 .与程序流程图相比,盒图没有__ 转移箭头_____ ,因此不允许随意转移控制。 6 .在单元测试中,使用_ 驱动程序_ 模拟被测单元的调用和数据传递动作,_存根程序 __模拟被测模块的子程序。 7 .度量软件规模的常用技术主要有___ 代码行技术___ 和_____ 功能点技术____ 。 8 . 可行性研究包括__ 技术可行性___ 、 _ 经济可行性__ 和__ 社会可行性__ 等三个 方面的可行性研究。 三、 简答题 (每题 8 分,共 32 分) 1. 集成测试有哪两种测试策略?试比较它们的优缺点。 答:主要是自顶向下集成测试策略和自底向上集成测试策略两种。 自顶向下集成测试策略的优点是:能尽早地对程序的主要控制和决策机制进行检验, 因此能 较早地发现错误。 缺点是: 在测试较高层模块时, 低层处理采用桩模块替代, 不能反映真实情况, 重要数据不能 及时回送到上层模块, 因此测试并不充分。 自底向上集成测试策略的优点是:不用桩模块, 测试用例的设计亦相对简单, 但缺点是程序 最后一个模块加入时才具有整体形象。 2. 简述结构化程序设计方法的基本要点。 得分 得分 第 5 页 共 8 页 答: (1)采用自顶向下, 逐步求精的程序设计方法. (2)使用三种基本控制结构构造程序, 分别是顺序, 选择和循环 (3)采用主程序员组的组织形式. (4)采用单入口单出口的模块形式. 3. 试解释软件、软件工程和软件工程方法学的基本含义。 答: 软件:软件是一种产品,同时又是开发和运行产品的载体。作为一种产品,它表达了由计 算机硬件体现的计算潜能。作为开发运行产品的载体,软件是计算机工作的基础、信息通 信的基础,也是创建和控制其他程序的基础。具体包括以下三方面内容: (1)在运行中能 提供所希望的功能和性能的指令集(即程序) ; (2)使程序能够正确运行的数据结构; (3) 描述程序研制过程、方法所用的文挡。 软件工程:是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方 法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技 术方法结合起来。 软件工程方法学:软件工程方法学是研究软件设计方法论及工程开发技术的一门新兴学科。 4. 简述面向对象开发方法的三大模型及各自的作用。 答: 面向对象开发方法中的三大模型是指对象模型、动态模型、功能模型。各自的作用是: