软件工程期末复习

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1

一、填空题

1. 软件工程学的内容可包括(理论)、结构、(方法)、(工具)、环境、管理、规范等。

2. 软件生存周期一般可分为问题定义、( 可行性研究 )、(需求分析)、设计、(编码)、测试、运行与维护阶段。

3. 系统流程图是( 描述物理系统 )的传统工具。

4. 需求分析的基本任务是准确的回答( 系统必须做什么 )。

5. 数据字典的内容包括六项:( 数据流 )、( 数据项 )、( 数据结构 )、数据存储、处

理逻辑、外部实体。

6. 在需求分析阶段常用的图形工具有( 层次方框图 )、( Warnier 图 )、(IPO 图 )。

7. 模块独立的概念是( 模块化 )、( 抽象 )、( 信息隐蔽 )和局部化概念的直接结果。

8. HIPO 图是由一组( IPO )图和一张( HC )图组成。

9. UML 的定义包括( UML 语义 )和( UML 表示法 )两个部分。

10. 软件测试的方法有( 分析方法 )和( 非分析方法 )。

11. 软件=( 程序 )+( 文档 )。

二、单项选择题

1. 下列关于瀑布模型的描述正确的是( C )。

A. 瀑布模型的核心是按照软件开发的时间顺序将问题简化。

B. 瀑布模型具有良好的灵活性。

C. 瀑布模型采用结构化的分析与设计方法,将逻辑实现与物理实现分开。

D. 利用瀑布模型,如果发现问题修改的代价很低。

2. 下列哪个图不是N -S 图的构件(

A .

B.

C. D.

3. 对于下图,有关描述中错误的是( B )。

2

A .A 表示数据输入的源点

B .B 表示数据存储文件

C .C 表示加工

D .D 表示数据存储文件

4. 下列各方法中( D )不是软件测试方法。

A. 白盒法

B. 黑盒法

C. 动态测试

D. 盒法

5. UML 的基本建筑块不包括( A )。

A . 框架

B . 事物

C . 关系

D . 图

三、多项选择题

1. 关于数据字典正确的描述是( ABCD )。

A . 数据字典最重要的用途是作为分析阶段的工具。

B . 实现数据字典三种常见的方法有全人工过程、全自动过程、混合过程。

C . 数据字典应该容易更新和修改。

D . 可以采用卡片形式书写数据字典。

A

B C

D

2.(ABCD )可以作为模块。

A.过程

B.子程序

C.函数

D.宏

3.耦合的强弱取决于(ABC )。

A.模块间接口的复杂程度。

B.调用模块的方式。

C.通过接口的信息。

D.模块内部各个元素彼此之间的紧密结合程度。

4.编码风格包括(ABCD )。

A.源程序文档化

B.数据说明方法

C.语句结构

D.输入/输出方法

5.软件测试主要包括(ABC )方面的差错和纠错。

A.软件计划

B.软件设计

C.软件编码

D.软件价格

四、判断题

1.在可行性研究中最难决断和最关键的问题是经济可行性。(╳)

2.耦合是指一个模块内各个元素彼此结合的紧密程度。(╳)

3.一笔交易、一个动作、甚至操作人员按一个按钮都可以看做是一次事物。(√)4.概要设计阶段完成的主要文档是概要设计说明书。(√)

5.过大的模块可能是由于分解不充分造成的,即使降低模块独立性也必须继续分解。

(╳)

6.程序设计语言中应绝对禁止使用GOTO语句。(╳)

7.类是关于对象性质的描述,由方法和数据组成。(√)

8.随着软件技术的发展,人们逐渐认识到阅读程序的重要性,编码不仅要强调效率还要强调清晰。(√)

9.为保证程序的安全,必须做到程序中没有任何错误存在,即容错。(╳)

10.如果把软件开发所需的资源画成一个金字塔,人是最基本的资源。(√)

3

五、问答题

1.什么是软件危机,软件危机有哪几种表现?

2.什么是模块、模块化、模块独立性?

3.什么是编码风格?为什么要强调编码风格?

4. 什么是黑盒测试法?什么是白盒测试法?

六、分析题

1.已知被测试模块流程图如下,按照“判定覆盖”法,在表格中填入满足测试要求的数

据。

4

填写下表

2.比较下列两段语句,从编码风格的角度分析哪一段好些,并说明好在哪些方面。

程序段一:

if a>b

then

if x>y

then

b=y

else

a=x

end if

else

a=b

end if

程序段二:

/ position_x is the position x of object; position_y is the position y of object; /

if a>b then

a=b

else

if position_x>position_y then

b=position_y

else

a=position_x

end if

end if

5

相关文档
最新文档