软件工程概论复习题(答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件工程概论复习题答案
一、单选题
1.软件工程的纵向分解是把软件开发分为几个(B)
A.模块B.阶段C.子系统D.过程
2.McCall软件质量度量模型中属于面向软件产品操作的是(D)
A.适应性B.可重用性C.可测试性D.可用性
3.快速原型模型中,用于及早向用户提交一个原型系统的是(D)
A.实验型原型B.探索型原型C.提交型原型D.演化型模型4.软件维护中,因重新初始化控制标志或指针而引起的错误是以下哪一项的副作用(B)A.文档B.数据C.编码D.设计
5.软件维护费用高的主要原因是(B)
A.生产率高B.生产率低C.人员多D.人员少
6.根据对软件开发机构调查的结果可知,各类维护活动所占的比重是(A)A.完善性占50%,适应性占25%,校正性占21%,其他维护占4%
B.完善性占25%,适应性占50%,校正性占21%,其他维护占4%
C.完善性占21%,适应性占25%,校正性占50%,其他维护占4%
D.完善性占21%,适应性占50%,校正性占25%,其他维护占4%
7.下列属于用白盒技术设计测试用例的是(B)
A.错误推测B.逻辑覆盖C.等价类划分D.因果图
8.有助于培养良好的编程风格并且第一个体现了结构化编程思想的程序设计语言的是(A)
A.PASCALB.FORTRAN C.DL/1D.C
9.在软件详细设计过程中不采用的工具为(C)
A.判定表B.PDL C.数据流图D.IPO图
10.根据输入输出的数据结构产生程序结构的设计方法是(B)
A.PARNAS方法B.JACKSON方法C.WIRTH方法D.DIJKSTRA方法11.在软件设计中,为解决一个大而复杂的问题把软件系统划分为一个个完成某一特定的子功能的方法称为(C)
A.细化B.结构化C.模块化D.抽象化
12.结构化方法在建立软件系统的结构模块时按照以下哪种方法进行?(B)
A.由底向上B.自顶向下C.随机D.回归
13.两个模块之间传递的是同一个数据结构的地址,这种耦合方式称为(C )
A.控制耦合B.公告耦合C.标记耦合D.数据耦合
14.结构化设计是以哪个阶段产生的DFD图为基础,按一定的步骤映射成软件结构?(B)A.可行性分析B.需求分析C.概要设计D.详细设计
15.结构化方法的基本原则是功能的分解和( C )
A.模块化B.信息隐藏C.抽象D.细化
16.数据字典和数据流图共同构成了系统的(B)
A.物理模型B.逻辑模型C.原型D.目标模型
17.软件需求不应包括(C )
A.功能要求B.环境需求C.标准实现的空间需求D.用户界面要求18.项目开发计划是什么类型的文档?( D )
A.设计性B.进度表示C.需求分析D.管理性
19.瀑布模型是一种什么类型?( B )
A.风险驱动模型B.线性开发模型C.增量模型D.迭代模型20.软件工具一般是为软件开发人员和维护活动而使用的(C )
A.硬件环境B.说明书C.软件D.程序
21.瀑布模型存在的问题是(B )
A.用于容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求22.可将软件生存周期划分为3个过程,可行性研究属于其中的(A )
A.软件定义过程B.软件开发过程C.软件设计过程D.软件运行与维护过程23.经济可行性研究的范围包括(C )
A.资源有效性B.管理制度C.效益分析D.开发风险
24.需求分析中开发人员要从用户那里了解(A )
A.软件做什么B.用户使用界面C.输入的信息D.软件的规模25.交互设计不包括( C )
A.角色设计B.目标设计C.算法设计D.任务设计
26.一个模块的(B )是指能直接控制模块的模块数。
A.扇出数B.扇入数C.宽度D.深度
27.将软件组装成系统的一种测试技术叫( A )
A.集成测试B.单元测试C.集合测试D.系统测试
28.为了进一步改善软件系统的可维护性和可靠性,并为以后的改进奠定基础的软件维护称为(D)
A.纠错性维护B.适应性维护C.改善性维护D.预防性维护
29.项目管理中成本估算时测算快,误差大,适用于准备开发阶段的估算方法是(B )A.类比估算法B.专家估算法C.参数估算法D.COCOMO方法
30.面向对象软件技术的许多强有力的功能和突出的优点,都来源于把类组织成一个层次结构的系统,一个类的上层可以有父类,下层可以有子类,这种层次结构系统的一个重要性质是(A ),一个类获得其父类的全部描述(数据和操作)。
A.传递性B.继承性C.复用性D.并行性
31.软件生命周期中所花费最多的阶段是(D)
A.详细设计B.软件编码C.软件测试D.软件维护
32.在纤细设计阶段,经常采用的工具有( A )
A.PAD B.SA C.SC D.DFD
33.对象实现了数据和操作的结合,使数据和操作(C)于对象的统一体中。
A.结合B.隐藏C.封装D.抽象
34.统计表明,软件测试工作往往占软件开发总工作量的(B)%以上。
A.20 B.40 C.60 D.80
35.为了提高软件产品的质量和可靠性,对某些无法避开的差错,使其影响减至最小程度所采用的技术是( A )
A.容错技术B.避开错误技术C.检测技术D.排错技术
36.软件复杂性的常用度量方法包括( D )
A.BOEHM度量法B.可扩充度量法C.线性度量法D.代码行度量法