软件工程期末试题及答案(史上最全)

2.可行性研究主要从以下几个方面进行研究: ( A)

A) 技术可行性,经济可行性,操作可行性。

B) 技术可行性,经济可行性,系统可行性。

C) 经济可行性,系统可行性,操作可行性。

D) 经济可行性,系统可行性,时间可行性。

3.耦合是对软件不同模块之间互连程度的度量。各种耦合按从强到弱排列如下: ( C)

A) 内容耦合,控制耦合,数据耦合,公共环境耦合。

B) 内容耦合,控制耦合,公共环境耦合,数据耦合。

C) 内容耦合,公共环境耦合,控制耦合,数据耦合。(内容耦合、公共耦合、外部耦合、控制耦合、特征耦合、数据耦合)

D) 控制耦合,内容耦合,数据耦合,公共环境耦合。

4.在详细设计阶段所使用到的设计工具是:(C )

A) 程序流程图,PAD图,N-S图,HIPO图,判定表,判定树.

B) 数据流程图,Yourdon 图,程序流程图,PAD图,N-S图,HIPO图。

C) 判定表,判定树,PDL,程序流程图,PAD图,N-S图。

D) 判定表,判定树,数据流程图,系统流程图,程序流程图,层次图。

详细设计阶段工具:判定表、判定树、数据流程图、系统流程图、程序流程图、PAD图、N-S图、PDL

在软件详细设计阶段,常用的图形描述工具有程序流程图,盒图(NS 图)和问题分析图(PAD) .常用的语言描述工具为 PDL(程序设计语言) ,常用的表格描述工具有判定表和判定树.

DFD数据流图:总体设计阶段

5.按照软件工程的原则,模块的作用域和模块的控制域之间的关系是: ( A)

A)模块的作用域应在模块的控制域之内。

B)模块的控制域应在模块的作用域之内。

C)模块的控制域与模块的作用域互相独立。

D)以上说法都不对。

6.在软件生命周期中,能准确确定软件系统的体系结构的功能阶段是 (C )

A.概要设计 B.详细设计 C.需求分析 D.可行性分析

7.下面不是软件工程的3个要素的是( C)

A过程 B.方法 C.环境 D.工具

软件工程的三个要素:方法、工具、过程

8.下面不属于软件的组成的是(B )

A程序 B.记录 C.文档 D.数据

软件=程序+数据+文档+服务

9.在瀑布模型中,将软件分为若干个时期,软件项目的可行性研究一般归属于( C)

A.维护时期 B.运行时期 C.定义时期 D.开发时期

10.在瀑布模型中,下面(C )是其突出的缺点。

A.不适应平台的变动

B.不适应算法的变动

C.不适应用户需求的变动

D.不适应程序语言的变动

11下面不属于软件的特点的是( D)。

A软件是一种软件产品

B软件产品不会用坏,不存在磨损、消耗问题

C软件产品的生产主要是研制

D软件产品非常便宜

12 软件开发工具是协助开发人员进行软件开发活动所使用的软件或环境。下面不是软件开发工具的是。A

A.维护工具 B.编码工具 C.测试工具 D.需求分析工具

13.下列叙述中不属于软件生命周期模型的是(D )。

A.原型模型 B.瀑布模型 C.螺旋模型 D.快速组装模型

14.软件设计中,用抽象和分解的目的是(B )。

A.提高易读性B.降低复杂性 C.增加内聚性 D.降低耦合性

15软件生命周期中所花费用最多的阶段是(D )。

A.详细设计 B.软件编码 C.概要设计 D.软件测试和维护

16.开发软件时对提高开发人员工作效率至关重要的是(B )。

A.操作系统的资源管理功能

B.先进的软件开发工具和环境

C.程序人员的数量

D.计算机的并行处理能力

17.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作( B)。

A.软件投机 B.软件危机 C.软件工程 D软件产生

18软件开发的结构化生命周期方法将软件生命周期划分成(A)

A.定义、开发、运行维护

B.设计阶段、编程阶段、测试阶段

C.总体设计、详细设计、编程调试

D.需求分析、功能定义、系统设计

19.软件工程的理论和技术性研究的内容主要包括软件开发技术和(B )。

A.消除软件危机

B.软件工程管理

C.程序设计自动化

D.实现软件可重用

20软件工程的出现是由于( C)。

A.程序设计方法学的影响

B.软件产业化的需要

C.软件危机的出现

D.计算机的发展

21.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D )。

A.概要设计

B.详细设计

C.问题定义

D.需求分析

22. 开发大型软件时,产生困难的根本原因是(A )。

A.大系统的复杂性 B.人员知识不足

C.客观世界千变万化 D.时间紧、任务重

23. 文档是软件开发人员、软件管理人员、维护人员、用户以及计算机之间的( B),软件开发人员在各个阶段以文档作为前段工作成果的体现和后段工作的基础。

A.接口B.桥梁C.科学D.继续

24软件工程学的目的是以 较低的成本,研制(A )质量的软件。

A较高B较低C.可靠D.优秀

25软件从一个计算机系统或环境转换到另一个计算机和环境的容易程度称为(D )。

A.可用性B.兼容性C.可靠性D.可移植性

26.软件生存周期是指( D)阶段。

A.软件开始使用到用户要求修改为止

B.软件开始使用到被淘汰为止

C.从开始编写程序到不能再使用为止

D.从立项制定计划,进行需求分析到不能再使用为止

27.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是( B)。

A引入新技术提高空间利用率

B用较少的投资获得高质量的软件

C缩短研制周期扩大软件功能

D硬软件结合使系统面向应用

