资源描述
资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。
练习单元二 软件工程方法学
2.1 单项选择题
1. 需求分析阶段最重要的技术文档是( ) 。
A. 设计规格说明书 B. 需求规格说明书
C. 可行性分析报告 D。 用户手册
2. 在分析模型中, ( ) 用来描绘数据对象之间的关系。
A. 实体关系图 B. 状态转换图
C. 数据流图 D. 处理规格说明
3. 以下关于数据流图的说法错误的是( ) 。
A. 数据流图舍去了具体的物质, 只剩下数据的流动、 加工处理和存储
B. 数据流图是用作结构化分析建模的一种工具
C. 传统的数据流图中主要由加工、 数据源点/终点、 数据流、 控制流、 数据存储组成
D. 数据流图的绘制采用自上向下、 逐层分解的方法
4. 数据字典是软件需求分析阶段的最终要工具之一, 其最基本的功能是( ) 。
A. 数据库设计 B. 数据通信 C.数据定义 D.数据维护
5. E—R模型是表示概念数据模型的一种方法, 一般它和( ) 。
A. 系统实现方法有关 B. 系统实现方法无关
C. DBMS有关 D.操作系统有关
6. 在结构化分析中, 一般不需要建立( ) 。
A. 数据模型 B. 功能模型 C.行为模型 D. 关联模型
7. 需求分析阶段的研究对象是( ) 。
A. 系统分析员要求 B. 用户需求
C. 软硬件要求 D.系统要求
8. 在数据流程图中, 符号○用来表示( ) 。
A. 处理 B. 外部实体 C. 数据存储 D.数据源点
9. 结构化方法的基本原则是( ) 。
A. 模块化 B. 抽象与分解 C. 信息隐蔽 D.逐步求精
10. 耦合度最高的是( ) 耦合。
A. 环境 B. 内容 C. 控制 D.数据
11. ( ) 是引起系统状态转换的控制信息。
A. 状态 B. 事件 C. 动作 D. 数据
12. 信息隐藏的基本思想不包括( ) 。
A. 模块内部的数据和过程, 对于那些不需要这些信息的模块不可访问
B. 每一个模块只完成一个相对独立的特定功能
C. 模块之间仅仅交换那些完成系统功能必须交换的信息
D. 提取客观世界中一群事务的某些本质共性, 暂时忽略它们非本质的细节
13. 内聚程度较低的是( ) 内聚。
A. 偶然 B. 过程 C. 顺序 D.时间
14. 对于一个程序来说, 组成系统的模块数目( ) , 则开发成本越小。
A.越多 B.越少 C. 为某个定值 D. 在5~9个之间
15. ( ) 是把分析模型中的信息描述转换为实体软禁爱女所需要的数据结构。
A. 数据设计 B. 文件设计 C. 数据库设计 D. 模型设计
16. 画软件结构图时应注意调用关系只能是( ) 。
A. 从下到上 B. 从上到下 C. 从左到右 D. 从右到左
17. 在人机界面的设计过程中, 不需要考虑下列( ) 问题。
A. 系统响应时间 B. 出错信息处理 C. 输入输出数据 D. 用户帮助
18. 程序流程图中的箭头代表( ) 。
A. 数据流 B.控制流 C. 顺序流 D.调用
19. 过程设计的主要活动有( ) 。
Ⅰ. 确定每一个模块使用的数据结构
Ⅱ. 为每一个模块确定采用的算法
Ⅲ. 确定模块的接口的细节
Ⅳ. 确定用户界面
A.Ⅰ、 Ⅰ和Ⅲ B. Ⅰ、 Ⅱ和Ⅳ C. Ⅱ、 Ⅲ和Ⅳ D. 以上都正确
20. 软件测试时软件质量保证的重要手段, 下述( ) 时软件测试的最基础环节。
A. 功能测试 B. 单元测试 C. 结构测试 D.确认测试
21. 在设计有效的测试用例之前, 软件工程师必须理解软件测试的基本原则, 以下测试原则中不正确的是( ) 。
A. 穷尽测试并非是不可能的
B. 所有的测试都应该追溯到用户需求
C. 测试应该从”小规模”开始, 并逐步进行”大规模”测试
D. 把Pareto原则应用于软件测试
22. 软件测试方法中, 黑盒测试法主要是用于测试( ) 。
A.结构合理性 B. 软件外部功能 C. 程序正确性 D. 程序内部逻辑
23. 我们一般采用的调试途径不包括( ) 。
A. 蛮干法 B. 回溯法 C. 原因排除法 D.分析法
24. 软件测试是软件质量保证的重要手段之一, 测试的目标是( ) 。
A. 证明软件符合设计要求 B. 发展软件的潜在能力
C.发现软件中的错误和缺陷 D. 判定软件是否合格
25. 选择程序设计语言的关键因素是( ) 。
A.软件应用领域 B. 软件执行环境 C. 软件开发方法 D. 算法和数据结构
26. Windows下的面向对象程序设计和DOS下的结构化程序设计的最大区别是( ) 。
A. 前者能够使用大量下拉式菜单, 后者使用命令方式调用
B. 前者是一种消息驱动式体系结构, 后者是一种单向调用
C. 前者具有强大的图形用户界面, 后者无图形用户界面
D. 处理规格说明前者能够突破内存管理640KB的限制, 后者不能。
27. 面向对象方法的一个主要目标, 是要提高软件的( ) 。
A. 可重用性 B. 运行效率 C.结构化程度 D.健壮性
28. 在选择面向对象语言时应考虑( ) 。
Ⅰ. 是否能占主导地位 Ⅱ. 可重用性
Ⅲ. 开发环境 Ⅳ. 继承已有软件的容易度
A.Ⅰ、 Ⅰ和Ⅲ B. Ⅰ、 Ⅱ和Ⅳ C. Ⅱ、 Ⅲ和Ⅳ D. 以上都正确
29. 对象类之间的聚集关系就是( ) 关系。
A. 一般——特殊 B. 整体——部分 C.相互依赖 D.层次构造
30. 从原理上说, 实现面向对象概念( ) 。
A. 能够使用任何一种语言 B. 只能使用面向对象语言
C. 只能使用纯面向对象语言 D. 只能使用纯的或混合型的面向对象语言
2.2 填空题
1. 是指集中精力去解决主要问题而尽量推迟对问题细节的考虑。
2. 信息流的类型主要包括 和 。
3. 常见的系统分析方法包括功能分解法、 、 和 。
4. 与程序流程图相比, 盒图没有 , 因此不允许随意转移控制。
5. 适用于表示多重嵌套的条件选择。
6. 静态测试采用 、 计算机辅助静态分析和 的手段对程序进行检测。
7. 是极可能发现了迄今为止尚未发现的错误的测试方案。
8. 一个受限的关联由两个对象及一个 组成。
9. 用来评价一种设计方法能定义有效模块系统能力的五条标准分别是 、 模块可组装性、 模块可理解性、 和模块保护性。
10. 是面向对象建模的标准语言。
2.3 判断题( 判断命题正确与否, 并说明理由)
1. 一般说来, 模块的内聚程度越高, 它们之间的耦合程度也越高。
2. 软件测试只能证明程序有错, 不能证明程序没有错误。
3. 实体——关系图中的数据对象之间的关系也有可能有属性。
4. 独立编译的机制对于大型软件的编码工作极为重要。
5. 结构化程序设计方法能改进程序结构, 提高程序的运行效率。
6. 如果测试数据满足条件覆盖, 则必然满足判定覆盖。
7. 信息隐蔽原则禁止在模块外使用在模块接口说明的关于该模块的信息。
8. 每一个类都是其响应对象的一个实例。
2.4 简答题
1. 用E-R图表示职工和项目之间两种以上的联系。
2. 根据以下问题描述, 画出领料业务的数据流程图。
车间填写领料单, 交给仓库要求领料, 库长根据用料计划审批领料单, 未批准的领料单退回车间, 已批准的领料单被送到仓库保管处, 由仓库管理员查阅库存帐。若帐上有货则通知车间前来领料, 否则将缺货情况通知采购人员。
3. 请根据以下描述的逻辑关系画出判定树。
移动电信公司未促进业务的发展发行各种优惠卡, 其中包括钻石卡、 金卡、 银卡3种, 用户能够依据其信用度享受不同额度的透支。其中钻石卡、 金卡和银卡允许透支的额度分别为800元、 500元和100元。发卡的规则为:
从未发生过话费拖欠, 且每月通话费在500元( 含) 以上者可获得钻石卡, 每月通话费在200元( 含) 以上者可获得金卡, 每月通话费在100元( 含) 以上者可获得银卡; 发生过话费拖欠, 能在规定的时间内缴清欠款, 且每月通话费在300元( 含) 以上者可获得金卡, 每月通话费在200元( 含) 以上者可获得银卡; 发生国花费拖欠, 并未能在规定时间内补清欠款, 无论每月话费多少均不能获得优惠卡。
4. 求100~1000间的素数, 请画出描述该问题的N—S图。
5. 将下列数据流图转换为控制结构图。
已编辑的结 果
最优
结 果
检验后数据
原始
数据
读入原始数 据
检验原始数 据
计算最 优
解
编辑最优结 果
打印最优结 果
6. 请画出国际象棋比赛的状态图。
7. 请画出关于某图形用户界面的状态图。该图形界面具有一个主菜单、 一个包含文件打开命令的文件菜单项, 而且每一个菜单项都包含退出命令。假设每次只能打开一个文件。
8. 某城市的电话号码由3部分组成, 这3个部分的名称与内容分别是:
长途区号: 空白或3位数字:
区码: 非”0”开头的4位数字;
流水号: 4位数字。
假定被测程序能接受一切符合上述规定的电话号码, 拒绝所有不符合规定的号码, 请为被测程序设计测试方案。
9. 将下列类&对象间的关系区分为归纳关系、 聚集关系和关联关系。
人与学生、 车与司机、 公司与职员、 车与奔驰车、 老师与教授、 班级与学生
练习单元二 软件工程方法学
2.1 单项选择题
1. B 2. A 3. C 4. C 5. B 6. D 7. B 8. A 9. B 10. B 11. B 12. D 13. A 14. C
15. A 16. B 17. C 18. B 19. D 20. B 21. A
22. B 23. D 24. C 25. D 26. B 27. A 28. D
29. B 30. A
2.2 填空题
1. 逐步求精
2. 变换流 事务流
3. 数据流方法 信息建模方法 面向对象方法
4. 箭头
5. 判定表
6. 人工测试方法 程序正确性说明
7. 好的测试方案
8. 限定词
9. 模块可分解性 模块可连续性
10. 统一建模语言( UML)
2.3 判断题( 判断命题正确与否, 并说明理由)
1. 错误。一般来说, 模块的内聚程度越高, 它们之间的耦合程度也就越低。
2. 正确。
3. 正确。
4. 正确。
5. 错误。结构化程序设计方法能改进程序结构, 但往往降低了程序的运行效率。
6. 错误。对于特定的程序而言, 满足条件覆盖的测试数据不一定必然也满足判定覆盖。
7. 错误。信息隐蔽原则应该隐蔽的不是有关模块的一切信息, 而是模块的实现细节。
8. 错误。每一个对象都是相应类的一个实例。
m
n
n
1
职工
项目
参加
负责
2.4 简答题
1.
领料通知
无效领料单
缺货通知
已批准的领料单
领料单
车间
1
审批领料单
2
查阅库存帐
用料计划
库存帐
采购员
2.
拖欠
未拖欠
话费拖欠
是否按时缴清费 用
>=300
通
话
费
用
>=500
>=200且<500
>=100且<200
金 卡
银卡卡
无卡卡
钻石卡
缴清00
未缴清00
金 卡
银卡卡
>=200且<300
3.
C=1
Exit Do
n Mod i=0
n从101到1000, 步长为2
当i<=k
c=0
真
假
假
真
i=i+1
k=int(spr(n));i=2;c=0
4.
4
3
3
3
2
2
2
1
计算最优解
生成最优解
得到输入
输出结果
读入
检验
编辑
打印
1
4
5.
被将死
不停地将
不停地将
被将死
白棋走
黑棋走
轮到白棋走
轮到黑棋走
起始
6.
退出
打开文件
关闭文件
提交
结束
输入
主菜单
文件菜单项
文件打开
待打开文
件未找到
退出
7.
8.
( 1) 根据输入条件, 把输入数据划分等价类
有非数字字符( 12) , 少于4位数字( 13) , 多于4位数字( 14)
4位数字( 4)
有非数字字符( 8) , 起始位位‘0’( 9) 少于4位数字( 10) , 多于4位数字( 11)
从1000~9999之间的4位数字( 3)
空白( 1) , 3位数字
有非数字字符( 5) , 少于3位数字( 6) , 多于3位数字( 7)
无效等价类
有效等价类
输入条件
长途区号
区码
流水号
( 2) 确定测试用例
表中4个有效等价类, 能够公用以下两个测试用例:
有效
有效
等价类 ( 1) 、 ( 3) 、 ( 4)
等价类 ( 1) 、 ( 3) 、 ( 4)
( 635) 8052-2935
( ) 2763-2345
期望结果
测试范围
测试数据
表中10个无效等价类, 应选择10个测试用例:
(635 )8052-293D 等价类( 12) 无效
(635 )8052-293 等价类( 13) 无效
(635 )8052-29368 等价类( 14) 无效
(635 )0052-2935 等价类( 9) 无效
(635 )805-2935 等价类( 10) 无效
(635 )80523-2935 等价类( 11) 无效
(635 )805B-2935 等价类( 8) 无效
(2056)4562-2935 等价类( 7) 无效
(20 )8052-2935 等价类( 6) 无效
(20A)2763-2345 等价类( 5) 无效
期望结果
测试范围
测试数据
9. 人与学生( 归纳关系) 、 车与司机( 关联关系) 、 公司与职员( 聚集关系) 、 车与奔驰车( 归纳关系) 、 老师与教授( 归纳关系) 、 老师与教授( 归纳关系) 、 班级与学生( 聚集关系) 。
展开阅读全文