软件工程复习题纲
1、 什么叫软件?
2、 什么叫软件危机?
3、 什么叫软件工程?
4、 两种软件工程方法学开发软件时要建立哪些模型?
5、 软件设计分哪两个阶段?总体设计的两个阶段分别是什么?
6、 UML中实现关系、依赖关系、泛化关系等符号?
7、 软件与硬件的区别是什么?
8、 耦合与内聚分别有哪些?如何定义?如何区分?
9、 软件测试的目的是什么?
10、 软件需求分析的任务是什么?
11、 UML中活动图、状态图、顺序图都分别描述什么?
12、 UML中的事物有哪些?
13、 瀑布模型与原型模型分别适用于开发哪些软件?
14、 软件测试的步骤有哪些?每个测试阶段的测试依据是什么?分别有谁来测试?
15、 白盒测试与黑盒测试分别有哪些测试方法?如何对具体问题测试?
16、 软件设计的原则有哪些?
17、 数据流图的作用是什么?如何画数据流图?
18、 什么叫数据字典?如何写数据字典?
19、 什么叫流图?如何画出流图?流图的环形复杂度如何计算?
20、 面向对象的基本概念类、对象、封装、继承等定义是什么?
21、 用例图的作用是什么?
22、 详细设计阶段用到了哪些图形工具?
23、 什么叫维护?维护的类型有哪些?
24、 计算机软件的开发经过哪三个大阶段?
25、 软件开发的各阶段的任务是什么?
26、 UML中的关系有哪些?
27、 用例、活动、状态、节点等图形符号分别是什么?
28、 软件工程的启发式规则有哪些?
29、 模块的作用域与控制域分别指什么?
30、 模块的扇入、扇出、深度、宽度分别是什么意思?
31、 所有讲过的例题、留过的作业题。
相关习题:
一、填空、选择题
1、画出UML中依赖关系的图形符号 。
2、在UML 2.0中定义了四种交互图,其中强调对象调用顺序的是 图。
3、UML中实现关系的图形符号是 。
4、软件生命周期可划分为8个阶段,它们是什么?
5、软件测试的目的是发现错误,通常把测试方法按功能划分为 和 两大类。因为通常不可能做到穷尽测试,所以精心设计 是保证达到测试目的所必
须的。
6、计算机软件的开发经过三个阶段分别为:定义、 和运行。
7、软件维护的活动包括四种: 、 、 和
预防性维护。
8、在软件测试过程的4个步骤中,测试依据是需求规格说明的是 。
9、以下哪个不是详细设计中常用的图形描述工具 。
A、数据流图 B、程序流图 C、盒图(N-S图) D、问题分析图(PAD)
10、耦合是对软件结构中各个不同模块之间互相关联程度的度量。一个模块直接访问另一个模块的内部信息应属于 方式。
A、控制耦合 B、内容耦合 C、数据耦合 D、外部耦合
11、在七种内聚中属于最强的是 内聚,最弱的是 内聚
12、软件工程的原则包括: 、抽象与 、信息隐藏与局部化、 。
模块 ,则说明模块的独立性越强。
A. 耦合越强 B、 扇入数越高 C、扇入数越低 D、耦合越弱
13、软件设计包括 两个阶段。
A、接口设计和结构设计 B、数据设计和概要设计
C、结构设计和过程设计 D、概要设计和详细设计
14、现有一个计算类型的程序,它的输入只有一个Y,其范围是—50≤Y≤50。现从输入的角度考虑设计了一组测试用例:—100,100,0。设计这组测试用例的方法是 。
A、条件覆盖法 B、边缘值分析法 C、错误推测法 D 、等价划分法
15、系统设计分为两个阶段分别为 与 。
16、对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的输入边界,输出边界和 。
17、自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和
。
18、在用面向对象观点建立起的3种模型中, 是最基本、最重要、最核心的。
A、动态模型 B、对象模型 C、功能模型 D、状态模型
19、在软件结构图的有关术语中,用于表示软件结构中控制的层数的是 。
A、扇出 B、扇入 C、深度 D、宽度
20、指出PDL是哪种语言 。
21、在进行软件测试时, 首先应当进行 测试,然后再进行组装测试,最后再进行有效性测试。
22、结构化设计方法是面向 的设计。
A.数据编码 B.数据流 C.数据库 D.数据结构
23、软件工程的过程模型中, 是经典的传统模型。
24、模块 定义为受该模块内一个判断影响的所有模块集合。
A. 控制域 B、 作用域 C、 宽度 D、 接口
25、在软件生命周期中,能准确确定软件系统的体系结构的功能阶段是 。
A、概要设计 B、详细设计 C、需求分析 D、可行性分析
26、下面不属于软件工程的基本原则的是__ __。
A、模块化 B、抽象 C、局部化 D、自顶向上
27、在数据流图中,用圆或者椭圆来表示 。
A、数据流 B、数据源点或终点 C、数据存储 D、加工
简答题:
1. 什么是软件危机?软件危机包含哪两点?
2. 瀑布模型与原型模型分别适用于开发哪些软件?
3. UML中实现关系、依赖关系、泛化关系等符号?
4. 软件设计的原则有哪些?
5. 面向对象的基本概念类、对象、封装、继承等定义是什么?
6. 软件在使用过程中维护有哪几种?
7. 软件需求分析的任务是什么?
8. 简述软件的定义。
9. 软件测试的步骤有哪些?
10. 软件设计的基本原理包括哪些内容?
11. 什么叫维护?维护的类型有哪些?
12. 计算机软件的开发经过哪三个大阶段?
大题:
1、 数据流图及软件结构图的画法
2、 判定表、判定树的画法
3、 数据字典及数据的表示
4、 等价类及边缘测试方法
5、 白盒测试中各种覆盖路径的寻找,
因篇幅问题不能全部显示,请点此查看更多更全内容