28. 软件可行性分析是着重确定系统的目标和规模。对成本-效益进行发现应属于下列选项中的(A )。

A.经济可行性B.操作可行性C.技术可行性D.社会可行性

29在数据流图中,用圆或者椭圆来表示(B )。

A.数据流B.加工C.数据存储D.数据源点或终点

30. 需求分析阶段的任务是确定( C)。

A.软件开发方法

B.软件开发费用

C.软件系统功能

D.软件开发工具

31(D )的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。

A需求分析 B概要设计 C总体设计 D可行性研究

32.下列选项中( D)不是软件需求规格目标。

A.便于用户、分析员和软件设计人员进行理解及交流

B.控制系统的实施过程

C.作为软件测试和验收以及维护的依据

D.便于软件的维护

33下面描述中,不符合结构化程序设计风格的是( B)。

A使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑

B模块只有一个入口,可以有多个出口

C注重提高程序的执行效率

D不使用goto语句

34. 下列工具中属于需求分析常用工具的是(D )。

A.PAD B.PFD C.N-S D.DFD

35. 在数据流图(DFD)中,带有名字的箭头表示(C )。

A.控制程序的执行顺序

B.模块之间的调用关系(直线)

C.数据的流向

D.程序的组成成分

长方形代表起点或者终点

36. 在软件生产过程中,需求信息的给出是(D )。

A.程序员 B.项目管理者 C.软件分析设计人员 D.软件用户

37下列叙述中,不属于结构化分析方法的是( C)。

A.面向数据流的结构化分析方法

B.面向数据结构的结构化数据系统开发方法

C.面向对象的分析方法

38结构设计(SD)是一种应用最广泛的系统设计方法,是以( B)为基础、自顶向下、逐步求精和模块化的过程。

A.数据流 B.数据流图 C.数据库 D数据结构

39需求分析是由分析员经了解用户的要求,认真细致地调研、分析,最终应建立目标系统的逻辑模型并写出( B)。

A.模块说明书B.软件规格说明书C.项目开发计划 D.合同文档

40. 结构化分析方法以数据流图、( D)和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型。

A.DFD图 B.PAD图 C.IPO图 D.数据字典

41. 数据字典是软件需求分析阶段的重要工具之一,它的基本功能是( A)

A.数据定义B.数据维护C.数据通讯D.数据库设计

42. 以下( A)不是详细设计中常用的图形描述工具。

A.数据流图B.程序流图C.盒图(N-S)D.问题分析图(PAD)

43. 在结构图的有关术语中,用于表示软件结构中控制的层数的是 (C )

A.扇入B扇出C深度D宽度

44. 模块的独立程度是评价设计好坏的重要标准。( A)是衡量

软件的模块独立性的两个定性度量标准。

A耦合性和内聚性B内聚性和可靠性

C耦合性和独立性D可靠性和独立性

45. 软件设计包括(B )两个阶段。

A.接口设计和结构设计B.概要设计和详细设计

C.数据设计和概要设计D.结构设计和过程设计

46在详细设计阶段,经常采用的工具是(A )。

A.PAD B.SA C.SC(结构图,总体设计) D.DFD

47. 在软件开发中,下面任务不属于设计阶段的是(D )。

A.数据结构设计 B给出系统模块结构

C定义模块算法 D定义需求并建立系统模型

48.对建立良好的程序设计风格,下面描述正确的是( A)。

A程序应简单、清晰、可读性好 B符号名的命名要符合语法

C充分考虑程序的执行效率 D程序的注释可有可无

49.下面不属于软件设计原则的是(C )。

A抽象B模块化C自底向上D信息隐蔽

50. 为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为(C )。

A PAD图 B.N-S图 C.结构图 D数据流图

51软件测试按照功能划分可以分为(B )。

A黑盒测试和单元测试 B白盒测试和黑盒测试

C集成测试和单元测试 D白盒测试和静态测试

软件测试按照功能划分可以分为白盒测试和黑盒测试

按照开发阶段划分,软件测试可分为单元测试、集成测试,系统测试和验收测试

白盒测试方法:逻辑覆盖、循环测试、基本路径测试

黑盒测试方法:等价分类法,边界值分析法、错误推断法,因果图法,场景法.

52在软件测试过程的4个步骤中,测试依据是需求规格说明的是( C)

A单元测试B集成测试C确认测试D系统测试

53黑盒测试法属于( C)。

A集成测试B系统测试C动态测试D静态测试

静态测试(不实际运行软件,对软件的格式和结构进行评估)包括:代码规则检查、程序结构分析、代码质量度量(程序复杂度分析)

动态测试:功能确认与接口测试、覆盖率分析、性能分析、内存分析

54下列叙述中错误的是( C)。

A测试是为了寻找错误而运行程序的过程

B一个成功的测试是揭示了迄今为止尚未发现的错误的测试

C测试的目的是为了证明程序是正确的

D一个好的测试用例是指很可能找到迄今为止尚未发现的错误的测试

55软件测试过程是软件开发过程的逆过程,其最基础性的测试应是

( B)

A集成测试B单元测试C有效性测试D系统测试

55.1 有一组测试用例使得每一个被测试用例的分支覆盖至少被执行一次,它满足的覆盖标准___________。( B )

A. 语句覆盖 B.判定覆盖 C.条件覆盖 D.路径覆盖

6.关于白盒测试与黑盒测试的最主要区别,正确的是__。( A )

A.白盒测试侧重于程序结构,黑盒测试侧重于功能

B.白盒测试可以使用测试工具,黑盒测试不能使用工具

C.白盒测试需要程序参与,黑盒测试不需要

D.黑盒测试比白盒测试应用更广泛

