一._单项选择题_____(本大题共__15__题,每题___1___分,共___15___分。)
1.  软件生存周期中时间最长的是 (      ) 阶段。
A. 需求分析            B. 概要设计            C. 测试                D. 维护
2.  技术可行性要解决 (      ) 。
A. 存在侵权否                            B. 成本效益问题
C. 运行方式可行                            D. 技术风险问题
3.  需求说明书的作用不应包括 (      ) 。
A. 软件设计的依据                B. 用户与开发人员对软件要做什么的共同理解
C. 软件验收的依据                D. 软件可行性研究的依据
4.  分层DFD是一种比较严格又易于理解的描述方式,它的顶层图描述了系统的 (      ) 。
A. 细节                B. 输入与输出        C. 软件的作者        D. 绘制的时间
5.  结构化分析方法 (SA) 的一个重要指导思想是 (    ) 。
A. 自顶向下,逐步抽象                    B. 自底向上,逐步抽象
C. 自顶向下,逐步分解                    D. 自底向上,逐步分解
6.  (  )意味着一个操作在不同的类中可以有不同的实现方式。
A.    多态性            B.    多继承              C.    类的复用        D.    封装
7.  ( )是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。
A  多态性              B  继承              C 封装            D 消息
8.  概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是 (    ) 。
    A. 把软件划分成模块                        B. 确定各个模块的功能
    C. 确定模块之间的调用关系                D. 设计每个模块的伪代码
9.  为了提高测试的效率,应该 (      ) 。
A. 随机选取测试数据
B. 取一切可能的输入数据作为测试数据
    C. 在完成编码以后制定软件的测试计划
    D. 选择发现错误可能性大的数据作为测试计划
10.  下列哪项内容不属于OOD的重要特征(      )。
A.抽象              B.信息隐蔽            C.性能独立性        D.模块性
11.  白盒测试方法一般适合用于 (    ) 测试。
    A. 单元                B. 系统                C. 集成                D. 确认
12.  在黑盒测试中,着重检查输入条件的组合是 (      ) 。
A. 等价类划分法        B. 边界值分析法        C. 错误推测法        D. 因果图法
13. (      )不属于OO三要素。
A.对象                B.封装              C.继承              D.多
14.  UML(      )描述对象之间动态的交互关系,着重体现对象间消息传递的时间顺序。
A.状态图            B.顺序图            C.合作图            D.活动图
15.  CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。除第1级外,每一级都包含了实现这一级目标的若干关键过程域,每一个关键过程域又包含若干( )。
A 关键实践         B 软件过程性能        C 软件过程能力        D 软件过程
二._组合选择题______(本大题共______题,每空___1___分,共___30_____分。)
请从供选择的答案中选出正确或合适的答案填入 (  ) 中。③④①③①
1.  软件设计中划分模块的一个准则是 (  A  ) 。两个模块之间的耦合方式中,(  B  ) 耦合的
耦合度最高,(  C  ) 耦合的耦合度最低。一个模块内部的内聚种类中 (  D  ) 内聚的内聚度最高,(  E  ) 内聚的内聚度最低。
A:        ① 低内聚低耦合                    ② 低内聚高耦合
        ③ 高内聚低耦合                    ④ 高内聚高耦合
    B、C:    ① 数据            ② 非直接        ③ 控制            ④ 内容
    D、E:    ① 偶然            ② 逻辑            ③ 功能            ④ 过程
2.  软件详细设计工具可分为三类,即:图示工具、设计语言和表格工具。图示工具中,(  A  ) 简单而应用广泛、(  B  ) 表示法中,每一个处理过程用一个盒子表示,盒子可以嵌套。(  C  ) 可以纵横延伸,图形的空间效果好。
(  D  ) 是一种设计语言,它是一种面向 (  E  ) 的语言。②①④②①
A - C
① NS图
② 流程图
③ HIPO图
④ PAD图
D
① C
② PDL
③ PROLOG
④ PASCAL
E
① 人
② 机器
③ 数据结构
④ 对象
3.  软件的易维护性是指理解、改正、改进软件的难易程度。通常影响软件易维护性的因素有易理解性、易修改性和 (  A  ) 。在软件的开发过程中往往采取各种措施来提高软件的易维护性。如采用 (  B  ) 有助于提高软件的易理解性;(  C  ) 有助于提高软件的易修改性。
    在软件质量特性中,(  D  ) 是指在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性;(  E  ) 是指防止对程序及数据的非授权访问的能力。④③②③①
    A:    ① 易使用性        ② 易恢复性        ③ 易替换性        ④ 易测试性
    B:    ① 增强健壮性                    ② 信息隐蔽原则
③ 良好的编程风格                ④ 高效的算法
    C:    ① 高效的算法    ② 信息隐蔽原则    ③ 增强健壮性    ④ 身份认证
    D:    ① 正确性        ② 准确性        ③ 可靠性        ④ 易使用性
    E:    ① 安全性        ② 适应性        ③ 灵活性        ④ 容错性
