软件工程易错题

一、填空题

  1. 常见的需求获取方式有 快速原型法 、情景分析技术等
  2. 螺旋模型由四部分组成,包括制定计划、 风险分析 、实施计划和客户评估
  3. 程序的注释分为序言性注释和 功能性注释 两种
  4. 软件项目的风险管理一般包括风险识别、风险分析、 风险处理 和风险监控4个过程。
  5. CMM的全称为 软件能力成熟度模型
  6. 软件配置管理包括 版本控制配置管理 两个方面
  7. 指出 PDL 是哪种语言 过程设计语言
  8. 对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的输入边界,输出边界和 变换中心
  9. 模块 作用域定义为受该模块内一个判断影响的所有模块集合

二、选择题

  1. 软件需求分析阶段建立原型的主要目的是( C )
    A.确定系统的功能和性能要求
    B.确定系统的运行要求
    C.确定系统是否满足用户需求
    D.确定系统是否满足开发人员需求

  2. 以下关于程序流程图说法不正确的是( D )。
    A. 独立于任何一种程序设计语言 B. 比较直观、清晰,易于掌握
    C. 不支持逐步求精 D. 容易表示程序的层次结构

  3. 编制一个好的程序首先要确保它的正确性和可靠性,除此之外,通常更注重源程序的( B )。
    A.易使用性、易维护性和效率
    B. 易使用性、易维护性和易移植性
    C. 易使用性、易维护性和易修改性
    D. 易理解性、安全性和效率

  4. 软件详细设计工具中,采用自左向右的二维图形结构描述算法的是( B )。
    A. N-S B. PAD C. DD D. DFD

  5. 现有一个计算类型的程序,它的输入只有一个 Y,其范围是-50Y50。现从输入的角度考虑设计了一组测试用例:-100,100,0。设计这组测试用例的方法是 。
    A、条件覆盖法 B、边缘值分析法 C、错误推测法 D 、等价划分法

    解:因为Y的取值范围是连续的,因此边缘值分析法和条件覆盖法可能会产生大量的测试用例,从而增加测试成本。错误推测法在这种情况下也不适用,因为输入只有一个Y,不涉及到其他变量的影响

  6. 排错一般是在测试发现错误后进行,其中找到错误位置占排错总工作量的____。 A.95% B.5%C.50%D.20%

  7. 数据流图中,当数据流向或流自文件时,____。
    A.数据流要命名,文件不必命名
    B.数据流不必命名,有文件名就足够了
    C.数据流和文件均要命名,因为流出和流进数据流是不同的
    D.数据流和文件均不要命名,通过加工可自然反映出

  8. 在软件开发中,有利于发挥集体智慧的一种做法是____。
    A. 设计评审B.模块化 C.主程序员制 D。进度控制

  9. 软件危机出现于____,为了解决软件危机,人们提出了用____的原理来设计软件,这是软件工程诞生的基础。
    A.50 年代末 B.60 年代初 C.60 年代末 D.70 年代初
    A.运筹学 B.工程学 C.软件学 D.软件学 E.数字

  10. 在软件工程中,高质量的文档标准是完整性、一致性和____。
    A.统一性 B.安全性 C.无二义性 D.组合性

  11. 如果模块中所有成分引用共同的数据,该模块内的联系类型是____。
    A.顺序内聚 B.功能内聚 C.通信内聚 D.过程内聚

  12. 程序编写(实现)阶段完成的文档有____。
    A.详细设计说明书 B.详细设计说明书、用户手册
    C.模块开发宗卷、操作手册 D.用户手册、操作手册

  13. 划分软件生存周期的阶段时所应遵循的基本原则是_____。
    A、各阶段的任务尽可能相关性
    B、各阶段的任务尽可能相对独立
    C、各阶段的任务在时间上连续
    D、各阶段的任务在时间上相对独立

  14. 系统开发人员使用系统流程图或其他工具描述系统,估计每种方案的成本和效益的工作是在______阶段进行
    的。
    A、需求分析 B、总体设计 C、详细设计 D、编码阶段

  15. 某应用系统为今后的发展将单用户系统改为多用户系统,并形成新的应用软件,由此进行的维护工作称为
    ______。
    A、改正性维护和预防性维护 B、适应性维护和完善性维护
    C、完善性维护和改正性维护 D、预防性维护和适应性维护

  16. 在自顶向下设计分层数据流图时,设计顶层数据流图主要分析_____。
    A、源、汇、 (终)点和输入、输出数据流
    B、源、汇(终)点和处理功能
    C、数据存储和输入、输出数据流
    D、处理功能和输入、输出数据流

  17. 变换型数据流图通常是_____形态。
    A、 线性 B、层次 C、网状 D、无规则

  18. 结构化设计采用模块化方法的主要出发点是______。
    A、 增加内聚性 B、减少耦合度 C、提高有效性 D、降低复杂度

  19. 结构化流程图(FC)中的箭头是用于表示_____。
    A、 控制流 B、数据流 C、数据/控制 D、调用关系

  20. 用于概要设计所采用的描述手段是______。
    A、 DFD B、SC 图(系统结构图) C、框图 D、数据结构图