56. 程序的三种基本控制结构是( B)。

A. 过程、子程序和分程序

C. 递归、迭代和回溯

B. 顺序、选择和重复

D. 调用、返回和转移

57. 面向对象的分析方法主要是建立三类模型,即(D )。

A) 系统模型、ER模型、应用模型

B) 对象模型、动态模型、应用模型

C) E-R模型、对象模型、功能模型

D) 对象模型、动态模型、功能模型

58. 在E-R模型中,包含以下基本成分( C)。

A) 数据、对象、实体

B) 控制、联系、对象

C) 实体、联系、属性

59.软件测试的目标是(B )。

A. 证明软件是正确的

B. 发现错误、降低错误带来的风险

C. 排除软件中所有的错误

D. 与软件调试相同

60.软件生命周期中所花费用最多的阶段是( D)

A.详细设计 B.软件编码 C.软件测试 D.软件维护

61.在数据流图中, 圆或椭圆表示 (1) A ,平行线表示 (2) D__。

(1) A、加工 B、外部实体

C、数据流 D、存储

(2)) A、加工 B、外部实体

C、数据流(箭头) D、存储

62.瀑布模型(Waterfall Model)突出的缺点是不适应 ( D)的变动。

A、算法 B、平台 C、程序语言 D、用户需求

63.结构化分析方法(SA)的一个重要指导思想是(C ) 。

A.自顶向下,逐步抽象

B.自底向上,逐步抽象

C.自顶向下,逐步分解

D.自底向上,逐步分解

64.模块的控制范围包括它本身及它所有的从属模块,模块的作用范围是指模块内一个判定的作用范围,凡是受到这个判定影响的所有模块都属于这个判定的作用范围,理想的情况是( A)

A.模块的作用范围应在控制范围之内

B.模块的控制范围应在作用范围之内

C.模块的作用范围与控制范围交叉

D. 模块的作用范围与控制范围不相交

65.软件危机具有下列表现( D )

I、对软件开发成本估计不准确

II、软件产品的质量往往不可靠

III、软件常常不可维护

IV、软件成本逐年上升

A.I、II和III B.I、III和IV

C.II、III和IV D.以上都正确

66. 产生软件危机的原因可能有( D )

I、用户需求描述不精确、不准确

II、对大型软件项目的开发缺乏有力的组织与管理

III、缺乏有力的方法学和工具的支持

IV、软件产品的特殊性和人类智力的局限性

A.I和II B.I、II和IV

C.II、III和IV D.以上都正确

68. ( A )分批地逐步向用户提交产品,每次提交一个满足用户需求子集的可运行的产品。

A.增量模型 (分批) B.喷泉模型(重叠) C.原型模型 D.螺旋模型(迭代,风险分析)

69. 为了克服软件危机,人们提出了用 ( D ) 的原理来设计软件,这就是软件工程诞生的基础。

A. 数学 B. 软件学 C. 运筹学 D. 工程学

70.具有风险分析的软件生存周期模型是( C )

A.瀑布模型 B.喷泉模型

C.螺旋模型 D.增量模型

71.瀑布模型的关键不足在于( B )

A.过于简单 B.不能适应需求的动态变更

C.过于灵活 D.各个阶段需要进行评审

72.软件工程的目标有( B )。

A.易于维护 B.低的开发成本 C.高性能 D.短的开发期

73.软件工程学的目的和意义是( D )。

A.应用科学的方法和工程化的规范管理来指导软件开发

B.克服软件危机

C.做好软件开发的培训工作

D.以较低的成本开发出高质量的软件

74.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做 ( C)

A. 软件工程 B. 软件周期 C. 软件危机 D. 软件产生

75.快速原型模型的主要特点之一是 (D )

A. 开发完毕才见到产品 B. 及早提供全部完整的软件产品

C. 开发完毕后才见到工作软件 D. 及早提供工作软件

76.瀑布模型的存在问题是( B )

A.用户容易参与开发 B.缺乏灵活性

C.用户与开发者易沟通 D.适用可变需求

77.软件生存周期模型不包括:(  B )

A.瀑布模型   B.对象模型   C.增量模型   D.喷泉模型

78.下列哪个不属于软件工程的内涵之一( C )

A.应用完善的科学与工程原理 B.经济地开发软件

C.高薪聘请软件高手 D.开发既可靠又能有效运行的软件

79.在瀑布模型中,将软件划分为若干个时期,软件项目的可行性研究一般归属于( B )。

A.维护时期  B.计划时期   C.运行时期   D.开发时期

80.下列哪个办法不属于解决软件危机的途径之一( B )

A. 研制新一代智能计算机 B. 大力扶持软件企业

C. 采用软件工程的解决途径 D. 采用面向对象的软件设计方法

81.下面哪一项不属于快速原型模型的优点。B

A.可及早为用户提供有用的产品。

B.可保证在开发后期,全面发现错误给以纠正。

C.减少技术应用风险,缩短开发时间,减少费用、提高生产率。

D.促使用户主动参与开发活动,促进各类人员的协调,适应需求变化。

82.下列哪个不属于瀑布模型与传统的程序设计的不同之处( D )。

A.传统的程序设计开发人员只开发程序,不写文档.

B.传统的程序设计重点在问题求解和算法,并只有自己才能读懂.

C.瀑布模型的各阶段要第三方介入审察

D.传统的程序设计规定各阶段必须写文档.

83.下面哪个模式不属于软件工程的开发模式( C )

A.基于瀑布模型的开发模式 B.基于原型模型的开发模式

C.基于人机对话的开发模式 D.基于关系数据库的开发模式

84.数据字典是数据流图中所有元素的定义的集合,一般由以下四类条目组成( B )。

