软件工程师考题目

发布时间:2019-03-08 16:10:21

软件工程试题

一、 单项选择题(每题1分,共10分):

1. ( ) 计算机系统就是:

A) 主机,显示器,硬盘,软驱,打印机等。

B) CPU,存储器,控制器,I/O接口及设备。

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) 程序流程图,Jackson图,IPO图。

C) 数据流程图,数据字典,ER图。

D) Jackson图,ER图,IPO图。

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

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

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

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

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

8 在详细设计阶段所使用到的设计工具是:

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

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

C) 判定表,判定树,数据流程图,系统流程图,程序流程图,PAD图,N-S图。

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

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

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

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

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

D) 以上说法都不对。

10. 包含所有可能情况的测试称为穷尽测试。下面结论成立的是:

A) 只要对每种可能的情况都进行测试,就可以得出程序是否符合要求的结论。

B) 一般来说对于黑盒测试,穷尽测试是不可能作到的。

C) 一般来说对于白盒测试,穷尽测试是不可能作到的。

D) 在白盒测试和黑盒测试这两个方法中,存在某一个是可以进行穷尽测试的。

二、 填空题(每题1分,共10分)

1.软件危机是指在( )所遇到的一系列严重问题。

2.在软件开发的各个阶段经过阶段评审后的文档和程序代码成为( )。

3.结构程序设计的基本思想是( )。

4.总体设计的第二项任务是设计软件的结构,即确定( )。

5.描绘物理系统的传统工具是( )。

6.如果模块内所有元素都使用同一个输入数据和产生同一个输出,称为( )内聚。

7.数据流程图按照信息流的类型主要分为( )两种。

8.( )年,( )和( )证明了SISO程序只需要三种基本控制结构。

9. 从应用特点分类,高级语言主要分为( )、( )和( )三类。

10 黑盒测试又称为( ),白盒测试也称为( )。

三、 多项选择题(以下各题均有两个以上的正确答案。将正确答案的标号填入各题前面括号内,注意多选或少选该题均不得分,每题2分,共20分):

1.( )软件开发各个阶段所耗费的时间或工作量是:

A) 可行性研究占5%

B) 综合测试占40%

C) 设计阶段在所有开发阶段所占的比例最大。

D) 编码和单元测试占20%

E) 以上说法都不对。

2.( )对软件开发与维护,以下观点是正确的:

A) 为了加快开发速度,可以一边写程序,一边设计文档。

B) 对于软件而言,程序和软件配置成分是同等重要的,不能重此偏佊。

C) 把软件漫长的生命周期划分为若干个阶段的出发点是降低开发的困难程度和简化复杂性。

D) 可行性研究的主要任务就是确定软件项目的工程规模和目标。

E) 面向对象的方法学比传统的软件开发方法开发软件容易,开发效率提高。

3.( 对于以下图形工具的作用,

A) 数据流程图和数据字典共同构成软件的高层数据模型。

B) 层次图是用来描述软件结构的,不能用于描述数据结构。

C) IPO图能方便地描绘输入数据、对数据的处理和输出数据的关系,它是美国微软公司发明并逐渐发展完善起来的。

D) ER图描述现实世界中的实体,不涉及这些实体在系统中的实现方法。

E) Yourdon图实际上也是结构图,所以它与层次方框图是等价的。

4.( 面向数据结构的设计方法有:

A) Jackson方法。

B) Warnier方法。

C) Halstead方法。

D) PAD方法。

E) G.Myers方法。

5.( )以下测试方法是白盒测试方法的是:

A) 判定覆盖和边界值分析法。

B) 等价划分和错误推测法。

C) 路径覆盖和判定/条件覆盖法。

D) 条件组合覆盖和语句覆盖法。

E) 条件覆盖和错误推测法。

6.( )以下关于集成测试的论述,正确的是:

A) 先对每个模块分别测试,然后统一组装成软件系统的方法称为非渐增式测试。

B) 自顶向下的集成测试本质上是渐增式测试方法。

C) 存根模块是渐增式测试方法中使用的,在非渐增式测试中也用不到桩模块。

