共7页,第1页东莞理工学院(本科)试卷(A卷)2013-2014学年第二学期《软件工程》试卷(A卷答案)开课单位:计算机学院,考试形式:闭卷,允许带入场题序一二三四五总分得分评卷人一、填空题(每空1分,共20分)1.软件是能够完成预定功能和性能的可执行的计算机程序,包括使程序正常执行所需要的数据,以及有关描述程序操作和使用的文档。2.软件项目管理的三个核心要素是项目范围、进度和成本。3.软件工程的发展大致上可以分为三个阶段,即传统软件工程,面向对象软件工程和基于构件的软件工程。4.一个软件从开始定义立项起,到废止不用,统称为软件的生命周期,其主要活动包括需求分析、软件分析、软件设计、编码、软件测试和运行维护。5.软件的形式化开发方法主要包括转换模型和净室模型。6.需求分析是在获取需求的基础上进行需求建模,并编写__软件需求规格说明书___来描述需求。7.软件测试可分为静态分析和动态测试,而动态测试又可以分为黑盒测试和白盒测试。8.模块化设计的目的是按照规定的原则把大型软件划分为较小的、相互独立但相互关联的模块。模块的独立性可以从内聚性和耦合性两个方面来度量。9.按照复用所应用的领域范围,复用可分为两种,横向复用是指复用不同应用领域中的软件元素;纵向复用是指在一类具有较多公共性的领域间对软件构件进行复用。姓名:学号:系别:年级专业:(密封线内不答题)……………………………………………………密………………………………………………封………………………………………线……………………………………线………………………………………得分共7页,第2页二、单项选择题(每题2分,共40分)12345678910BDBCDCDBDC11121314151617181920CBABDCACAB1.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作()。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.()是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。A.多态B.继承C.封装D.消息7.SA方法用DFD描述()。A.系统的控制流程B.系统的数据结构C.系统的基本加工D.系统的功能8.判定树和判定表是用于描述结构化分析方法中()环节的工具。A.功能说明B.数据加工C.数据流向D.状态转换得分共7页,第3页9.结构化设计方法采用变换分析和事务分析技术实现()。A.从数据结构导出程序结构B.从模块结构导出程序结构C.从模块结构导出数据结构D.从数据流图导出初始化结构图10.模块内部的算法设计在结构化方法的()阶段进行。A.系统分析B.概要设计C.详细设计D.编码(实现)11.模块化设计方法要设计出()模块。A.高内聚高耦合B.低类聚低耦合C.高内聚低耦合D.低类聚高耦合12.以下UML图中,用于从用户角度描述系统功能的是()A.类图B.用例图C.时序图D.构件图13.以下UML图中,强调从时间顺序描述对象间消息传递的是()A.时序图B.协作图C.活动图D.部署图14.软件测试的目的是()。A.试验性运行软件B.发现软件错误C.证明软件正确D.定位并改正错误15.下列几种逻辑覆盖标准中,查错能力最强的是()。A.语句覆盖B.条件覆盖C.判定覆盖D.条件组合覆盖16.关于测试,下面说法正确的是()。A.经过测试没有发现错误说明程序正确B.测试只能通过运行程序来完成C.成功的测试是发现了迄今尚未发现的错误的测试D.成功的测试是没有发现错误的测试17.下列选项中与选择程序设计语言无关的因素是()。A.编码风格B.软件执行的环境C.软件开发的方法D.项目的应用领域共7页,第4页18.在软件维护中,因误删除一个标识符而引起的错误是()副作用。A.文档B.数据C.编码D.设计19.为了系统的处理变更,从而使得软件系统可以随时保持其完整性的是()。A.配置管理B.质量管理C.进度管理D.范围管理20.某个应用软件原来是在DOS环境下运行的,现在要把它移植到Windows环境下来运行,这种修改软件的过程称为()。A.完善性维护B.适应性维护C.纠错性维护D.预防性维护三、解答题(每小题8分,共40分)1.某图书借阅管理系统能够提供以下功能:读者能够通过系统借书和还书。借书时系统根据读者表和借阅记录判断读者是否可以借书,如果有超期未还的书籍或达到借阅上限则不能借书,否则登记借书记录;还书时系统登记还书记录,若超期则产生罚款单。请根据以上功能描述画出顶层DFD图和第一层DFD图。顶层DFD一层DFD得分共7页,第5页2.请分析以下两个软件开发项目使用哪种过程模型比较合适,并说明理由。A.某公司想要开发一种新的商用软件来填补市场空白。因为市场前景还不十分明确,因此项目具有很大的风险;同时公司虽然很看好这款软件产品,但是对于软件产品的功能只有一个大致概念,许多细节并不明确。(4分)B.为一家企业开发一套ERP系统。最初对系统的描述展示了一个相对较大的需求。系统包含许多低耦合的子系统,每个子系统的功能需求相对明确,并且有些非核心的子系统并不需要立即交付。(4分)A可采用螺旋模型,强调风险分析并逐步明确需求。也可采用快速原型模型,明确需求。B可采用增量模型。也可采用瀑布模型,但需要获取完全,清晰的需求并分清需求优先级。3.已知某程序以二维平面上的点P(x,y)为输入,其功能是判定点P在平面上的位置。点P的位置可以是原点、坐标轴上、以及四个象限中。请以等价类法设计测试用例。TCECINPUTEXPECTEDOUTPUT1x0,y0P(1,1)第一象限2x0,y=0P(1,0)X轴正向3x0,y0P(1,-1)第四象限4x=0,y0P(0,1)Y轴正向5x=0,y=0P(0,0)原点6x=0,y0P(0,-1)Y轴负向7x0,y0P(-1,1)第二象限8x0,y=0P(-1,0)X轴负向9x0,y0P(-1,-1)第三象限10x无效,y有效P(x1,1)ERROR11x有效,y无效P(1,y1)ERROR12x无效,y无效P(x1,y1)ERROR共7页,第6页4.有如下有流程图,请A.画出对应的程序图(2分)B.计算程序图的环域数V(G)(2分)C.找出一组基本路径(4分)V(G)=13-10+2=5基本路基:abcdij,abfgij,abfhij,abfhibcdij,abceij.共7页,第7页5.下图是一个图书馆借阅管理系统添加读者用例的时序图,请根据该时序图画出添加读者用例的协作图。