提示:内容已经过期谨慎付费,点击上方查看最新答案

软件工程

  1. 软件工程方法学中方法是指( )。

  2. A:回答“怎么做”的问题 B:软件工程支撑环境 C:工作流 D:任务框架
    答案:方法.工具.过程AI参考:正确答案是A:回答“怎么做”的问题。软件工程方法学中的方法是指用来描述“怎么做”的步骤和过程,它提供了一种解决软件问题的思路和方法,包括需求分析、系统设计、编程实现、测试和维护等环节。因此,答案为A,即回答“怎么做”的问题。B、C、D选项与软件工程方法学的概念不符。'
  3. 下面说法哪个不属于设计准则( )。

  4. A:提高模块的内聚,降低模块间的耦合 B:模块要有重用性 C:降低模块接口的复杂程度 D:模块大小要适中
    答案:模块要有重用性
  5. 可行性研究的成本只是预期工程总成本的( )。

  6. A:25-30% B:5%-10% C:1%-5% D:15%-20%
    答案:5%-10%
  7. 在一个软件结构中,同一个层次上模块总数的最大值是指模块的( )。

  8. A:扇出 B:扇入 C:深度 D:宽度
    答案:宽度
  9. HIPO的含义是( )。

  10. A:层次、输入、处理、输出 B:关于输入、处理、输出的层次 C:顶层的IPO图 D:高速、信息、程序、目标
    答案:层次.输入.处理.输出AI参考:正确答案是:C:顶层的IPO图。HP是指把功能结构用数据流的方式绘制出图形的方法;IPO即输入/处理/输出方式;C项描述的即为单层顶的IPO图。其他三项不符合题目要求。因此本题选C。'
  11. 关于模块的作用域和控制域说法正确的是( )。

  12. A:模块的控制域在模块的作用域之内 B:模块的作用域和模块的控制域相同 C:模块的作用域和模块的控制域都是一种层次结构 D:模块的作用域在模块的控制域之内
    AI参考:关于模块的作用域和控制域说法正确的是:C: 模块的作用域和模块的控制域都是一种层次结构。模块的作用域是指模块能够使用的变量和函数的作用范围,通常是一种层次结构,即在一个模块内部,只能访问其自身作用域内的变量和函数,不能访问其他模块的作用域内的变量和函数。模块的控制域是指模块能够控制和操作的对象范围,通常也包括在模块内部的一些硬件、软件资源等,也具有一定的层次结构。因此,模块的作用域和控制域都是一种层次结构。其他选项中的说法都有一定的错误或不准确之处。'
  13. 虚拟作业,事实上并不存在的作业,表示( ) 。

  14. A:作业的结束 B:持续时间 C:依赖关系 D:作业的开始
    AI参考:正确选项是【D:作业的开始 】。虚拟作业是指实际上并不存在的作业,通常指的是计划中但在实际操作中并未实施的作业,因此表示的是作业的开始。选项A、B、C都不符合虚拟作业的含义。'
  15. 版本控制是指联合使用规程和工具,以管理在软件工程过程中所创建的配置对象的( )。

  16. A:相关文档 B:不同版本 C:数据 D:软件配置项

  17. 用于并发系统,解决定时问题的形式化方法是( )。

  18. A:Petri网 B:VDM C:Z语言 D:一阶线性时态逻辑
    AI参考:用于并发系统,解决定时问题的形式化方法是(D)一阶线性时态逻辑。一阶线性时态逻辑是一种用于描述并发系统定时行为的逻辑语言,它可以准确地描述并发系统的行为和定时关系,从而解决并发系统的定时问题。其他选项中,Petri网(A)主要用于描述异步行为和同步问题,VDM(B)主要用于描述功能行为和规格说明,Z语言(C)则是一种用于描述并发系统的语言,但它并不专门用于解决定时问题。'
  19. 总体设计不包括( )。

  20. A:逻辑数据结构设计 B:模块内算法设计 C:体系结构设计 D:数据库设计
    AI参考:正确选项是B:模块内算法设计。总体设计主要包括逻辑数据结构设计、体系结构设计、数据库设计等,其中逻辑数据结构设计是根据用户需求设计数据模型,体系结构设计是根据系统的需求设计系统的框架结构,数据库设计是根据数据模型设计数据表结构等。而模块内算法设计不是总体设计的内容。因此,本题选择B选项。'
  21. 软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为( )。

  22. A:正确性 B:可用性 C:可靠性 D:完整性

  23. 订货系统应该能够产生订货报表,这是软件的( )。

  24. A:外部接口需求 B:功能需求 C:性能需求 D:设计约束
    AI参考:正确选项是【B:功能需求】。功能需求是指系统应该具备哪些功能,即系统必须完成哪些工作。订货系统应该能够产生订货报表,说明该软件需要具备生成报表的功能,因此订货报表是软件的必要功能之一。其他选项A、C、D与订货报表没有直接关系。'
  25. 关于调试,下列说法错误的是( )。

  26. A:调试是一个发现错误、改正错误的过程 B:调试是为了证明程序员的正确 C:调试的结果一般是不可预见的 D:调试是不受时间约束的
    AI参考:B选项"调试是为了证明程序员的正确"这个说法是错误的。调试是为了发现和修正程序中的错误,以达到预期的功能和效果。而不是证明程序员的正确与否。其他选项均与调试相关,表述正确。A选项说调试是一个发现错误、改正错误的过程,这是调试的本质。C选项说调试的结果一般是不可预见的,这也是对的,因为程序在运行过程中可能会出现各种我们无法预见的问题。D选项说调试是不受时间约束的,这也是对的,因为只要程序出现问题,就可以进行调试,不需要等待特定时间。因此,答案为B选项。'
  27. 描绘物理系统采用( )。

  28. A:Petri网 B:系统流程图 C:软件结构图 D:数据流图
    AI参考:描绘物理系统采用【单选题】答案为D:数据流图。数据流图用于表示数据流和数据处理的逻辑结构,适用于软件系统的分析和设计。因此,选项D是正确的答案。选项A、B和C虽然也涉及到系统的描述和结构,但它们更适合于描述软件系统的结构和流程,而不是物理系统的描述。'
  29. 描述作为外部事件结果的软件行为,要求建立( )。

  30. A:数据模型 B:行为模型 C:功能模型 D:静态模型

  31. 模块的初始化工作和模块处理意外故障均属于( )。

  32. A:逻辑内聚 B:时间内聚 C:顺序内聚 D:功能内聚

  33. 软件设计的方法有多种,不属于面向数据流的设计方法的是( )。    


  34. A:基于Jackson图的设计方法 B:基于事务流的设计方法 C:其余选项都不对 D:基于变换流的设计方法

  35. 使用数据流图,并不断细化的需求获取方法是( )。

  36. A:访谈 B:简易的应用规格说明 C:面向数据流自顶向下逐步求精 D:快速原型法
    AI参考:使用数据流图,并不断细化的需求获取方法是面向数据流自顶向下逐步求精。因此,答案为C。这种方法是一种系统分析和设计方法,通过将系统分解为更小的、更易于管理的部分,逐步细化需求。这种方法强调了需求分析的自顶向下逐步求精,即从系统的整体目标出发,逐步细化到系统的具体细节。这种方法可以通过数据流图(DFD)来帮助分析和描述系统的数据流和业务逻辑,从而更好地获取和整理需求。'
  37. 增量模型在添加新的模块时,有一个要求是( )。

  38. A:有足够的开发人员 B:需要更多的测试 C:各个模块都要进行评审 D:软件体系结构开放
    AI参考:在增量模型中,添加新的模块时,对系统体系结构的要求是软件体系结构应该是开放的。这种开放性的体系结构有助于在不同的模块之间建立更紧密的集成,允许新的模块快速融入并适应整个系统的变化。其他选项如足够的开发人员、更多的测试和各个模块的评审,虽然也是增量模型中的一些要求,但不是在添加新的模块时特别强调的。因此,正确答案是D:软件体系结构开放。'
  39. 能够在较短开发周期(一般为60-90天)通过基于构件的方法实现快速开发的软件过程模型是( )。

  40. A:原型模型 B:快速应用开发模型 C:Rational统一过程 D:增量模型
    AI参考:正确答案是B:快速应用开发模型。快速应用开发模型是一种能够在较短开发周期(一般为60-90天)通过基于构件的方法实现快速开发的软件过程模型。它是一种面向特定应用的开发模型,具有简单、灵活、快速、高效等优点。相比之下,原型模型、Rational统一过程和增量模型虽然也具有一定的优势,但它们在开发周期和效率上可能不如快速应用开发模型。因此,本题答案为B。'
  41. SD(结构化设计)方法设计的结果是( )。

  42. A:模块的算法 B:数据流图 C:模块 D:模块结构图

  43. 封装实现了( ),使对象的生产者和使用者分离,使对象的定义和实现分开。

  44. A:工程化 B:系统维护 C:模块化 D:信息隐藏
    AI参考:正确选项是【C:模块化】。封装是面向对象编程中的一个重要概念,它主要实现了模块化,使得对象的生产者和使用者可以分离,同时对象的定义和实现也可以分开。通过封装,可以将对象的内部状态和行为隐藏起来,只对外提供公共的接口,这样可以提高代码的可维护性和可复用性。因此,选项C“模块化”是正确的答案。其他选项如工程化、系统维护和信息隐藏虽然也与封装有关,但它们并不是封装的主要实现目标。'
  45. 数据流图和数据字典共同构成了系统的( )。

  46. A:逻辑模型 B:物理模型 C:目标模型 D:原型

  47. 现实世界中客观存在的任何事物都可以被看作是( )。

  48. A:系统 B:属性 C:对象 D:类
    AI参考:正确答案是C:对象。对象是现实世界中客观存在的任何事物,它可以被看作是一个具有一定属性,并与其他对象发生相互作用的集合体。因此,答案为C。系统、类和属性都是面向对象程序设计中的概念,它们分别表示一个系统、一个类和对象的属性。但只有对象是现实世界中客观存在的任何事物。'
  49. 关于OOA,下面说法不正确的是( )。

  50. A:是运用面向对象的方法进行系统分析。 B:最终建立OOA模型。 C:强调对问题域和系统责任进行分析和理解。 D:强调和实现有关的分析。

  51. 可行性研究包括下面几种可行性( )。

  52. A:法律 B:技术 C:操作 D:经济
    AI参考:正确选项为:A:法律、B:技术、C:操作、D:经济。可行性研究包括法律、技术、操作和经济方面的可行性。其中,法律可行性主要考虑项目是否符合国家法律法规和政策要求;技术可行性主要考虑项目的技术条件、工艺流程、设备选型等是否可行;操作可行性主要考虑项目的管理体制、人员配备、操作规程等是否合理;经济可行性主要考虑项目的投资回报率、经济效益和社会效益等。因此,选项A、B、C、D都是可行性研究的内容。'
  53. 软件质量是软件与( )相一致的程度。

  54. A:明确的性能需求 B:文档中明确描述的开发标准 C:任何专业开发的软件产品都应该具有的隐含特征 D:明确的功能需求
    AI参考:正确选项为【A:明确的性能需求 D:明确的功能需求】。软件质量是软件与明确的功能需求和性能需求相一致的程度。选项B和C虽然也涉及到软件质量,但不够全面,选项B是关于开发标准的描述,而选项C则过于笼统,没有具体指出哪些特征是隐含的。'
  55. 有穷状态机包括以下部分( )。

  56. A:有穷非空输入集 B:多个终结状态 C:一个初始状态 D:有穷非空状态集 E:由状态到输入的转换函数

  57. 为了提高软件质量,确保软件开发成功,必须严格验证需求的正确性,主要验证( )。

  58. A:一致性 B:现实性 C:有效性 D:完整性
    AI参考:为了提高软件质量,确保软件开发成功,必须严格验证需求的正确性,主要验证一致性、现实性和有效性,因此本题的正确答案为ABCD。在软件开发过程中,需求分析是至关重要的环节,而需求验证则是确保需求正确性的关键步骤。一致性是指需求之间相互协调,不产生冲突;现实性是指需求符合实际应用场景,具有可行性;有效性则是指需求能够准确地描述用户期望的功能,并且能够指导开发人员实现这些功能。完整性则是指需求覆盖了所有必要的方面,没有遗漏。因此,对于这些方面,都需要进行严格的验证。'
  59. 下列选项中白盒测试方法有( )。

  60. A:条件覆盖 B:路径覆盖 C:控制结构测试 D:等价类划分 E:边界值分析
    AI参考:白盒测试方法包括:路径覆盖、控制结构测试、边界值分析。因此,选项 B、C、E 是正确的。'
  61. JavaBean构件系统具有以下特征( )。

  62. A:使用C++语言开发 B:基于构件 C:平台独立 D:可移植
    AI参考:正确选项为【BC】。JavaBean构件系统具有以下特征:基于构件和平台独立。也就是说,JavaBean是基于Java技术体系的构件技术,能够独立于任何平台运行,并且可以方便地在不同的平台上进行移植。因此,选项B和C是正确的。而选项A和D与JavaBean构件系统的特征无关,因此不正确。'
  63. 下列说法正确的是( )

  64. A:学生是人的泛化。 B:人是学生的一般类。 C:学生是人的特殊类。 D:人继承了学生。
    AI参考:正确选项为:C:学生是人的特殊类。解释:A选项表述错误,因为学生是一种特殊类型的人,而不是泛化的人。B选项表述错误,因为人是学生所属的分类类别,而不是一般类。D选项表述错误,因为人继承了学生这个概念,而不是相反的情况。所以,只有C选项是正确的,学生是人的特殊类。'
  65. 关于封装和信息隐藏的描述正确的是( )。

  66. A:信息隐藏指的是对象在与外界交互中,尽可能隐藏对象的内部细节,仅保留有限的对外接口和外部联系。 B:信息隐藏使对象能够集中而完整地描述并对应一个具体事物。 C:封装能够描述对象之间的层次关系。 D:封装会造成一定程度上的执行效率的损失。

  67. 软件危机的表现有( )。

  68. A:软件成本在计算机系统总成本中所占比例逐年降低 B:软件成本和开发进度的估计不准确 C:软件产品质量往往靠不住 D:软件常常是不可维护
    AI参考:软件危机的表现有:软件成本和开发进度的估计不准确,选项B正确;软件常常是不可维护,选项D正确。因此,答案是:B和D。'
  69. 形式化规格说明的优点有( )。

  70. A:用数学研究、验证 B:消除了二义性 C:易于学习 D:易于表示控制和行为等方面的需求
    AI参考:正确选项是【AD】。形式化规格说明通过用数学方式研究和验证,具有易于分析、精确和可重用等优点,能够准确描述需求和功能。此外,形式化规格说明还易于表示控制和行为等方面的需求,能够清晰地表达系统的结构和行为。因此,选项A和D是正确的。选项B和C虽然也是形式化规格说明的优点,但表述不够准确,因此不是正确选项。'
  71. 制造产品的生产工序可以抽象成对象。( )

  72. A:对 B:错
    AI参考:答案:B:错。制造产品的生产工序不可以抽象成对象,生产工序是一种过程或活动,而不是一个具体的实体。因此,这个说法是错误的。'
  73. 消除软件危机需要认识到,软件是一个工程项目,由组织良好、管理严密、各类人员协同配合、共同完成。( )

  74. A:对 B:错
    AI参考:正确答案是A:对。消除软件危机需要认识到,软件是一个工程项目,需要组织良好、管理严密、各类人员协同配合、共同完成。这意味着需要采用工程化的方法来管理软件开发的各个阶段,包括需求分析、设计、编码、测试、发布和维护等环节。通过各方的协同配合和严密的管理,可以有效地解决软件危机问题。因此,这个说法是正确的。'
  75. 数据流图中一个处理就是一个程序。( )

  76. A:错 B:对

  77. 面向对象软件开发方法的继承和多态促进了软件的可重用性。( )

  78. A:对 B:错
    AI参考:答案:A。面向对象软件开发方法的继承和多态确实可以促进软件的可重用性。在面向对象的方法中,类是对象的模板,它们共享相同的属性和方法。通过继承,一个类可以继承另一个类的属性和方法,从而实现了代码的重用。多态则是通过不同的表现形式来实现相同的功能,也提高了代码的复用性。因此,答案是A,面向对象软件开发方法的继承和多态促进了软件的可重用性。'
  79. 软件设计优化应该力求做到在有效的模块化的前提下使用最少量的模块。( )

  80. A:对 B:错

  81. 软件开发人员多数比较缺乏经验的时候多采用民主制程序员组。( )

  82. A:错 B:对
    AI参考:答案是B:对。民主制程序员组通常是一种有效的软件开发方法,它鼓励团队成员之间的讨论和协作,有助于提高开发人员的经验和技能水平。因此,软件开发人员多数比较缺乏经验的时候多采用民主制程序员组是正确的。'
  83. 用户移动或单机鼠标等都是事件。( )

  84. A:错 B:对
    AI参考:答案是B:对。用户移动或单机鼠标等都是事件,属于计算机程序中的事件处理范畴。在许多编程语言和开发环境中,事件处理是用于响应用户的交互行为,如点击、移动、键盘输入等。因此,用户移动或单机鼠标等都是事件是正确的。'
  85. 需求分析阶段得到的文档是需求规格说明书。( )

  86. A:对 B:错

  87. 1968年软件工程概念在美国的一个国际会议正式提出。( )

  88. A:错 B:对
    AI参考:答案是B:对。根据题目描述,1968年软件工程概念在美国的一个国际会议正式提出,所以答案是B,即正确选项。不需要进一步的分析。'
  89. 在分析和设计的过程中,只可以使用英语对类命名。( )

  90. A:错 B:对
    AI参考:答案是B:对。在分析和设计的过程中,可以使用英语对类命名。在面向对象编程中,类是定义对象的一种方式,通常使用英文单词或短语的组合来命名。这样可以清晰地表达类的含义和功能,也有利于代码的可读性和维护性。当然,也可以使用其他语言进行类命名,但英语是最常见和广泛接受的语言之一。'
  91. 回溯法调试,由症状(symptom)最先出现的地方,沿control flow向回检查。适用于小型程序。( )

  92. A:错 B:对
    AI参考:答案是B:对。回溯法调试是一种用于解决优化问题的算法,它从问题的某一状态开始,通过逐步撤销前一状态的选择,回溯到上一状态,并在当前状态下重新选择,直到找到一个解决方案或确定无解。根据题目描述,回溯法调试从症状最先出现的地方开始,沿control flow向回检查,这种方法适用于小型程序。这是因为对于小型程序,这种调试方法能够更快地找到问题的解决方案。因此,该题正确答案是B。A选项描述的回溯法调试不适用于小型程序,所以是错误的。'
  93. Petri网是描述类的形式化规格说明建模方法。 ( )

  94. A:对 B:错
    AI参考:答案:B:错。Petri网是一种用于描述离散事件系统动态变化的图形化建模方法。它通过使用被称为“库所”(Place)和“变迁”(Transition)的图形元素,以及它们之间的有向边来表示系统的状态和动态变化。因此,Petri网主要用于描述离散事件系统的结构和行为,而不是用于描述类的形式化规格说明建模方法。所以,答案是“错”。'
  95. 在一个设计得很好的系统中,模块的控制域应该在作用域之内。( )

  96. A:对 B:错
    AI参考:答案是B:错。在一个设计得很好的系统中,模块的控制域应该小于作用域。在一个设计良好的系统中,模块应该具有清晰的作用域和适当的控制域,以确保模块的可维护性和可重用性。控制域是指模块能够直接控制的范围,而作用域是指模块能够影响到的范围。如果控制域大于作用域,可能会导致模块之间的耦合度过高,增加系统的复杂性和维护难度。因此,在一个设计良好的系统中,模块的控制域应该小于作用域。'
  97. 进度计划将不随时间的流逝而演化。( )

  98. A:对 B:错
    AI参考:B:错。进度计划是预先制定的,它将随时间的流逝而演化,因为环境和其他因素可能会影响计划的执行。因此,这个判断题是错误的。'
  99. 采用自底向上的渐增测试时需要存根程序 。( )

  100. A:对 B:错
    AI参考:答案是A:对。自底向上的渐增测试是一种测试方法,它从最小的测试用例开始,逐步增加测试用例的规模,直到覆盖所有可能的输入和场景。在采用自底向上的渐增测试时,通常需要编写存根程序来生成测试数据。存根程序可以根据测试需求生成特定的测试数据,以便于测试用例的执行和验证。因此,答案是A,即采用自底向上的渐增测试时需要存根程序。'
  101. 估计开发成本,把开发每个软件功能的成本和实现这个功能需要用的源代码行数联系起来,该方法为代码行技术。( )

  102. A:错 B:对
    AI参考:答案是B:对。代码行技术是一种估算软件开发工作量(即开发成本)的方法,它将开发每个软件功能的成本和实现这个功能需要用的源代码行数联系起来。这种方法通过统计和分析软件项目的历史数据,确定每行代码的平均开发成本,从而估算整个软件开发项目的成本。这种方法可以帮助开发者更准确地估计开发工作量,从而更好地进行项目规划和资源分配。'
  103. 极限编程具有对变化和不确定性的更快速、更敏捷的反应特性。( )

  104. A:错 B:对
    AI参考:答案是B:对。极限编程是一种敏捷软件开发方法,它强调对变化和不确定性的快速反应,采用小步快跑、持续交付的策略,以适应快速变化的需求和市场环境。因此,该说法是正确的。'
  105. 模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚、低耦合度的软件产品。( )

  106. A:对 B:错

  107. 抽象和求精是一对互补的概念,也是人类解决复杂问题时最常用、最有效的方法。( )

  108. A:错 B:对

  109. 响应时间要求在需求分析中属于功能需求。( )

  110. A:错 B:对
    AI参考:答案是B:对。响应时间属于功能需求之一,因为它描述了系统应该如何响应输入和输出。在需求分析中,功能需求包括了对系统或组件的期望行为和性能要求。响应时间是一个重要的性能指标,因此它属于功能需求。'

温馨提示支付 ¥1.20 元后可查看付费内容,请先翻页预览!
点赞(1) dxwkbang
返回
顶部