4.  程序的三种基本控制结构是 ( A ) 。它们的共同点是 ( B ) 。结构程序设计的一种基本方法是 ( C ) 。②④④②①
    软件测试的目的是 ( D ) 。
    软件排错的目的是 ( E ) 。
A
① 过程,子程序,分程序
② 顺序,条件,循环
③ 递归,堆栈,队列
④ 调用,返回,转移
B
① 不能嵌套使用
② 只能用来写简单的程序
③ 已经用硬件实现
④ 只有一个入口和一个出口
C
① 筛选法
② 递归法
③ 归纳法
④ 逐步求精法
D
① 证明程序中没有错误
② 发现程序中的错误
③ 测量程序的动态特性
④ 检查程序中的语法错误
E
① 出错误所在并改正之
② 排除存在错误的可能性
③ 对错误性质进行分类
④ 统计出错的次数
5.  用面向对象方法分析大型系统(复杂问题)时,一般会将对象模型分为5个层次,从高到低依次是(次序不能错误)。 ④⑦①②⑧
      (  A  )  (  B  )  (  C  )  (  D  )  (  E  )
A – E
① 结构层
② 属性层
③ 功能层
④ 主题层
⑤ 模型层
⑥ 动态层
⑦ 类与对象层
⑧ 服务层
⑨ 需求层
6.  从供选择的答案中选出同下列各条叙述关系最密切的字句。④③⑥⑤⑦
    (  A  ) 软件从一个计算机系统或环境转移到另一个计算机系统或环境的容易程度。
    (  B  ) 软件在需要它投入使用时能实现其指定的功能的概率。
    (  C  ) 软件使不同的系统约束条件和用户需求得到满足的容易程度。
    (  D  ) 在规定条件下和规定期间内,实现所指定的功能的概率。
    (  E  ) 尽管有不合法的输入,软件仍能继续正常工作的能力。
① 可测试性
② 可理解性
③ 可靠性
④ 可移植性
⑤ 可用性
⑥ 兼容性
⑦ 坚固性
⑧ 可修改性
⑨ 可接近性
⑩ 一致性
三.判断题(本大题共__3__题,每题___5___分,共___15_____分。)
1.  从下列叙述中选出5条符合程序设计风格指导原则的叙述。 (2) (3) (5) (7) (9)
    (1) 嵌套的重数应加以限制。
    (2) 尽量多使用临时变量。
    (3) 不滥用语言特。
    (4) 不用可以省略的括号。
    (5) 使用有意义的变量名。
    (6) 应尽可能把程序编得短些。
    (7) 把常见的局部优化工作留给编译程序去做。
    (8) 注解越少越好。
    (9) 程序的格式应有助于读者理解程序。
    (10) 应尽可能多用GOTO语句。
2.  从下列关于软件测试的叙述中,选出5条正确的叙述。(2) (5) (7) (8)
    (1) 测试最终是为了证明程序无错误。
    (2) 在进行同等测试后,若发现A部分有错并改正了10个错误,B部分发现并改正了 5个错误,则再进行测试时,A部分中发现错误的可能性比B部分中大。
    (3) 对一个模块测试的根本依据是测试用例。
    (4) 用黑盒法测试时,测试用例是根据程序内部逻辑设计的。
    (5) 一组测试用例是判定覆盖,则一定是语句覆盖。
    (6) 一组测试用例是条件覆盖,则一定是语句覆盖。
    (7) 在整个测试过程中增量式所需测试时间比非增量式多。
(8) 验收的依据是需求说明书。
3. 从下列叙述中选出5条与提高软件的可移植性有关的叙述。(1) (3) (4) (7) (8)
    (1) 把程序中与计算机硬件特性有关的部分集中在一起。
    (2) 选择时间效率和空间效率高的算法。
    (3) 使用结构化的程序设计方法。
    (4) 尽量用高级语言编写程序中对效率要求不高的部分。
    (5) 尽可能减少注释。
    (6) 采用表格控制方式。
    (7) 文档资料详尽、正确。
    (8) 在有虚拟存储器的计算机系统上开发软件。
    (9) 减少程序中对文件的读写次数。
    (10) 充分利用宿主计算机的硬件特性。
流程图转换为ns图四.简答题(本大题共__2__题,每题___5___分,共___10_____分。)
1.简述过软件工程中的螺旋模型。
2.简述面向对象设计中的四个子系统。
得分
五.综合题(本大题共__3__题,每题___10___分,共___30_____分。)
1.  问题陈述:为开发一个铁路自动售票系统(该系统预计从2007年使用到2017年),该系统需要完成的功能如下:乘客提出购票请求,系统进行受理,查询售票车次表和售票记录后,如果乘客所购车票系统尚有,那么就受理,并请乘客支付车费后行
登记,记录该条售票记录并将车票发给乘客;如果没有,那么就拒绝乘客的受理请
求。(10分)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。