软件工程考试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、选择题:
1. 瀑布模型的关键不足在于( A )。
A. 过于简单
B. 各个阶段需要进行评审
C. 过于灵活
D. 不能适应需求的动态变更
2. 以下哪一项不是软件危机的表现形式( C )。
A. 开发的软件不满足用户需要
B. 开发的软件可维护性差
C. 开发的软件价格便宜
D. 开发的软件可靠性差
3. 结构化设计是一种面向( A )的设计方法。
A. 数据流
B. 模块
C. 数据结构
D. 程序
4. 软件开发的需求活动,其主要任务是( D )。
A. 给出软件解决方案
B. 给出系统模块结构
C. 定义模块算法
D. 定义需求并建立系统模型
5. 一个项目是否开发,从经济上来说是否可行,归根结底是取决
于( A )。
A. 成本估算
B. 项目计划
C. 工程管理
D. 工程网络图
6. 在面向对象的设计中,我们应遵循的设计准则除了模块化、抽
象、低耦合、高内聚以外,还有( B )。
A. 隐藏复杂性
B. 信息隐蔽
C. 经常类的复用
D. 类的开发
7. 在考察系统的一些涉及时序和改变的状况时,要用动态模型来
表示。动态模型着重于系统的控制逻辑,它包括两个图:一个
是事件追踪图,另一个是( B )。
A. 数据流图
B. 状态图
C. 系统结构图
D. 用例图
8. 软件维护产生的副作用,是指( C )。
A、开发时的错误
B、隐含的错误
C、因修改软件而造成的错误
D、运行时误操作
9. 若有一个计算类型的程序,它的输入量只有一个X,其范围是
[-1.0,1.0],现从输入的角度考虑一组测试用
例:-1.001,-1.0,1.0,1.001,设计这组测试用例的方法是(
C )。
A、条件覆盖法
B、等价分类法
C、边界值分析法
D、错误推测法
10. 经过严密的软件测试后所提交给用户的软件产品中( B )
A、软件不再包含任何错误
B、还可能包含少量软件错误
C、所提交给用户的可执行文件不会含有错误
D、文档中不会含有错误。
11. 需求分析的任务不包括( B )。
A. 问题分析
B. 系统设计
C. 需求描述
D. 需求评审
12. 软件可行性研究实质上是要进行一次( A )需求分析、设计过
程。
A. 简化、压缩的
B. 详细的
C. 彻底的
D. 深入的
13. 下列属于维护阶段的文档是( C )。
A.软件规格说明 B.用户操作手册
C.软件问题报告 D.软件测试分析报告
14. 软件维护产生的副作用,是指( C )。
A.开发时的错误
B.隐含的错误
C.因修改软件而造成的错误
D.运行时误操作
15. 研究开发所需要的成本和资源是属于可行性研究中的( B )研究
的一方面。
A. 技术可行性
B. 经济可行性
C. 社会可行性
D. 法律可行性
16. 软件是一种( C )。
A.程序
B.数据
C.逻辑产品
D.物理产品
17. 从心理学角度看,对数据流程图的数据处理泡进行分解,一次
分解为多少个泡为宜。( B )
A.3±1
B.7±2
C.15±1
D.18±2
18. 下列模型属于成本估算方法的有( A )。
A.COCOMO模型
B.McCall模型
C.McCabe度量法
D.时间估算法
19. 下面关于PDL语言不正确的说法是( D ) 。
A. PDL是描述处理过程怎么做
B. PDL是只描述加工做什么
C. PDL也称为伪码
D. PDL的外层语法应符合一般程序设计语言常用的语法规则
20. 在软件开发中,( A )是指对将要开发的系统的开发成本进行估
算,然后与可能取得的效益进行比较和权衡。
A. 成本—效益分析
B. 可行性分析
C. 结构化分析
D. 软件需求分析
2、 填空题:
1. 在信息处理和计算机领域内,一般认为软件是 程序、文档 和_
数据 。
2. 划分模块时尽量做到 高内聚 、 低耦合 ,保持模块的独
立性,尽量使用公共模块。
3. 类的实例化是 对象。
4. 将得到软件的总开发量。这种成本估算方法称为 自底向上
。
5. 如果一个模块被 n 个模块调用,其中直接的上级模块的个数是
m 个( m<=n )那么该模块的扇入数是 N 个。
6. 从结构化程序设计到 面向对象程序设计 ,是程序设计方法的
又一次飞跃。
7. 在单元测试时,需要为被测模块设计___测试用例_____
8. 可行性研究的目的是用最小的代价在尽可能短的时间内确定该
软件项目 是否值得开发 。
9. .需求分析阶段,分析人员要确定对问题的综合需求,其中最主
要的是__功能需求 。
10. 软件生存周期中时间最长、花费的精力和费用最多的一个阶段
是 维护 阶段
11. 增量模型适合于 软件需求 不明确、设计方案有一定风险的
软件项目
12. Jackson方法是一种面向 数据结构 的设计方法
13. 软件项目管理的范围主要集中于3个P上,即:People人员、
Problem问题和 过程process
14. 软件工程管理的主要内容有:项目经费管理, 软件质量管
理, 项目进度管理 和 人员管理
15.
3、 名词解释:
1、 软件可靠性:指在给定的时间内,程序按照规定的条件成功地运行的概率
2、 数据词典:是描述数据信息的集合,它对数据流图中的各个元素按规定格式进行详细的描述和确切的解释,是数据流图的补充工具。
3、 软件再工程:运用逆向工程、重构等技术,在充分理解原有软件的基础上,进行分解、综合、并重新构建软件,用于提高软件的可理解性、可维护性可复用性或演化性。
4、 完善性维护:为了适应用户业务和机构的发展变化而对软件的功能、性能进行修改、扩充的过程称为完善性维护。因为各种用户的业务