软件工程期末选择题_第1页
软件工程期末选择题_第2页
软件工程期末选择题_第3页
软件工程期末选择题_第4页
软件工程期末选择题_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

软件工程期末选择题一、软件工程基本概念1.软件工程的三要素不包括以下哪一项?()A.方法B.工具C.过程D.环境

答案:D

解析:软件工程的三要素包括方法、工具和过程。方法是完成软件工程项目的技术手段;工具支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理。

2.软件工程的目标不包括()A.生产具有正确性、可用性以及开销合宜的产品B.采用工程化的原则和方法,以提高软件的可维护性C.只开发满足用户当前需求的软件D.提高软件生产率

答案:C

解析:软件工程的目标是生产具有正确性、可用性以及开销合宜的产品,采用工程化的原则和方法,以提高软件的可维护性,提高软件生产率,并且开发不仅满足用户当前需求,还要考虑未来可能变化的软件。

3.软件危机产生的原因主要包括()I.软件本身的特点II.硬件可靠性差III.软件开发和维护方法不当IV.对软件的认识不够A.I、II、IIIB.I、III、IVC.II、III、IVD.I、II、IV

答案:B

解析:软件危机产生的原因主要有软件本身的特点(如软件逻辑复杂、规模庞大等)、软件开发和维护方法不当、对软件的认识不够等。硬件可靠性差并不是软件危机产生的直接原因。

4.软件工程学的一个重要目标是()A.提高程序的执行效率B.降低程序对存储空间的要求C.定义各种软件开发过程模型D.提高软件的可维护性

答案:D

解析:软件工程学的一个重要目标是提高软件的可维护性,使软件在生命周期内便于理解、修改和扩展。虽然提高程序执行效率和降低存储空间要求也很重要,但不是软件工程学的核心目标。定义软件开发过程模型是实现软件工程目标的手段之一。

5.以下不属于软件工程方法学三要素的是()A.方法B.工具C.过程D.操作规范

答案:D

解析:软件工程方法学三要素为方法、工具和过程,操作规范不属于这三要素。

二、软件生命周期1.软件生命周期中所花费用最多的阶段是()A.详细设计B.软件编码C.软件测试D.软件维护

答案:D

解析:软件维护是软件生命周期中持续时间最长、花费最多的阶段。因为软件在运行过程中需要不断适应新的需求、修复缺陷等。

2.软件生命周期的瀑布模型,典型地刻画了软件生命周期的阶段划分,它将软件生命周期划分为()A.需求分析、设计、编码、测试、维护等阶段B.计划、需求分析、设计、编码、测试、运行和维护阶段C.可行性研究、需求分析、概要设计、详细设计、编码、测试、维护等阶段D.计划、需求分析、概要设计、详细设计、编码、测试、验收等阶段

答案:B

解析:瀑布模型将软件生命周期划分为计划、需求分析、设计、编码、测试、运行和维护阶段,各阶段自上而下、相互衔接,如同瀑布流水。

3.软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是()A.概要设计B.详细设计C.可行性研究D.需求分析

答案:D

解析:需求分析阶段的主要任务是准确地确定软件系统必须做什么和必须具备哪些功能,明确系统的功能、性能、数据、界面等方面的要求。

4.在软件生命周期中,以下哪个阶段是软件产品从设计图纸变成可执行程序的过程?()A.需求分析B.编码C.测试D.维护

答案:B

解析:编码阶段是将软件设计的结果转换为计算机可执行的程序代码,实现从设计图纸到可执行程序的转变。

5.软件维护阶段的主要任务是()A.对软件进行测试B.对软件进行升级C.对软件进行优化D.对软件进行修改和完善

答案:D

解析:软件维护阶段主要是对软件进行修改和完善,以适应新的需求、修复发现的缺陷、优化性能等。测试在软件交付前进行,升级和优化是维护的一部分,但修改和完善更全面地概括了维护阶段的主要任务。

三、软件开发模型1.快速原型模型的主要特点之一是()A.开发完毕才见到产品B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件D.及早提供工作软件

答案:D

解析:快速原型模型的主要特点是及早提供工作软件,让用户尽早看到软件的初步样子,以便快速获取用户反馈,对原型进行修改完善,最终得到满足用户需求的软件产品。

2.螺旋模型综合了()的优点,并增加了风险分析。A.瀑布模型和快速原型模型B.瀑布模型和喷泉模型C.快速原型模型和喷泉模型D.以上都不对

答案:A

解析:螺旋模型综合了瀑布模型和快速原型模型的优点,并增加了风险分析。它将软件开发过程视为一个螺旋式的迭代过程,每一次迭代都包含制定计划、风险分析、实施工程和客户评估四个阶段。

