实用软件工程复习课重点

实用软件工程复习课总结

第一章 概述

1.1 软件危机的表现

  • 软件产品的质量低劣

  • 软件生产率低

1.2 软件工程的研究目标

  • 易于维护
  • 低的开发成本
  • 高性能

1.3 软件工程的目的和意义

  • 目的

    以较低的成本开发出高质量的软件

  • 意义

    应用科学的方法和工程化的规范管理来指导软件开发

1.4 软件工程主要包含的技术

  • 软件开发技术
    1. 软件开发方法、技术
    2. 软件开发工具及环境
  • 软件管理技术
    1. 软件管理技术
    2. 软件规范(国际规范)

1.5 软件的概念

  • 定义: 包括程序(应用程序和系统程序)、文档(用户文档和开发者文档)
  • 按照实现功能划分
    1. 系统软件
    2. 支撑软件
    3. 应用软件

1.6 软件的生命周期(熟练掌握)

image-20220517132352864

1.7 软件工程三要素

方法、工具和过程

1.8 软件过程模型(开发模型)

  • 瀑布模型(熟练掌握)

    image-20220517155744858

    优点:阶段层层递进,好管理

    **缺点:**不适用需求不明确的项目

  • 增量模型(非整体开发模型)

    优点:比较灵活

    缺点:容易盲目乐观和无限循环

  • 原型模型(循环模型)

    优点:利于维护,效率高,适用于前沿开发

    缺点:可能忽略一些功能

  • 螺旋模型(瀑布模型和增量模型的结合,并加入了风险分析)

  • 喷泉模型(面向对象)

  • 智能模型

1.9 结构化开发方法

  • 结构化开发方法的组成
    1. 结构化程序设计方法,SP法
    2. 结构化设计方法,SD法
    3. 结构化分析方法,SA法
  • 面向对象开发方法的组成
    1. 面向对象的分析,OOA
    2. 面向对象的设计,OOD
    3. 面向对象的程序设计,OOP

1.10 以人为核心的开发方法

  • 敏捷软件开发

    以人为核心

一. 单选题

1. (单选题) 包含风险分析的软件工程模型是

  • A. 螺旋模型
  • B. 瀑布模型
  • C. 增量模型
  • D. 喷泉模型

正确答案: A

2. (单选题) 软件工程三要素是

  • A. 技术、方法和工具
  • B. 方法、工具和过程
  • C. 方法、对象和类
  • D. 过程、模型、方法

正确答案: B

3. (单选题) 软件工程的主要目标是

  • A. 软件需求
  • B. 软件设计
  • C. 风险分析
  • D. 软件实现

正确答案: C

二. 多选题

4. (多选题) 下列属于面向对象开发方法的是

  • A. Booch
  • B. UML
  • C. Coad
  • D. OMT

正确答案: ABCD

5. (多选题) 软件工程学的目的和意义是

  • A. 应用科学的方法和工程化的规范管理来指导软件开发
  • B. 克服软件危机
  • C. 作好软件开发的培训工作
  • D. 以较低的成本开发出高质量的软件

正确答案: AD

6. (多选题) 软件的主要特性是

  • A. 无形
  • B. 高成本
  • C. 包括程序和文档
  • D. 可独立构成计算机系统
  • 正确答案: ABC

7. (多选题) 软件危机的主要表现是

  • A. 软件成本太高
  • B. 软件产品的质量低劣
  • C. 软件开发人员明显不足
  • D. 软件生产率低下

正确答案: BD

8. (多选题) 软件开发方法的主要工作模型有

  • A. 螺旋模型
  • B. 循环模型
  • C. 瀑布模型
  • D. 专家模型

正确答案: ABC

9. (多选题)软件工程的目标有

  • A. 易于维护
  • B. 低的开发成本
  • C. 高性能
  • D. 短的开发期

正确答案: ABC

三. 判断题

1. (判断题)结构化方法的工作模型是使用螺旋模型进行开发。

  • A. 对
  • B. 错

正确答案:

2. (判断题)软件就是程序,编写软件就是编写程序。

  • A. 对
  • B. 错

正确答案:

3. (判断题)原型化开发方法包括生成原型和实现原型两个步骤。

  • A. 对
  • B. 错

正确答案:

4. (判断题)瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。

  • A. 对
  • B. 错

