U 得 分 | 评卷人 | 一、填空题(每空1分,共20分) |
|
|
1. 软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运行与维护阶段。
2. 按软件的功能进行划分,软件可以划分为 系统软件 、 支撑软件 和应用软件。
3. 可行性研究主要集中在以下四个方面 经济可行性 、 技术可行性 操作可行性 、法律可行性 和抉择。
4. 用户界面的 可使用性 是用户界面设计最重要的也是最基本的目标。
5. 常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。
6. __数据流图________和__数据字典___共同构成系统的逻辑模型。
7. 软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。
8. 单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。
黑盒测试
黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,
测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数锯而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。黑盒测试方法主要有等价类划分、边值分析、因—果图、错误推测等,主要用于软件确认测试。 “黑盒”法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。
白盒测试:
白盒测试也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。“白盒”法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。“白盒”法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。
9. 成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估计三种类型。
得 分 | 评卷人 | 二、单项选择题(每小题2分,共10分) |
|
|
1. 下列哪个阶段不属于软件生存周期的三大阶段( C )。
A、计划阶段 B、开发阶段
C、编码阶段 D、维护阶段
2. 需求分析是( A )。
A、 软件开发工作的基础 B、 软件生存周期的开始
C、 由系统分析员单独完成的 D、 由用户自己单独完成的
3. 原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要( B )。
A、 明确的需求定义 B、完整的生命周期
C、 较长的开发时间 D、熟练的开发人员
4. 软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归测试过程称为( A )。
A、改正性维护 B、适应性维护
C、完善性维护 D、预防性维护
5. 一般说来,投入运行的软件系统中有错误( A )。
A、不是不可以理解的
B、是不能容忍的
C、是要求退货的理由
D、是必然的
得 分 | 评卷人 | 三、多项选择题(每小题2分,共10分) |
|
|
1. 下面哪些测试属于白盒测试( AE )。
A、基本路径测试 B、等价类划分 C、边界值分析 D、错误推测
E、逻辑覆盖测试
2. 下列哪些选项是属于内容耦合( ABC )。
A、 一个模块直接访问另一个模块的内部数据
B、 一个模块有多个入口
C、 一个模块不通过正常入口转到另一模块内部
D、 一个模块只有一个入口
3. 下列属于度量效益方法的是( ABC )。
A、货币的时间价值 B、投资回收期
B、收入 D、投资回报率
4. 数据流图是用于表示软件模型的一种图示方法,在下列可采用的绘制方法中,哪些是常采用的( ACD )。
A、自顶向下
B、自底向上
C、分层绘制
D、逐步求精
得 分 | 评卷人 | 四、判断题(正确的在括号内打上“√”,错误的打上“×”。每小题2分,共20分) |
|
|
1. 在进行总体设计时应加强模块间的联系。( N )
2. 系统结构图是精确表达程序结构的图形表示法。因此,有时也可以将系统结构图当作系统流程图使用。( N )
3. 用黑盒法测试时,测试用例是根据程序内部逻辑设计的。( N )
4. 在程序调试时,找出错误的位置和性质比改正该错误更难。( Y )
5. 以对象、类、继承和通信为基础的面向对象设计方法(OOD)也是常见的软件概要设计方法之一。( Y )
6. 如果通过软件测试没有发现错误,则说明软件是正确的。( N )
7. 快速原型模型可以有效地适应用户需求的动态变化。( Y )
8. 模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。( Y )
9. 集成测试主要由用户来完成。( N )
10. 软件危机完全是由于硬件问题引起的。( N )
得 分 | 评卷人 | 五、简答题(每小题5分,共20分) |
|
|
1. 什么是软件危机?为什么会产生软件危机?
2. 耦合性有哪几种类型? 其耦合度的顺序如何
3. 简述需求分析工作可以分成哪四个方面?软件需求分析的有哪三个基本原则?
4. 什么是黑盒测试法?
得 分 | 评卷人 | 六、分析设计题(每小题10分,共20分) |
|
|
1. 某“调整工资”处理模块接受一个“职称”的变量,根据职称的不同(助教,讲师,副教授,教授)作不同的处理,其中若是助教还必须输入工龄,只有工龄超过两年才能调整工资。请用等价类划分法设计测试用例。
2. 假定某航空公司规定,乘客可以免费托运重量不超过30公斤的行李。当行李重量超过30公斤时,对头等舱的国内乘客超重部分每公斤收费4元,对其它舱的国内乘客超重部分每公斤收费6元,对国外乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。用判定树表示计算行李费的算法。
一、填空题(每空1分,共20分)
1. 问题定义 需求分析 测试
2. 系统软件 支撑软件
3. 经济可行性 技术可行性 法律可行性
4. 可使用性
5. 结构化设计方法(SD) Jackson方法 面向对象设计方法(OOD)
6. 数据流图 数据字典
7. 分析方法 非分析方法
8. 白盒 黑盒
9. 自顶向下估计 自底向上估计
二、单项选择题(每小题2分,共10分)CABAA
三、多项选择题(每小题2分,共10分)
1 | 2 | 3 | 4 | 5 |
AE | ABC | ABC | ACD | ACD |
四、判断题(每小题2分,共20分)
1-5:×××√√ 6-10:×√√××
五、简答题(每小题5分,共20分)
1. 答:软件危机是指软件在开发和维护过程中遇到的一系统严重问题,主要包含二方面的问题,一是如何开发利用软件,二是如何维护数量不断膨胀的已有软件。产生软件危机的原因,一方面与软件本身的特点有关,另一方面和软件开发与维护的方法不正确有关。
2. 答:低:非直接耦合® 数据耦合®标记耦合® 控制耦合®外部耦合® 公共耦合®内容耦合 :高
3. 答:需求分析阶段分成四个方面:对问题的识别、分析与综合、制定规格说明和评审。三个基本原则:必须能够表达和理解问题的数据域和功能域;必须按自顶向下、逐步分解的方式对问题进行分解和不断细化;要给出系统的逻辑视图和物理视图。
4. 答:黑盒测试法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据,产生正确地输出信息。
六、分析设计题(每小题10分,共20分)
输入条件 | 合理等价类 | 不合理等价类 | |||
职称 |
| ⑤四种职称之外任意一种 | |||
职称兼工龄 | ④助教兼工龄大于2年 |
|
设计测试用例:
输入数据 |
预期结果 |
覆盖范围 |
教授 |
输入有效,进行调整工资处理 |
① |
副教授 |
输入有效,进行调整工资处理 |
② |
讲师 |
输入有效,进行调整工资处理 |
③ |
助教 3 |
输入有效,进行调整工资处理 |
④ |
助教 2 |
输入有效,不调整工资处理 |
⑥ |
助教 1 |
输入有效,不调整工资处理 |
⑦ |
工程师 |
输入无效 |
⑤ |
2. 判定树为下图