A.数据说明条目、控制流条目、加工条目、数据存储条目

B.数据流条目、数据项条目、数据存储条目、加工条目

C.数据源条目、数据流条目、数据处理条目、数据文件条目

D.数据流条目、数据文件条目、数据项条目、加工条目

85. 下列模型属于成本估算方法的有 (A )

A.COCOMO 模型 B.McCall 模型 C.McCabe 度量法 D. 时间估算法

86.DFD图反映系统( D )

A.怎么做 B.对谁做 C.何时做 D.做什么

87.经济可行性研究的范围包括( C )

A.资源有效性 B.管理制度 C.效益分析 D.开发风险

88.为高质量地开发软件项目,在软件结构设计时,必须遵循 ( A ) 原则。

A .信息隐蔽 B .质量控制 C .程序优化 D .数据共享

89.需求规格说明书的作用不包括(  C )

A .软件验收的依据 B .用户与开发人员对软件要做什么的共同理解

C .软件可行性研究的依据 D .软件设计的依据

90.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的( A)。

A.总貌B.细节C.抽象D.软件的作者

91.经调查,系统分析员给出有问题的初略陈述,其中部分描述如下:某商场的采购部门要求每天开出定购清单,交采购员;仓库管理员将此要还应输入系统,经库存业务(进贷或出贷)处理后输出。从这段描述可知该部分数据流图中的外部项为:A

A.采购员、仓库管理员 B.定购清单、库存业务

C.库存业务 D.定购清单、采购员

92.数据流是数据流图的基本成分,下列关于数据流的叙述中,B 是正确的。

A.某加工的输入是一个数据流,该加工的输出也必定是一个数据流

B.多个不同的数据流可以流向一个加工,也可从一个加工中流出

C.数据流只能从加工流向文件,但不能从文件流向加工

D.一个数据流可以从一个文件流向另一个文件

93. 需求分析阶段最重要的技术文档之一是:( C )

A.项目开发计划   B.设计说明书

C.需求规格说明书    D.可行性分析报告

94.需求工程的主要目的是( C )

A.系统开发的具体方案 B. 进一步确定用户的需求

C.解决系统是“做什么的问题” D. 解决系统是“如何做的问题”

95.不适于作为数据流图处理(加工)框名称的是__B__。

A.人工校核工资数据 B.工资支票数据

C.打印工资支票 D.计算职工工资

96 结构化程序设计思想的核心是要求程序只由顺序、循环和 (A ) 三种结构组成。

A. 选择 B. 单入口 C. 单出口 D. 有规则 GOTO

97. 模块( C),则说明模块的独立性越强。

A. 耦合越强 B. 扇入数越高 C. 耦合越弱 D. 扇入数越低

98. 当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为(D)

A .数据耦合 B .公共耦合 C .标记耦合 D .内容耦合

[解析] 耦合分为以下几种,按照耦合度由高到低排列是:

内容耦合――一个模块直接访问另一个模块的内容。

公共耦合――组模块都访问同一全局数据结构。

外部耦合――组模块都访问同一个数据项。

控制耦合――一个模块明显地把开关量、名字等信息送入另一模块,控制另一模块的功能

99.软件结构图中,模块框之间若有直线连接,表示它们之间存在( A )

A.调用关系 B.组成关系 C.链接关系 D.顺序执行关系

100.概要设计最终结果是产生(C)

A.项目开发计划 B.需求规格说明书

C.软件结构设计说明书 D.可行性分析报告

101.在有集成(组装)测试的叙述中,A__ 是正确的。

A测试底层模块时不需要桩模块

B驱动模块的作用是模拟被调模块

C自顶向下测试方法易于设计测试结果

D自底向上测试方法有有利于提前预计测试结果

102 .程序功能说明中指出:由三个输入数据表示一个三角形的三条边长。根据黑盒法中的边缘值分析法设计测试用例,应选___D__。

A.a=3,b=4,c=5 B.a=1,b=2,c=4

C.上述A.B 项目都应选上 D.a=1,b=2,c=3

103、软件维护的副作用,是指( C )。

A.开发时的错误  B.隐含的错误

C.因修改软件而造成的错误   D.运行时误操作

104.在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是( D )。

A.状态图 B.数据流图 C.系统结构图 D.时序图

105. 面向对象分析是对系统进行( A )的一种方法。

A.需求建模 B.程序设计 C.设计评审 D.测试验收

106. ( C )是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。

A.多态性 B.继承 C.封装 D.消息

107.下列不属于面向对象开发方法的是( B)

A.Booch B.UML C.Coad D.OMT

108. 面向对象的分析方法主要是建立三类模型,即( D )

A.系统模型,ER模型,应用模型 B.对象模型,动态模型,实现(应用)模型

C.ER模型,对象模型,功能模型 D.对象模型,动态模型,功能模型

109.面向对象程序设计的基本机制( A )

A.继承 B.消息 C.方法 D.结构

110. 下列属于面向对象的要素有( C )

A.分类性 B.抽象 C.对象 D.封装

对象三要素:对象、属性、服务

111.在进行面向对象分析时,所采用的模型有( )。

A.对象模型 B.动态模型 C.静态模型 D.功能模型

112.状态是对象属性的值的一种抽象,它的性质有( )。

A.时间性 B.持续性 C.有序性 D.有穷性

113.建立继承关系时所采用的方式有( )。

A.自顶向下 B.从内到外 C.自底向上 D.从复杂到简单

114.对象是人们要研究的任何事物,主要的对象类型有( )。

A.有形实体 B.作用 C.事件 D.性能说明

115. 类库这种机制是 ( D ) 级别的信息共享。

