软件工程E答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
淮 海 工 学 院
河南理工大学 2010-2011 学年第 1 学期
《软件工程》试卷(A 卷)
( D )1.面向对象的分析方法主要是建立三类模型,即:
A .系统模型、E-R 模型、应用模型
B .对象模型、动态模型、应用模型
C .E-R 模型、对象模型、功能模型
D .对象模型、动态模型、功能模型
( C )2.在E-R 模型中,包含以下基本成分:
A .数据、对象、实体
B .控制、联系、对象
C .实体、联系、属性
D .实体、属性、操作
( D )3.软件生命周期中所耗费时间最长的阶段是下列哪个阶段?
A .详细设计
B .软件编码
C .软件测试
D .软件维护 ( D )4.从下面几种白盒测试技术中,选择最强的覆盖准则。
A .语句覆盖
B .条件覆盖
C .判定覆盖
D .条件组合覆盖 ( A )5.所谓信息隐藏是指隐藏模块的 。
A .实现细节
B .接口部分
C .源代码 D
.一切信息 ( D )6.下列几种耦合类型中表示模块耦合程度最高的是哪种?
A .数据耦合
B .控制耦合
C .特征耦合
D .内容耦合 ( D )7.下列几种内聚类型中表示模块的内聚性最高的是哪种?
A .逻辑内聚
B .时间内聚
C .偶然内聚
D .功能内聚
( C )8.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是 。
A .数据库设计
B .数据通信
C .数据定义
D .数据维护
( D )9.下列哪种模型引入了“风险驱动”的思想,适用于大规模的内部开发项目?
A .增量模型
B .喷泉模型
C .原型模型
D .螺旋模型 ( D )10.提高测试的有效性非常重要,成功的测试是指 。
A .证明了被测试程序正确无误
B .说明了被测试程序符合相应的要求
C .未发现被测程序的错误
D .发现了至今为止尚未发现的错误
( D )11.在数据流图中,数据存储和数据流都是 ,仅仅是所处的状态不同。
A .分析结果
B .事件
C .动作
D .数据
( C )12.在进行软件结构设计时应该遵循的最主要的原理是 。
A .抽象
B .模块化
C .模块独立
D .信息隐藏
( B )13.软件调试的目的是 。
A .发现错误
B .改正错误
C .改善软件的性能
D .挖掘软件的潜能
( B )14.面向数据流的软件设计方法,一般是把数据流图中的数据流划分为 两种流,再将数据流图映射为软件结构。
A .数据流与事务流
B .变换流和事务流
C .信息流与控制流
D .变换流和数据流
( D )15.软件测试基本方法中,下列 不用测试实例。
A .白盒测试法
B .动态测试法
C .黑盒测试法
D .静态测试法
1、将下面的关系按继承关系、组合关系或关联进行分类。()中填写继承、组合或关联。
小汽车---------红旗轿车 ( 继承 ) 小汽车---------驾驶员 ( 关联 ) 班级------------学生 ( 组合 ) 列车------------餐车 ( 组合 ) 人员------------雇员 ( 继承 )
2、将下列各项分为类或类的实例。()中填写类或实例。
我的汽车 ( 实例 ) 交通工具 ( 类 ) 黄晓明 ( 实例 ) 教授 ( 类 ) 喷气式战机 ( 类 )
( × )1、开发软件就是编写程序。
( × )2、进行总体设计时应加强模块间的联系。 ( × )3、编码时尽量多用全局变量。
( × )4、软件测试的目的是要证明软件本身的正确性。
( × )5、可行性研究的目的是确定一个软件项目的具体开发方法。
( × )6、在实体-关系图中,实体包含的范围很广泛,如桌子的宽度等都可以作为实体。 ( × )7、模块化的方法通常可以降低一个复杂问题的难度,划分的模块数目越多越好。 ( √ )8、面向对象分析和设计阶段的界限是模糊的,许多分析的结果可以直接影射成设计结果。
( × )9、统一建模语言UML 仅适用于系统分析阶段,而不是系统开发的全过程。
( × )10、软件开发环境是指支持软件生存期中某一阶段的任务实现而使用的计算机程序。
一、单项选择题(每题2分)(将答案写在题号前的括号中)
淮 海 工 学 院
参考答案:
软件过程是为了开发出高质量的软件产品所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
软件过程是软件工程方法学的3个重要组成部分之一。软件工程方法学是通常把在软件生命周期全过程中使用的一整套技术的集合。软件工程方法学包括三个要素,这就是方法、工具和过程。其中,方法是完成软件开发的各项任务的技术方法,回答“如何做”的问题;工具是为方法的运用提供自动的或半自动的软件支撑环境;过程是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
2.面向对象方法学的四个要点是什么?请对每个要点分别简述。(5分)
参考答案:
四个要点:对象+类+继承+用消息通信
1)把对象(Object)作为融合了数据及在数据上的操作行为的统一的软件构件。面向对象程序是由对象组成的,程序中任何元素都是对象,复杂对象由比较简单的对象组合而成。
2)把所有对象都划分成类(Class)。每个类都定义了一组数据和一组操作,类是对具有相同数据和相同操作的一组相似对象的定义。数据用于表示对象的静态属性,是对象的状态信息,而施加于数据之上的操作用于实现对象的动态行为。
3)按照父类(或称为基类)与子类(或称为派生类)的关系,把若干个相关类组成一个层次结构的系统(也称为类等级)。在类等级中,下层派生类自动拥有上层基类中定义的数据和操作,这种现象称为继承。
4)对象彼此之间仅能通过发送消息互相联系。对象与传统数据有本质区别,它不是被动地等待外界对它施加操作,相反,它是进行处理的主体,必须向它发消息请求它执行它的某个操作以处理它的数据,而不能从外界直接对它的数据进行处理。
3.请画出描述教师、学生和课程的实体-关系图。(5分)
注:教师的信息包括教工号、姓名、性别、职称等,学生的信息包括学号、姓名、性别、系、年级等,课程的信息包括课程号、课程名、学时等,学生进行课程的学习会得到对应的成绩。
参考答案:
4.下图为某软件的结构图,根据图中的信息,回答下列问题:(共6分) 1)该软件结构的深度和宽度分别是多少?
2)模块2的扇入为多少?模块2的扇出为多少?
参考答案:
1)深度5,宽度9
2)模块2的扇入为1,扇出为4 3)控制域为模块9,17,18,22
5.某高校内用固定电话拨打电话时有以下规则:校内电话号码由4位数字组成,第1位数字不是0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,如果是本市电话再接着拨8位电话号码(第1位不是0),如果是外地电话则先拨区码(3位数字),再拨当地电话号码(8位数字,第1位不是0);手机号码由11位数字组成,第1位数字为1,拨手机号码需先拨0。
请用数据字典定义数据的方法定义上述的电话号码。(6分)
参考答案:
电话号码=[校内电话|校外电话|手机号码] 校内电话=非零数字+三位数字 非零数字=[1|2|3|4|5|6|7|8|9]