logo资料库

武汉大学软件工程期末考试试卷.pdf

第1页 / 共1页
资料共1页,全文预览结束
武汉大学计算机学院 2008-2009 学年度第二学期 2007 级 《软件工程》期末考试试卷(A 卷) 专业:________________________ 姓名:______________ 学号:__________________ ₪₪₪₪₪₪₪₪₪₪ 注意:请将所有答案均写在答题纸上,并标明题号 ₪₪₪₪₪₪₪₪₪₪ 一.单选题(共20分,每小题2 分) 1.软件计划阶段的工作中包括________。 A.复查分析结果 B.系统的可行性分析 C.导出系统的逻辑模型 D.建立新系统的物理模型解法 2.在需求分析过程中,开发人员要从用户那里解决的最重要的问题是________。 A.要认可软件做什么 B.要给该软件提供哪些信息 C.要求软件工作效率怎样 D.要让软件具有何种结构 3.数据流是数据流图的基本成分,下列关于数据流的叙述中,__________是正确的。 A.某加工的输入是一个数据流,该加工的输出也必定是一个数据流 B.多个不同的数据流可以流向一个加工,也可从一个加工中流出 C.数据流只能从加工流向文件,但不能从文件流向加工 D.一个数据流可以从一个文件流向另一个文件 4.将下列块内联系的类型按模块独立性由强到弱的顺序排列的是_________。 ① 模块中包含的任务必须在同一时间段内执行 ② 模块内所有的成分构成一个整体,仅完成一个单一的功能 ③ 模块中所有元素都使用同一个输入数据或产生同一个输出数据 ④ 一组语句在程序中多次出现,为节省空间把这组语句独立出来作为一个模块 A.①②③④ B.④①③② C.②③①④ D.②①④③ 5.结构化设计方法采用变换分析和事务分析技术实现________。 A.从数据结构导出程序结构 B.从模块结构导出程序结构 C.从模块结构导出数据结构 D.从数据流图导出初始化结构图 6.Jackson 图中上下层间的关系是________。 A.调用关系 B.组成关系 C.继承关系 D.嵌套关系 7.面向对象方法通过_________的方式来执行对象的操作,从而改变对象的________。 A.模块调用……属性 B.参数传递……数据 C.消息传递……属性 D.信息共享……行为 8.对一个采用二分法的检索程序,可以列出以下测试方案,则此测试方法称为________。 ①被检测的表格只有一行 ②表格的行数恰好是 2 的幂次 ③表格的行数比 2 的幂次多 1 或少 1 A.等价分类法 B.边缘值分析法 C.错误推测法 D.因果图法 9.提高程序可读性的有力手段是_________。 A.选好一种程序设计语言 B.显式说明一切变量 C.使用三种标准控制语句 D.给程序加合适的注释 10.软件管理是软件工程的一项重要内容,下面关于软件管理的说法,正确的有_________。 A.在一个软件项目的开发过程中,应该保证各阶段配备的人员数目始终保持不变 B.对进度已经拖延的软件项目,最有效途径就是通过加派人手来控制进度 C.应该科学地、分阶段地进行软件生产活动,并进行严格的质量控制 D.软件文档质量决定了软件产品的质量,应编写与程序一致的、规范的文档 二.多选题(共24 分,每小题4 分) 1.软件工程学科起源于软件危机,造成软件危机的主要原因有_________。 A.软件本身固有的特点 B.缺乏科学的开发方法作指导 C.忽视软件管理的重要性 D.软件应用程度不高 2.下面关于原型法的特点叙述正确的有_________。 A.推迟程序的物理实现 B.快速弱功能 C.用户积极参与 D.强调软件开发过程的阶段性、完整性和顺序性 3.数据字典是软件需求分析模型的重要成分,它的作用有______________。 A.定义系统中使用或产生的所有数据对象 B.描述数据内容和数据格式 C.指出各数据信息在何处被加工处理,以及被处理的方式 D.确定对数据信息的修改将带来的影响,从而避免修改的副作用 4.下列关于 GOTO 语句的说法中,观点正确的是_________。 A.破坏了程序动态结构与静态结构的一致性 B.降低了程序的清晰性和可理解性 C.在一些情况下,能使程序变得简单,而且提高了程序的执行效率 D.在使用 GOTO 时,应避免向程序前部转移,仅使用向后转移的 GOTO 语句 5.软件管理的特点有:_________。 A.知识密集、非实物性 B.劳力密集,自动化程度低 C.单品生产,开发过程不确定 D.内容复杂,正确性难保证 6.以下属于完善性维护的有________ A.解决开发时未能测试各种可能条件带来的问题 B.增加联机求助命令 C.缩短系统的应答时间,使其达到特定要求 D.为软件的运行增加监控设施 三.简答题(共18 分,每小题6 分) 1.规定文件名是“以字母开头,由字母、数字组成的字符串”,采用等价类划分方法设计测 试方案。某同学设计了如下测试用例,你认为下列测试用例哪些无效?为什么? A.file1 B.2file C.file_3 D.4file_1 2.某公司要开发一个应用系统,该系统的特点是:规模不大;工期紧;某些系统模块有类 似软件可供参考;开发人员对应用领域知识知之甚少,但有条件和用户充分沟通;使用环境 将来可能需要变更。在选择开发过程时项目组内部产生了分歧,有人支持瀑布模型,也有人 建议采用原型方法。你会选择哪种开发模型呢?为什么? 3.在《软件工程》课程实践中,你承担了哪部分工作?在完成这部分工作时,你遇到的最 大困难是什么?简要谈谈你是如何解决所遇到的困难的。 四.综述题(共16 分,每小题8 分) 1.某些软件工程师不同意“目前国外许多软件开发组织把 60%以上的人力用于维护已有软 件”的说法,他们说:“我并没有花费我 60%的时间去改正我的程序中的错误”。你如何看? 2.传统结构化方法缓解了软件危机,但不能很好地解决大型复杂软件难以维护的问题,面 向对象方法则弥补了这一不足。为什么面向对象的开发方法可以提高大型软件的可维护性? 五.应用题(共22 分) 银行业务系统中“取款”功能的问题描述为:储户用存折取款,首先填写取款单,然后 将存折和取款单提交给银行的柜员。柜员输入储户信息,系统根据“账卡”中的信息检验取 款单与存折:如有问题,柜员将问题反馈给储户;否则,登录“储户存款数据库”,修改相 应数据,并更新“账卡”,同时发出付款通知,柜员向储户付款。根据该描述: 1.画出银行业务系统中“取款”功能求精细化后的数据流图和相应数据字典。(14 分) 2.根据求出的数据流图,设计“取款”子系统的软件结构,并画出层次图。(8 分)
分享到:
收藏