A. 同一类 B. 不同类 C. 同一应用 D. 不同应用

116. 状态是对象 ( D ) 的抽象。

A属性值 B. 方法 C. 功能 D. 行为

117. 动态模型的描述工具是 ( D ) 。

A. 对象图 B. 结构图 C. 流程图 D. 状态图

118.在确定对象的属性中,所有 ( A ) 是候选的对象。

A. 名词 B. 动词 C. 词组 D. 修饰性名词词组

119.对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。

A.结合 B.隐藏 C.封装 D.抽象

120.OOA是( D )

A. 结构化分析 B.面向对象程序设计

C. 面向对象程序分析 D. 面向对象分析

121. 面向对象的特征不包括( C )

A.继承性。 B.多态性。 C.互换性 D. .封装性

122. 在面向对象软件开发方法中,类与类之间主要有以下结构关系(D)

A继承和聚集 B继承和一般 C聚集和消息传递 D继承和方法调用

123. 以下哪一项不是面向对象的特征(D )

A多态性 B继承性 C封装性 D过程调用

124.对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。

A.结合 B.隐藏 C.封装 D.抽象

125. 在面向对象软件开发方法中,类与类之间主要有以下结构关系( A )

A继承和聚集 B继承和一般 C聚集和消息传递 D继承和方法调用

126. 以下哪一项不是面向对象的特征( D)

A多态性 B继承性 C封装性 D过程调用

127.下面所列的性质中,( D )不属于面向对象程序设计的特性。

A.继承性 B.重用性 C.封装性 D.可视化

128.下列是面向对象设计方法中有关对象的叙述,其中( B )是正确的。

A.对象在内存中没有它的存储区

B.对象的属性集合是它的特征表示

C.对象的定义与程序中类型概念相当

D.对象之间不能相互通信

129.在面向对象软件方法中,“类”是( D )。

A.具有同类数据的对象的集合 B.具有相同操作的对象的集合

C.具有同类数据的对象的定义 D.具有同类数据和相同操作的对象的定义

130.面向对象分析时,所标识的对象为__D____是错误的。

A.与目标系统有关的物理实体

B.与目标系统发生作用和人或组织的角色

C.目标系统运行中需记忆的事件

D.目标系统中环境场所的状态

131.面向对象设计OOD模型的主要部件中,通常不包括__A___。

A通信部件 B.人机交互部件 C.任务管理 D.数据管理

132.面向对象设计时,对象信息的隐藏主要是通过__A____实现的。

A.对象的封装性 B.子类的继承性

C.系统模块化 D.模块的可重用

133.作为面向对象分析的基础、由问题领域中的对象所组成、用ER图来描述是_A___。

A、消息模型 B.处理模型 C.状态模型 D.瀑布模块

134.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作( C )。

A.软件工程 B.软件周期 C.软件危机 D.软件产生

135.下面不属于软件工程3要素的是( D )

A)工具 B)过程 C)方法 D)环境

136.检查软件产品是否符合需求定义的过程称为( A )

A)确认测试 B)集成测试 C)验证测试 D)验收测试

137.数据存储和数据流都是( D ),仅仅是所处的状态不同。

A)分析结果 B)事件 C)动作 D)数据

138.数据流图和( C )共同组成目标系统的逻辑(功能)模型。

A)HIPO图 B)PDL C)数据字典 D)层次图

139.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( A )。

A)控制流 B)加工 C)数据存储 D)源和汇

140.结构化分析方法就是面向( B )的自顶向下逐步求精进行需求分析的方法。

A)目标 B)数据流 C)功能 D)对象

141.下面不属于软件工程设计基本原理的是( C )

A)抽象 B)模块化 C)自底向上 D)信息隐蔽

142.( D )是数据说明、可执行语句等程序对象的集合,它是单独命名的而且可以通过名字来访问。

A)模块化 B)抽象 C)精化 D)模块

143.面向数据流的设计方法把( D )映射成软件结构。

A)数据流 B)系统结构 C)控制结构 D)信息流

144.程序流程图(PDF)中的箭头代表的是( B )。

A)数据流 B)控制流 C)调用关系 D)组成关系

145.在进行软件结构设计时应该遵循的最主要的原理是( C )

A)抽象 B)模块化 C)模块独立 D)信息隐蔽

146.在测试中,下列说法错误的是( B )

A)测试是为了发现程序中的错误而执行程序的过程

B)测试是为了表明程序的正确性

C)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案

D)成功的测试是发现了至今为止尚未发现的错误的测试

147.下列工具中为需求分析常用工具是( D )

A)PAD B)PFD C)N-S D)DFD

148.软件调试的目的是( B )

A)发现错误 B)改正错误 C)改善软件的性能 D)挖掘软件的潜能

149.软件详细设计主要采用的方法是( A )。

A)结构化程序设计 B)模型设计 C)结构化设计 D)流程图设计

150.软件开发的原型化方法是一种动态定义软件需求的方,下述条件中,( A )是实施原型化方法所必需的。

Ⅰ 成熟的原型化人员

Ⅱ 快速的成型工具

Ⅲ 需求了解的正确性

A)Ⅰ和Ⅱ B)Ⅱ和Ⅲ C)Ⅰ、Ⅱ和Ⅲ D)Ⅲ

151.模块本身的内聚是模块独立性的重要性度量因素之一。在7类内聚中,具有最强内聚的一类是( D )。

A)顺序性内聚 B)过程性内聚 C)逻辑性内聚 D)功能性内聚

由弱到强:偶然内聚、逻辑内聚、时间内聚、过程内聚;通信内聚、顺序内聚和功能内聚。

