《软件工程导论》期末考试复习题库(含答案)_第1页
《软件工程导论》期末考试复习题库(含答案)_第2页
《软件工程导论》期末考试复习题库(含答案)_第3页
《软件工程导论》期末考试复习题库(含答案)_第4页
《软件工程导论》期末考试复习题库(含答案)_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE1《软件工程导论》期末考试复习题库(含答案)一、单选题1.下面不属于软件的特点的是A、软件产品非常便宜B、软件是一种软件产品C、软件产品不会用坏,不存在磨损、消耗问题D、软件产品的生产主要是研制答案:A2.需求分析是由分析员经了解用户的要求,认真细致地调研、分析,最终应建立目标系统的逻辑模型并写出A、软件规格说明书B、模块说明书C、项目开发计划D、合同文档答案:A3.下列叙述中错误的是A、测试的目的是为了证明程序是正确的B、测试是为了寻找错误而运行程序的过程C、一个成功的测试是揭示了迄今为止尚未发现的错误的测试D、一个好的测试用例是指很可能找到迄今为止尚未发现的错误的测试答案:A4.在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是A、状态图B、数据流图C、系统结构图D、时序图答案:A5.下面不属于软件设计原则的是A、自底向上B、信息隐蔽C、模块化D、抽象答案:A6.软件测试按照功能划分可以分为A、白盒测试和黑盒测试B、黑盒测试和单元测试C、集成测试和单元测试D、白盒测试和静态测试答案:A7.软件开发瀑布模型中的软件定义时期各个阶段依次是A、问题定义,可行性研究,需求分析B、可行性研究,问题定义,需求分析C、可行性研究,需求分析,问题定义D、以上顺序都不对答案:A8.下列哪个阶段不属于软件生存周期的三大阶段A、编码阶段B、计划阶段C、开发阶段D、维护阶段答案:A9.在详细设计阶段所使用到的设计工具是A、判定表,判定树,PDL,程序流程图,PAD图,N-S图B、程序流程图,PAD图,N-S图,HIPO图,判定表,判定树C、数据流程图,Yourdon图,程序流程图,PAD图,N-S图,HIPO图D、判定表,判定树,数据流程图,系统流程图,程序流程图,层次图答案:A10.常见的软件概要设计方法有3大类,其中以数据流图为基础构造模块结构的是A、Jackson方法和LCP逻辑构造方法B、结构化设计方法SDC、面向对象设计方法OODD、快速原型法答案:A11.数据字典是软件需求分析阶段的重要工具之一,它的基本功能是A、数据定义B、数据维护C、数据通讯D、数据库设计答案:A12.系统流程图用于描绘A、物理系统B、逻辑系统C、数据结构D、状态变迁答案:A13.因计算机硬件和软件环境的变化而作出的修改软件的过程称为A、完善性维护B、教正性维护C、适应性维护D、预防性维护答案:C解析:软件维护是指在软件生命周期内,对软件进行修改,以修正错误、改进性能或其他属性,或使软件适应变化的环境。其中,因计算机硬件和软件环境的变化而作出的修改软件的过程,被称为适应性维护。14.关于白盒测试与黑盒测试的最主要区别,正确的是A、白盒测试侧重于程序结构,黑盒测试侧重于功能B、白盒测试可以使用测试工具,黑盒测试不能使用工具C、白盒测试需要程序参与,黑盒测试不需要D、黑盒测试比白盒测试应用更广泛答案:A15.开发软件时对提高开发人员工作效率至关重要的是A、先进的软件开发工具和环境B、操作系统的资源管理功能C、程序人员的数量D、计算机的并行处理能力答案:A16.需求分析最终结果是产生A、需求规格说明书B、项目开发计划C、可行性分析报告D、设计说明书答案:A17.在软件开发中,下面任务不属于设计阶段的是A、定义需求并建立系统模型B、定义模块算法C、给出系统模块结构D、数据结构设计答案:A18.下面不属于软件的组成的是A、记录B、文档C、数据D、程序答案:A19.可行性研究主要从以下几个方面进行研究A、技术可行性,经济可行性,操作可行性B、技术可行性,经济可行性,系统可行性C、经济可行性,系统可行性,操作可行性D、经济可行性,系统可行性,时间可行性答案:A20.软件开发工具是协助开发人员进行软件开发活动所使用的软件或环境。下面不是软件开发工具的是A、维护工具B、编码工具C、测试工具D、需求分析工具答案:A21.软件生命周期中所花费用最多的阶段是A、软件测试和维护B、概要设计C、软件编码D、详细设计答案:A22.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是A、需求分析B、问题定义C、详细设计D、概要设计答案:A23.软件工程的出现是由于A、软件危机的出现B、软件产业化的需要C、程序设计方法学的影响D、计算机的发展答案:A24.在数据流图中,用圆或者椭圆来表示A、加工B、数据流C、数据存储D、数据源点或终点答案:A25.Jackson图中,模块框之间若有直线连接,表示它们之间存在A、组成关系B、调用关系C、链接关系D、顺序执行关系答案:A解析:这道题考察的是对Jackson图的理解。在Jackson图中,模块之间的不同连接方式代表了不同的关系。具体到这道题,模块框之间若有直线连接,这表示的是模块之间的组成关系,即一个模块由其他模块组成。这是Jackson图中的一个基本概念,理解了这个概念,就能轻松选出正确答案A。26.数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是A、数据、标记、控制、公共B、数据、公共、标记、控制C、控制、数据、标记、公共D、控制、数据、公共、标记答案:A27.黑盒测试法属于A、动态测试B、静态测试C、系统测试D、集成测试答案:A28.有一组测试用例使得每一个被测试用例的分支覆盖至少被执行一次,它满足的覆盖标准A、判定覆盖B、语句覆盖C、条件覆盖D、路径覆盖答案:A29.软件结构图中,模块框之间若有直线连接,表示它们之间存在A、调用关系B、组成关系C、链接关系D、顺序执行关系答案:A30.需求分析阶段的任务是确定A、软件系统功能B、软件开发费用C、软件开发方法D、软件开发工具答案:A31.下列模块独立性最强的是A、非直接耦合B、数据耦合C、公共耦合D、内容耦合答案:A32.详细设计的结果基本决定了最终程序的A、质量B、代码的规模C、运行速度D、可维护性答案:A33.软件设计中,用抽象和分解的目的是A、降低复杂性B、提高易读性C、增加内聚性D、降低耦合性答案:A34.软件开发的结构化生命周期方法将软件生命周期划分成A、定义、开发、运行维护B、需求分析、功能定义、系统设计C、总体设计、详细设计、编程调试D、设计阶段、编程阶段、测试阶段答案:A35.在软件测试过程的4个步骤中,测试依据是需求规格说明的是A、确认测试B、集成测试C、系统测试D、单元测试答案:A36.为了提高软件的可维护性,在编码阶段应注意A、养成好的程序设计风B、提高模块的独立性C、保存测试用例和数据D、文档的副作用答案:A37.在软件生命周期中,能准确确定软件系统的体系结构的功能阶段是A、需求分析B、可行性分析C、详细设计D、概要设计答案:A38.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做A、软件危机B、软件产生C、软件周期D、软件工程答案:A39.软件详细设计的主要任务是确定每个模块的A、算法和使用的数据结构B、外部接口C、功能D、编程答案:A40.软件测试的目的是A、发现软件的错误B、评价软件的质量C、找出软件的所有错误D、证明软件是正确的答案:A41.在SD方法中全面指导模块划分的最重要的原则是A、模块独立性B、程序模块化C、模块高内聚D、模块低耦合答案:A42.软件测试过程是软件开发过程的逆过程,其最基础性的测试应是A、单元测试B、集成测试C、有效性测试D、系统测试答案:A43.下列叙述中不属于软件生命周期模型的是A、快速组装模型B、螺旋模型C、瀑布模型D、原型模型答案:A44.需求分析最终结果是产生A、需求规格说明书B、项目开发计划C、设计说明书D、可行性分析报告答案:A45.开发大型软件时,产生困难的根本原因是A、大系统的复杂性B、时间紧、任务重C、人员知识不足D、客观世界千变万化答案:A46.瀑布模型的存在问题是A、缺乏灵活性B、用户容易参与开发C、用户与开发者易沟通D、适用可变需求答案:A47.软件工程的目标有A、低的开发成本B、短的开发期C、高性能D、易于维护答案:A48.对建立良好的程序设计风格,下面描述正确的是A、程序应简单、清晰、可读性好B、符号名的命名要符合语法C、充分考虑程序的执行效率D、程序的注释可有可无答案:A49.软件详细设计的主要任务是确定每个模块的A、算法和使用的数据结构B、外部接口C、功能D、编程答案:A50.在详细设计阶段,经常采用的工具有A、PADB、SAC、SCD、FD答案:A51.按照软件工程的原则,模块的作用域和模块的控制域之间的关系是A、模块的作用域应在模块的控制域之内B、模块的控制域应在模块的作用域之内C、模块的控制域与模块的作用域互相独立D、以上说法都不对答案:A52.进行需求分析可使用多种工具,不适用的是A、PAD图B、数据流图C、判定表D、数据词典答案:A53.面向对象的分析方法主要是建立三类模型,即A、对象模型、动态模型、功能模型B、ER模型、对象模型、功能模型C、对象模型、动态模型、应用模型D、系统模型、ER模型、应用模型答案:A54.在瀑布模型中,将软件分为若干个时期,软件项目的可行性研究一般归属于A、定义时期B、开发时期C、运行时期D、维护时期答案:A55.软件工程的理论和技术性研究的内容主要包括软件开发技术和A、软件工程管理B、实现软件可重用C、程序设计自动化D、消除软件危机答案:A56.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是A、用较少的投资获得高质量的软件B、硬软件结合使系统面向应用C、缩短研制周期扩大软件功能D、引入新技术提高空间利用率答案:A57.使用白盒测试方法时,确定测试数据应根据A、程序的内部逻辑B、程序的复杂程度C、该软件的编辑人员D、程序的功能答案:A58.软件工程学的目的和意义是A、以较低的成本开发出高质量的软件B、做好软件开发的培训工作C、克服软件危机D、应用科学的方法和工程化的规范管理来指导软件开发答案:A59.软件从一个计算机系统或环境转换到另一个计算机和环境的容易程度称为A、可移植性B、可靠性C、兼容性D、可用性答案:A60.下面不是软件工程的3个要素的是A、环境B、工具C、方法D、过程答案:A多选题1.软件维护的策略包括A、定期检测维护B、改正性维护C、适应性维护D、完善性维护答案:BCD2.下列属于软件测试过程的是A、单元测试B、组装测试C、内核测试D、法律验证E、确认测试答案:ABE3.以下不属于软件测试的目标是A、排除软件中所有的错误B、证明软件是正确的C、与软件调试相同D、发现错误、降低错误带来的风险答案:ABC4.适合作为科学工程计算的语言是A、FortranB、PascalC、PrologD、C答案:ABD5.以下哪种测试方法属于白盒测试技术A、循环覆盖测试B、边界值分析测试C、逻辑覆盖测试D、基本路径测试答案:ACD6.面向对象技术中,对象是类的实例。对象的成份包括A、标识B、属性C、方法D、操作答案:ABCD解析:这道题考查面向对象技术中对象的概念。在面向对象编程中,对象是类的实例,它包含三个基本成分:标识、属性和方法。标识用于唯一确定对象,属性描述对象的状态,方法定义对象的行为。操作通常与对象的方法相对应,表示对象可执行的动作。因此,对象的成份包括标识、属性、方法和操作。7.属于黑盒测试的是A、路径测试B、等价类划分C、边界值分析D、错误推测E、循环测试答案:BCD8.在测试中,下列说法正确的是A、测试是为了表明程序的正确性B、测试是为了发现程序中的错误而执行程序的过程C、好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案D、成功的测试是发现了至今为止尚未发现的错误的测试答案:BCD解析:A选项错误,测试的目的并非是为了表明程序的正确性,而是为了发现程序中的错误。B选项正确,这是测试的本质。C、D选项正确,好的测试方案就是能尽可能多地发现错误,成功的测试也是要发现至今未被发现的错误。因此,正确答案是BCD。9.软件项目计划一般包括以下哪些内容A、软件开发标准的选择和制定B、进度安排C、人员安排D、培训计划答案:BCD10.软件需求应包括A、环境需求B、功能要求C、标准实现的空间需求D、用户界面要求答案:BCD11.不是模块的内聚性最高的是A、逻辑内聚B、时间内聚C、偶然内聚D、功能内聚答案:ABC12.下列属于度量效益方法的是A、货币的时间价值B、投资回收期C、投资回报率D、收入答案:ABCD13.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符属于数据流图合法图符的是A、加工B、数据存储C、控制流D、源和汇答案:ABD14.软件维护的副作用主要有以下哪几种A、编码副作用B、文档副作用C、测试副作用D、调试副作用答案:AB15.属于面向对象的软件开发方法的是A、jackson方法B、omt方法C、booch方法D、coad方法答案:BCD16.面向对象的分析方法建立的模型包括A、ER模型B、对象模型C、动态模型D、系统模型答案:BC17.数据字典是软件需求分析阶段的最重要工具之一,以下不是其最基本的功能是A、数据定义B、数据维护C、数据通信D、数据库设计答案:BCD18.下列不属于维护阶段的文档是A、用户操作手册B、软件规格说明C、软件问题报告D、软件测试分析报告答案:BCD19.下面关于面向对象方法中消息的叙述,正确的是A、操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息B、键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息C、应用程序之间可以相互发送消息D、发送与接收消息的通信机制与传统的子程序调用机制不同答案:BCD20.下列不属于用白盒技术设计测试用例的是A、错误推测B、因果图C、等价类划分D、逻辑覆盖答案:ABC21.在E-R模型中,包含以下基本成分A、实体B、联系C、控制D、数据答案:AB22.程序的基本控制结构是A、顺序B、选择C、重复D、逆序答案:ABC23.下列工具中不是需求分析常用工具是A、DFDB、N-SC、PFDD、PAD答案:BCD24.下面属于软件工程3要素的是A、工具B、过程C、方法D、环境答案:ABC25.属于软件工程设计基本原理的是A、信息隐蔽B、自底向上C、模块化D、抽象答案:ACD26.面向对象设计OOD模型的主要部件中,通常包括A、通信部件B、人机交互部件C、任务管理D、数据管理答案:BCD27.可以作为模块的是A、子程序B、函数C、过程D、编译文件答案:ABCD28.在软件详细设计过程中应采用的工具为A、数据流图B、IPO图C、PDLD、判定表答案:ABC29.以下哪项是面向对象的特征A、继承性B、封装性C、过程调用D、多态性答案:ABD30.以下哪些项是面向对象的特征A、封装性B、过程调用C、继承性D、多态性答案:ACD解析:面向对象编程具有以下三个主要特征:-A选项封装性:将数据和操作数据的方法封装在一个类中,隐藏实现细节,只暴露必要的接口,提高了代码的安全性和可维护性。-C选项继承性:子类可以继承父类的属性和方法,实现代码复用和扩展。-D选项多态性:不同的对象可以对相同的消息作出不同的响应,增加了代码的灵活性和可扩展性。而B选项过程调用是面向过程编程的特征。因此,正确答案是ACD。判断题1.程序的三种基本控制结构是顺序、选择和重复A、正确B、错误答案:A2.螺旋模型引入了“风险驱动”的思想,适用于大规模的内部开发项目A、正确B、错误答案:A解析:螺旋模型将开发过程分为多个螺旋周期,每个周期都包含计划、风险分析、实施和评估等阶段。它注重风险评估和管控,对于大规模的内部开发项目,能及时识别和应对各种风险,更好地保障项目的成功实施。3.软件需求分析的任务是建立软件模块结构图A、正确B、错误答案:B4.在程序调试时,找出错误的位置和性质比改正该错误更难A、正确B、错误答案:A5.进行总体设计时加强模块间的联系A、正确B、错误答案:B6.以对象,类,继承和通信为基础的面向对象设计方法OOD也是常见的软件概要设计方法之一A、正确B、错误答案:A7.面向数据流的设计方法把数据流映射成软件结构A、正确B、错误答案:A解析:面向数据流的设计方法是一种软件设计方法,它将软件系统视为数据在不同模块之间流动的过程。在这种设计方法中,首先需要对系统的数据流进行分析,确定数据的来源、处理过程和目的地。然后,根据数据流的特点和处理要求,将数据流映射成软件结构,即确定软件系统的模块结构和模块之间的关系。8.当验收测试通过,软件开发就完成了A、正确B、错误答案:B9.系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等测试A、正确B、错误答案:B10.完成测试作业后,为了缩短源程序的长度应删除程序中的注解A、正确B、错误答案:B11.确定测试计划是在详细设计阶段制定的A、正确B、错误答案:B解析:软件生命周期包括需求分析、软件设计、编码、测试和维护。测试计划是在需求分析阶段制订的,它指导着整个软件的测试过程。12.开发软件就是编写程序A、正确B、错误答案:B13.面向对象程序设计中的数据隐藏指的是对象内部数据结构上建有防火墙A、正确B、错误答案:B14.Warnier方法也是一种面向数据结构的设计方法,其逻辑更严格A、正确B、错误答案:B15.以结构化分析方法建立的系统模型就是数据流图A、正确B、错误答案:B16.软件测试是要发现软件中的所有错误A、正确B、错误答案:B17.PAD图在设置了五种基本控制结构后,还允许递归调用A、正确B、错误答案:B18.需求分析的产品是需求规格说明书A、正确B、错误答案:A解析:需求规格说明书是需求分析过程的核心成果,它详细描述了系统需要实现的功能、性能、数据、界面、操作流程等方面的需求,为后续的设计、开发、测试等工作提供了明确的指导和依据19.用CASE环境或程序自动生成工具来自动生成一部分程序.A、正确B、错误答案:A20.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是数据定义A、正确B、错误答案:A21.各种软件维护的类型中最重要的是适应性维护A、正确B、错误答案:B22.模块的内聚性最高的是功能内聚A、正确B、错误答案:A解析:模块的内聚性是指模块内部各成分之间的联系紧密程度,功能内聚是指模块内所有元素共同完成一个功能,缺一不可。在功能内聚中,模块的各个组成部分紧密协作,以实现特定的功能,这种内聚性是最高的。与其他类型的内聚性相比,功能内聚更强地将模块内部元素绑定在一起,使得模块更加独立、可重用和易于理解。23.为了加快软件维护作业的进度,应尽可能增加维护人员的数目A、正确B、错误答案:B24.软件生命周期中所花费用最多的阶段是软件维护A、正确B、错误答案:A解析:在软件的生命周期中,软件维护通常需要持续进行,包括修复漏洞、改进功能、适应新的硬件和软件环境等。这个阶段的工作可能涉及到对代码的修改、测试、文档更新等,需要投入大量的人力、物力和时间。而其他阶段,如需求分析、设计、编码等,虽然也很重要,但相对来说,时间和费用的投入可能较少。25.提高测试的有效性非常重要,成功的测试是指证明了被测试程序正确无误A、正确B、错误答案:B解析:且测试只能在有限的范围内尽可能多地发现问题。26.编程序时应尽可能利用硬件特点以提高程序效率A、正确B、错误答案:B27.系统结构图是精确表达程序结构的图形表示法.因此,有时也可以将系统结构图当作系统流程图使用A、正确B、错误答案:B28.编码时尽量多用全局变量A、正确B、错误答案:B29.尽可能使用高级语言编写程序A、正确B、错误答案:A30.内聚程度最低的是时间内聚A、正确B、错误答案:B解析:时间内聚是指模块内的各个任务在同一时间段内完成,它们之间的关系比较松散,内聚程度较低。但还有一种内聚程度更低的形式,称为偶然内聚,也叫巧合内聚,是指模块内的各个任务之间没有任何关系,只是因为它们恰好被放在了同一个模块中。填空题1.程序评价和测试系统PET的主要功能是支持对FORTRAN程序采用白盒法测试,可以监视测试的________答案:实际覆盖程度2.适合于作为概念性数据模型的所谓第二代数据模型是________答案:ER模型3.IPO图由输出、处理和________三个框组成。答案:输入解析:这道题考察的是IPO图的基本概念。IPO图由输入、处理和输出三个框组成,是结构化设计中用于描述模块功能的重要工具。填空“输入”对应了IPO图中的输入部分,是理解模块功能的关键。4.从应用特点的角度来看,我们可以把高级语言分为基础语言、________和专用语言三类。答案:结构语言解析:这道题核心考察对高级语言分类的了解。“基础语言”是常见分类之一,填空“结构语言”完善了分类体系,突出不同应用特点,专用语言则是另一种特定分类,整体帮助理解高级语言的应用特点差异。5.软件测试的目标是________、降低错误带来的风险答案:发现错误解析:核心考点是软件测试的目标。填空“发现错误”的意义在于:直接指出测试首要目的,为降低风险奠定基础,明确了测试工作的关键方向和重点作用。6.Jackson图除了可以表达程序结构外,还可以表达________答案:数据结构7.面向对象的开发,最大的优点是帮助分析者、设计者及用户清楚地表述________,便于互相进行交流通讯答案:抽象概念8.把程序从一个硬件或软件环境中转移到另一种配置环境称为软件的________答案:可移植性9.在需求分析阶段常用的图形工具有层次图、Warnier图、________三种答案:IPO图解析:这道题核心考察需求分析的图形工具。层次图和Warnier图是常见的,填空IPO图,完善了需求分析图形工具的知识,体现对不同工具的了解和掌握。10.数据流图和________共同构成系统的逻辑模型答案:数据字典11.一个模块拥有的直属下级模块的个数称为________答案:桩模块解析:这道题目考察的是模块化设计的基本概念。'桩模块'并不是正确答案,正确答案应为“扇出数”。扇出数指的是一个模块直接调用的下级模块数目,是衡量模块复杂度的一个重要指标。12.详细设计的基本任务是确定每个模块的________设计答案:算法13.所谓“用户要求”是指软机系统必须满足的________和限制答案:所有性质14.数据流图的基本符号包括箭头、椭圆或圆、双杠和________答案:方框解析:这道题核心考察对数据流图基本符号的掌握。箭头表示数据流,椭圆或圆表示加工,双杠表示数据存储,方框则代表外部实体,通过填空完善对各符号的认知。15.编程的目标是编写出逻辑上正确又易于________的程序答案:维护16.在软件的详细设计中,根据控制流程从上到下,从左到右展开的设计工具是________答案:PDL图17.详细设计的工具有图形工具、________和________答案:表格工具语言工具18.SA方法在描述方式上的特点,是尽量采用________答案:图形表示19.在联合测试时,采用先独立测试每一模块,然后在连到一起运行,这种方式称为________联调答案:非渐增式20.软件=________+文档。答案:程序21.大型软件测试包括________、集成测试、确认测试和驱动测试四个步骤答案:单元测试解析:这道题核心考察大型软件测试的步骤。单元测试是基础,为后续集成测试等做准备。它能单独检验软件模块功能,对保证软件整体质量意义重大。22.软件测试的方法有________和非分析方法答案:分析方法23.成本估计方法主要有自顶向下、________和算法模型估计三种类型答案:自底向上24.白盒法包括多种具体设计程序测试用例的方法,主要目的是提高测试的________答案:效率25.一个模块的直接上级模块的个数称为________答案:驱动模块解析:这道题考察的是模块化设计或软件架构中的基本概念。实际上,一个模块的直接上级模块的个数通常称为“扇入数”,而不是“驱动模块”。答案可能有误。正确的填空应体现模块间层级关系的数量特征。26.软件工程技术中,控制复杂性的两个基本手段是“分解”和________答案:抽象27.软件生存周期一般可分为问题定义、可行性研究、________、设计编码、测试、运行与维护阶段。答案:需求分析解析:这道题核心考察软件生存周期的阶段。需求分析是关键环节,它明确软件要实现的功能和性能,为后续设计编码等提供依据,是软件开发的基础和前提。28.面向对象开发方法包括OOA,OOD和________三部分答案:OOP29.UML的定义包括________和UML标志法两个部分答案:UML语义解析:这道题主要考察UML(统一建模语言)的基本概念。UML定义确实包括UML语义和UML标志法两部分,前者描述了UML的符号和图形表示的含义,后者则是这些符号和图形的具体表示方法。填空处填“UML语义”,准确反映了这一核心概念。30.提高软件质量和可靠性的技术大致可分为两类,一类是避开技术,一类是______答案:容错技术解析:这道题核心考察软件质量和可靠性的技术分类。“避开技术”是一类,填空处“容错技术”是另一类,旨在考查对相关技术的了解,明确不同提高软件质量的方式。简答题1.良好的编码风格应具备哪些条件答案:使用标准的控制构造,有限制地使用GOTO语句,源程序的文档化。2.数据字典包括哪些内容答案:数据字典是描述数据流图中数据的信息的集合。它对数据流图上每一个成分。3.软件工程的七条根本原理是答案:用分阶段的是的生存周期方案严格管理,坚持进展阶段评审,严格实施的产品控制,采用现代程序技术,结果应能清楚地审查。4.验证答案:保证软件正确地实现了某个特定要求的一系列活动5.请分析如何对面向对象分析出的问题域模型进行补充或修改答案:调整需求、复用已有类、把问题域或类组合在一起、增添一般化类以建立协议、调整继承层次6.若想要进行一次好的测试,测试数据对其会造成什么影响?答案:不同的测试数据发现程序错误的能力差别很大,为了提高测试效率降低测试成本,应该选用高效的测试数据。因为不可能进行穷尽的测试,所以选用少量“最有效的”测试数据,做到尽可能完备的测试就更重要7.可行性研究包括哪几方面的内容?答案:(1)经济可行性:是否有经济效益,多长时间可以收回本钱(2)技术可行性:现有技术能否实现本系统,现有技术人员能否胜任,开发系统的资源能否满足(3)运行可行性:系统操作在用户内部行得通吗(4)法律可行性:新系统开发是否会侵犯他人、集体或国家利益,是否违反国家法律。8.请简要说明为什么软件工程是一门多学科交叉的学科?答案:软件工程在开发软件的过程中需要结合计算机科学的知识来实现软件的功能,同时也需要借鉴电子工程的设计思想来构建软件系统的架构。9.请分析一个面向对象主要目标答案:面向对象方法中的一个主要目标是保持问题域组织框架的完整性,稳定性10.集成测试答案:集成测试是测试和组装软件的系统化技术11.封装答案:隐藏内部实现细节,仅暴露必要的接口,以便模块间的数据和功能交互。12.软件设计答案:软件设计是将需求转换为软件系统实现的过程13.请简要说明敏捷开发模型的核心原则。答案:敏捷开发模型的核心原则是迭代开发和灵活响应变化。敏捷开发模型注重团队成员的协作和沟通,项目的需求和计划可以随时进行调整。14.MVP答案:ModelViewPresenter的简写,模型、视图、主持人。15.请分析自底向上的结合策略的流程是什么答案:把低层模块组合成实现某个特定的软件子功能的族,写一个驱动程序,协调测试数据的输入和输出,对由模块组成的子功能族进行测试,去掉驱动程序,沿软件结构自下向上移动,把子功能族组合起来形成更大的子功能族。16.一般面向对象分析建模的工具〔图形〕有哪些答案:用例图、类/对象图、对象关系图、实体—关系图〔E—R〕、事件轨迹图〔时序图〕与状态转换图〔STD〕等17.请分析确认测试的要点有哪些答案:测试范围、测试用例选择、回归测试、自动化测试、测试环境和数据、报告和问题跟踪、测试结果验证18.缺陷管理答案:跟踪和管理软件中发现的缺陷和问题19.请分析什么是细化关系答案:当对同一个事物在不同抽象层次上描述时,这些描述之间具有细化关系20.什么是模块化?答案:模块化是按规定的原那么将一个大型软件划分为一个个较小的、相对独立但又相关的模块。21.抽象答案:在设计过程中,将复杂的系统分解为更简单的概念和组件22.设计测试方案的基本目标是什么答案:确定一组最可能发现某个错误或某类错误的测试数据23.构造化的需求分析描述工具有哪些答案:有数据流图〔DFD〕、数据字典〔DD〕、判定表、判定树、构造化语言〔PDL〕、层次方框图、Warnier图、IPO图、控制流图〔CFD〕、控制说明〔CSPEC〕、状态转换图〔STD〕与实体—关系图〔E—R〕等。24.变换分析设计的步骤?答案:(1)区分传入、传出与变换中心三局部,划分DFD图的分界限;(2)完成第一级分解:建立初始SC图的框架;(3)完成第二级分解:分解SC图的各个分支;(4)对初始构造图按照设计准那么进展精化与改良。25.原形答案:是目标软件系统的一个可操作模型,它实现了目标软件系统的某些重要功能26.访问者模式答案:将方法移动到一个对象中,将算法与对象结构分开。27.请分析确认测试中的自动化测试是什么答案:根据需要,可以使用自动化测试工具和脚本来执行确认测试。自动化测试可以提高测试效率28.什么是条件组合覆盖答案:条件组合覆盖是更强的逻辑覆盖标准,它要求选取足够多的测试数据,使得每个判定表达式中条件的各种可能组合都至少出现一次29.什么是模块独立性?用什么度量?答案:模块独立性概括了把软件划分为模块时要遵守的准那么,也是判断模块构造是不是合理的标准。独立性可以从两个方面来度量:即模块本身的内聚与模块之间的耦合。30.请分析什么叫做关联答案:关联是连接不同对象的纽带,它指定了对象间相互的访问路径31.单元测试答案:针对软件中的最小可测试单元进行的测试32.请分析并简述条件覆盖的含义答案:不仅每个语句至少执行一次,而且使判定表达式中的每个条件都取到各种可能的结果33.简述文档在软件工程中的作用答案:(1)提高软件开发过程的能见度(2)提高开发效率(3)作为开发人员阶段工作成果与完毕标志(4)记录开发过程的有关信息便于使用与维护;(5)提供软件运行、维护与培训有关资料;(6)便于用户了解软件功能、性能。34.请简述螺旋模型在软件开发过程中的应用场景。答案:螺旋模型适用于大型复杂项目或对安全性要求较高的项目。在螺旋模型中,软件开发过程是一个不断迭代的过程。35.请分析常见的任务有哪些种,分别是什么答案:事件驱动型任务,时钟驱动型任务,优先任务,关键人物,协调任务等36.性能测试答案:测试软件在不同的负载条件下的性能和响应时间37.策略模式答案:通过定义一系列的算法,在运行时选择算法的行为。38.对象答案:对象是现实世界中个体或事物的抽象表示,是其属性和相关操作39.模板方法模式答案:通过定义操作的整体结构,允许子类细化或重新定义某些步骤40.请分析设计测试方案中的逻辑覆盖,并总结所有的逻辑覆盖的类型答案:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖41.确认测试答案:确认测试也称为验收测试,它的目标是验证软

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论