三、判断题

  1. ( T )可行性分析是大大简化的软件分析和设计过程。
  2. ( T )迭代式开发是软件开发的一种有效方法,通常可以采用用例驱动和功能驱动两种
  3. ( T )在进行面向对象设计时要注意对类进行良好的封装,通常我们是将经常发生变动的部分封装起来。
  4. ( F ) 在将这种混合型数据流图转换成软件结构图时,通常以事务分析为主。
  5. ( F )软件测试应该在编码完成后再计划和实施。

三、名词解释

  1. 软件工程
    应用计算机科学理论和技术以及工程管理的原则和方法,按预算和进度,实现满足用户要求的软件产品的定义、开发、发布和维护的工程或进行研究的学科
  2. 软件配置管理
    用于整个软件工程过程,其任务是标识和确定系统中的配置项,在系统整个生存期内控制这些配置项的发布和变更,记录并报告配置的状态和变更要求,验证配置项的完整性和正确性
  3. 配置项
    简单地说就是受scm控制和管理的工作产品单元,在配置管理过程中作为单个实体对待,是配置管理的对象
  4. 改正维护
    改正在系统开发阶段已经发生的而系统测试阶段尚未发生的错误

四、简答题

  1. 快速原型法的基本思想是什么?适用于哪些项目的开发?
    思想:
    快速构建原型,增强开发者与用户的交流
    用户不断反馈及早发现问题,纠正错误
    减少技术应用风险,降低开发费用,缩短开发时间
    适用于:需求模糊的小型软件开发,用户体验要求比较高的项目

  2. 在软件编码阶段强调编码规范的目的是什么?请任举两条基本的编码规范
    目的:
    减少代码的错误,减少读程序的时间,从而提高代码的开发效率和可维护性
    表示符命名规范:变量名、函数命名要有实际意义
    缩进和格式规范:写代码要有缩进,便于阅读

    注释规范:注释应当准确易懂,防止注释二义性

  3. 软件开发过程中的各种文档起到什么作用?如果文档不完整或不规范会带来什么不良后果?
    作用:
    给开发人员传递软件开发过程中的各种信息
    帮助团队管理人员对项目进行有效的组织和管理
    后果:
    开发人员失去开发的基础,管理人员失去管理的依据

  4. 假设你负责某种软件的研发,由于市场竞争激烈,公司规定了严格的完成期限并且已对外公布。你打算采用哪种软件开发模型或方法?为什么?
    使用增量模型开发软件时可以并行完成开发工作,因此能够加快开发进度。
    第一,旧版本相当于一个原型,通过收集用户对旧版本的反映,较容易确定对新版本的需求,没必要再专门建立一个原型系统来分析用户的需求;
    第二,改公司的软件工程师对字处理软件很熟悉,有开发字处理软件的丰富经验,具有采用增量模型开发新版字处理软件所需要的技术水平
    第三,该软件受到广大用户的喜爱,今后很可能还要开发更新的版本,因此,应该把该软件的体系结构设计成开放式的,以利于今后的改进和扩充。

你可能感兴趣的:(软件工程,软件工程,测试用例)