152.数据字典是对数据定义信息的集合,它所定义的对象都包含在( A )中。

A)数据流图 B)程序框图 C)软件结构 D)方框图

153.软件开发的结构化分析方法,常用的描述软件功能需求的工具是( C )。

A)业务流程图、处理说明 B)软件流程图、模块说明 C)数据流程图、数据字典 D)系统流程图、程序编码

154.软件开发的结构化设计方法(SD方法),全面指导模块化分的最重要的原则应该是( C )。

A)模块高内聚 B)模块低耦合 C)模块独立性 D)程序模块化

155.面向数据流的软件设计方法,一般是把数据流图中得数据流化分为( B )两种流,再将数据流图映射为软件结构。

A)数据流与事务流 B)交换流和事务流 C)信息流与控制流 D)交换流和数据流

156.软件设计中,可应用于详细设计的工具有( A )。

A)程序流程图、PAD、方框图和伪码

B)数据流程图、PAD、结构图和伪码

C)业务流程图、N-S图和伪码

D)数据流程图、PAD、N-S图和伪码

157.软件开发的可行性研究,一般涉及经济、技术和操作的可能性,而进行可行性研究的基本依据则是用户提出的软件( B )。

A)系统质量 B)系统目标 C)系统功能 D)系统性能

158.结构化方法将软件生命周期分为计划、开发和运行3个时期,下列任务中( B )属于计划时期的任务。

A)需求分析 B)问题定义 C)总体设计 D)编码

159.耦合是软件各个模块间连接的一种度量。一组模块都访问同一数据结构应属于( B )方式。

A)内容耦合 B)公共耦合 C)外部耦合 D)控制耦合

[解析] 耦合分为以下几种,按照耦合度由高到低排列是:

内容耦合――一个模块直接访问另一个模块的内容。

公共耦合――组模块都访问同一全局数据结构。

外部耦合――组模块都访问同一个数据项。

控制耦合――一个模块明显地把开关量、名字等信息送入另一模块,控制另一模块的功能

160.内聚是从功能角度来度量模块内的联系,按照特定次序执行元素的模块属于( C )方式。

A)逻辑内聚 B)时间内聚 C)过程内聚 D)顺序内聚

逻辑内聚是指把几种相关的功能组合在一起,每次调用时,由传给模块的参数来确定模块应完成哪一种功能;

时间内聚是指顺序完成一类相关功能的模块;

过程内聚是指内部的处理元素是相关的而且必须以特定次序执行的模块,与题目相符

;而顺序模块是把模块内的处理元素和同一个功能密切相关,而且这些处理必须顺序执行的模块。

161.软件管理中,需要对软件进行配置,各阶段文档的管理属于( D )。

A)组织管理 B)资源管理 C)计划管理 D)版本管理

162.软件开发的结构化方法中,常用数据字典技术,其中数据加工是其组成内容之一,下述方法( D)是常采用编写加工说明的方法。

Ⅰ 结构化语言

Ⅱ 判定树

Ⅲ 判定表

A)Ⅰ B)Ⅱ C)Ⅱ、Ⅲ D)都是

163.软件开发过程中,软件结构设计是描述( B )。

A)数据存储结构 B)软件模块体系 C)软件结构测试 D)软件控制过程

164.( B )是对象的静态特征。

A.方法 B.属性 C.关系 D.操作

165.对象的(D )是对象的动态特征。

A.特征 B.属性 C.关系 D.操作

166.属于某个类的一个具体对象称为该类的( A )

A.实例 B.虚拟 C.继承 D.多态

167.UML是( A )。

A) 一种可视化的建模语言

B) 是一种可视化的程序设计语言

C)是一种过程

D) 是一种方法

168.下列的( C )不属于面向对象分析模型。

A. 用例图 B. 类图 C. 实体关系图 D. 顺序图

169.程序的三种基本控制结构是( B )。

A.过程、子程序和分程序 B.顺序、选择和重复 C.递归、堆栈和队列 D.调用、返回和转移

170.结构化程序设计主要强调的是( D )。

A.程序的规模B.程序的效率 C.程序设计语言的先进性 D.程序易读性

171.使用白盒测试方法时,确定测试数据应根据( A )和指定的覆盖标准。

A.程序内部逻辑 B.程序复杂结构 C.使用说明书 D.程序的功能

172.确认测试主要涉及的文档是( A )。

A)需求规格说明书B)概要设计说明书 C)详细设计说明书D)源程序

173.测试的关键问题是( D )。

A.如何组织对软件的评审

B.如何验证程序的正确性

C.如何采用综合策略

D.如何选择测试用例

174.下面哪个测试属于黑盒测试( B )。

A)路径测试B)等价类划分 C)条件判断覆盖测试 D)循环测试

175.软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试( D )。

A) 结构合理性B)软件外部功能C)程序正确性D)程序内部逻辑

176.为了适应软硬件环境变化而修改软件的过程是( C )。

A)校正性维护 B)完善性维护 C)适应性维护D)预防性维护

177.在McCall软件质量度量模型中,( C )属于面向软件产品修改。

A.可靠性 B.可重用性 C.适应性 D.可移植性

178.瀑布模型的存在问题是( B )

A.用户容易参与开发 B.缺乏灵活性 C.用户与开发者易沟通 D.适用可变需求

179.软件生命周期中所花费用最多的阶段是( D )

A.详细设计 B.软件编码 C.软件测试 D.软件维护

180.程序的三种基本控制结构的共同特点是 ( D )

A.不能嵌套使用 B.只能用来写简单程序 C.已经用硬件实现 D.只有一个入口和一个出口

181.原型化方法是用户和设计者之间执行的一种交互构成,适用于( A )系统。

