软件工程模拟试题一及答案
一、单选题
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.异步控制
B.同步控制 C.存取控制
D.基线控制
12.提高软件质量和可靠的技术大致可分为两大类:其中一类就是避开错误技术,但避开错误技术无法做到完美无缺和绝无错误,这就需要
。
A.消除错误
B.检测错误 C.避开错误
D.容错
13._____是以提高软件质量为目的的技术活动。
A.技术创新
B.测试
C.技术创造
D.技术评审
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. 中级结构性成本模型COCOMO是一个 。
A. 静态单变量模型 B. 动态单变量模型 C. 静态多变量模型
D. 动态多变量模型
21. 面向对象的开发方法中, 将是面向对象技术领域内占主导地位的标准建模语言。
A. Booch方法 B. Coad方法 C. UML语言
D. OMT方法
22. 软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为 。
A. 可用性
B. 可靠性 C. 正确性 D. 完整性
23. 汽车有一个发动机。汽车和发动机之间的关系是_____关系。
A.一般具体 B.整体部分 C.分类关系
D.主从关系
24. 研究开发所需要的成本和资源是属于可行性研究中的 研究的一方面。
A. 技术可行性 B. 经济可行性 C. 社会可行性 D. 法律可行性
25.系统流程图用于可行性分析中的_____的描述。
A.当前运行系统
B.当前逻辑模型 C.目标系统
D.新系统
二、填空题
1.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是(
)。
2.功能模型描述子系统的所有计算,它由多张( )组成。
3.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和( ) 。
4.JSP方法主要体现程序结构的设计,不明确地划分( )和详细设计的两个阶段。
5.汇编语言是面向( ) 的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。
6.软件维护的内容包括校正性维持,适应性维护、完善性维护 和( )。
7.详细设计的任务是确定每个模块的内部特性,即模块的算法、( )。
8.所有软件维护申请报告要按规定方式提出,该报告也称( )报告。
9.将开发项目与一个或多个已完成的类似项目进行比较,找出与某个相类似项目的若干不同之处,并估算每个不同之处对成本的影响,得出开发项目的总成本。这种成本估算方法称为 ( )。
10.软件概要设计的主要任务就是 ( )。
三、名词解释
1.软件生存周期模型
2.数据字典(DD)
3.内聚性
4.JSP方法
5.多态性
四、简答题
1. 软件生产经历了几个阶段?各有何特征?
2. 模块的内聚性包括哪些类型?
3. 什么是数据流图?其作用是什么?其中的基本符号各表示什么含义?
4. 软件概要设计阶段的基本任务是什么?
5. 简述三种面向对象模型的主要功能。
软件工程模拟试题一(答案)
一、单选题
CDCAA BCCAC BDDDD ADAAC CBBBA
二、填空题
1.功能需求
2.数据流图
3.宽度优先策略
4. 软件概要设计 5.机器
6.预防性维护
7.使用的数据
8.软件问题 9.差别估算法
10.软件结构的设计
三、名词解释
1.是描述软件开发过程中各种活动如何执行的模型。
2.数据字典是用来定义数据流图中的各个成分的具体含义的。它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。
3.内聚性是模块独立性的衡量标准之一,它是指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。
4.JSP方法是面向数据结构的设计方法,其定义了一组以数据结构为指导的映射过程,它根据输入,输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构。
5.指相同的操作或函数、过程可作用于多种类型的对象上并获得不同结果。或(不同的对象,收到同一消息可以产生不同的结果。
四、简答题
1.
软件生产至今已经历了三个阶段:㈠程序设计时代(1946-1956):这个阶段的生产方式是个体手工劳动,使用的工具实际其语言、汇编语言。开发方法是追求编程技巧,追求程序运行效率。硬件特征是价格贵、存储容量小,运行可靠性差。软件特征是只有程序、程序设计概念,不重视程序设计方法。㈡程序系统时代(1956-1968):这个阶段的生产方式是作坊式的小集团合作生产,生产工具是高级语言,开发方法仍就靠个人技巧,但开始提出结构化方法。硬件特征是速度、容量、工作可靠性有明显提高。软件特征是程序员数量猛增,但开发技术没有新的突破,开发人员的素质和落后的开发技术不适应规模大、结构复杂的软件开发,导致软件危机的产生。㈢软件工程时代(1968至今):这个阶段的生产方式是工程化的生产,使用数据库、开发工具、开发环境、网络、分布式、面向对象技术来开发软件。硬件特征是向超高速、大容量、微型化以及网络化方向发展。软件特征是开发技术有很大进步,但是未能获得突破性进展,软件价格不断上升,没有完全摆脱软件危机。
2. 模块的内聚性包括:
(1)偶然内聚(2)逻辑内聚(3)时间内聚
(4)通信内聚(5)顺序内聚(6)功能内聚
3. 数据流图简称DFD,是SA方法中用于表示系统逻辑模型的一种工具。
它以图形的方式描述数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。数据流图有四种基本图形符号:“→”箭头表示数据流;“○”圆或椭圆表述加工;“=”双杠表示数据存储;“”方框表示数据的源点或终点。
4. ⑴设计软件系统结构(简称软件结构),具体为:①采用某种设计方法,将一个复杂的系统按功能划分成模块。②确定每个模块的功能。③确定模块之间的调用关系。④确定模块之间的接口,即模块之间传递的信息。⑤评价模块结构的质量。⑵数据结构及数据库设计,汉数据结构的设计及数据库的设计。⑶编写概要设计文档。主要有:概要设计说明书;数据库设计说明书;用户手册;修订测试计划。⑷评审。
5. ⑴对象模型:表示了静态的结构化的系统数据性质,描绘了系统的静态结构,从客观世界实体的对象关系角度来描绘对象。
⑵动态模型:该模型描述了系统的控制结构,它表示了瞬间的、行为化的系统控制性质,它关心的是系统的控制及操作的执行顺序,它从对象的事件和状态的角度出发,表现了对象的相互行为。
⑶功能模型:描述了系统的所有计算。指出发生的时间、事件和客体。