!软件工程练习题3
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、选择题
1.软件是一种()产品。
A.有形 B.逻辑C.物质 D.消耗
2.与计算机科学的理论研究不同,软件工程是一门()
A.理论性B.工程性C.原理性D.心理性
3.软件工程学科出现的主要原因是()
A.计算机的发展B.其他工程学科的影响力
C.软件危机的出现D.程序设计方法学的影响
4.软件生存周期模型有多种,下列选项中,()不是软件生存周期的模型。
A.螺旋模型B.增量模型C.功能模型D.瀑布模型
5.软件开发模型是指软件开发的全部过程、活动和任务的结构框架。主要的开发模型有瀑布模型、
演化模型、螺旋模型和喷泉模型。螺旋模型将瀑布模型和演化模型相结合,并增加了[A ],它建立在[B ]的基础上,沿着螺线自内向外每旋转一圈,就得到[B ]的一个版本。喷泉模型描述了[C ]的开发模型,它体现了这种开发方法创建软件的过程所固有的[D ]和
[E ]的特征。
供选择的答案:
A:(1)系统工程(2)风险分析(3)设计评审(4)进度控制
B:(1)模块划分(2)子程序分解(3)设计(4)原型
C:(1)面向对象(2)面向数据流(3)面向数据结构(4)面向事件驱动
D:(1)归纳(2)推理(3)迭代(4)递归
E:(1)开发各阶段之间无“间隙”(2)开发各阶段分界明显(3)部分开发阶段分界明显(4)开发过程不分阶段
您的选择是: 【A 】【B 】【C 】【D 】【E 】
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.在软件开发过程中常用图作为描述工具。DFD就是面向(A)分析方法的描述工具。在一套分层
DFD中,如果某一张图中有N个加工,则这张图允许有(B)张子图。在一张DFD图中,相邻两个加工之间(C)。在画分层的DFD时,应保持(D)之间的平衡。DFD中从系统的输入流到系统的输出流的一连串连续变换形成一种信息流,这种信息流可分为(E)两大类。
A.①数据结构②数据流③对象④构件
B.①0 ②1 ③1-N ④0-N
C.①有且仅有一条数据流
②至少有一条数据流
③可以有0和多条名字互不相同的数据流
④可以有0和多条数据流,但允许其中有若干条名字相同的数据流
D.①父图和子图
②同一父图的所有子图
③不同父图的所有子图
④同一子图的所有直接父图
E.①控制流和变换流
②变换流和事务流
③事务流和事件流
④事件流和控制流
16.进行需求分析可使用多种工具,但()是不适用的。
A.数据流图B.判定表
C.PAD图D.数据字典
17.在数据流图中,有名字及方向的成分是()。
A.控制流B.信息流C.数据流D.信号流
18.需求分析最终结果是产生()。
A.项目开发计划B.可行性分析报告
C.需求规格说明书D.设计说明书
19.软件设计包括四个既独立又相互联系的活动,分别为( 1 ) 、(2) 、数据设计和过程设计。
(1)A.用户手册设计B.语言设计C.体系结构设计D.文档设计
(2)A.文档设计B.程序设计C.实用性设计D.接口设计
20.为了提高模块的独立性,模块内部最好是()。
A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚
21.好的软件结构应是()
A.高耦合、高内聚B.低耦合、高内聚
C.高耦合、低内聚D.低耦合、低内聚
22.程序控制一般分为()、分支、循环三种基本结构。
A.分块B.顺序C.重复D.选择
23.软件设计中划分通常遵循的原则是要使模块间的耦合性尽可能地()
A.强B.弱C.较强D.适中
24.在多层次的结构图中,其模块的层次数称为结构图的()。
A.深度B.跨度C.控制域D.粒度
25.()是指把一些关系密切的软件元素物理地放得彼此靠近。
A.隐藏B.内聚C.局部化D.模块独立
26.()工具在软件详细设计过程中不采用。
A.判定表
B.IPO图
C.PDL
D.DFD
27.指出PDL是下列()语言。
A.高级程序设计语言B.伪码
C.中级程序设计语言D.低级程序设计语言
28.工程上常用的表达工具有()。
A.图形工具B.表格工具C.语言工具D.以上全是
29.结构化程序设计主要强调的是()。
A.程序的效率B.程序执行速度
C.程序易读性D.程序的规模
30.最早用于科学计算的程序设计语言是( )
A、PROLOG语言
B、SMALLTALK语言
C、FORTRAN语言
D、COBOL语言
31.软件测试的目的是()
A.证明软件的正确性B.找出软件系统中存在的所有错误
C.证明软件系统中存在错误
D.尽可能多的发现软件系统中的错误
32.一般来说与设计测试数据无关的文档是()。
A.需求规格说明书B.设计说明书C.源程序D.项目开发计划
33.下面的逻辑测试覆盖中,测试覆盖能力最弱的是()。
B.A.条件覆盖B.条件组合覆盖C.语句覆盖D.条件/判定覆盖