D) 一般来说,存根模块和桩模块在用过以后,不会作为软件的正式模块而存在。

E) 由于是对程序进行测试,测试方案的设计一般在详细设计阶段完成以后才进行。

7 对于程序设计,正确的陈述是:

A) 为了减少程序的长度,最好不要在程序中增加注释。

B) 变量名以简洁为好,名字太长了难以理解,增加了程序的复杂性。

C) 程序语句要求体现层次性,以使结构清晰明显。

D) 数据结构的组织和复杂程度在设计期间确定,但数据说明的风格是在写程序时确定的。

E) 对所有的输入数据都要进行检验,以便确定其合法性。

8 内聚标志一个模块内各个元素彼此结合的紧密程度。

A) 内聚是信息隐蔽和局部化概念的自然扩展。理想内聚的模块只做臆见事情。

B) 一个模块所包含的任务必须在同一段时间内执行,该模块的内聚为时间内聚。

C) 一个模块内的处理元素是相关的,必须以特定次序执行,称为过程内聚。

D) 顺序内聚和功能内聚是高内聚,而偶然内聚和逻辑内聚是低内聚。

E) 时间内聚、通信内聚,过程内聚是中等程度的内聚。

9 McCabe方法对程序复杂程度的定量度量的结果称为程序的环行复杂度,

其计算公式是:V(G)=m-n+p

A) 应用McCabe方法的前提是对应的程序图变换成强连通图。

B) V(G)代表程序图G的线性无关环的个数。

C) 一般对于结构化程序,p恒等于1

D) m是有向图G中的弧数。

E) n是有向图G中的节点数。

10.( )详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统。

A) 详细设计阶段不具体的编写程序。

B) 详细设计阶段的设计结果基本决定了最终的程序代码质量。

C) 详细设计的目标不仅要逻辑上正确的实现每个模块的功能,而且对每个模块的处理过程也应确保简明易懂,清晰具体。

D) 详细设计的关键技术是结构程序设计技术。

四、 基本概念题(每题2分,共10分)

1. 软件工程。

2. 软件测试。

3. 数据流图及其组成和作用。

4. 结构化分析方法。

5. 信息隐蔽原理。

五、 叙述分析题:(每题5分,共20分)

1. 试述对用户要求没有完整的认识就匆忙着手编写程序是许多软件开发工程失败的主要原因。

2. 简述软件可靠性和可用性的定义,平均无故障时间的计算公式及应用。

3. 简述软件重用的定义、范围和主要技术。

4. 说明软件测试在软件开发阶段的地位和作用。比较测试和调试的异同点。

六、 设计、作图、计算题(每题5分,共30分)

1.以下是某系统的数据流程图,请将其转换成相应的SC图。

2. 研究下面的伪码程序,完成以下问题:

START

INPUT X,N

DIMENSION A(N),F(N)

DO I=1 TO N

INPUT F(I)

END DO

K=0

DO WHILE (K

A(K)=0

DO J=1 TO N-K

A(K)=A(K)+F(J)*F(J+K)/(N-K+1)

END DO

PRINT K*X,A(K)

K=K+1

END DO

STOP

3. 为方便储户,某银行拟开发计算机储蓄系统。储户填写的存款单或取款单由业务员键入系统。如果是存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息,并印出存款单给储户;如果是取款,系统计算利息并印出利息清单给储户。

1) 画出该系统的高层数据流程图和第二层细化流程图。

2) 对数据流定义数据字典。

4 某航空公司规定,乘客可以免费托运不超过20公斤的行李。当行李重量超过20公斤时,对头等舱的乘客超重部分每公斤收费4元,其它舱的乘客收费6元。对残疾乘客超重部分在舱位等次相同的情况下收费减半。用判定表描述行李托运费的处理过程。

5.设计程序,先读入三个整数值代表一个三角形的三条边,然后根据这三个值判断该三角形属于不等边、等腰或等边三角形中的哪一种。请设计满足判定/条件覆盖标准的测试方案。

6.设模块RootForSquare(int a,int b,int c,int *x,int *y) 的功能是一元二次方程求根。请使用等价划分法来设计测试方案。

软件工程师考题目

相关推荐