您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 综合/其它 > 广东海洋大学软件工程考试试卷
第1页共34页广东海洋大学20——20学年第二学期《软件工程》课程试题评分标准课程号:16552108□考试□A卷√闭卷√考查√B卷□开卷题号一二三四五六总分阅卷教师各题分数202010152510100实得分数一、填空题(每空1分,共20分)1、到目前为止,软件生产的发展经过了三个阶段即程序设计时代、程序系统时代、软件工程时代。2、典型的可行性研究有下列步骤:系统定义、__分析问题___、__提出解法_____、设计方案、推荐可行的方案和编写可行性研究报告。3、数据字典就是用来定义数据流图中的_所有元素___。它和数据流图共同构成了系统的_高层逻辑模型___。4、软件设计是一个把__系统需求___转换为___实现方案____的过程,包括__总体设计___和___详细设计____。5、软件产品在交付使用之前一般要经过以下四步测试_____单元测试_________、____集成测试_______、____确认测试________和____系统测试______。6、提高软件可维护性的方法有建立明确的软件质量目标、使用先进的软件开发技术和工具、建立明确的质量保证、选择可维护的语言、改进程序的文档。二、选择题(每小题2分,共20分)1、软件生命周期模型有多种,下列选项中,(C)不是软件生命周期模型。A、螺旋模型B、增量模型C、功能模型D、瀑布模型2、制定软件计划的目的在于尽早对欲开发的软件进行合理估价,软件计划的任务是(B)。A、组织与管理B、分析与估算C、设计与测试D、规划与调度3、在数据流图中,有名字及方向的成分是(C)。班级:姓名:学号:试题共4页加白纸2张密封线GDOU-B-11-302第2页共34页A、控制流B、信息流C、数据流D、信号流4、将几个逻辑上相似的成分放在一个模块中,该模块的内聚程度是(A)的。A、逻辑性B、瞬时性C、功能性D、通信性5、在对数据流的分析中,主要是找到变换中心,这是从(C)导出结构图的关键。A、数据结构B、实体关系C、数据流图D、E-R图6、下面(C)不是对象具有的特性。A、标识B、继承C、顺序D、多态性7、与选择编程语言无关的因素是(A)。A、软件开发的方法B、软件执行的环境C、用户需要D、软件开发人员的知识8、白盒测试是从(A)观点的测试。A、开发人员B、管理人员C、用户D、其他9、软件工程对维护工作的主要目标是提高软件的可维护性,降低(D)。A、维护的效率B、维护的工作量C、文档D、维护的代价10、软件工程学中除重视软件开发技术的研究外,另一重要组成内容是软件的(A)。A、工程管理B、成本核算C、人员培训D、工具开发三、判断题(对的画“√”,错的画“×”,每小题1分,共10分)1、在项目计划发生延迟的情况下,增加更多的程序员一定会加快进度。(×)2、软件错误可能出现在开发过程的早期,越早修改越好。(√)3、不完善的系统定义往往是导致软件项目失败的主要原因。(√)4、一个成功的项目唯一提交的就是运行程序。(×)5、只有质量差的软件产品才需要维护。(×)6、UML是一种直观化、明确化、构建和文档化软件产物的通用语言。(×)7、一个好的测试用例在于能发现至今未发现的错误。(√)8、面向对象的分析是面向计算机系统建立软件系统的对象模型。(×)9、软件工作的考虑范围主要是程序设计和实现。(×)第3页共34页10、等价类划分方法将所有可能的输入数据划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例。(√)四、名词解释(每小题3分,共15分)1、软件生命周期答:软件产品从考虑其概念开始到该软件产品交付使用,直至最终退役为止的整个过程,一般包括计划、分析、设计、实现、测试、集成、交付、维护等阶段。2、结构程序设计答:如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。3、α测试答:指软件开发公司组织内部人员模拟各类用户行对即将面市软件产品(称为α版本)进行测试,试图发现错误并修正。4、软件再工程答:对现存的大量软件系统进行挖掘、整理以得到有用的软件构件,或对已有软件构件进行维护以延长其生存期。5、软件建模答:将所要设计的结构和系统的行为融汇贯通,对系统的体系结构进行可视化和控制,化解复杂性的问题,有效地管理开发风险,从而开发出高品质的软件。五、问答题(每小题5分,共25分)1、简述事物流的设计步骤。答:由事务流映射成的软件结构包括一个接收分支和一个发送分支。接收分支:从事务中心的边界开始,把沿着接收流通路的处理映射成模块。发送分支:包含一个调度模块,它控制下层的所有活动模块;然后把数据流图中的每个活动流通路映射成与它的流特征相对应的结构。2、下面是一段求最大值的程序,其中datalist是数据表,n是datalist的长度。intGetMax(intn,intdatalist[]){第4页共34页intk=0;for(intj=1;jn;j++)if(datalist[j]datalist[k])k=j;returnk;}(1)画出该程序的控制流图,并计算其McCabe环路复杂性。(2)用基本路径覆盖法给出测试路径。(3)为各测试路径设计测试用例。答:(1)控制流图如右图所示,McCabe环路复杂性为3。(2)测试路径:Path1:①→③Path2:①→②→④→⑥→…Path3:①→②→⑤→⑥→…(3)测试用例:Path1:取n=1,datalist[0]=1,预期结果:k=0Path2:取n=2,datalist[0]=0,datalist[1]=1,预期结果:k=1Path3:取n=2,datalist[0]=1,datalist[1]=0,预期结果:k=03、面向对象方法是如何支持软件复用的?答:(1)对象具有封装性和信息隐蔽等特性,使其容易实现软件复用。(2)对象类可以派生出新类,类可以产生实例对象,从而实现了对象类数据结构和操作代码的软构件复用。(3)面向对象程序设计语言的开发环境一般预定义了系统动态连接库,提供了大量公用程序代码,避免重复编写,提高了开发效率和质量。4、对整个系统而言,其功能、静态结构、动态行为和物理架构分别由UML中什么图第5页共34页来描述?答:功能由用例图描述,静态结构由类图和对象图描述,动态行为由状态图、时序图、协作图和活动图描述,而物理架构则是由组件图和分布图描述。5、指出时序图中各符号的含义。答:(接收消息的对象)(发送消息的对象)(回调消息)(消息)(生命线)(控制焦点)六、案例分析题(共10分)某大学准备开发一个学生课程注册系统,学生可以使用该系统查询新学期将开设的课程和讲课教师情况,选择自己要学习的课程进行登记注册,并可以查询成绩单;教师可以使用该系统查询新学期将开设的课程和选课学生情况,并可以登记成绩单;注册管理员使用该系统进行注册管理,包括维护教师信息、学生信息和课程信息等。试用用例图描述该系统与外部用户的交互情况。答:学生教师注册管理员注册课程查询成绩单维护课程信息维护学生信息维护教师信息登录选择课程登记成绩usesusesusesusesusesusesusesusesusesuses学生课程注册系统第6页共34页广东海洋大学20——20学年第一学期《软件工程》课程试题评分标准课程号:16552108√考试√A卷√闭卷□考查□B卷□开卷题号一二三四五六七八九十总分阅卷教师各题分数2020102030100实得分数七、填空题(每空1分,共20分)1.面向过程方法学强调_自顶向下__顺序地完成软件开发的各阶段任务;面向对象方法学的出发点和基本原则是__模拟人类习惯的思维方式__,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程。2.总体设计阶段必须回答的关键问题是___概括地说,系统应该如何实现___。3.__数据流图___和____数据字典__共同构成系统的逻辑模型,4.需求分析过程应该建立___数据模型____、____功能模型______、____行为模型____3种模型。5.模块的独立程度可以由__内聚___、___藕合____两个定性标准度量。6.进行边界条件测试时,使用__刚好等于____、___刚好小于____和刚好大于最大值或最小值的数据结构、控制量和数据值的测试方案,非常可能发现软件中的错误。7.对象的两个基本要素是:__属性_____和___服务____。8.发现和定义系统中的对象类是在用例模型的基础上,识别___实体类_____、___边界类____和___控制类___。9.面向对象程序设计风格强调提高__可重用性___、__可扩充性__、__健壮性___。八、选择题(每小题2分,共20分)1.在软件开发的各种资源中,(D)是最重要的资源。A.开发工具B.方法C.硬件环境D.人员2.原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于(A)系统。班级:姓名:学号:试题共3页加白纸2张密封线GDOU-B-11-302第7页共34页A.需求不确定的B.需求确定的C.管理信息D.决策支持3.单元测试的测试用例主要根据(D)的结果来设计。A.需求分析B.源程序C.概要设计D.详细设计4.测试工作量通常占软件开发全部工作量的(C)。A.20%~30%B.30%~40%C.40%~50%D.50%~60%5.Pareto原理指出测试发现的错误中的80%很可能是由程序中(B)的模块造成的。A.10%B.20%C.30%D.40%6.下列偶合中偶合程度最高的是(D)。A.数据偶合B.控制偶合C.特征偶合D.内容偶合7.下列程序流程图的标准符号中,表示数据输入输出的是(A)。A.B.C.D.8.右边所示的流图的环形复杂度为(A)。A.4B.5C.6D.79.在软件维护中,维护工作量比例最大的是(C)。A.改正性维护B.适应性维护C.完善性维护D.预防性维护10.使用条件路径选择进行白盒测试时,对于连锁型分支结构结构,若有n个判定语句,则需要(C)个测试用例。A.nB.2n-1C.2nD.2n+1九、判断题(对的画“√”,错的画“×”,每小题1分,共10分)1.文档是软件产品的一部分,没有文档的软件就不称其为软件。(√)2.在需求分析过程中,分析员要从用户那里解决的最重要的问题是给该软件提供哪些信息。(×)3.建立用例模型的步骤包括确定角色、确定用例和绘制用例图。(×)4.软件错误可能出现在开发过程的早期,越早修改越好。(√)5.只有质量差的软件产品才需要维护。(×)6.一个好的测试用例在于能发现至今未发现的错误。(√)第8页共34页7.不完善的系统定义往往是导致软件项目失败的主要原因。(√)8.瀑布模型是一种文档驱动的模型。(√)9.UML是一种方法。(×)10.在时间允许的情况下,适当减少人员会提高工作效率,降低软件开发成本。(√)十、名词解释(每小题4分,共20分)1.软件生命周期答:软件产品从考虑其概念开始到该软件产品交付使用,直至最终退役为止的整个过程,一般包括计划、分析、设计、实现、测试、集成、交付、维护等阶段。2.结构程序设计答:如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。3.α测试答:指软件开发公司组织内部人员模拟各类用户行对即将面市软件产品(称为α版本)进行测试,试图发现错误并修正。4.UML答:一种直观化、明确化、构建和文档化软件系统产物的通用可视化建模语言,从企业信息系统到基于Web的分布式应用,甚至严格的实时嵌入式系统都适合于用UML来建模。5.软件再工程答:对现存的大量软件系统进行挖掘、整理以得到有用的软件构件,或对已有软件构件进行维护以延长其生存期。十一、问答题(每小题6分,共30分)1.产生软件危机的原因是什么?答:“软件作坊”基本上仍然沿用早期形成的个体化软件开发方法,导致在计算机软件的开发和维护过程中遇到一系列严
本文标题:广东海洋大学软件工程考试试卷
链接地址:https://www.777doc.com/doc-139294 .html