《2023软件工程导论期末考试题库及参考答案.docx》由会员分享,可在线阅读,更多相关《2023软件工程导论期末考试题库及参考答案.docx(14页珍藏版)》请在第一文库网上搜索。
1、2.判断题1 .向滞后的项目中增加人手会使得项目更加滞后。(T)2 .过程描述语言可以用于描述软件的系统结构。(F)3 .按照瀑布模型开发软件的一条指导思想是清楚地区分逻辑设计与物理设计,以便尽早开始程序的物理实现。(F)5 .只有质量差的软件产品才需要维护。(F)6 .层次图用来描述软件的层次结构。层次图中的一个矩形框代表一个模块,方框间的连线表示模块的组成关系。在层次图中除最顶层的方框之外,给每个方框都加编号,即成为带有编号的层次图。(F)7 .建立动态模型的第一步,是编写典型交互行为的脚本。(T)8 .软件错误可能出现在开发过程的早期,越早修改越好。(T)9 .软件模块的耦合是越低越好。
2、(T)10 .一个好的测试用例在于能发现至今未发现的错误。(T)11 .面向对象设计的结果只能采用面向对象语言来实现(F)12 .一个成功的项目唯一提交的就是运行程序。(F)13 .用例之间的关系有3种。(T)14 .面向对象设计准则也要遵循弱耦合的原则,但是继承耦合则应该提高,紧密地继承耦合与高度的一般-特殊内聚是一致的。(T)15 .软件工作的考虑范围主要是程序设计和实现。(F)16 .环形复杂度定量度量程序的逻辑复杂度,可以用这个公式来计算环形复杂度:流图G的环形复杂度V(G)=N-E+2o(改成E-N+2)(F)17 .等价类划分方法将所有可能的输入数据划分成若干部分,然后从每一部分中
3、选取少数有代表性的数据作为测试用例。(T)18 .在进行总体(改成概要)设计时应加强模块间的联系。(F)19 .系统结构图是精确表达程序结构的图形表示法。因此,有时也可以将系统结构图当作系统流程图使用。(T)20 .建立动态模型的第一步,是编写典型交互行为的脚本。(T)21 .在程序调试时,找出错误的位置和性质比改正该错误更难。(F)22 .如果通过软件测试没有发现错误,则说明软件是正确的。(F)23 .快速原型模型可以有效地适应用户需求的动态变化。(T)24 .模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产2023软件工程导论期末考试题库及参考答案1 .填空
4、题1 .一般来说,可以从一致性、完整性、现实性和有效性四个方面验证软件需求的正确性。2 .IPO图是输入、处理和输出图的简称,它是美国IBM公司发展完善起来的一种图形工具。3 .系统流程图是描述一物理模型一的传统工具,用图形符号表达了系统中各种元素之间的信息流动情况。4 .数据流图中的箭头表示数据流,椭圆或圆形表示数据处理.矩形表示数据的源点/终点.5 .软件测试的步骤按顺序分别是:单元测试、子系统测试、系统测试(子系统和系统测试通常称为集成测试)、确认测试和系统测试(集成测试)6 .软件生命周期一般可分为一问题定义一、可行性研究、需求分析、设计编码、_测试一、运行与维护阶段。7 .可行性研究
5、主要集中在以下四个方面一经济可行慢、_技术可行慢一、法律可行性和抉择。8 .在结构化设计中,HIPo图应用在总体设计阶段,由IPo图和一层次图_两部分组成。9 .复杂问题的对象模型通常由下述五个层次组成:主题层、类与对象层、结构层、_.属性.层和_服务一层。10 .实施精化设计的目标是基于模块的“高内聚低耦合”的原则,提高模块的独立性。11 .软件生命周期一般可分为问题定义、可行性研究、需求分析、概要设计、连细设计、编码一软件测试一、运行与维护阶段。12 .面向对象的数据存储管理模式分为文件、关系数据库和面向对象数据库三种。13 .单元测试一般以上盒-测试为主,测试为辅。14 .软件工程三要素
6、包括一方法_、工具和过程,其中,过程支持软件开发的各个环节的控制和管理。15 .类构件的重用方式有实力重用、继承重用和多态重用三种。16 .能力成熟度模型分为5个等级:初始级、可值复级、已定义级、B管理一级和优化级。C.功能内聚D.通信内聚10. 一个模块的()太大一般是因为缺乏中间层次,应当适当增加中间层次的控制模块。A.深度C.扇出11 .模块的内聚性最高的是()oA.逻辑内聚C.偶然内聚12 .需求分析是()。A.软件开发工作的基础C.由系统分析员单独完成的B.宽度D.扇入B.时间内聚D.功能内聚B.软件生存周期的开始D.由用户自己单独完成的13.在白盒测试技术测试用例的设计中,()是最
7、强的覆盖标准。A.语句覆盖C.条件组合覆盖B.路径覆盖D.判定覆盖14 .软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归测试过程称为()。A.改正性维护B,适应性维护C.完善性维护D.预防性维护15 .()是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。A.多态性C.封装B.继承D.消息16.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。A.结合B.隐藏C.封装D.抽象17.面向对象的开发方法中,()将是面向对象技术领域内占主导地位的标准建模语言。A.Booch方法B.Coad方法
8、C.UM1语言D.OMT方法18.()意味着一个操作在不同的类中可以有不同的实现方式。A.多态性B.多继承19.单元测试的测试用例主要根据(A.需求分析B.源程序C.类的可复用D.信息隐藏)的结果来设计。C.概要设计D.详细设计20.软件测试是为了()而执行程序的过程。B.发现错误D.证明正确A.纠正错误C.避免错误品。(T)25 .集成测试主要由用户来完成。(F)26 .面向对象=对象+类+继承+消息传递。(T)27 .面向对象的分析是面向计算机系统建立软件系统的对象模型。(F)3.选择题1 .具有风险分析的软件生命周期模型是()oA.瀑布模型B.喷泉模型C.螺旋模型D.增量模型2 .软件工
9、程的基本要素包括方法、工具和()。A.过程B.软件系统D.人员C.硬件环境3 .软件的复杂性是(),它引起人员通信困难开发费用超支、开发时间超时等问题。A.固有的B.人为的C.可消除的D.不可降低的4 .在结构化分析方法中,()表达系统内部数据运动的图形化技术。A.数据字典C.数据流图B.实体关系图D.状态转换图5 .“软件危机”是指()。A.计算机病毒的出现B.利用计算机进行经济犯罪活动C.软件开发和维护中出现的一系列问即D.人们过分迷恋计算机系统6 .随着软硬件环境变化而修改软件的过程是()。A.校正性维护B,适应性维护C.完善性维护D.预防性维护7 .需求分析中开发人员要从用户那里了解(
10、)A,软件做什么B.用户使用界面C.输入的信息D.软件的规模8 .软件详细设计的主要任务是确定每个模块的()A.算法和使用的数据结构B.外部接口C.功能D.编程9 .为了提高模块的独立性,模块内部最好是()。/外部耦合,功能内聚A.逻辑内聚B.时间内聚答:优点:采用增量模型的优点是人员分配灵活,刚开始不用投入大量人力资源。如果核心产品很受欢迎,则可增加人力实现下一个增量。当配备的人员不能在设定的期限内完成产品时,它提供了一种先推出核心产品的途径。这样即可先发布部分功能给客户,对客户起到镇静剂的作用。此外,增量能够有计划地管理技术风险。缺点:1)由于各个构件是逐渐并入已有的软件体系结构中的,所以
11、加入构件必须不破坏已构造好的系统部分,这需要软件具备开放式的体系结构。2)在开发过程中,需求的变化是不可避免的。增量模型的灵活性可以使其适应这种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改模型,从而是软件过程的控制失去整体性。3)如果增量包之间存在相交的情况且未很好处理,则必须做全盘系统分析,这种模型将功能细化后分别开发的方法较适应于需求经常改变的软件开发过程。2 .简述软件设计的过程。答:软件设计是把许多事物和问即抽象起来,并且抽象它们不同层次和角度,是将需求转变为软件陈述的过程,是迭代的过程。软件设计,要根据需求规格说明书,对整个设计过程进行计划,然后实施具体的设计过
12、程,即“先整体,再局部”,也是不断迭代和精化的过程。然后需要对生成的设计规格说明书进行评审,启动质量评价的标准,若未通过评审,需重新修改设计,直至评审通过,确定最后定型的过程本身。进入后续阶段,完成软件设计过程。3 .原型化方法主要用于解决什么问题?试说明这种方法的主要优缺点。答:建立原型的主要原因是为了解决在产品开发的早期阶段需求不确定的问题,用户、经理和其他非技术项目风险承担者发现在确定和开发产品时,原型可以使他们的想象更具体化。原型在软件开发过程中可以起到以下主要作用:21 .类构件的重用方式有多态重用,继承重用和()A.实例重用8.重载重用C.代码重用D.方法重用22 .支持面向对象技
13、术的软件生存周期模型是()0A.喷泉模型B.螺旋模型C.增量模型D.瀑布模型23 .在白盒测试技术测试用例的设计中,()是最弱的覆盖标准。A.语句覆盖B.路径覆盖C.条件组合覆盖D.判定覆盖1 .下面哪些测试方法属于白盒测试()。BCD是黑盒测试A、基本路径测试B、等价类划分C、边界值分析D、错误推测E、逻辑覆盖测试2 .下列哪些选项是属于内容耦合(A、一个模块直接访问另一个模块的内部数据Bx一个模块有多个入口C、一个模块不通过正常人口转到另一模块内部Dv一个模块只有一个入口3 .下列属于度量效益方法的是()。Av货市的时间价值Bv投资回收期Cs收入D、投资回报率4 .数据流图是用于表示软件模
14、型的一种图示方法,在下列可采用的绘制方法中,哪些是常采用的()oA、自顶向下B、自底向上Cv分层绘制D、逐步求精5 .软件设计中一般将用到图形工具,下列哪种些可用作设计的图形工具()。A、结构图Bv实体联系图C、IPo图D、层次图1 .简述增量模型的优点和缺点。(1)明确并完善需求原型作为一种需求工具,它初步实现所理解的系统的一部分。用户对原型的评价可以指出需求中的许多问题,在你开发真正产品之前,可以最低的费用来解决这些问题。(2)探索设计选择方案原型作为一种设计工具,用它可以探索不同的用户界面技术,使系统达到最佳的可用性,并且可以评价可能的技术方案。(3)发展为最终的产品原型作为一种构造工具
15、,是产品最初子集的完整功能实现,通过一系列小规模的开发循环,你可以完成整个产品的开发。4.请看下列伪代码程序,要求完成下列问题:(1)画出代码的流程图(4分)(2)根据该程序流程图画出该程序的流图;(4分)(3)计算该流图的环形复杂度;(4分)STARTINPUT(A.B.C)IFA5THENX=10E1SEX=1ENDIFIFB10THENY=20E1SEY=2ENDIFIF015THENZ=30E1SEZ=3ENDIFPRINT(X.Y.Z)STOP答:(1)(3)10.某个程序的伪码如下(前面的标号只用于标明语句顺序,不参与程序运行):STARTIF11THENS1DOWHI1E12S2IF13THENS3E1SES4ENDIFENDDOEISES5E