3.喷泉模型是一种以()为驱动的模型。A.数据B.程序C.需求D.对象

答案:A

解析:喷泉模型是一种以数据为驱动的模型,它不像瀑布模型那样严格地按阶段进行开发,而是允许各阶段之间有重叠,强调软件系统的开发过程自下而上、逐步细化,就像水从下往上喷射一样。

4.增量模型的优点不包括()A.软件可以快速地交付B.逐步增加产品功能可以使用户有较充裕的时间学习和适应新产品C.项目失败的风险较低D.很容易理解,管理成本低

答案:D

解析:增量模型的优点包括软件可以快速地交付,逐步增加产品功能可以使用户有较充裕的时间学习和适应新产品,项目失败的风险较低等。但它也有缺点,如对系统的设计要求高,容易导致软件结构不合理等,并且由于不断增加功能模块,管理成本并不低。

5.以下软件开发模型中,适用于需求不明确、规模较小的项目的是()A.瀑布模型B.快速原型模型C.螺旋模型D.增量模型

答案:B

解析:快速原型模型适用于需求不明确、规模较小的项目。通过快速构建原型,让用户参与并提出反馈,有助于明确需求,从而开发出满足用户需求的软件。瀑布模型适用于需求明确、稳定的项目;螺旋模型适用于规模较大、风险较高的项目;增量模型适用于需求有一定明确性且可以逐步增加功能的项目。

四、可行性研究1.可行性研究的目的是()A.分析开发系统的必要性B.确定系统建设的方案C.分析系统风险D.以上都是

答案:D

解析:可行性研究的目的是分析开发系统的必要性,确定系统建设的方案,同时分析系统可能面临的风险等,为项目决策提供依据。

2.以下哪项不属于可行性研究的内容?()A.技术可行性B.经济可行性C.操作可行性D.法律可行性

答案:C

解析:可行性研究通常包括技术可行性、经济可行性、法律可行性等方面。操作可行性不属于可行性研究的标准内容。

3.技术可行性研究主要考虑()A.开发人员的技术能力B.现有的技术条件C.技术发展趋势D.以上都是

答案:D

解析:技术可行性研究主要考虑开发人员的技术能力是否能够胜任项目开发,现有的技术条件是否能够支持系统的实现,以及技术发展趋势是否会对项目产生影响等。

4.经济可行性研究的内容不包括()A.成本效益分析B.投资回报率分析C.运行维护成本分析D.技术方案的选择

答案:D

解析:经济可行性研究主要包括成本效益分析、投资回报率分析、运行维护成本分析等,技术方案的选择属于技术可行性研究的内容。

5.对于一个项目,在进行可行性研究时,如果发现项目在经济上不可行,通常应该()A.放弃该项目B.重新进行需求分析C.调整项目目标或方案D.降低项目预算

答案:A

解析:如果项目在经济上不可行,即投入产出比不合理,无法获得预期的经济效益,通常应该放弃该项目。重新进行需求分析、调整项目目标或方案、降低项目预算等措施可能无法从根本上解决经济不可行的问题。

五、需求分析1.需求分析阶段的任务是确定()A.软件开发方法B.软件开发工具C.软件开发费D.软件系统的功能

答案:D

解析:需求分析阶段的核心任务是确定软件系统的功能,明确系统要做什么,包括功能、性能、数据、界面等方面的需求。

2.需求规格说明书的作用不包括()A.软件验收的依据B.用户与开发人员对软件要做什么的共同理解C.软件可行性研究的依据D.软件设计的依据

答案:C

解析:需求规格说明书是软件验收的依据,是用户与开发人员对软件要做什么的共同理解,也是软件设计的依据。软件可行性研究在需求分析之前进行,需求规格说明书不是其依据。

3.以下哪种方法不属于需求分析常用的方法?()A.结构化分析方法B.面向对象分析方法C.数据流图法D.程序流程图法

答案:D

解析:需求分析常用的方法有结构化分析方法、面向对象分析方法等。数据流图法是结构化分析方法中的一种工具。程序流程图法主要用于描述程序的控制流程,不属于需求分析常用方法。

4.在需求分析中,业务流程描述常用的工具是()A.数据流图B.数据字典C.判定表D.业务流程图

答案:D

解析:业务流程图是在需求分析中用于描述业务流程的常用工具,它直观地展示了业务活动的顺序、流向等。数据流图用于描述数据在系统中的流动和处理过程;数据字典用于对数据的定义和说明;判定表用于处理具有多个条件和多个动作的逻辑关系。

5.需求分析阶段产生的最重要的文档是()A.需求规格说明书B.项目开发计划C.可行性研究报告D.测试计划

答案:A

解析:需求规格说明书是需求分析阶段产生的最重要的文档,它详细描述了软件系统的功能、性能、数据、界面等方面的需求,是后续软件开发工作的重要依据。