A.需求不确定性高的 B.需求确定的 C.管理信息 D.实时

182.以下不属于逻辑覆盖的是( D )。

A. 语句覆盖 B. 判定覆盖 C. 条件覆盖 D. 基本路径覆盖

183.一个模块的( B )是指能直接控制该模块的模块数。

A. 扇出数 B. 扇入数 C. 宽度 D. 深度

184.软件需求分析阶段的工作,可以分为4个方面:需求获取,需求分析,编写需求规格说明书以及( B ) 。

A)用户B)需求审评C)总结D)都不正确

185.以下分析模型的结构成员中,属于行为模型的是( C )。

A) 数据流图 B) 实体-关系图 C) 状态转换图 D) 数据字典

186.在白盒法技术测试用例的设计中( A )是最弱的覆盖标准。

A) 语句 B) 条件 C) 判定 D) 条件组合

187.模块化中的信息隐藏原则是指( B )。

A) 使信息对用户隐藏 B) 使信息对其它模块隐藏

C) 使信息对软件隐藏 D) 使信息对操作系统隐藏

188.CASE是指( C )。

A)计算机辅助软件开发 B)计算机辅助软件制造

C)计算机辅助软件工程 D)计算机辅助软件设计

189.以下软件生命周期模型中,( A )是用户驱动的模型。

A)快速原型模型 B)螺旋模型 C)喷泉模型 D)瀑布模型

190.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是( )

A)条件覆盖法 B)等价分类法 C)边界值分析法 D)错误推测法

191.模块的扇入是指( A )。

A)本模块的所有上层模块数 B)本模块的所有下层模块数

C)调用本模块的所有模块数 D)本模块调用的所有模块数

192.软件生存周期是指( D )。

A)开发软件的全部时间

B)使用软件的全部时间

C)开发和使用软件的全部时间

D)从软件计划起直到软件废弃所经历的全部时间

193.测试用例是指( C )。

A)被测对象 B)测试的输入数据

C)测试数据+预期结果 D)测试的预期结果

194.软件能力成熟度模型CMM分为( C )个等级。

A)3 B)4 C)5 D)6

195.数据流A由若干个数据项B和一个数据项C组成,用数据字典的符号表示出来( D )。

A.A = { B + C} B.A = {B}+{C} C.A = B+{C} D.A = {B} + C

196.分层DFD中父子平衡是指( D )。

A.父加工的数据流数目与子图中数据流数目相同

B.父图应包含子图中的全部数据流

C.子图应包含父图中的全部数据流

D.父加工和子图的输入数据和输出数据应分别保持一致

197.下列( B )属于不良的编程习惯。

A.尽量不使用GOTO语句 B.从来不使用注释

C.每行只写一条语句 D.变量命名尽量直观

198.瀑布模型中各阶段按时间先后顺序是( B )。

A.计划→需求分析→编码→设计→测试→维护

B.计划→需求分析→设计→编码→测试→维护

C.计划→设计→需求分析→编码→测试→维护

D.计划→需求分析→设计→测试→编码→维护

199.目前最流行的面向对象建模语言是( C )。

A)HTML B)XML C)UML D)VML

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

三、判断题


请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

四、简答题


1、什么叫软件?

软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合

2、什么叫软件危机?软件危机包含哪两点?软件危机产生的原因是什么?

软件危机是指在计算机软件开发与维护过程中所遇到的一系列严重问题。包括两点:

(1)如何开发软件,以满足对软件日益增长的需求;

(2)如何维护数量不断膨胀的已有软件。

软件开发和维护过程中存在的许多严重问题,一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。具体表现如下:

(1)软件是逻辑部件而不是物理部件。

(2)软件的规模越来越大,复杂性越来越大。

(3)轻视需求分析的重要性,轻视软件维护的错误观点和方法。

3、什么叫软件工程?

1968年在第一届NATO会议上的早期定义: “建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法”。

1993年IEEE的定义: “①软件工程是:把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;②进而研究①实现的途径” 。

我们国家最近定义:软件工程是指导计算机软件开发和维护的工程学科。它采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。

4、两种软件工程方法学开发软件时要建立哪些模型?

软件工程方法学包括:传统方法学和面向对象方法学。常用的开发模型有:

瀑布模型(需求稳定,而且可以预先指定)

原型模型(需求模糊或者随时间变化)

增量模型(分析员先作出需求分析和概要设计,用户参与逐步完善)

螺旋模型(将瀑布模型与原型化模型结合起来,并加入了风险分析)

喷泉模型(使开发过程具有迭代性和无间隙性)

5、软件过程模型有哪些?简述它们的特点。

过程模型分为五大类:1.管理过程模型。2.瀑布模型(又称为生命周期模型)。3.增量过程模型:包括增量模型,RAD模型。4.烟花过程模型:包括原型开发模型,螺旋模型,协同开发模型。5.专用过程模型:包括机遇构建的开发模型,形式化方法模型,面向方面的软件开发模型。

6、什么是软件生命周期?

一个软件从定义,开发,使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长时期称为生命周期

7、软件生命周期有哪几个阶段和步骤?

三个阶段:定义、开发、维护

八个步骤:问题定义、可行性研究、需求分析;总体设计、详细设计、编码与单元测试、综合测试;运行维护。

8、计算机软件的开发经过哪三个大阶段?

三个阶段:定义、开发、维护

9、软件开发的各阶段的任务是什么?

定义阶段:问题定义–任务:关于规模和目标的报告书;可行性研究–任务:系统的高层逻辑模型:数据流图,成本/效益分析;需求分析–任务:系统的逻辑模型:数据流图,数据字典,算法描述。

