软件工程试题

来源:互联网 发布:kali linux换源 编辑:程序博客网 时间:2024/06/05 11:01

《软件工程》试题A

                                                         

题  号

总  分

分  数

 

 

 

 

 

 

 

一、填空题(每空1分,共25分)

1.        软件生存周期一般可以划分为,问题定义、_____可行性研究____、_______需求分析_____、设计、编码、测试和_______维护_____。

2.        基于软件的功能划分,软件可以划分成___系统软件_______、____支持软件______、______应用软件____三种。

3.        可行性研究,应从    经济可行性         、技术可行性、运行可行性、             法律可行性 开放方案可行性等方面研究。

4.        系统流程图是描绘    系统物理模型        的传统工具。它的基本思想是用图形符号以    黑盒子形式描绘系统里面的每个部件(程序、文件、数据库、表格、人工过程等),表达信息在各个部件之间流动的情况。  

              描绘系统里面的每个部件。

5.        数据流图的基本四种成分:数据输入的源点和数据输出汇点、   加工                    数据流          数据存储        

6.        结构化分析方法是面向____数据流___________进行需求分析的方法。结构化分析方法使用_______数据流图_________与______数据字典______来描述。

7.            继承性       是自动地共享类、子类和对象中的方法和数据的机制。

8.        软件详细设计工具可分为3类,即____图示工具____________、______设计语言_________和________表格工具 ________。

9.        为了在软件开发过程中保证软件的质量,主要采取下述措施:______审查__________、复查和管理复审、___测试_____________。

10.     大型软件测试包括    单元测试                      继承测试       、确认测试和    系统测试   

        四个步骤。

二、单项选择题(每小题2分,共20分)

1.        软件设计中划分模块的一个准则是(    C  )。

A、  低内聚低耦合

B、  低内聚高耦合

C、  高内聚低耦合

D、  高内聚高耦合

2.        Jackson设计方法是由英国的M. Jackson提出的,它是一种面向(     C  )的软件设计方法。

A、  对象

B、  数据流

C、  数据结构

D、  控制结构

3.        试判断下列叙述中,哪 个(些)是正确的(   C    )。

a、软件系统中所有的信息流都可以认为是事务流

b、软件系统中所有的信息流都可以认为是变换流

c、事务分析和变换分析的设计步骤是基本相似的

A、a           B、b           C、c              D、b和c

4.        (   A   )是用户和设计交换最频繁的方法。

A、  原型化方法                   B、瀑布模型方法

C、 螺旋模型方法                 D、构件组装模型

5.   软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(    C  )。

A、 硬件环境                       B、软件开发的环境

C、 软件开发工具和软件开发的环境   D、 开发人员的素质

6.        20世纪50年代以来,出现了许多不同的程序设计语言,下列语言中哪个语言是低级语言(     D  )。

A、  PASCAL            B、 VISUAL BASIC

C、C++                D、汇编语言

7.        软件测试的目的是?(    D   )

A、  证明软件的正确性

B、  找出软件系统中存在的所有错误

C、  证明软件系统中存在错误

D、  尽可能多的发现软件系统中的错误

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

A、程序的内部逻辑                     B、程序的复杂程度

C、该软件的编辑人员                   D、程序的功能

9.        软件维护工作的最主要部分是(  C    )。

A、  校正性维护           B、适应性维护

C、完善性维护            D、预防性维护

10.    PDL是(  B   )语言。

A、  高级程序设计语言     B、伪码式       

C、中级程序设计语言      D、低级程序设计语言

三、判断题(正确的在括号内打上“√”,错误的打上“×”。每题2分,共20分)

1.        用黑盒法测试时,测试用例是根据程序内部逻辑设计的。(     x  )

2.        发现错误多的程序模块,残留在模块中的错误也多。(   v    )

3.        为了加快软件维护作业的进度,应尽可能增加维护人员的数目。(  x     )

4.   软件维护就是改正软件中的错误。(x      )

5.   质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动。(   v   )

6.   软件开发的主要任务是写程序。(   x    )

7.   测试只能证明程序有错误,不能证明程序没有错误。(   v    )

8.   模块化程序设计中,模块越小,模块化的优点越明显。一般来说,模块的大小都在10行以下。(   x    )

9.        在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要像写软件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排,等等。(   X  )

10.    程序设计风格指导原则提出,尽量多使用临时变量。(   x    )

四、程序设计与算法描述题(共15分)

1.  根据下面的伪代码程序,完成相应要求。(8分)

   START                             

   IF C1

THEN

  WHILE C2 DO

      f

  ENDDO

ELSE

   BLOCK

     g

   p

 ENDBLOCK

   ENDIF

  REPEAT UNTIL C3

q

r

  ENDREP

  STOP

1)  画出程序流程图(4分)

 

 

 

 

 

 

 

 

2)  用N—S图描述(4分)


a)  有下列伪码程序:

START

INPUT(M,N)

IFM>=10

  THEN X=10

  ELSE X=l

ENDIF

IFN>=20

  THEN Y=20

  ELSE Y=2

ENDIF

PRINT(X,Y)

STOP

设计该程序的语句覆盖和路径覆盖测试用例。(7分)


原创粉丝点击