—南昌大学考试试卷—【适用时间:2015~2016学年第二学期试卷类型:[A]卷】教师填写栏课程编号:试卷编号:课程名称:软件工程开课学院:信息工程学院考试形式:闭卷适用班级计算科学与技术考试时间:分钟试卷说明:1、本试卷共页。2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。题号一二三四五六七八九十总分累分人签名题分2010202030100得分考生填写栏考生姓名:考生学号:所属学院:所属班级:所属专业:考试日期:考生须知1、请考生务必查看试卷中是否有缺页或破损。如有立即举手报告以便更换。2、严禁代考,违者双方均开除学籍;严禁舞弊,违者取消学位授予资格;严禁带手机等有储存或传递信息功能的电子设备等入场(包括开卷考试),违者按舞弊处理;不得自备草稿纸。考生承诺本人知道考试违纪、作弊的严重性,将严格遵守考场纪律,如若违反则愿意接受学校按有关规定处分!考生签名:一、单项选择题:(每题2分,共20分)得分评阅人1、产生软件危机的原因主要与两个方面的问题有关:(A)(1)A)软件产品本身的特点,而且在软件的开发和维护过程中用的方法不正确。B)软件在计算机中很难识别,存在磁盘中也看不到。C)软件设计对人的智商要求很高,也要求很高的资金投入。D)软件很难理解,硬件也很复杂。2、软件维护的四类维护活动是:(A)(2)A)改正性维护,适应性维护,完善性维护和预防性维护。B)适应性维护,完善性维护,抢救性维护和辅助性维护。C)改正性维护,适应性维护,完善性维护和辅助性维护。D)适应性维护,完善性维护,抢救性维护和预防性维护。3、通常发现系统需求说明书中的错误的测试步骤是(C)(3)A)模块测试B)子系统测试C)验收测试D)平行运行4、总体设计阶段确定了:(B)(4)A)系统的具体实现方案。B)系统的逻辑模型。C)程序每个模块的处理过程。D)系统的数据要求。5、软件测试的目的是:(C)(5)A)证明程序中没有错误。B)证明程序中有错误。C)发现程序中的错误。D)改正程序中的错误。6、模块内聚度越高,说明模块内各成分彼此结合的程度越(B)(6)A)松散B)紧密C)无法判断D)相等7、在数据流图中,○(椭圆)代表(C)(7)A)源点B)终点C)加工D)模块8、下列工具中,在软件详细设计过程中不建议采用的是(D)(8)A)判定表B)IPO图C)NS图D)DFD图9、软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫(D)(9)A)生存期B)面向对象设计C)面向对象程序设计D)面向对象分析10、ER模型中的基本成分不包含(D)(10)A)实体B)联系C)属性D)处理二、填空题:(每空1分,共20分)得分评阅人1、软件危机是指在(软件开发和维护过程中)所遇到的一系列严重问题。2、面向对象方法=对象+类+(继承)+(消息)。3、传统的软件开发方法学也称为(生命周期方法)学。4、在需求分析阶段,描绘系统逻辑模型的方法主要是用数据流图和(数据字典)。5、数据流图有四种成分:(源点或终点)、(处理)、(数据存储)、(数据流)。6、程序的三种基本控制结构是(顺序)、(选择)、(循环)。7、模块独立性可以由(内聚)、(耦合)两个定性标准度量。8、(软件维护)阶段在软件生命周期中工作量最大。9、用面向对象方法开发软件,通常需要建立三种形式的模型,它们分别是(对象模型)、(动态模型)、(功能模型)。10、黑盒测试又称为(功能测试),白盒测试也称为(结构测试)。三、简答题:(每题5分,共20分)得分评阅人1、可行性研究的任务是什么?回答要点:每点一分1、首先需要进一步明确问题定义;2、建立逻辑模型。3、从逻辑模型出发,经过压缩的设计,探索出若干种可供选择的主要解决方法,对每种解决方法都要研究它的可行性,4、从三个方面分析研究每种解决方法的可行性。㈠技术可行性。㈡经济可行性。㈢社会可行性。2、软件生命周期包括哪几个阶段?回答要点:--------------------------------------------------------------每一点0.5分1、问题定义2、可行性研究3、需求分析4、总体设计5、详细设计6、编码和单元测试7、综合测试8、软件维护3、采用黑盒技术设计测试用例有哪几种方法?这些方法各有什么特点?回答要点:----------------------------每一点1分,解释1分1、等价类划分。等价类划分是将输入数据域按有效的或无效的(也称合理的或不合理的)划分成若干个等价类,测试每个等价类的代表值就等于对该类其它值的测试。2、界值分析。该方法是将测试边界情况作为重点目标,选取正好等于,刚刚大于或刚刚小于边界值的情况,根据这些情况选择测试用例。3、错误推测。错误推测法没有确定的步骤,凭检验进行。它的基本思想是列出程序中可能发生错误的情况,根据这些情况选择测试用例。4、对象模型有哪5个层次?建立对象模型有哪几个步骤?答:主题层、类&对象层、结构层、属性层、服务层。(1分)1、确定类与对象:(1分)第1步:列出所有候选对象第2步:去粗取精2、确定关联结构层(1分)第1步:收集第2步:筛选删除第3步:完善3、划分主题(0.5分)4、确立属性(0.5分)5、识别继承关系及其它修改(1分)四、程序设计题:(每小题10分,共20分)得分评阅人-------2分-------1分-------2分(C2部分)-------1分-------1分-------1分-------2分2、消除下列伪码中的GOTO语句,使其成为等价的标准的结构化程序(用伪码表示)。STARTLoop1:IFC1THENB1Loop2:IFC2THENB2GOTOLoop2ENDIFGOTOLoop1ENDIFSTOP1、请用N-S图或PAD图描述右图中伪码。FC1TpqC2tsrC3STARTIFC1THENBLOCKpqENDBLOCKELSEWHILEC2DOtENDDOENDIFREPEATUNTILC3srENDREPSTOPSTARTWHILEC1DO--------------------3分B1------------------2分WHILEC2DO--------------3分B2---------------------2分ENDDOENDDOSTOP五、应用题:(每小题10分,共20分)得分评阅人1、某图书馆借阅系统有以下功能:(1)借书:根据读者的借书证查询读者档案,若借书数目未超过规定数量,则办理借阅手续(修改库存记录及读者档案),超过规定数量者不予借阅。对于第一次借阅者则直接办理借阅手续。(2)还书:根据读者书中的条形码,修改库存记录及读者档案,若借阅时间超过规定期限则罚款。请对以上问题,画出分层数据流图2、2、某“调整工资”处理模块接受一个“职称”的变量,根据职称的不同(助教,讲师,副教授,教授)作不同的处理,其中若是助教还必须输入工龄,只有工龄超过两年才能调整工资。请用等价类划分法设计测试用例。划分等价类:(5分)设计测试用例:(5分)