
一.单项选择题每小题1分,共22分
1.对象实现了数据和操作的结合,使数据和操作 于对象的统一体中;
A.结合 B.隐藏 C.封装 D.抽象
2.软件生命周期中所花费用最多的阶段是 ;
A.详细设计 B.软件编码 C.软件测试 D.软件维护
3.需求分析中开发人员要从用户那里了解 ;
A.软件做什么 B.用户使用界面 C.输入的信息 D.软件的规模
4.测试的关键问题是 ;
A.如何组织对软件的评审 B.如何验证程序的正确性
C.如何采它包括方法、工具用综合策略 D.如何选择测试用例
5. 是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,和过程三个要素;
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.结构化程序设计的一种基本方法是 ;
A.筛选法 B.迭代法
C.逐步求精法 D.递归法
11.不适合作为科学工程计算的程序设计语言是 ;
A.Pascal B.C
C.Fortran D.Prolog
12.只有单重继承的类层次结构是 层次结构;
A.网状型 B.星型
C.树型 D.环型
13.面向对象的开发方法中, 将是面向对象技术领域内占主导地位的标准建模语言;
A.Booch方法 B.Coad方法 C.UML语言 D.OMT方法
14.瀑布模型本质上是一种 ;
A.线性顺序模型 B.顺序迭代模型
C.线性迭代模型 D.及早见产品模型
15.软件维护产生的副作用,是指 ;
A.开发时的错误 B.隐含的错误
C.因修改软件而造成的错误 D.运行时误操作
16.软件详细设计的主要任务是确定每个模块的 ;
A.算法和使用的数据结构 B.外部接口
C.功能 D.编程
17.软件结构图的形态特征能反映程序重用率的是 ;
A.深度 B.宽度 C.扇入 D.扇出
18.为了提高模块的性,模块内部最好是 ;
A.逻辑内聚 B.时间内聚
C.功能内聚 D.通信内聚
19.软件结构图中,模块框之间若有直线连接,表示它们之间存在 ;
A.调用关系 B.组成关系
C.链接关系 D.顺序执行关系
20.“软件危机”是指 ;
A.计算机病毒的出现 B.利用计算机进行经济犯罪活动
C.软件开发和维护中出现的一系列问题 D.人们过分迷恋计算机系统
21.具有风险分析的软件生命周期模型是 ;
A.瀑布模型 B.喷泉模型
C.螺旋模型 D.增量模型
22.数据流图DFD中的每个数据处理至少需要 ;
A.一个输入数据流 B.一个输出数据流
C.一个输入或者输出数据流 D.一个输入数据流和一个输出流
二.判断题每小题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分
五.应用题第一小题8分,第二小题12分,共20分
1.某旅馆的电话服务如下:8分
可以拨分机号码和外线号码;分机号是从7201至7299;外线号码先拨9,然后是市话号码或长话号码;长话号码是以区号和市话号码组成;区号是从100到300中任意的数字串;市话号码是以局号和分局号组成,局号可以是455、466、888、552中任意一个号码;分局号是任意长度为4的数字串;
要求:写出在数据字典中,电话号码的数据条目的定义即组成;
2.下图是一个被测程序的流程图,请按照要求完成下列问题;共12分
1根据该程序流程图画出该程序的流图;3分
2计算该流图的环形复杂度;3分
3确定路径的集合;3分
4设计测试用例以满足逻辑覆盖的判定覆盖标准;3分
软件工程试卷A卷答案
一.单项选择题每小题1分,共22分
1.C2.D3.A4.D5.D
6.A7、D8.B9.A10.C
11.D12.C13.C14.A15.C
16.A17.C18.C19.A20.C
21.C22.D
二.判断题每小题2分,共24分
1.对2.错3.错4.错5.对6.对
7.错8.对9.错10.对11.对12.错
三.填空题每小题2分,共24分
1.输出结果
2.模块
3.黑盒测试方法
4.数值耦合
5.确定软件的体系结构
6.数据流,数据处理,数据的源点/终点
7.自底向上或相反
8.事务分析设计
9.功能
10.深度
四.简答题每小题5分,共10分
1.衡量模块性的两个定性标准是什么2分这两个标准的定义分别是什么2分在我们的软件设计中,关于模块性我们追求的目标是什么1分
答:衡量模块性的两个定性标准是内聚和耦合2分;
耦合是指对一个软件结构内不同模块彼此之间互相依赖连接的紧密程度;而内聚则标志一个模块内部各个元素彼此结合的紧密程度;2分;
在我们的软件设计中,关于模块性我们追求的目标是紧密内聚松散耦合1分;
2.简述结构化程序设计方法的基本特点;5分
答:
1.是尽可能少用goto语句的程序设计方法;
2.每个代码块都单入单出;
3.使用控制结构:顺序、选择和循环+Do_UNTIL和Do_CASE;
4.自顶向下逐步求精;
五.应用题每小题10分,共20分
1.某旅馆的电话服务如下:8分
可以拨分机号码和外线号码;分机号是从7201至7299;外线号码先拨9,然后是市话号码或长话号码;长话号码是以区号和市话号码组成;区号是从100到300中任意的数字串;市话号码是以局号和分局号组成,局号可以是455、466、888、552中任意一个号码;分局号是任意长度为4的数字串;
要求:写出在数据字典中,电话号码的数据条目的定义即组成;
答:
电话号码=分机号|外线号码
分机号=7201..7299
外线号码=9+市话号码|长话号码
长话号码=区号+市话号码
区号=100..300
市话号码=局号+分局号
局号=455|466|888|552
分局号=4{0..9}4
2.略