六、总体设计1.软件总体设计的主要任务是确定软件的()A.模块划分B.算法设计C.数据结构设计D.程序设计

答案:A

解析:软件总体设计的主要任务是确定软件的模块划分,将软件系统分解为多个模块,并确定模块之间的关系。算法设计、数据结构设计属于详细设计阶段的任务,程序设计是编码阶段的工作。

2.软件结构设计的优化准则不包括()A.模块独立性强B.模块规模适中C.深度、宽度、扇入和扇出适当D.模块之间的接口复杂

答案:D

解析:软件结构设计的优化准则包括模块独立性强(高内聚、低耦合)、模块规模适中、深度、宽度、扇入和扇出适当等。模块之间的接口应简单清晰,而不是复杂。

3.以下关于模块独立性的描述,正确的是()A.耦合性越强,模块独立性越高B.内聚性越强,模块独立性越高C.耦合性和内聚性与模块独立性无关D.以上都不对

答案:B

解析:内聚性越强,模块内部的功能联系越紧密,模块独立性越高;耦合性越弱,模块之间的依赖关系越松散,模块独立性越高。

4.为了提高模块的独立性,模块之间最好是()A.公共耦合B.控制耦合C.数据耦合D.内容耦合

答案:C

解析:数据耦合是模块之间传递数据时的一种耦合方式,只传递数据,不传递控制信息,是一种比较松散的耦合方式,有利于提高模块的独立性。公共耦合、控制耦合的耦合度相对较高,内容耦合耦合度最高,不利于模块独立性。

5.在软件总体设计中,模块的扇入是指()A.一个模块直接调用的其他模块的个数B.一个模块被其他模块调用的个数C.一个模块传递给其他模块的数据量D.一个模块从其他模块接收的数据量

答案:B

解析:模块的扇入是指一个模块被其他模块调用的个数,扇入越大,说明该模块被复用的程度越高。一个模块直接调用的其他模块的个数是模块的扇出。

七、详细设计1.详细设计阶段的任务是确定每个模块的()A.功能B.调用关系C.算法和数据结构D.输入输出数据

答案:C

解析:详细设计阶段的任务是确定每个模块的算法和数据结构,为编码提供具体的实现细节。功能在总体设计阶段已经确定,调用关系在总体设计中也有体现,输入输出数据在需求分析和总体设计阶段都有涉及。

2.以下哪种工具不属于详细设计工具?()A.程序流程图B.盒图C.数据流图D.判定表

答案:C

解析:数据流图主要用于需求分析阶段描述数据在系统中的流动和处理过程,不属于详细设计工具。程序流程图、盒图、判定表等都是详细设计常用的工具。

3.程序流程图中,菱形框表示()A.输入输出B.处理C.判断D.起止

答案:C

解析:在程序流程图中,菱形框表示判断,用于根据条件进行分支选择。矩形框表示处理,平行四边形框表示输入输出,圆角矩形框表示起止。

4.结构化程序设计的三种基本控制结构是()A.顺序、选择、循环B.过程、函数、子程序C.递归、堆栈、队列D.调用、返回、转移

答案:A

解析:结构化程序设计的三种基本控制结构是顺序、选择、循环,任何复杂的程序都可以由这三种基本结构组合而成。

5.详细设计阶段的输出结果是()A.软件结构图B.程序代码C.详细设计说明书D.需求规格说明书

答案:C

解析:详细设计阶段的输出结果是详细设计说明书,它详细描述了每个模块的算法和数据结构等实现细节。软件结构图是总体设计阶段的输出;程序代码是编码阶段的成果;需求规格说明书是需求分析阶段的产物。

八、软件测试1.软件测试的目的是()A.发现程序中的错误B.证明程序是正确的C.评估软件质量D.改进软件性能

答案:A

解析:软件测试的目的是发现程序中的错误,而不是证明程序是正确的。虽然通过测试可以对软件质量进行评估,但发现错误是测试的主要目的。改进软件性能是软件优化等工作的目标,不是测试的直接目的。

2.软件测试的基本原则不包括()A.尽早测试B.全面测试C.程序员自己测试自己的程序D.避免测试自己的代码

答案:C

解析:软件测试应尽早进行,全面测试,避免测试自己的代码等。程序员自己测试自己的程序容易受到思维定式等影响,不利于发现潜在错误,不符合测试原则。

3.以下哪种测试方法属于黑盒测试?()A.语句覆盖测试B.判定覆盖测试C.边界值分析测试D.条件覆盖测试

答案:C

解析:黑盒测试不考虑程序内部结构和实现细节,只关注输入输出。边界值分

温馨提示

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

评论

0/150

提交评论