# 中国传媒大学 2008 年攻读硕士学位研究生入学考试 软件工程试题

答题说明:答案一律写在答题纸上,不需抄题,标明题号即可,答在试题上无效。

# 一、单项选择题(每小题 1 分,共 20 分)

  1. 在(A)完成后,可以着手制定测试计划。
    A. 需求分析
    C. 详细设计
    B. 系统设计
    D. 软件编码

  2. 将软件组件的接口与实现分离,主要体现了(D)原则。
    A. 强内聚
    c. 弱耦合
    B. 依赖倒转
    D. 信息隐藏

  3. 假如在某个类中完成了多种功能,则此种设计违反了(A)原则。
    A. 强内聚
    B. 依赖倒转
    C. 弱耦合
    D. 信息隐藏

  4. (A)是软件最高层次的设计。
    A. 体系结构设计
    B. 子系统设计
    C. 对象设计
    D. 责任分解

  5. Windows 程序是(B)驱动的。
    A. 过程
    B. 事件
    c. 并发
    D. 其它

  6. 软件可行性研究一般不考虑(D)。
    A. 是否有足够的人员和相关的技术来支持系统开发
    B. 是否有足够的工具和相关的技术来支持系统
    C. 待开发软件是否有市场、经济上是否合算
    D. 待开发的软件是否会有质量问题

  7. 软件项目计划一般不包括以下哪项内容(A)。
    A. 培训计划
    B. 人员安排
    C. 进度安排
    D. 软件开发标准的选择和制定

  8. 以下哪一项不属于面向对象的软件开发方法(C)。
    A. coad 方法
    B. booch 方法
    C. jackson 方法
    D. omt 方法

    Jackson设计方法是一种面向数据结构的软件设计方法,Jackson分析方法是面向数据流的分析方法。
    Jackson方法 | 百度百科 (opens new window)

  9. 希望一个软件在任何意外的情况下都能适应,这是要求它的(B)好。
    A. 正确性
    B. 健壮性
    C. 安全性
    D. 可用性

  10. 希望一个软件很容易读懂,这是要求它的(A)好。
    A. 可理解性
    B. 可用性
    C. 灵活性
    D. 可再用性

  11. 模块的内聚性最高的是(D)。
    A. 逻辑内聚
    B. 时间内聚
    C. 偶然内聚
    D. 功能内聚

    模块的内聚性最高的是()。 | 牛客网 (opens new window)

  12. 在结构化设计方法中全面指导模块划分的最重要的原则是(D)。
    A. 程序模块化
    c. 模块低耦合
    B. 模块高内聚
    D. 模块独立性

  13. 黑盒测试在设计测试用例时,主要需要研究(A)。
    A. 需求规格说明与概要设计说明
    B. 详细设计说明
    C. 项目开发计划
    D. 概要设计说明与详细设计说明

  14. 若有一个计算类型的程序,它的输入量只有一个 X,其范围是 [-1.0, 1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是(C)。
    A. 条件覆盖法
    B. 等价分类法
    C. 边界值分析法
    D. 错误推测法

  15. 下列属于维护阶段的文档是(C)。
    A. 软件规格说明
    B. 用户操作手册
    C. 软件问题报告
    D. 软件测试分析报告

  16. 快速原型模型的主要特点之一是(D)。
    A. 开发完毕才见到产品
    c. 开发完毕后才见到工作软件
    B. 及早提供全部完整的软件产品
    D. 及早提供工作软件

  17. 因计算机硬件和软件环境的变化而作出的修改软件的过程称为(B)。
    A. 改正性维护
    B. 适应性维护
    C. 完善性维护
    D. 预防性维护

  18. 只有单重继承的类层次结构是(C)层次结构。
    A. 网状型
    B. 星型
    C. 树型
    D. 环型

  19. 软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为(B)。
    A. 可用性
    B. 可靠性
    C. 正确性
    D. 完整性

  20. 采用 Gantt 图表示软件项目进度安排,下列说法中正确的是(D)。
    A. 能够反映多个任务之间的复杂关系
    B. 能够直观表示任务之间相互依赖制约关系
    C. 能够表示哪些任务是关键任务
    D. 能够表示子任务之间的并行和串行关系

# 二、判断对错题(每小题 1 分,共 13 分)

  1. 集成测试主要由用户来完成。(❌)
  2. 确认测试计划应该在可行性研究阶段制定。(❌)

    在需求分析完成后,可以着手指定测试计划。

  3. 白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。(❌)

    这是黑盒……

  4. 软件中错误的发现和改正越晚,所需付出的代价就越大。(✔️)
  5. 瀑布模型的优点之一是可强迫开发人员采用规范的方法。(✔️)
  6. 功能模型定义了面向对象系统做事情的主体。(❌)
  7. 面向对象方法认为,计算机的观点是不重要的,现实世界的模型才是最重要的。(✔️)
  8. 应尽量降低继承耦合。(❌)

    同 2004 三、5.

  9. 面向对象数据库是现今最流行的数据库。(❌)

    同 2004 三、6.

  10. 成功的测试是没有发现错误的测试。(❌)

    同 2004 三、7.

  11. 集成测试的主要目标是发现与接口有关的问题。(✔️)
  12. 我们不能完全信任软件工作量估算的经验模型。(✔️)
  13. 软件与需求规格说明书要求的一致程度,是软件质量的唯一标准。(❌)

    同 2004 三、10.

# 三、名词解释(每小题 3 分,共 27 分)

a) 抽象
b) 原型
c) 模块化
d) 瀑布模型
e) 增量模型
f) 面向对象设计
g) 结构化分析
h) 动态模型
i) 对象模型

# 四、简述或问答题(每小题 4 分,共 20 分)

a) 你认为一个好的软件开发人员应具备哪些基本素质?
b) 为什么软件需要维护?简述软件维护的过程。
c) 论述面向对象方法学的优点。
d) 分析软件危机产生的主要原因有哪些?
e) 简述软件设计的“强内聚原则”。

# 五、应用题(其中 1 题、2 题各 5 分,3 题 10 分,共 20 分)

  1. 某学校需要开发一个学生成绩管理系统,教务人员可以通过该系统维护学生信息、课程信息和成绩信息,学生可以随时查询自己的成绩单,该系统的实体关系图如下所示: 学生成绩管理系统-实体关系图

    请问图中是否应该增加“教务人员”?试说明理由。

    不应该增加"教务人员",因为教务人员只是该系统的一个使用者,系统不处理其属性信息。

  2. 某旅馆的电话服务如下:
    可以拨分机号和外线号码。分机号是从 7201 至 7299 。外线号码先拨 9,然后是市话号码 或长话号码。长话号码是以区号和市话号码组成。区号是从 100 到 300 中任意的数字串。市话 号码是以局号和分局号组成。局号可以是 455,466,888,552中任意一个号码。分局号是任 意长度为4的数字串。

    要求:写出在数据字典中,电话号码的数据条目的定义(即组成)。

    旅馆的电话服务

  3. 高考录取统分子系统有如下功能:

    1. 计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;
    2. 计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。

    试根据要求画出该系统的数据流程图,并将其转换位软件结构图。

    数据流程图:

    数据流程图

    软件结构图:

    软件结构图