还剩27页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
软件工程练习题库含答案
一、单选题(共题,每题分,共分)
671671.为了提高软件的可维护性,在编码阶段应注意()A、保存测试用例和数据B、文档的副作用C、提高模块的独立性D、养成好的程序设计风格正确答案D
2.各种软件维护的类型中最重要的是()A、纠错性维护B、完善性维护C、预防性维护D、适应性维护正确答案B答案解析完善性维护是在软件的使用过程中,用户会不断提出新的需求,为了满足这些新需求而进行的维护活动完善性维护可以改进软件的功能和性能,提高软件的质量和用户满意度,是软件维护中最重要的类型纠错性维护是指修复软件中的错误和缺陷;适应性维护是指为了使软件适应新的环境和需求而进行的维护;预防性维护是指为了提高软件的可维护性和可靠性而进行的维护这三种维护类型的重要性相对完善性维护来说较低
3.以下哪种测试方法不属于白盒测试技术()A、循环覆盖测试B、逻辑覆盖测试C、基本路径测试D、边界值分析测试正确答案D答案解析边界值分析测试是黑盒测试技术,它主要关注输入输出的边界情况,不考虑程序内部结构而基本路径测试、循环覆盖测试、逻辑覆盖测试都需要依据程序内部结构来设计测试用例,属于
25.下列选项中属于产品的内部属性的是()A、软件可靠性B、软件可维护性C、软件有效性D、模块耦合度正确答案D
26.不适合作为科学工程计算的语言是()A、PascalB、CC、FortranD Prolog正确答案D答案解析Prolog语言主要用于人工智能、逻辑编程等领域,在科学工程计算方面并不擅长而Pascal、C、Fortran都在科学工程计算中有广泛应用,它们具有高效的数值计算能力和丰富的库函数等,适合进行科学工程计算
27.在白盒测试技术测试用例的设计中,()是最弱的覆盖标准A、条件组合覆盖B、路径覆盖C、语句覆盖D、判定覆盖正确答案C答案解析语句覆盖是白盒测试中最弱的覆盖标准它只要求程序中的每条语句至少执行一次,对于一些复杂的逻辑结构和条件判断,可能无法全面覆盖其各种可能的执行情况而路径覆盖要求覆盖程序中所有可能的执行路径,条件组合覆盖要求覆盖所有条件的所有可能组合,判定覆盖要求每个判定的所有可能结果至少执行一次,它们都比语句覆盖的覆盖程度要高
28.在SD方法中全面指导模块划分的最重要的原则是()A、程序模块化B、模块高内聚C、模块低耦合D、模块独立性正确答案D答案解析模块独立性是SD方法中全面指导模块划分的最重要原贝人它包含了高内聚和低耦合两个方面高内聚使得模块内部功能联系紧密,便于维护和修改;低耦合使得模块之间的相互依赖程度低,减少了一个模块的变动对其他模块的影响,从而提高了软件系统的可维护性、可扩展性和可靠性等程序模块化是模块划分的基本概念;模块高内聚和模块低耦合只是模块独立性的具体体现,不如模块独立性全面地指导模块划分
29.软件的可修改性支持软件的()A、可追踪性B、有效性C、可互操作性D、可维护性正确答案D答案解析软件的可修改性主要是为了方便对软件进行维护,包括修复缺陷、改进功能、适应环境变化等,所以支持软件的可维护性有效性侧重于软件达成预期目标的程度;可互操作性关注软件与其他系统交互的能力;可追踪性强调对软件相关元素之间关系的跟踪,均与可修改性的直接关联不大
30.可行性分析研究的目的()A、争取项目B、项目值得开发否C、开发项目D、规划项目正确答案B答案解析可行性分析研究的目的是确定项目是否值得开发,通过对项目的技术、经济、操作等方面进行分析,评估其可行性,从而判断该项目是否值得投入资源去开展选项A争取项目不是可行性分析研究的主要目的;选项C开发项目是在确定可行之后进行的;选项D规划项目也不是可行性分析研究的核心目的
31.内聚程度最低的是()内聚A、时间B、过程C、偶然D、顺序正确答案C答案解析偶然内聚是指模块内各部分之间没有有意义的联系,只是偶然地组合在一起,这种内聚的程度是最低的过程内聚是指模块内的处理元素是相关的,而且必须以特定的次序执行顺序内聚是指一个模块内的处理元素和同一个功能密切相关,而且这些处理必须顺序执行时间内聚是指模块完成的功能必须在同一时间内执行相比之下,偶然内聚的关联度最低
32.在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高()A、原型化方法B、控制流方法C、面向对象的方法D、结构化方法正确答案A答案解析原型化方法要求开发人员快速构建可运行的原型,与用户紧密交互并不断修改完善,对开发人员的快速应变能力、技术能力以及与用户沟通协作能力等都有很高要求,相比其他几种方法,在这些方面的综合要求更高结构化方法有固定的流程和规范;面向对象方法侧重于对象的封装、继承等特性;控制流方法主要关注程序的控制流程,它们对开发人员的综合要求相对原型化方法没有那么高
33.软件的可移植性支持软件的()A、可适应性B、可互操作性C、可追踪性D、有效性正确答案A答案解析软件的可移植性是指软件从一个环境转移到另一个环境的能力,它有助于软件的可适应性,使软件能更好地适应不同的运行环境可互操作性主要强调与其他系统交互的能力;可追踪性侧重于对软件中各种元素之间关系的跟踪;有效性强调软件达成预期目标的程度所以软件的可移植性支持软件的可适应性,答案选Ao
34.是对软件产品、过程、资源等使用历史资料或经验公式等进行预测A、测量B、度量C、估算D、指标正确答案C答案解析估算通常是基于历史数据、经验公式、统计分析等方法对软件项目中的各种参数进行预测,比如对软件产品规模、开发时间、成本等进行估计测量是获取数据的行为;度量是对软件相关属性进行量化表示;指标是用于衡量软件某个方面特性的数值或描述所以这里是估算,答案选C
35.是对系统、部件或过程的某一特性所具有的程度进行的量化测量A、度量B、指标C、估算D、测量正确答案A答案解析度量是对系统、部件或过程的某一特性所具有的程度进行的量化测量测量强调通过各种手段获取数据;估算侧重于大致推算;指标是反映某方面特征的概念,而度量更强调对特性程度的量化测定
36.设年利率为i,现存入p元,若计复利,n年后可得钱数为A、p*1+i*nB、p*i+1nC、p*1+i*nD、p*i+n正确答案B答案解析根据复利终值公式,设年利率为\i\,现存入\p\元,计复利,\n\年后可得钱数为\pl+i\\,所以答案选B
37.在软件详细设计过程中不采用的工具为A、判定表B、PDLC、数据流图D、IPO图正确答案A
38.软件的特点包括A、软件的开发费用在逐渐下降B、在软件的运行和使用期间,也存在类似硬件的老化问题C、软件具有抽象性D、软件的开发与维护对硬件存在依赖性正确答案C
39.业界存在三种需求分析方法面向功能分析、面向对象分析和oA、面向数据分析B、面向程序分析C、面向算法分析D、面向硬件分析正确答案A答案解析业界存在三种需求分析方法,分别是面向功能分析、面向对象分析和面向数据分析面向功能分析主要关注系统所提供的功能;面向对象分析侧重于将系统视为对象的集合;面向数据分析则着重于对数据的结构、流向等进行分析,以更好地理解系统需求
40.软件工程的出现主要是由于A、程序设计方法学的影响B、其它工程科学的影响C、软件危机的出现D、计算机的发展正确答案C答案解析软件工程的出现主要是为了解决软件危机软件危机表现为软件开发过程中遇到的一系列严重问题,如进度难以控制、质量难以保证、成本超支等为了应对这些问题,软件工程应运而生,它采用工程化的方法来开发和维护软件,以提高软件的质量和生产效率,降低软件开发成本,解决软件危机程序设计方法学、其它工程科学的影响以及计算机的发展对软件工程的发展有推动作用,但不是软件工程出现的主要原因
41.软件可行性研究一般不考虑()A、是否有足够的工具和相关的技术来支持系统开发B、待开发软件是否有市场、经济上是否合算C、待开发的软件是否会有质量问题D、是否有足够的人员和相关的技术来支持系统开发正确答案C答案解析软件可行性研究主要关注技术可行性(是否有足够人员、技术、工具支持系统开发)、经济可行性(待开发软件是否有市场、经济是否合算)、操作可行性等方面而软件是否会有质量问题通常是在软件测试阶段重点关注和解决的,不是可行性研究阶段主要考虑的内容
42.“软件危机”是指()A、利用计算机进行经济犯罪活动B、人们过分迷恋计算机系统C、计算机病毒的出现D、软件开发和维护中出现的一系列问题正确答案D答案解析软件危机是指在软件开发和维护过程中遇到的一系列严重问题,包括软件需求不明确、软件开发进度难以控制、软件质量难以保证、软件维护困难等计算机病毒的出现、利用计算机进行经济犯罪活动以及人们过分迷恋计算机系统都不属于软件危机的范畴
43.下列选项中,属于需求分析阶段的任务的是()A、组装测试计划B、单元测试计划C、软件总体设计D、验收测试计划正确答案D答案解析需求分析阶段的主要任务是确定软件系统的功能、性能、可靠性等需求,为后续的设计、开发和测试提供依据验收测试计划是基于需求分析确定的软件功能和性能要求,制定的用于验证软件是否满足用户需求的测试计划,属于需求分析阶段的任务组装测试计划是在软件集成阶段使用的;单元测试计划是针对软件单元进行测试的计划,属于详细设计阶段之后的任务;软件总体设计是在需求分析之后进行的系统架构设计工作所以本题选D
44.在软件开发过程中,DFD是面向()分析方法的描述工具A、数据结构B、数据流C、对象D、构件(component)正确答案B答案解析DFD(Data Flow Diagram)即数据流图,是一种用于描述系统中数据流程和处理过程的图形化工具,它主要关注的是数据流,所以是面向数据流分析方法的描述工具
45.软件特性中,()是指系统具有清晰的结构,能直接反映问题的需求的程度A、可理解性B、可靠性C、可适应性D、可重用性正确答案A答案解析可理解性是指系统具有清晰的结构,能直接反映问题的需求的程度可靠性强调系统在规定条件和时间内完成规定功能的能力;可适应性侧重于系统能够适应环境变化的能力;可重用性是指软件可被重复使用的特性所以本题选A,强调的是系统的可理解性
46.软件是一种逻辑产品,它的开发主要是()A、拷贝B、复制C、再生产D、研制正确答案D答案解析软件是一种逻辑产品,其开发主要是通过研制,涉及到一系列的设计、编码、测试等创造性活动,而不是简单的拷贝、再生产或复制软件的开发需要投入大量的人力、物力和时间进行需求分析、设计架构、编写代码、测试调试等工作,以实现特定的功能和满足用户需求,这与拷贝、再生产、复制有着本质的区别
47.在软件质量要素的评价准则中,在各种异常情况下软件能继续提供操作的能力指的是()A、可操作性B、检测性C、容错性D、安全性正确答案C答案解析容错性是指在各种异常情况下软件能继续提供操作的能力,符合题目描述;检测性主要强调对故障等的检测能力;安全性侧重于保护软件及数据不被非法访问等;可操作性强调软件操作的便捷性等方面,均不符合题意
48.通常,()是在代码编写阶段可进行的测试,它是整个测试工作的基础A、安装测试B、验收测试C、系统测试D、单元测试正确答案D答案解析单元测试是针对程序模块(软件设计的最小单位)进行正确性检验的测试工作,在代码编写阶段就可以进行,是整个测试工作的基础系统测试是在集成测试之后,将软件系统与其他系统元素(如硬件、数据库等)结合起来进行测试;安装测试主要检查软件在特定环境下的安装过程及安装后的运行情况;验收测试是在软件产品完成并准备交付给用户时进行的测试,以确保软件满足用户需求这些测试通常在代码编写完成之后的阶段进行
49.软件特性中,使软件在不同的系统约束条件下,使用户需求得到满足的难易程度称为()A、可靠性B、可修改性C、可重用性D、可适应性正确答案D答案解析可适应性是指软件在不同的系统约束条件下,能够使软件系统适应这些变化而不修改软件的难易程度,也就是使用户需求得到满足的难易程度可修改性主要强调软件被修改的难易程度;可靠性侧重于软件在规定条件和时间内完成规定功能的能力;可重用性指软件可被重复使用的特性
50.下列选项中,属于概要设计阶段的任务的是()A、初步用户手册B、单元测试计划C、验收测试计划D、组装测试计划正确答案D
51.软件工程方法学的目的是使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是()A、硬件环境B、软件开发工具和软件开发的环境C、软件开发的环境D、开发人员的素质正确答案B答案解析软件工程方法得以实施的主要保证是软件开发工具和软件开发的环境软件开发工具能够辅助开发人员更高效地完成软件开发过程中的各项任务,如代码编写、测试、调试等;而良好的软件开发环境则提供了适宜的工作氛围、流程规范等,有助于软件工程方法的顺利实施硬件环境主要影响软件的运行,而非软件工程方法的实施;开发人员素质重要但不是主要保证;软件开发的环境表述相对宽泛,不如软件开发工具和软件开发的环境具体准确
52.在详细设计阶段,经常采用的工具有A、PADB、SAC、SCD、DFD正确答案A答案解析PAD ProblemAnalysis Diagram是问题分析图,是详细设计阶段常用的工具之一SA StructuredAnalysis即结构化分析,主要用于需求分析阶段;SC StructuredChart是结构化设计工具,用于总体设计阶段;DFD DataFlowDiagram是数据流图,也是用于需求分析阶段描述系统逻辑模型的工具
53.程序的三种基本控制结构的共同特点是A、只能用来描述简单程序B、不能嵌套使用C、单入口,单出口D、仅用于自动控制系统正确答案C答案解析程序的三种基本控制结构分别是顺序结构、选择结构和循环结构顺序结构按照语句的先后顺序依次执行;选择结构根据白盒测试技术
4.可维护性通常包括()A、可修改性、数据独立性和数据一致性B、可用性和可理解性C、可理解性、可修改性和可测试性D、可测试性和稳定性正确答案C答案解析可维护性通常包括可理解性、可修改性和可测试性可理解性便于维护人员理解系统;可修改性使得能够对系统进行调整和改进;可测试性有助于发现和修复系统中的问题,这三个方面共同保障了系统的可维护性
5.在E-R模型中,包含以下基本成分()A、数据、对象、实体B、控制、联系、对象C、实体、联系、属性D、实体、属性、操作正确答案C答案解析E-R模型中包含实体、联系和属性这三个基本成分实体是客观存在并可相互区别的事物;联系是实体之间的关系;属性是实体所具有的特性
6.下列软件开发模型中,支持需求不明确,特别是大型软件系统的开发,并支持多种软件开发方法的模型是()A、瀑布模型B、螺旋模型C、原型模型D、喷泉模型正确答案B答案解析螺旋模型将软件开发过程视为一个螺旋式的迭代过程,每一次迭代都包含制定计划、风险分析、实施工程和客户评估四个阶段它支持需求不明确的情况,因为在迭代过程中可以不断明确需求同时,它支持多种软件开发方法,融合了瀑布模型的系统性条件判断选择执行不同的分支;循环结构在满足一定条件时重复执行一段代码它们的共同特点是单入口,单出口这样的结构使得程序的逻辑清晰,易于理解、调试和维护A选项,它们可以描述复杂程序;B选项,可以嵌套使用;D选项,广泛应用于各种程序设计领域,不只是自动控制系统
54.一个模块的()太大一般是因为缺乏中间层次,应当适当增加中间层次的控制模块、宽度AB、深度C、扇出D、扇入正确答案C
55.在面向对象软件开发方法中,类与类之间主要有以下结构关系()A、继承和聚集B、继承和一般C、聚集和消息传递D、继承和方法调用正确答案A答案解析在面向对象软件开发方法中,类与类之间主要有继承和聚集两种结构关系继承体现了类之间的层次关系,一个类可以继承另一个类的属性和方法聚集表示整体与部分的关系,一个类可以包含其他类的对象作为其组成部分选项B中“一般”不是类与类之间的典型结构关系;选项C中消息传递是对象之间交互的方式,不是类与类之间的结构关系;选项D中方法调用是对象行为的执行方式,也不是类与类之间的结构关系
56.在软件质量要素的评价准则中,操作该软件的难易程度指的是()A、检测性B、可操作性C、容错性D、安全性正确答案B答案解析可操作性是指操作该软件的难易程度,它反映了软件在人机交互方面的设计质量,包括界面布局是否合理、操作流程是否简洁明了等,使用户能够方便快捷地使用软件而容错性主要关注软件在出现错误或异常情况时的处理能力;检测性侧重于软件对内部状态和错误的检测能力;安全性强调软件对数据和系统的保护能力,防止未经授权的访问、破坏等所以操作该软件的难易程度指的是可操作性
57.黑盒测试在设计测试用例时,主要研究()A、概要设计说明与详细设计说明B、详细设计说明C、需求规格说明于概要设计说明D、项目开发计划正确答案C答案解析黑盒测试主要依据需求规格说明来设计测试用例,关注软件的功能需求,而概要设计说明有助于从整体架构层面理解软件,辅助黑盒测试用例的设计,所以主要研究需求规格说明与概要设计说明
58.耦合的强弱取决于()A、模块内部各个元素彼此之间的紧密结合程度B、调用模块的方式C、通过接口的信息D、模块间接口的复杂程度正确答案D
59.在屏蔽硬件错误的冗错技术中,冗余附加技术有()A、冗余备份程序的存储及调用B、三模冗余C、关键程序和数据的冗余存储和调用D、信息冗余正确答案C
60.采用GAntt图表示软件项目进度安排,下列说法中正确的是()A、能够反映多个任务之间的复杂关系B、能够直观表示任务之间相互依赖制约关系C、能够表示哪些任务是关键任务D、能够表示子任务之间的并行和串行关系正确答案D答案解析GAntt图以图形化的方式直观地展示了项目中各个任务的开始时间、结束时间和持续时间等信息,能够清晰地表示子任务之间的并行和串行关系它主要侧重于展示任务的时间安排,对于反映多个任务之间的复杂关系、直观表示任务之间相互依赖制约关系以及明确哪些任务是关键任务的能力相对较弱
61.概要设计的结果是提供一份()A、模块说明书B、程序C、框图D、数据流图正确答案A答案解析概要设计主要是将软件需求转化为数据结构和软件的系统结构,其结果通常以模块说明书的形式呈现,模块说明书会详细描述每个模块的功能、接口、输入输出等信息框图只是一种辅助表示工具,不能全面准确地描述概要设计结果;程序是详细设计和编码阶段的产物;数据流图主要用于描述系统中数据的流动和处理过程,不是概要设计的直接结果
62.下列选项中,属于实现阶段的任务的是()A、验收测试计划B、单元测试C、绘制程序流程图D、组装测试计划正确答案B答案解析在软件开发的实现阶段,主要进行编码和测试工作单元测试是对软件中的最小可测试单元进行检查和验证,属于实现阶段的测试任务组装测试计划通常在集成测试阶段前制定;绘制程序流程图一般在设计阶段进行;验收测试计划在软件接近完成时制定,属于测试阶段后期的任务
63.在实际应用中,一旦纠正了程序中的错误后,还应选择部分或全部原先已测试过的测试用例,对修改后的程序重新测试,这种测试称为()A、回归测试B、强度测试C、系统测试D、验收测试正确答案A答案解析回归测试是指在对软件进行修改之后,重新执行以前为查找错误而执行过的测试用例,以确保该错误的修改没有引入新的错误或导致其他代码产生问题验收测试是对软件是否满足用户需求的测试;强度测试是检查在系统运行环境发生故障的情况下,系统可以运行到何种程度的测试;系统测试是将整个软件系统看作一个整体进行的测试所以纠正程序错误后重新测试应是回归测试
64.在软件工程的原则中,抽象、信息隐藏、模块化和局部化的原则支持软件的()A、可靠性B、有效性C、可追踪性D、可互操作性正确答案A答案解析抽象、信息隐藏、模块化和局部化的原则有助于提高软件的可靠性抽象使得软件开发者能够关注更高层次的概念,而不必被底层细节所困扰,有助于清晰地理解和处理问题;信息隐藏可以将模块的内部实现细节隐藏起来,减少外部干扰和错误传播的可能性;模块化将软件系统划分为多个独立的模块,便于开发、维护和测试,降低了故障的影响范围;局部化使得相关的程序元素集中在一起,便于管理和理解,减少了错误发生的几率,从而提高了软件的可靠性这些原则与软件的有效性、可互操作性、可追踪性并无直接关联
65.逻辑覆盖标准主要用于()A、黑盒测试方法B、白盒测试方法C、软件验证方法D、灰盒测试方正确答案B答案解析逻辑覆盖标准主要用于白盒测试方法白盒测试是基于代码结构进行的测试,逻辑覆盖通过对程序逻辑结构的遍历和检查来设计测试用例,以验证代码的逻辑正确性,符合白盒测试的特点而黑盒测试主要关注功能,不基于代码逻辑结构;灰盒测试虽兼顾部分代码信息但重点不在逻辑覆盖;软件验证方法范畴更广,逻辑覆盖只是其中一部分
66.在软件生存周期中,()阶段必须要回答的问题是“要解决的问题是做什么?”A、详细设计B、可行性分析和项目开发计划C、概要设计D、软件测试正确答案B答案解析可行性分析和项目开发计划阶段主要是确定项目是否可行,要解决的问题是什么,对项目进行定义和规划,所以必须要回答“要解决的问题是做什么“详细设计阶段主要是对各个模块进行详细的设计;概要设计阶段是对软件整体架构进行设计;软件测试阶段是对软件进行测试以发现缺陷所以答案是[B]
67.数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是()A、控制、数据、公共、标记B、控制、数据、标记、公共C、数据、公共、标记、控制D、数据、标记、控制、公共正确答案D答案解析数据耦合是模块间通过参数来传递数据,耦合度较低;标记耦合是通过数据结构传递数据,耦合度稍高;控制耦合是模块间传递控制信息,耦合度更高;公共耦合是多个模块共享全局数据,耦合度最高所以从低到高顺序是数据、标记、控制、公共
二、多选题(共题,每题分,共分)
2121.下面哪些测试方法属于白盒测试()A、边界值分析B、基本路径测试C、逻辑覆盖测试D、错误推测E、等价类划分正确答案BC答案解析白盒测试是基于代码结构和逻辑进行的测试基本路径测试是通过分析程序的控制流图来确定程序的基本执行路径,从而设计测试用例,属于白盒测试;逻辑覆盖测试是通过对程序逻辑结构的遍历实现的,如语句覆盖、判定覆盖等,属于白盒测试等价类划分、边界值分析和错误推测都属于黑盒测试方法,它们主要依据软件的功能需求来设计测试用例
2.下面哪些测试属于黑盒测试()A、路径测试B、等价类划分C、边界值分析D、错误推测正确答案BCD答案解析黑盒测试是基于功能的测试方法,不考虑内部结构和实现细节等价类划分是将输入数据划分为有效和无效等价类来设计测试用例;边界值分析是针对输入输出边界值进行测试;错误推测是基于经验和直觉推测可能的错误情况来设计测试用例,这三种方法都属于黑盒测试而路径测试是针对程序内部路径进行的测试,属于白盒测试,所以不选A
三、判断题(共题,每题分,共分)
301301.以对象、类、继承和通信为基础的面向对象设计方法(00D)也是常见的软件概要设计方法之
一、正确AB、错误正确答案A
2.软件提交是指把软件提交给用户,必要时还应负责把软件安装到用户环境中()A、正确B、错误正确答案B
3.面向对象设计的结果只能采用面向对象语言来实现()A、正确B、错误正确答案B
4.系统流程图是一个典型的描述逻辑系统的传统工具()A、正确B、错误正确答案B
5.应该尽量使用机器语言编写代码,提高程序运行效率,而减少高级语言的使用()A、正确B、错误正确答案B
6.白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可A、正确B、错误正确答案B
7.软件生存周期是从软件开始开发到开发结束的整个时期()、正确AB、错误正确答案B
8.等价类划分方法将所有可能的输入数据划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例()A、正确B、错误正确答案A
9.尽可能使用高级语言编写程序()、正确AB、错误正确答案A
10.开发软件就是编写程序、正确AB、错误正确答案B
11.软件需求分析的任务是建立软件模块结构图A、正确B、错误正确答案B
12.软件维护就是改正软件中的错误、正确AB、错误正确答案B
13.软件测试中综合策略的通常做法是用白盒法设计基本的测试方案,再用黑盒法补充一些必要的测试方案()A、正确B、错误正确答案B
14.向滞后的项目中增加人手会使得项目更加滞后()A、正确B、错误正确答案A
15.集成测试主要由用户来完成()A、正确B、错误正确答案B
16.软件工作的考虑范围主要是程序设计和实现()、正确AB、错误正确答案B
17.UML只能应用于软件系统模型的建立()A、正确B、错误正确答案B
18.软件错误可能出现在开发过程的早期,越早修改越好()A、正确B、错误正确答案A
19.在进行概要设计时应加强模块间的联系()、正确AB、错误正确答案B
20.环形复杂度定量度量程序的逻辑复杂度,可以用这个公式来计算环形复杂度流图G的环形复杂度V(G)=N-E+2o(改成E-N+2)A、正确B、错误正确答案B
21.扇出是一个模块直接调用的模块数目,一般推荐的扇出为3或4()A、正确B、错误正确答案A
22.编码时尽量多用全局变量()A、正确B、错误正确答案B
23.软件的开发与运行经常受到硬件的限制和制约()A、正确B、错误正确答案A
24.人工测试中走查方法和代码评审方法是同一种方法()A、正确B、错误正确答案B
25.确认测试计划应该在可行性研究阶段制定、正确AB、错误正确答案B
26.完成测试作业后,为了缩短源程序的长度应删除程序中的注解、正确AB、错误正确答案B
27.发现错误多的程序模块,残留在模块中的错误也多A、正确B、错误正确答案A
28.软件就是程序A、正确B、错误正确答案B
29.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖()和顺序性以及快速原型模型的迭代特征等多种方法的优点,适用于大型软件系统的开发
7.下列说法中,不正确的是()A、软件项目工作量分布曲线不是线性的B、适当推迟交货时间可大幅度降低开发工作量C、到开发后期临时增加人力可加快进度D、在软件生存周期的不同阶段各类人员的参与情况是不同的正确答案C答案解析在软件开发后期临时增加人力往往并不能加快进度,因为后期加入人员需要花费时间来熟悉项目情况、融入团队等,可能还会带来沟通成本增加、工作衔接不畅等问题,反而不利于项目进度推进而软件项目工作量分布曲线通常不是线性的;适当推迟交货时间在一定程度上可优化项目安排从而大幅度降低开发工作量;在软件生存周期的不同阶段各类人员的参与情况确实是不同的
8.IDEFO图不反映出系统()A、系统做什么B、系统功能如何实现C、系统由谁来做D、系统实现的约束条件正确答案B答案解析IDEFO图主要描述系统做什么,包括系统的功能及其相互关系等,并不关注系统功能如何实现,它侧重于功能的分解和流程的描述,而不是具体的实现细节系统由谁来做以及系统实现的约束条件在IDEF图中也不是重点体现的内容
9.从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大()、概要设计阶段AB、详细设计阶段C、需求分析阶段D、测试和运行阶段正确答案C、正确AB、错误正确答案B
30.程序运行过程中出现错误叫做容错A、正确B、错误正确答案B答案解析需求分析阶段出错对软件的影响最大因为需求分析是确定软件系统要做什么的阶段,后续的设计、编码、测试等阶段都是基于需求分析的结果展开的如果需求分析出错,那么后续所有阶段的工作都可能是错误的方向,导致整个软件系统无法满足用户实际需求,造成巨大的返工和损失而详细设计阶段和概要设计阶段主要是对软件架构和具体实现方式的规划,虽有影响但可在一定程度上调整;测试和运行阶段发现问题还可通过修复来解决,不像需求错误那样从根本上影响软件的构建基础
10.软件特性中,在给定的时间间隔内,程序成功运行的概率指的是oA、可适应性B、正确性C、可靠性D、有效性正确答案C答案解析软件的可靠性是指在给定的时间间隔内,程序成功运行的概率有效性强调软件系统能够满足用户需求并达到预期目标;可适应性是指软件能适应不同环境和需求变化的能力;正确性侧重于软件功能的准确性而可靠性符合在给定时间间隔内程序成功运行概率这一描述
11.详细设计的结果基本决定了最终程序的A、运行速度B、代码的规模C、质量D、可维护性正确答案C答案解析详细设计阶段会对软件的算法、数据结构、模块划分、接口设计等进行细化一个好的详细设计能够为编码阶段提供清晰、准确的指导,使得编写出来的代码结构良好、逻辑清晰,从而基本决定了最终程序的质量而代码规模主要取决于功能需求和设计的复杂程度等多方面因素;运行速度会受到硬件以及代码实现的多种因素影响;可维护性虽然与详细设计有关,但它还涉及到代码的结构、注释等多个方面,详细设计只是其中一个重要因素,不是基本决定可维护性的唯一因素所以详细设计的结果基本决定了最终程序的质量
12.在一个课程注册系统中,定义了类CourseSchedule和类Course,并在类CourseSchedule中定义了方法Add(c:Course)和方法remove(c:Course),则类CourseSchedule和类Course之间的关系是()A、泛化关系B、组合关系C、依赖关系D、包含关系正确答案C答案解析类CourseSchedule中的方法Add(c Course)和方法remove(c Course)都需要参数为Course类的对象,这表明CourseSchedule类的行为依赖于Course类的对象,所以它们之间是依赖关系
13.软件详细设计主要采用的方法是()、模块设计AB、结构化设计C、PDL语言D、结构化程序设计正确答案D答案解析软件详细设计主要采用结构化程序设计方法结构化程序设计是一种程序设计技术,它采用自顶向下、逐步求精的设计方法和单入口单出口的控制结构,有助于提高程序的可读性、可维护性和可靠性模块设计是总体设计阶段的内容;结构化设计是总体设计采用的方法;PDL语言是一种用于描述软件设计的语言,不是详细设计主要采用的方法
14.软件生命周期中所花费用最多的阶段是()A、软件测试B、详细设计C、软件维护D、软件编码正确答案C答案解析软件维护是软件生命周期中持续时间最长、花费最多的阶段因为软件在交付使用后,为了适应不断变化的用户需求、修复发现的问题、提升性能等,需要进行持续的维护工作,这涉及到大量的人力、物力投入详细设计、软件编码、软件测试阶段虽然也有成本,但相比软件维护阶段,花费要少很多
15.软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为()A、螺旋模型B、对象模型C、瀑布模型D、层次模型正确答案C答案解析结构化生命周期方法的特点是将软件生命周期划分为定义、开发、运行维护等阶段,如同瀑布流水一样,每个阶段都有明确的输入和输出,前一个阶段完成后才进入下一个阶段,所以一般称其为瀑布模型
16.在软件质量特性中,()是指防止对程序及数据的非授权访问的能力A、适应性B、安全性C、容错性D、灵活性正确答案B答案解析安全性是指防止对程序及数据的非授权访问的能力适应性是指软件在不同环境下运行的能力灵活性是指软件能够方便地进行修改和扩展的能力容错性是指软件在出现错误或异常情况时仍能正常运行的能力
17.模块的内聚性最高的是()、逻辑内聚AB、功能内聚C、偶然内聚D、时间内聚正确答案B答案解析模块的内聚性是指模块内部各成分之间相互关联的紧密程度功能内聚是指模块内所有元素共同完成一个功能,缺一不可,联系最为紧密,内聚性最高逻辑内聚是指模块内执行若干个逻辑上相似的功能时间内聚是指模块内的各处理元素都在同一时间间隔内执行偶然内聚是指模块内各部分之间没有联系,或即使有联系,也是松散的、偶然的所以内聚性最高的是功能内聚
18.为高质量的开发软件项目,在软件结构设计时,必须遵循()原则A、信息隐蔽B、程序优化C、质量控制D、数据共享正确答案A答案解析信息隐蔽原则是指在软件结构设计时,应尽量使一个模块内包含的信息(过程和数据)对于不需要这些信息的模块来说是不能访问的遵循信息隐蔽原则可以提高软件的可维护性和可修改性,减少模块之间的耦合度,使得软件结构更加清晰、稳定,有助于高质量地开发软件项目而质量控制是软件开发过程中的一系列管理和检查活动;程序优化侧重于对程序性能等方面的改进;数据共享主要涉及数据在不同模块或部分之间的使用方式,均不是软件结构设计时必须遵循的首要原则
19.在软件质量要素中,改变一个操作的顺序所需的工作量的多少指的是()A、灵活性B、完整性C、正确性D、可用性正确答案A答案解析灵活性是指改变一个操作的顺序所需的工作量的多少完整性主要关注软件功能和数据的完备程度;可用性侧重于软件是否易于使用;正确性强调软件功能是否符合需求而灵活性体现了软件在操作顺序等方面的可调整性
20.以下不属于软件维护困难表现的是()A、软件开发和软件维护在人员和时间上的差异B、软件维护不是一项吸引人的工作C、源程序及相关文档的错误或丢失D、读懂别人的程序是困难的E、文档的不一致性正确答案C
21.可行性研究主要从以下几个方面进行研究()A、技术可行性,经济可行性,操作可行性B、技术可行性,经济可行性,系统可行性C、经济可行性,系统可行性,时间可行性D、经济可行性,系统可行性,操作可行性正确答案A答案解析可行性研究主要从技术可行性、经济可行性和操作可行性方面进行研究技术可行性考量技术条件能否实现系统目标;经济可行性评估项目成本效益;操作可行性关注系统操作上的便利性和用户接受度等
22.随着软硬件环境变化而修改软件的过程是()A、校正性维护B、适应性维护C、完善性维护D、预防性维护正确答案B答案解析适应性维护是指随着软硬件环境的变化而修改软件的过程校正性维护是纠正软件中出现的错误;完善性维护是对软件功能进行扩充和改善;预防性维护是为了提高软件的可维护性和可靠性等而进行的维护所以本题选B
23.面向对象的开发方法中,()将是面向对象技术领域内占主导地位的标准建模语言A、Booch方法B、Coad方法C、UML语言D、0MT方法正确答案C答案解析UML(统一建模语言)是面向对象技术领域内占主导地位的标准建模语言它融合了Booch方法、Coad方法和0MT方法等多种方法的优点,提供了一套完整的图形化符号体系来对软件系统进行可视化建模,包括用例图、类图、对象图、状态图、活动图、序列图、协作图等多种图形,能够清晰地描述系统的静态结构和动态行为,便于开发人员之间的沟通和理解,广泛应用于软件开发的各个阶段
24.JAckson结构化程序设计方法主要适用于规模适中的()系统的开发A、数据处理B、文字处理C、实时控制D、科学计算正确答案A答案解析Jackson结构化程序设计方法主要适用于规模适中的数据处理系统开发它是一种面向数据结构的设计方法,通过对数据结构的分析来设计程序结构,非常适合处理各种数据处理任务,包括数据的输入、输出、存储、转换等而文字处理、实时控制、科学计算等领域虽然也可能涉及数据处理,但Jackson方法并不是专门针对这些领域的,其主要优势还是体现在一般的数据处理系统开发上。
个人认证
优秀文档
获得点赞 0