《软件工程概论》期末测试试卷(A卷)
一.单项选择题(每小题1分,共22分)
1.对象实现了数据和操作的结合,使数据和操作( )于对象的统一体中。 A.结合
B.隐藏
C.封装
D.抽象 D.软件维护 D.软件的规模
2.软件生命周期中所花费用最多的阶段是( )。 A.详细设计 A.软件做什么
B.软件编码
C.软件测试
3.需求分析中开发人员要从用户那里了解( )。
B.用户使用界面 C.输入的信息
4.测试的关键问题是( )。
A.如何组织对软件的评审
B.如何验证程序的正确性
D.如何选择测试用例
C.如何采它包括方法、工具用综合策略 程,和过程三个要素。 A.软件过程
B.软件测试 D.软件工程方法学 C.类的可复用
D.信息隐藏 D.详细设计
C.软件生命周期 A.多态性
5.( )是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过
6.( )意味着一个操作在不同的类中可以有不同的实现方式。
B.多继承
7.单元测试的测试用例主要根据( )的结果来设计。 A.需求分析 B.源程序 C.概要设计 8.随着软硬件环境变化而修改软件的过程是( )。 A.校正性维护 C.完善性维护
B.适应性维护 D.预防性维护
9.在白盒测试技术测试用例的设计中,( )是最弱的覆盖标准。
A.语句覆盖
C.条件组合覆盖 A.筛选法
B.路径覆盖
D.判定覆盖 B.迭代法 D.递归法 B.C D.Prolog B.星型 D.环型
10.结构化程序设计的一种基本方法是( )。 C.逐步求精法 A.Pascal C.Fortran A.网状型 C.树型
11.不适合作为科学工程计算的程序设计语言是( )。
12.只有单重继承的类层次结构是( )层次结构。
13.面向对象的开发方法中,( )将是面向对象技术领域内占主导地位的标准建模语言。
A.Booch方法 A.线性顺序模型 C.线性迭代模型 A.开发时的错误
B.Coad方法
C.UML语言
D.OMT方法
14.瀑布模型本质上是一种( )。
B.顺序迭代模型 D.及早见产品模型 B.隐含的错误 D.运行时误操作 B.外部接口 D.编程 C.扇入
D.扇出
15.软件维护产生的副作用,是指( )。 C.因修改软件而造成的错误 A.算法和使用的数据结构 C.功能 A.深度
16.软件详细设计的主要任务是确定每个模块的( )。
17.软件结构图的形态特征能反映程序重用率的是( )。
B.宽度
18.为了提高模块的独立性,模块内部最好是( )。 A.逻辑内聚 C.功能内聚 A.调用关系 C.链接关系
B.时间内聚 D.通信内聚 B.组成关系 D.顺序执行关系
19.软件结构图中,模块框之间若有直线连接,表示它们之间存在( )。
20.“软件危机”是指( )。
A.计算机病毒的出现 B.利用计算机进行经济犯罪活动 C.软件开发和维护中出现的一系列问题 D.人们过分迷恋计算机系统 21.具有风险分析的软件生命周期模型是( )。 A.瀑布模型 C.螺旋模型
B.喷泉模型 D.增量模型 B.一个输出数据流
D.一个输入数据流和一个输出流
22.数据流图(DFD)中的每个数据处理至少需要( )。 A.一个输入数据流 C.一个输入或者输出数据流
二.判断题(每小题2分,共24分)
1.文档是软件产品的一部分,没有文档的软件就不称其为软件。( )
2.需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据。( )
3.数据流图建立系统的功能模型,它由数据流、数据处理和数据存贮组成。( ) 4.在结构化分析建模中要建立的是对象模型、功能模型和行为模型,它们以数据字典为核心。( )
5.好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。( ) 6.边界值分析方法是取输入/输出等价类的边界值来构成测试用例的测试方法。( ) 7.在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。( )
8.在需求分析中,分析员要从用户那里解决的最重要的问题是明确软件做什么。 ( )
9.软件需求规格说明书在软件开发中具有重要的作用,是软件可行性分析的依据。( )
10.面向对象方法学的四要素是对象、类、继承和消息通信。( ) 11.详细设计的结果基本最终决定了软件的质量。( )
12.在详细设计中常采用的工具有层次图、PAD(问题分析图)、程序流程图、盒图等。( )
三.填空题(每空2分,共24分)
1.为了便于对照检查,测试用例应由输入数据和预期的结果输出 两部分组成。 2.软件结构是以 模块 为基础而组成的一种控制层次结构。
3.如果知道软件的规格说明书描述的程序功能,那么就可以采用 进行测试。
4.当A模块调用B模块时,若两个模块之间传递的是数值型参数,则这两个模块的耦合方式是 内聚耦合 。
5.软件概要设计关键的一步是 确定软件体系结构____,它直接影响下一阶段详细设计和编码的工作。
6.数据流图中的箭头表示 数据流 ,椭圆或圆形表示 事务处理 ,矩形表示 数据原点/终点 。
7.软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个_______相反________集成的过程。
8.按数据流的类型,面向数据流的设计方法有两种设计策略,它们是变换分析设计和 。
9.数据流图仅反映系统必须完成的逻辑功能,所以它是一种 工能 模型。 10.软件结构中的 深度 表示的软件的控制层数,它往往能够粗略地标志一个系统的大小和复杂程度。
四.简答题(每小题5分,共10分)
1.衡量模块独立性的两个定性标准是什么(2分)这两个标准的定义分别是什么(2分)在我们的软件设计中,关于模块独立性我们追求的目标是什么(1分) 2.简述结构化程序设计方法的基本特点。(5分)