《软件工程》题库及答案_第1页
《软件工程》题库及答案_第2页
《软件工程》题库及答案_第3页
《软件工程》题库及答案_第4页
《软件工程》题库及答案_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

精选优质文档-----倾情为你奉上精选优质文档-----倾情为你奉上专心---专注---专业专心---专注---专业精选优质文档-----倾情为你奉上专心---专注---专业华中师范大学网络教育学院《软件工程》练习测试题库及答案本科一、单项选择题开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C)A.软件工程 B.软件周期C.软件危机 D.软件产生研究开发所需要的成本和资源是属于可行性研究中的(B)研究的一方面。A.技术可行性 B.经济可行性C.社会可行性 D.法律可行性IDEF0图不反映出系统(B)A.系统做什么 B.系统功能如何实现C.系统由谁来做 D.系统实现的约束条件模块的内聚性最高的是(D)A.逻辑内聚 B.时间内聚C.偶然内聚 D.功能内聚在SD方法中全面指导模块划分的最重要的原则是(D)A.程序模块化 B.模块高内聚C.模块低耦合 D.模块独立性软件详细设计主要采用的方法是(D)A.模块设计 B.结构化设计C.PDL语言 D.结构化程序设计下列关于JSP方法不正确的说法是(D)A.JSP方法主要用于规模不大的数据处理系统B.JSP方法不明确的划分软件概要设计和详细设计的两个阶段C.JSP方法适用于输入数据和输出数据之间有对应关系的问题求解D.JSP方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。因此它只适用于详细设计阶段不适合作为科学工程计算的语言是(D)A.Pascal B.CC.Fortran D.Prolog黑盒测试在设计测试用例时,主要需要研究(A)A.需求规格说明与概要设计说明 B.详细设计说明C.项目开发计划 D.概要设计说明与详细设计说明若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是(C)A.条件覆盖法 B.等价分类法C.边界值分析法 D.错误推测法下列属于维护阶段的文档是(C)A.软件规格说明 B.用户操作手册C.软件问题报告 D.软件测试分析报告快速原型模型的主要特点之一是(D)A.开发完毕才见到产品 B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件 D.及早提供工作软件因计算机硬件和软件环境的变化而做出的修改软件的过程称为(B)A.较正性维护 B.适应性维护C.完善性维 D.预防性维护类库这种机制是(D)级别的信息共享。A.同一类 B.不同类C.同一应用 D.不同应用只有单重继承的类层次结构是(C)层次结构。A.网状型 B.星型C.树型 D.环型在屏蔽硬件错误的冗错技术中,冗余附加技术有(D)A.三模冗余 B.信息冗余C.冗余备份程序的存储及调用 D.关键程序和数据的冗余存储和调用软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为(B)A.可用性 B.可靠性C.正确性 D.完整性下列文档与维护人员有关的有(C)A.软件需求说明书 B.项目开发计划C.概要设计说明书 D.操作手册采用Gantt图表示软件项目进度安排,下列说法中正确的是(D)A.能够反映多个任务之间的复杂关系B.能够直观表示任务之间相互依赖制约关系C.能够表示哪些任务是关键任务D.能够表示子任务之间的并行和串行关系下列模型属于成本估算方法的有(A)A.COCOMO模型 B.McCall模型C.McCabe度量 D.时间估算法瀑布模型的关键不足在于(B)A.过于简单 B.不能适应需求的动态变更C.过于灵活 D.各个阶段需要进行评审在面向对象软件开发方法中,类与类之间主要有以下结构关系(A)A.继承和聚集 B.继承和一般C.聚集和消息 D.继承和方法调用以下哪一项不是软件危机的表现形式(C)A.成本高 B.生产率低C.技术发展快 D.质量得不到保证以下哪一项不是面向对象的特征(D)A.多态性 B.继承性C.封装性 D.过程调用面向对象模型主要由以下哪些模型组成(A)A.对象模型、动态模型、功能模型 B.对象模型、数据模型、功能模型C.数据模型、动态模型、功能模型 D.对象模型、动态模型、数据模型软件可行性研究一般不考虑(D)A.是否有足够的人员和相关的技术来支持系统开发B.是否有足够的工具和相关的技术来支持系统开发C.待开发软件是否有市场、经济上是否合算D.待开发的软件是否会有质量问题软件维护的副作用主要有以下哪几种(C)A.编码副作用、数据副作用、测试副作用B.编码副作用、数据副作用、测试副作用C.编码副作用、数据副作用、文档副作用D.编码副作用、文档副作用、测试副作用软件项目计划一般不包括以下哪项内容(D)A.培训计划 B.人员安排C.进度安排 D.软件开发标准的选择和制定以下哪一项不属于面向对象的软件开发方法(C)A.coad方法 B.booch方法C.jackson方法 D.omt方法以下哪种测试方法不属于白盒测试技术(D)A.基本路径测试 B.边界值分析测试C.循环覆盖测试 D.逻辑覆盖测试软件生命周期中所花费用最多的阶段是(D)A.详细设计 B.软件编码C.软件测试 D.软件维护在软件开发过程中,DFD是面向(B)分析方法的描述工具。A.数据结构 B.数据流C.对象 D.构件(component)在画分层DFD时,应注意保持(A)之间的平衡。A.父图与子图 B.同一父图的所有子图C.不同父图的所有子图 D.同一子图的所有直接父图DFD中从系统的输入流到系统的输出流的一连串连续变换形成一种信息流,这种信息流可分为(B)两大类。A.控制流和变换流 B.变换流和事务流C.事务流和事件流 D.事件流和控制流通常影响软件易维护性的因素有易理解性、易修改性和(D)。A.易使用性 B.易恢复性C.易替换性 D.易测试性在软件的开发过程中往往采取各种措施来提高软件的易维护性。如(B)有助于提高软件的易修改性。A.高效的算法 B.信息隐蔽原则C.增强健壮性 D.身份认证在软件质量特性中,(C)是指在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性。A.正确性 B.准确性C.可靠性 D.易使用性在软件质量特性中,(A)是指防止对程序及数据的非授权访问的能力。A.安全性 B.适应性C.灵活性 D.容错性软件设计中划分模块的一个准则是(C)。A.低内聚低耦合 B.低内聚高耦合C.高内聚低 D.高内聚高耦合一个模块内部的内聚种类中(C)内聚的内聚度最高。A.偶然 B.逻辑C.功能 D.过程OMT是一种对象建模技术,它定义了三种模型,它们分别是(A)。A.对象模型、动态模型、功能模型 B.静态模型、动态模型、功能模型C.对象模型、时序模型、功能模型 D.对象模型、动态模型、计算模型对象建模技术中,表示瞬时行为上的系统的“控制”特征,通常可用(B)来表示。A.类图 B.状态图C.对象图 D.数据流图为了提高软件的可移植性,应注意提高软件的(D)。A.使用方便性 B.简洁性C.可靠性 D.设备不依赖性可维护性通常包括(D)。A.可用性和可理解性 B.可修改性、数据独立性和数据一致性C.可测试性和稳定性 D.可理解性、可修改性和可测试性(D)维护是为了补充软件的功能或提高原有软件的性能而进行的维护活动。A.功能性 B.扩展性C.合法性 D.完善性(D)是指系统万一遇到未预料的情况时,能够按照预定的方式做合适的处理。A.可用性 B.正确性C.稳定性 D.健壮性在设计测试用例时,(B)是用得最多的一种黑盒测试方法。A.等价类划分 B.边值分析C.因果图 D.判定表在实际应用中,一旦纠正了程序中的错误后,还应选择部分或全部原先已测试过的测试用例,对修改后的程序重新测试,这种测试称为(D)。A.验收测试 B.强度测试C.系统测试 D.回归测试在软件工程的设计阶段中,(C)法只提供了重要的设计准则,没有规定出具体的工作步骤。A.SD B.JacksonC.Parnas D.以上皆非软件测试的目的是(C)。A.表明软件的正确性 B.评价软件质量C.尽可能发现软件中错误 D.判定软件是否合格通常,(D)是在代码编写阶段可进行的测试,它是整个测试工作的基础。A.系统测试 B.安装测试C.验收测试 D.单元测试逻辑覆盖标准主要用于(B)。A.黑盒测试方法 B.白盒测试方法C.灰盒测试方 D.软件验证方法逻辑覆盖中最强的覆盖标准是(B)。A.条件覆盖 B.条件组合覆盖C.判定覆盖 D.语句覆盖软件维护工作越来越收到重视,它的花费常常要占软件生存周期全部花费的(C)%左右。A.10~20 B.20~40C.为了减少维护工作的困难,可以考虑采取的措施是(C)。A.设法开发出无错的软件B.增加维护人员数量C.切实加强维护管理,并在开发过程中就采取有利于未来维护的措施D.限制修改的范围软件测试是软件质量保证的主要手段之一。“高产”的测试是指(C)。A.用适量的测试用例,说明被测试程序正确无误B.用适量的测试用例,说明被测试程序符合相应的要求C.用少量的测试用例,发现被测试程序尽可能多的错误D.用少量的测试用例,纠正被测试程序尽可能多的错误Jackson结构化程序设计方法主要适用于规模适中的(A)系统的开发。A.数据处理 B.文字处理C.实时控制 D.科学计算单元测试在试验阶段进行,它所依据的模块功能描述和内部细节以及测试方案应在(C)阶段完成,目的是发现编程错误。A.需求分析 B.概要设计C.详细设计 D.结构设计使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准。A.程序的内部逻辑 B.程序的复杂程度C.使用说明书 D.程序功能软件的集成测试工作最好由(D)承担,以提高集成测试的效果。A.该软件的设计人员 B.该软件开发组的负责人C.该软件的编程人员 D.不属于该软件开发组的软件设计人员二、名词解释集成测试:集成测试也称组装测试或联合测试。是指在单元测试的基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试。组装模块的方式有两种:渐增式测试和非渐增式测试。CASE:CASE是一组工具和方法的集合,可以辅助软件开发生命周期各阶段进行软件开发。CASE把软件开发技术、软件工具和软件开发方法集成到一个统一而一致的框架中,并且吸收了CAD(计算机辅助设计)、软件工程、操作系统、数据库、网络和许多其他计算机领域的原理和技术。因而,CASE领域是一个应用、继承和综合的领域。SA:结构化分析方法是需求分析中使用最多的方法之一,适用于数据处理类型软件的需求分析。基本思想是采用自顶向下,逐步分解的方法分析整个系统,有效地控制系统开发的复杂性。软件工程:软件工程是用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术及管理方法。它由方法、工具和过程三部分组成。可互操作性:多个软件元素相互通信并协同完成任务的能力。为了实现可互操作性,软件开发通常要遵循某种标准,支持这种标准的环境将为软件元素之间的互操作提供便利。法律可行性研究:研究在系统开发过程中可能涉及的各种合同、侵权、责任以及各种与法律相抵触的问题。数据流图:数据流图就是用来刻画数据流和转换的信息系统建模技术需求分析:需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,经用户非形式化的需求陈述转化为完整的需求定义,再由需求定义转化到相应的形式功能规约的过程。过程抽象:过程抽象是一个命名的指令序列,它具有一个特定的和受限的功能。模块独立性:每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单.数据性块间联系:计算机系统工程是指与构造基于计算机系统有关的过程、方法和技术。它是一种问题求解活动。判定表:判定表提供了一种把各种动作和条件(在处理解说词中描述的)专换为表格形式的表示法。事务型数据流图:某个加工将它的输入分离成一串发散的数据流,形成许多活动路径,并根据输入的值选择其中一条路径。具有这样特征的数据流图称为事务型数据流图。耦合性:是软件系统结构中各模块间相互联系紧密程度的一种度量。也称块间联系面向数据设计:面向数据的设计就是根据数据结构的表示来获取软件表示系统响应时间:系统响应时间指当用户执行了某个控制动作后(例如,按回车键,点击鼠标器等),系统做出反应的时间(指输出所期望的信息或执行对应的动作)。判定-条件覆盖:用判定-条件覆盖所设计的测试用例能够使得判断中每个条件的所有可能取值至少执行一次,同时每个判断的所有可能判断结果至少执行一次。路径覆盖:路径覆盖就是设计足够的测试用例,覆盖程序中所有可能的路径。静态测试:是指被测程序不再机器上运行,而是采用人工测试和计算机辅助静态分析的手段对程序进行检测。α测试:α测试是由一个用户在开发场所进行的,用户在开发者的“指导”下对软件进行的测试,开发者负责记录错误和使用中出现的问题。三、判断题螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。对数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。错软件是指用程序设计语言(如PASCAL,C,VISUALBASIC等)编写的程序,软件开发实际上就是编写程序代码。错软件模块之间的耦合性越弱越好。对过程描述语言可以用于描述软件的系统结构。错如果通过软件测试没有发现错误,则说明软件是正确的。错快速原型模型可以有效地适应用户需求的动态变化。对模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。对软件概要设计包括软件系统结构设计以及数据结构和数据库设计。对软件定义的基本任务是确定软件系统的工程需求。对为支持软件开发、维护、管理而研制的计算机程序系统称为软件工具。对软件提交是指把软件提交给用户,必要时还应负责把软件安装到用户环境中。错系统规格说明评审完成以后,系统开发可以按照硬件工程、软件工程、数据库工程、人机工程等并行开展工作。对—个模块内所有处理元素集中于相同的数据结构,其块内联系属功能性块内联系。错流程图不是结构化设计工具。错从软件的生存期来看,软件测试只涉及编码阶段,即在编写出每个模块之后所进行的模块测试(又称单元测试),测试者应是该模块的作者。错好的测试用例应当是合理的输入条件。错软件测试中综合策略的通常做法是用白盒法设计基本的测试方案,再用黑盒法补充一些必要的测试方案。错一次性组装方式进行集成测试的思想和增殖式组装方式进行集成测试的思想是一致的。错人工测试中走查方法和代码评审方法是同一种方法。错四、简答题1.简述软件危机的表现。答:软件危机有如下表现:.对软件开发成本和进度的估计不准确;.对已经完成的软件,用户不满意的现象经常发生;.软件产品的质量靠不住;.软件常常不可维护;.软件通常没有适当文档;.软件成本在系统中所占比例逐年上升;.软件生产率低。2.软件开发模型可以分为那几类?答:软件开发模型大体上可分为三种类型。第一种是以软件需求完全确定为前提的瀑布模型。第二种是在软件开发初始阶段只能提供基本需求时采用的渐进式开发模型,如原型模型、螺旋模型等。第三种是以形式化开发方法为基础的变换模型。3.采用快速原型技术的步骤是什么?答:1)利用本课时及后面将要介绍的各种分析技术、方法,生成一个简化的需求规格说明。(2)对已经完成的需求规格说明进行检查、修订后,生成设计规格说明。(3)在现有工具或环境的帮助下快速生成可运行的软件原型并进行测试、改进。(4)将原型提交用户评估并征询改进意见。(5)上述过程将反复进行,直到用户完全首肯。4.数据字典的作用是什么?答:利用数据字典可以对数据流图中的数据流、数据源及外部实体进行描述、组织和管理。5.软件工程的原则有哪些?答:抽象、信息隐藏、模块化、局部化、一致性、完整性和可验证性6.简述提高可维护性的方法。答:(1)建立明确的软件质量目标(2)利用先进的软件开发技术和工具(3)建立明确的质量保证工作(4)选择可维护的程序设计语言(5)改进程序文档7.在软件工程实践中,形成组合模型的方式有那几种?答:第一种方式是以一种模型为主,嵌入另外一种或几种模型。第二种方式是建立软件开发的组合模型。软件开发者可以根据软件项目和软件开发环境的特点,选择一条或几条软件开发路径。8.软件项目定义阶段的任务是什么?答:①制定软件项目规划。②软件需求分析和定义。③确定软件性能和资源约束,这对软件设计特性会产生直接的影响。④为软件要素定义验收标准,它也是制定软件测试计划的基础。9.为什么要采用实体—关系图?答:在数据密集型应用问题中,对复杂数据之间复杂关系的分析和建模将成为需求分析的重要任务。显然,这项任务是简单的数据字典机制无法胜任的。所以,有必要在数据流分析方法中引进适合于复杂数据建模的实体—关系图。10.简述人机界面风格的演变。答:最早,在图形显示、鼠标、高速工作站等技术出现之前,现实可行的界面方式只能是命令和询问方式,通信完全以正文形式并通过用户命令和用户对系统询问的响应来完成。第二代界面是简单的菜单式。第三代界面能同时显示不同种类的信息;用户通过下拉式菜单可方便执行控制型和对话型任务;引入图标、下拉式菜单、按钮和滚动杆技术。最新一代HCI把第三代HCI技术与超文本、多任务概念结合起来,使用户可同时执行多个任务(以用户的观点)。11.设计规格说明包括什么内容?答:设计说明书的第一节描述与设计活动有关的各个方面,该节中许多信息取自系统规格说明书和系统定义阶段产生的其他文档。第二节具体指明引用信息的出处,第三节的设计描述是概要设计的产物,第四、五两节是概要设汁向详细设计过渡后形成的,第六节是与需求规格说明书的交叉访问表,第七节是测试的初步计划,第八节将逐条说明这种限制和造成的影响,九、十两节包括若干辅助数据。12.可行性研究的任务是什么?答:可行性研究的任务是了解用户的要求及现实环境,从技术、经济和社会等几个方面研究并论证软件系统的可行性。13.结构化分析方法通过那些步骤来实现?答:(1)了解当前系统的工作流程,获得当前系统的物理模型。(2)抽象出当前系统的逻辑模型。(3)建立目标系统的逻辑模型。(4)作进一步的补充和说明。14.写源程序时的原则是什么?答:1)遇处理框,写出其处理的内容。(2)遇选择框或重复框,则按语言模式写出相应的语句15.数据输入设计的指导原则是什么?答:①尽量减少用户输入的动作;②保证信息显示方式与数据输入方式的协调一致;③允许用户定做输入格式;④采用灵活多样的交互方式,允许用户自选输入方式;⑤隐藏当前状态下不可选用的命令;⑧允许用户控制交互过程;⑦为所有输入动作提供帮助信息;⑧删除所有无实现意义的输入。16.选择程序设计语言的依据是什么?答:(1)应用领域;(2)算法和计算复杂性;(3)软件运行环境;(4)用户需求中关于性能方面的需要;(5)数据结构的复杂性;(6)软件开发人员的知识水平;(7)可用的编译器与交叉编译器。17.黑盒测试用于发现哪些类型的错误?答:①功能不符合要求或遗漏;②界面错误;③数据结构或外部数据库访问错误;④性能错误;⑤初始化或终止错误。18.使用边界值分析方法选择测试用例的原则是什么?答:①如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输人数据。②如果输入条件规定了值的个数,则用最大个数、最小个数、比最大个数多1、比最小个数少1的数作为测试数据。③根据规格说明的每个输出条件,使用原则①。④根据规格说明的每个输出条件,使用原则②。⑤如果程序的规格说明给出的输入域或输出域是有序集合(如有序表、顺序文件等),则应选取集合的第一个元素和最后一个元素作为测试用例。⑥如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。⑦分析规格说明,找出其他可能的边界条件。19.简述软件重用的类型。答:(1)代码重用代码重用就是对程序库中的某个模块进行子程序调用,它包括源代码的拼接、源代码的拷贝、继承、对目标码的拼接、运行时连接几种形式。这是一种重用性低的重用方法。(2)设计结果重用设计结果重用指的是重用某程序的设计模型,例如面向对象设计的模型,这是一种重用性比较高的重用方法。(3)分析结果重用分析结果的重用是指对问题空间描述的重用.例如对面向对象分析结果或其他一些分析描述方法结果的重用,这是一种重用性更高的重用方法。20.数据规格说明应该遵守的原则是什么。答:(1)用于功能(function)和行为(behaviour)的系统分析原则也应用于数据设计。(2)应确定所有的数据结构及每项上所进行的操作。(3)应建立数据字典,用来定义数据和程序设计。(4)低层的数据设计决策,应在设计过程的后期进行。(5)数据结构的表达式应当是那些有名的模型。(6)应当开发数据结构及其操作的实用库。(7)软件设计和编程语言应当支持抽象数据类型的规格说明和实现。五、论述题1.某旅馆的电话服务如下:可以拨分机号和外线号码。分机号是从7201至7299。外线号码先拨9,然后是市话号码或长话号码。长话号码是以区号和市话号码组成。区号是从100到300中任意的数字串。市话号码是以局号和分局号组成。局号可以是455,466,888,552中任意一个号码。分局号是任意长度为4的数字串。要求:写出在数据字典中,电话号码的数据条目的

温馨提示

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

评论

0/150

提交评论