正确答案:

5. (判断题)面向对象的开发方法包括面向对象的分析、面向对象的设计和面向对象的程序设计

  • A. 对
  • B. 错

正确答案:

6. (判断题)结构化方法和OO方法都是一种面向过程的软件开发方法。

  • A. 对
  • B. 错

正确答案:

7. (判断题)软件工具的作用是为了延长软件产品的寿命。

  • A. 对
  • B. 错

正确答案:

8. (判断题)软件工程过程应该以软件设计为中心,关键是编写程序。

  • A. 对
  • B. 错

正确答案:

9. (判断题)软件危机的主要表现是软件的需求量迅速增加,软件价格上升。

  • A. 对
  • B. 错

正确答案:

第二章 软件需求工程

2.1 软件需求的困难

  • 应用领域的广泛性
  • 非功能需求建模技术的缺乏
  • 沟通上的困难

2.2 软件需求的分类

image-20220517164232884

2.3 需求工程过程

image-20220517164456734

2.4 获取需求困难的主要原因

  • 缺乏领域知识
  • 存在默认的知识
  • 存在多个知识源
  • 客户可能的偏见

2.5 获取需求的方法

  • 面谈法
  • 问卷调查法
  • 需求专题讨论会(最有力、最有效
  • 原型化方法
  • 面向用例的方法

2.6 常用的需求分析方法

2.6.1 结构化分析方法
  • 结构化分析方法,SA法(DFD图)

    识别实体---->处理方法---->分解和抽象**

  • SA法的基本思想

    分解和抽象

  • SA法的工具

    1. 数据流图(DFD图)
    2. 数据词典
    3. 描述和加工逻辑的结构化语言、判定表及判定树
  • 数据流图的图符

    image-20220517165959905

  • DFD图的四项基本原则

    1. 数据守恒与数据封闭原则
    2. 加工分解的原则
    3. 子图与父图的平衡
    4. 合理适用文件
  • 数据词典四个条目

    1. 数据流条目
    2. 文件条目
    3. 数据项条目
    4. 加工条目
2.6.2 面向对象分析方法
  • Use case图

    识别执行者----> 识别用例---->识别用例和用例之间的关系

    image-20220517170416510

2.7 需求有效性验证

  • 有效性检查
  • 一致性检查
  • 完备性检查
  • 可检验性检查

2.8 需求管理

  • 需求管理最重要的是需求变更管理

一. 判断题

1. (判断题) SA法是面向数据流,建立在数据封闭原则上的需求分析方法。

  • A. 对
  • B. 错

正确答案:

2. (判断题)在面向对象的需求分析方法中,建立动态模型是最主要的任务。

  • A. 对
  • B. 错

正确答案:

3. (判断题)需求管理主要是对需求变化的管理,即如何有效控制和适应需求的变化。

  • A. 对
  • B. 错

正确答案:

4. (判断题)加工小说明是对系统流程图中的加工进行说明。

  • A. 对
  • B. 错

正确答案:

5. (判断题)在进行了可行性分析后,需求分析就只需要解决目标系统的设计

  • A. 对
  • B. 错

正确答案:

6. (判断题)需求分析的主要方法有SD法、OOA法及HIPO法等。

  • A. 对
  • B. 错

正确答案:

7. (判断题)用于需求分析的软件工具,应该能够保证需求的正确性,即验证需求的一致性、完整性、现实性和有效性。

  • A. 对
  • B. 错

正确答案:

8. (判断题)信息建模方法是从数据的角度来建立信息模型的,最常用的描述信息模型的方法是E-R图。

  • A. 对
  • B. 错

正确答案:

9. (判断题)判定表的优点是容易转换为计算机实现,缺点是不能够描述组合条件。

  • A. 对
  • B. 错

正确答案:

10. (判断题)分层的DFD图可以用于可行性分析阶段,描述系统的物理结构。

  • A. 对
  • B. 错

正确答案:

一. 单选题

1. (单选题)数据字典是数据流图中所有元素的定义的集合,一般由 ( ) 四类条目组成

  • A. 数据说明条目、控制流条目、加工条目、数据存储条目
  • B. 数据流条目、数据项条目、文件条目、加工条目
  • C. 数据源条目、数据流条目、数据处理条目、数据文件条目
  • D. 数据流条目、数据文件条目、数据池条目、加工条目

正确答案: B

2. (单选题) SA法的主要描述手段有

  • A. 系统流程图和模块图
  • B. DFD图、数据词典、加工说明
  • C. 软件结构图、加工说明
  • D. 功能结构图、加工说明

正确答案: B

二. 多选题

3. (多选题)画分层DFD图的基本原则有

  • A. 数据守恒原则
  • B. 分解的可靠性原则
  • C. 子、父图平衡的原则
  • D. 数据流封闭的原则

正确答案: ACD

4. (多选题)需求分析的主要方法有

  • A. 形式化分析方法
  • B. PAD图描述
  • C. 结构化分析(SA)方法
  • D. OOA法

正确答案: CD

5. (多选题)需求分析的主要目的是

  • A. 系统开发的具体方案
  • B. 进一步确定用户的需求
  • C. 解决系统是“做什么”的问题
  • D. 解决系统是“如何做”的问题

正确答案: BC

6. (多选题)画DFD图的主要目的是

  • A. 作为需求分析阶段用户与开发者之间交流信息的工具
  • B. 对系统的数据结构进行描述
  • C. 对目标系统的层次结构进行描述
  • D. 作为分析和设计的工具

正确答案: AD

第三章 软件设计

3.1 仓库模型

  • 优点

    1. 数据由一个子系统产生,并且被其他子系统共享
    2. 各子系统不需要通过复杂的机制来传递共享数据
    3. 一个子系统不需要关系其他子系统如何产生数据
    4. 所有子系统都拥有一致的基于中央数据仓库的数据视图
  • 缺点

    1. 各子系统必须有一致的数据视图
    2. 数据翻译代价很高,且有时不可能完成
    3. 中央数据仓库必须与子系统数据库具有相同的关于备份、安全、访问控制和恢复策略
    4. 集中式控制使数据和子系统的分布变得非常困难

3.2 层次模型

  • (ISO/OSI)网络七层模型/(TCP/IP四层模型)

  • 定义

    将系统化为若干层次,下层只向直接上层提供服务

  • 应用

    非常适合增量的软件开发

3.3 分布式模型(CS/BS)

  • 优点

    1. 资源共享
    2. 开放性高
    3. 容错能力强
    4. 透明性高
  • 缺点

    1. 系统复杂
    2. 网络安全难以保证
    3. 管理困难
    4. 具有不可预知性

3.4 云计算模型

  • 三种服务模式
    1. 软件即服务(Saas)
    2. 平台即服务(PaaS)
    3. 基础架构即服务(laas)
  • 部署模型
    1. 公有云
    2. 私有云
    3. 混合云

3.5 模块

  • 目的

    分而治之,以降低问题的复杂度(并不是模块划分越细越好)

  • 模块划分的标准

    低耦合(数据耦合)、高内聚(功能型内聚)

3.6 面向对象设计

  • 常用的描述分析方法(需知道,不需掌握画图方法)
    1. 流程图-程序流程图(非结构化)
    2. N-S图(盒图)(结构化流程图)
    3. PAD图-问题分析图
    4. PDL语言-过程设计语言
    5. 判定表、判定树
  • 用户界面设计原则(理解记忆,了解)
    1. 争取保持一致性
    2. 满足普遍可用性的需求
    3. 提供信息反馈
    4. 设计对话框已产生结束信息
    5. 预防报错
    6. 允许动作回退
    7. 支持内部控制点
    8. 减轻短期记忆负担

第四章 面向对象的设计(以对象为中心)

4.1 UML概述

统一建模语言

4.2 用例模型

  • Use case 模型(考点)
    1. 确定执行者(Actor): 人/硬件/系统
    2. 确定用例
    3. 确定用例和用例之间的关系:<>/<>

4.3 静态模型

  • 类图(考察识别类)

  • 类图中的几种关系

    • 关联
      1. 常规关联
      2. 多元关联
      3. 有序关联
      4. 受限关联
      5. 或关联
      6. 关联类
    • 其他关联
  • 聚集

    1. 共享聚集
    2. 组合聚集
  • 泛化

    1. 重叠泛化(水陆两栖)
    2. 完全泛化(男人or女人)
  • 包图

    子系统

  • 包图的两种关系

    1. 依赖关系
    2. 泛化关系

4.4 动态模型

  • 状态图(考点)
    • 状态(状态名、状态变量、活动
      1. 初态
      2. 终态
      3. 中间状态
      4. 复合状态
  • 活动图
  • 顺序图
  • 合作图
  • UML中的消息
    1. 简单消息
    2. 同步消息
    3. 异步消息
  • UML中的事件
    1. 条件为真
    2. 收到另一对象的信号
    3. 收到操作调用
    4. 时间表达式

4.5 静态建模

  • UML的静态建模机制包括
    1. 用例图
    2. 类图
    3. 对象图
    4. 包图
    5. 构件图
    6. 配置图
  • 动态建模机制
    1. 状态图
    2. 活动图
    3. 顺序图
    4. 合作图

一. 单选题

1. (单选题)下列不是模型元素的是()

  • A. 关联
  • B. 聚合
  • C. 依赖
  • D. 笔记

答案: D

二. 多选题

2. (多选题)消息的类型有

  • A. 同步
  • B. 异步
  • C. 简单
  • D. 复杂

答案: ABC

3. (多选题)下列各种图可用于动态建模的有

  • A. 状态图
  • B. 类图
  • C. 顺序图
  • D. 活动图

答案: ACD

4. (多选题)下列选项中属于面向对象开发方法的有( )

  • A. Booch
  • B. CAD
  • C. Coda
  • D. OMT

答案: ACD

5. (多选题)UML中包括的事件有

  • A. 条件为真
  • B. 收到另一对象的信号
  • C. 收到操作调用
  • D. 时间表达式

答案:ABCD

6. (多选题)下列属于状态的组成部分的有

  • A. 名称
  • B. 活动
  • C. 条件
  • D. 事件

答案: AB

7. (多选题)属性的可见性有

  • A. 公有的
  • B. 私有的
  • C. 私有保护的
  • D. 保护的

答案: ABD

8. (多选题)应用于通用化约束的方式有

  • A. 完整
  • B. 不相交
  • C. 不完整
  • D. 覆盖

答案: ABCD

一. 判断题

1. (判断题)同步消息和异步消息的主要区别是:同步消息的发送对象在消息发送后,不必等待消息处理,可立即继续执行,而异步消息则发送对象必须等待接收对象完成消息处理后,才能继续执行。

  • A. 对
  • B. 错

答案: 错

2. (判断题)顺序图描述对象之间的交互关系,重点描述对象间消息传递的时间顺序。

  • A. 对
  • B. 错

答案: 对

3. (判断题)类图用来表示系统中类和类与类之间的关系,它是对系统动态结构的描述。

  • A. 对
  • B. 错

答案: 错

4. (判断题)继承性是父类和子类之间共享数据结构和消息的机制,这是类之间的一种关系

  • A. 对
  • B. 错

答案: 错

5. (判断题)面向对象的分析是用面向对象的方法对目标系统的问题空间进行理解、分析和反映。通过对象层次结构的组织确定解空间中应存在的对象和对象层次结构。

  • A. 对
  • B. 错

答案: 对

6. (判断题)UML建模语言是由视图、图、模型元素和通用机制构成的层次关系来描述的。

  • A. 对
  • B. 错

答案: 对

7. (判断题)面向对象的的方法是以类作为最基本的元素,它是分析问题解决问题的核心。

  • A. 对
  • B. 错

答案: 错

8. (判断题)泳道是一种分组机制,它描述了状态图中对象所执行的活动

  • A. 对
  • B. 错

答案: 错

9. (判断题)活动图显示动作及其结果。着重描述操作实现中所完成的工作以及用例实例或类中的活动。

  • A. 对
  • B. 错

答案: 错

10. (判断题)类是指具有相同或相似性质对象的抽象,对象是抽象的类,类的具体化就是对象。

  • A. 对
  • B. 错

答案: 对

第五章

5.1 程序设计语言的分类

  • 低级语言

    机器语言、汇编语言

  • 高级语言

    • 按语义分类:命令式、函数式、逻辑式
    • 按数据类型价差的时机分类:静态、动态
    • 按语言对类型的约束分类:强类型、弱类型
    • 按思维方式分类:面向过程、面向对象、混合型

5.2 程序设计语言选择准则(能说出2~3点)

  1. 项目的应用领域
  2. 算法和计算复杂性
  3. 软件的执行环境
  4. 性能因素
  5. 数据结构的复杂性
  6. 软件开发人员的知识水平以及心理因素

5.3 软件复用(软件复用不是代码复用)

  • 定义:将已有的软件成分用于构造新的软件系统,以达到提高软件系统开发质量与效率,降低开发成本的目的。

  • 实施方式:系统复用,渐进复用

  • 软件复用的标准:

  1. 功能上的独立性与完整性
  2. 较高的通用性
  3. 较高的灵活性
  4. 严格的质量保障
  5. 较高的标准化程度

第六章 软件测试

6.1 软件测试的基本原则

  • 尽量不由程序设计者进行测试

  • 关键是测试用例的选择

  • 充分注意测试中的集群现象

6.2 软件测试的方法

6.2.1 静态分析方法
  • 桌前检查
  • 代码会审
  • 步行检查
    • 调用图
    • 数据流分析图
6.2.2 动态测试方法
  • 白盒法 (逻辑覆盖法)(可能考大题):分析内部逻辑结构

image-20220517190403374

  • 黑盒法:分析程序功能

  • 等价分类法

    1. 划分“等价类”
    2. 选择测试用例
      • 一个测试用例尽可能覆盖多个有效等价类
      • 一个测试用例只能覆盖一个无效等价类
  • 边值分析法

    image-20220517190948488

  • 错误推测法

  • 因果图法

6.3 软件测试策略

  • 测试步骤
    • 单元测试(模块测试)
      • 驱动模块(模拟主程序)
      • 桩模块(模拟子程序)
    • 集成测试
    • 确认测试
    • 系统测试

6.4 α测试与β测试的区别

  • α测试: ** 在开发机构的监督下,由个别用户在确认测试阶段后期对软件进行测试,目的是评价软件的FLURPS**(功能、局域化、可使用性、可靠性、性能和支持),注重界面和特色

  • β测试: 由支持软件预发行的客户对FLURPS进行测试,主要目的是测试系统的可支持性

6.5 面向对象测试的特点和策略

  • 面向对象测试的特点

    1. 强调需求或设计的测试,通常两种方式:
      • 在没有代码的情况下进行测试
      • 在有代码的情况进行测试
    2. 在传统测试方法的基础上,根据面向对象的主要特性,需要改变测试策略和方法:
      • 封装性对数据的隐蔽,减少了对数据非法操作,可简化该类测试。继承性提高了代码复用性,但错误也会以同样方式被复用。多态性提供强大的处理能力,但也增加测试的复杂性。
  • 面向对象测试的策略

    1. 模型测试
    2. 类测试
    3. 交互测试
    4. 系统(子系统)测试
    5. 验收和发布测试

一. 单选题

1. (单选题)渐增式是将模块一个一个地连入系统,每连入一个模块

  • A. 只需要对新连入的模块进行测试
  • B. 都不需要再进行测试
  • C. 要对新子系统进行测试
  • D. 都要进行回归测试

答案: C

2. (单选题)等价分类法的关键是

  • A. 确定等价类的边界条件
  • B. 按照用例来确定等价类
  • C. 划分等价类
  • D. 确定系统中相同和不同的部分

答案: C

二. 多选题

3. (多选题)静态测试是以人工的、非形式化的方法对程序进行分析和测试。常用的静态测试方法有

  • A. 运行程序并分析运行结果
  • B. 桌前检查与代码会审
  • C. 数据流分析图
  • D. 调用图

答案: BCD

4. (多选题)整体测试又称为组装测试,其主要内容包括

  • A. 对整体的性能进行测试
  • B. 用白盒法设计测试用例进行测试
  • C. 确定组装策略和次序
  • D. 对组装过程进行测试

答案: CD

5. (多选题)软件测试的基本原则是

  • A. 关键是注重选择高效的测试用例
  • B. 选择尽可能多的测试用例
  • C. 尽量不由程序设计者进行测试
  • D. 充分注意测试中的群集现象

答案:ACD

6. (多选题)软件测试的主要特点是

  • A. 软件测试的开销大
  • B. 软件测试要依靠工具
  • C. 软件不能进行“穷举”测试
  • D. 软件测试要依靠人工

答案: AC

7. (多选题)集成过程的原则是

  • A. 按照模块的大小集成
  • B. 尽早测试包含I/O的模块
  • C. 尽早测试关键模块
  • D. 按照“输入—处理—输出”的次序进行集成

答案: BC

三. 判断题

8. (判断题)在等价分类法中,为了提高测试效率,一个测试用例可以覆盖多个无效等价类。

  • A. 对
  • B. 错

答案: 错

9. (判断题)白盒法是一种静态测试方法,主要用于模块测试。

  • A. 对
  • B. 错

答案: 错

10. (判断题)面向对象的测试不能采用黑盒法,因为它是一种全新的开发模式。

  • A. 对
  • B. 错

答案:错

11. (判断题)单元测试通常应该先进行人工走查,再以白盒法为主,辅以黑盒法进行动态测试。

  • A. 对
  • B. 错

答案: 对

12. (判断题)发现错误多的模块,残留在模块中的错误也多。

  • A. 对
  • B. 错

答案: 对

第七章 软件维护

7.1 维护类型

  • 完善性维护(最重要)

    扩充原有系统的功能,提高原有系统的性能,满足用户的实际需要

  • 纠错性维护

    对在测试阶段未能发现的,在软件投入使用后才逐暴露出来的错误的测试、诊断、定位、纠错以及验证、修改的回归测试过程

  • 适应性维护

    使运行的软件能适应运行环境的变动而修改软件要的过程

  • 预防性维护

    为了进一步改善软件的可靠性和易维护性,或者为将来的维护奠定更好的基础而对软件进行修改

7.2 维护的副作用

  • 修改代码的副作用
  • 修改数据的副作用
  • 修改文档的副作用

7.3 软件可维护性的衡量标准

  • 可理解性
  • 可靠性
  • 可测试性
  • 可修改性
  • 可移植性
  • 效率
  • 可使用性

7.4 逆向工程

  • 核心: 抽取

  • 内容: 处理抽取、界面抽取、数据抽取

一. 多选题

1. (多选题)进行系统修改时可能会产生维护的副作用,它们可能有

  • A. 修改数据的副作用
  • B. 修改错误后,又引入了新的错误
  • C. 修改代码的副作用
  • D. 文档资料的副作用

答案: ACD

2. (多选题)确定可维护性的因素主要有

  • A. 文档
  • B. 可理解性
  • C. 可修改性
  • D. 可测试性

答案: BCD

3. (多选题)软件维护的类型有

  • A. 完善性维护
  • B. 纠错性维护
  • C. 适应性维护
  • D. 预防性维护

答案: ABCD

二. 判断题

4. (判断题)软件维护总工作量可用公式表示为:M = P + K*EXP(D-C)。

  • A. 对
  • B. 错

答案: 错

5. (判断题)用面向对象方法开发的软件系统,可维护性好。

  • A. 对
  • B. 错

答案: 对

6. (判断题) 软件维护只需要校正性维护、适应性维护和完善性维护

  • A. 对
  • B. 错

答案: 错

7. (判断题)改进程序的执行效率不会引入错误。

  • A. 对
  • B. 错

答案: 错

第八章 软件项目管理

8.1 描述进度的工具

  • 进度表
  • 甘特图
  • 时标网状图(有任务依赖关系)
  • PERT技术(有任务依赖关系)
  • CPM方法(有任务依赖关系)

8.2 COCOMO模型

8.3 人力资源团队成员类型

  • 事业型
  • 自我实现型
  • 交际型

8.4 人员配备原则

  • 重质量
  • 重培训
  • 阶梯提升

8.5 项目风险类别

  • 项目风险
  • 技术风险
  • 商业风险

8.6 影响软件质量的因素

  • 产品修改(可理解性、可修改性、灵活性、可测试性)
  • 产品转移(可移植性、可重用性、互运行性)
  • 产品运行(正确性、完整性、健壮性、可用性、效率、风险性)

8.7 软件质量度量方法

  • 精确度量

  • 全面度量

  • 简易度量

8.8 变更控制

CRF

CCB

一. 单选题

1. (单选题)在软件管理资源要求中,最为重要的、起决定性的资源是以下哪种资源

  • A. 硬件资源
  • B. 软件资源
  • C. 人力资源
  • D. 软件复用性及软件部件库

答案: C

2. (单选题)以下对软件工程管理的任务和目标最准确的描述是

  • A. 明确软件开发项目的工作范围、可能遇到的风险、需要的资源
  • B. 明确软件开发中要实现的任务和需要经历的里程碑
  • C. 明确所需的工作量以及进度安排
  • D. 以上所有答案

答案: D

3. (单选题)影响软件开发成本估算的因素不包括以下哪项

  • A. 软件人员业务水平
  • B. 软件开发规模及复杂度
  • C. 开发所需时间
  • D. 开发所需硬件资源

答案: D

4. (单选题)中间的COCOMO模型考虑了()种影响软件工作量的因素

  • A. 10
  • B. 15
  • C. 20
  • D. 25

答案: B

5. (单选题)软件质量度量的方法包括

  • A. 精确度量
  • B. 全面度量
  • C. 简易度量
  • D. 以上所有答案

答案: D

6. (单选题)对一个软件工程来说,占总工作量的百分比最大的工作是

  • A. 需求分析
  • B. 软件设计
  • C. 编码工作
  • D. 测试和调试工作

答案: D

二. 多选题

7. (多选题)表达计划安排的主要工具有

  • A. PERT图
  • B. 甘特图
  • C. DFD图
  • D. 进度表

答案: ABD

三. 判断题

8. (判断题)软件工程管理是对软件项目的开发管理,是对整个软件生存期的所有活动进行管理。

  • A. 对
  • B. 错

答案: 对

9. (判断题)软件开发配备人员的基本原则是:重质量、重数量、重培训。

  • A. 对
  • B. 错

答案: 错

第九章 CMM概述

9.1 CMM

  • 定义

    软件能力成熟度模型

  • CMM主要用于

    1. 软件过程评估SPA
    2. 软件过程改进SPI
    3. 软件能力评价SCE

9.2 软件过程的成熟度等级

  • 初始级
  • 可重复级
  • 已定义级
  • 已管理级
  • 优化级

性)

8.7 软件质量度量方法

  • 精确度量

  • 全面度量

  • 简易度量

8.8 变更控制

CRF

CCB

一. 单选题

1. (单选题)在软件管理资源要求中,最为重要的、起决定性的资源是以下哪种资源

  • A. 硬件资源
  • B. 软件资源
  • C. 人力资源
  • D. 软件复用性及软件部件库

答案: C

2. (单选题)以下对软件工程管理的任务和目标最准确的描述是

  • A. 明确软件开发项目的工作范围、可能遇到的风险、需要的资源
  • B. 明确软件开发中要实现的任务和需要经历的里程碑
  • C. 明确所需的工作量以及进度安排
  • D. 以上所有答案

答案: D

3. (单选题)影响软件开发成本估算的因素不包括以下哪项

  • A. 软件人员业务水平
  • B. 软件开发规模及复杂度
  • C. 开发所需时间
  • D. 开发所需硬件资源

答案: D

4. (单选题)中间的COCOMO模型考虑了()种影响软件工作量的因素

  • A. 10
  • B. 15
  • C. 20
  • D. 25

答案: B

5. (单选题)软件质量度量的方法包括

  • A. 精确度量
  • B. 全面度量
  • C. 简易度量
  • D. 以上所有答案

答案: D

6. (单选题)对一个软件工程来说,占总工作量的百分比最大的工作是

  • A. 需求分析
  • B. 软件设计
  • C. 编码工作
  • D. 测试和调试工作

答案: D

二. 多选题

7. (多选题)表达计划安排的主要工具有

  • A. PERT图
  • B. 甘特图
  • C. DFD图
  • D. 进度表

答案: ABD

三. 判断题

8. (判断题)软件工程管理是对软件项目的开发管理,是对整个软件生存期的所有活动进行管理。

  • A. 对
  • B. 错

答案: 对

9. (判断题)软件开发配备人员的基本原则是:重质量、重数量、重培训。

  • A. 对
  • B. 错

答案: 错

第九章 CMM概述

9.1 CMM

  • 定义

    软件能力成熟度模型

  • CMM主要用于

    1. 软件过程评估SPA
    2. 软件过程改进SPI
    3. 软件能力评价SCE

9.2 软件过程的成熟度等级

  • 初始级
  • 可重复级
  • 已定义级
  • 已管理级
  • 优化级
  • 8
    点赞
  • 87
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值