开发阶段:总体设计–任务:系统流程图,成本/效益分析,推荐的系统结构:层次图/结构图;详细设计–任务:HIPO图或PDL图;编码和单元测试–任务:源程序清单,单元测试方案和结果;综合测试–任务:综合测试方案,结果集成测试,验收测试,完整一致的软件配置。

维护阶段:软件维护–任务:维护记录以及改正性维护,适应性维护,完整性维护和预防性维护

10、软件设计分哪两个阶段?总体设计的两个阶段分别是什么?

分为总体设计和详细设计两个阶段。

11、总体设计包括系统设计(划分出组成系统的程序、文件、数据库、人工过程和文档等物理元素)和结构设计(确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系,不涉及模块内部算法流程)

12、软件与硬件的区别是什么?

软件是一种逻辑部件,而不是具体的物理部件。软件在开发、生产、使用、维护等方面与硬 件相比有明显差异。 软件是开发,硬件是制造 软件是自定的,硬件是组装的 软件不会磨损,硬件存在机械磨损问题

13、软件需求分析的任务是什么?

需求分析的任务是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、 具体的要求。一般说来,需求分析的任务包括下述几方面:

1.确定对系统的综合要求 (主要有: 功能需求、 性能需求、 运行需求、 将来可能提出的需求。 )

2.分析系统的数据要求

3.导出系统的逻辑模型:数据流图、实体-联系图、状态转换图、数据字典、算法流程等

4.修正系统开发计划

14、瀑布模型与原型模型分别适用于开发哪些软件?

瀑布模型与原型模型分别适用于开发哪些软件瀑布模型适合于需求稳定,而且可以预先指定的大型系统工程项目。

原型模型适合于需求模糊或者随时间变化的中小型项目

15、数据流图的作用是什么?如何画

数据流图简称DFD(Data Flow Diagram)图,它是以特定的图形符号描述系统逻辑模型的工 数据流图 具; 它从数据传送和加工的角度抽象的描述信息在系统中的流动和数据处理的过程; 它是开发人员与用户之间交流信息的通信工具;它也是系统分析与系统设计的工具。数据流图画法总结

最后

那我们该怎么做才能做到年薪60万+呢,对于程序员来说,只有不断学习,不断提升自己的实力。我之前有篇文章提到过,感兴趣的可以看看,到底要学习哪些知识才能达到年薪60万+。

通过职友集数据可以查看,以北京 Android 相关岗位为例,其中 【20k-30k】 薪酬的 Android 工程师,占到了整体从业者的 30.8%!

北京 Android 工程师「工资收入水平 」

今天重点内容是怎么去学,怎么提高自己的技术。

1.合理安排时间

2.找对好的系统的学习资料

3.有老师带,可以随时解决问题

4.有明确的学习路线

当然图中有什么需要补充的或者是需要改善的,可以在评论区写下来,一起交流学习。

《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!
试,验收测试,完整一致的软件配置。

维护阶段:软件维护–任务:维护记录以及改正性维护,适应性维护,完整性维护和预防性维护

10、软件设计分哪两个阶段?总体设计的两个阶段分别是什么?

分为总体设计和详细设计两个阶段。

11、总体设计包括系统设计(划分出组成系统的程序、文件、数据库、人工过程和文档等物理元素)和结构设计(确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系,不涉及模块内部算法流程)

12、软件与硬件的区别是什么?

软件是一种逻辑部件,而不是具体的物理部件。软件在开发、生产、使用、维护等方面与硬 件相比有明显差异。 软件是开发,硬件是制造 软件是自定的,硬件是组装的 软件不会磨损,硬件存在机械磨损问题

13、软件需求分析的任务是什么?

需求分析的任务是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、 具体的要求。一般说来,需求分析的任务包括下述几方面:

1.确定对系统的综合要求 (主要有: 功能需求、 性能需求、 运行需求、 将来可能提出的需求。 )

2.分析系统的数据要求

3.导出系统的逻辑模型:数据流图、实体-联系图、状态转换图、数据字典、算法流程等

4.修正系统开发计划

14、瀑布模型与原型模型分别适用于开发哪些软件?

瀑布模型与原型模型分别适用于开发哪些软件瀑布模型适合于需求稳定,而且可以预先指定的大型系统工程项目。

原型模型适合于需求模糊或者随时间变化的中小型项目

15、数据流图的作用是什么?如何画

数据流图简称DFD(Data Flow Diagram)图,它是以特定的图形符号描述系统逻辑模型的工 数据流图 具; 它从数据传送和加工的角度抽象的描述信息在系统中的流动和数据处理的过程; 它是开发人员与用户之间交流信息的通信工具;它也是系统分析与系统设计的工具。数据流图画法总结

最后

那我们该怎么做才能做到年薪60万+呢,对于程序员来说,只有不断学习,不断提升自己的实力。我之前有篇文章提到过,感兴趣的可以看看,到底要学习哪些知识才能达到年薪60万+。

通过职友集数据可以查看,以北京 Android 相关岗位为例,其中 【20k-30k】 薪酬的 Android 工程师,占到了整体从业者的 30.8%!

北京 Android 工程师「工资收入水平 」

[外链图片转存中…(img-4NZzgcVN-1715414145531)]

今天重点内容是怎么去学,怎么提高自己的技术。

1.合理安排时间

2.找对好的系统的学习资料

3.有老师带,可以随时解决问题

4.有明确的学习路线

当然图中有什么需要补充的或者是需要改善的,可以在评论区写下来,一起交流学习。

[外链图片转存中…(img-3c2Za4xk-1715414145532)]

《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

  • 17
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值