第四章 过程定义和过程裁剪
- 过程的定义
- 过程描述是项目可以用来遵照执行某些任务的一系列步骤,以及执行这些步骤的指南。
- 一般的软件开发过程包括哪些子过程
- 需求规格
- 概要设计
- 详细设计
- 编码
- 单元测试
- 集成测试
- 系统测试
- 验收测试
- 安装
- 维护
- 软件开发每个子过程的参加者、五要素
- 概要设计
- 参加者:设计团队、评审团队、客户
- 输入准则:需求规格文档经过评审并授权
- 输入:需求规格文档
- 输出准则:概要设计文档经过评审和授权
- 输出:概要设计文档、项目标准、概要设计评审记录
- 度量:概要设计工作量、概要设计缺陷、评审工作量、返工工作量
- 详细设计
- 参加者:设计团队
- 输入准则:概要设计文档经过评审和授权
- 输入:概要设计文档
- 输出准则:详细设计文档和单元测试计划已经经过评审和授权
- 输出:详细设计文档和单元测试计划
- 度量:详细设计工作量、设计缺陷、单元测试缺陷、程序框架缺陷、评审和返工工作量
- 编码和单元测试
- 参加者:项目组成员 、项目经理
- 输入准则:详细设计文档经过评审并授权
- 输入:详细设计文档、项目标准、程序规格、单元测试计划、程序框架、可利用开发的实用程序工具及文档
- 输出准则:成功执行所有单元测试计划中的测试用例
- 输出:源代码、可执行代码、测试数据
- 度量:编码和单元测试的工作量、代码评审缺陷、独立单元测试缺陷、评审和返工工作量
- 集成测试
- 参加者:集成测试团队
- 输入准则:概要设计文档经过评审和授权
- 输入:概要设计文档和程序
- 输出准则:成功执行所有集成测试计划中的测试用例
- 输出:源代码、可执行代码、测试数据
- 度量:工作量、缺陷
- 系统测试
- 参加者:系统测试团队
- 输入准则:需求规格和概要设计文档经过评审和授权
- 输入:需求规格和概要设计文档
- 输出准则:成功执行所有系统测试计划中的测试用例
- 输出:源代码、可执行代码、测试数据
- 度量:工作量、缺陷
- 验收测试和安装
- 参加者:安装团队、客户、项目经理
- 输入准则:成功的完成系统测试
- 输入:测试后的软件和验收测试文档
- 输出准则:客户签署验收单
- 输出:安装后的软件
- 度量:工作量和缺陷
- 系统维护
- 参加者:安装团队、维护团队
- 输入准则:在运行的软件
- 输入:安装后的软件、用户文档和软件故障报告
- 输出准则:合同中指定的维护支持阶段终止及客户签署整个项目
- 输出:客户签署的文档、已经安装的软件
- 度量:工作量、缺陷
- 概要设计
- (了解)软件开发每个子过程的步骤
- 概要设计
- 1.定义标准,包括编码标准、文档标准和用户接口标准等等
- 2.确定操作环境
- 3.进行功能设计:
- ①确定功能
- ②确定商务事件和功能之间的交叉参考
- ③确定每个功能的处理细节
- ④生成功能体系结构并归档
- 4.物理数据库设计
- ①确定数据模型
- ②将实体和关系转化为表和记录类型
- ③执行规模估计:对数据进行规模的估计
- ④执行受控非标准化
- ⑤确定索引
- 详细设计
- 1.将功能分成小的组件
- 2.如果需要,开发数据移植程序
- 3.设计并开发代码框架
- 4.开发例程和工具
- 5.程序设计
- ①确定程序调用的方法
- ②确定输入和输出
- ③设计程序逻辑
- ④确定数据结构
- ⑤确定使用的通用例程
- ⑥写出程序规格并进行评审
- 6.计划单元测试
- ①确定单元测试环境
- ②确定单元测试用例
- ③确定测试数据
- ④写出单元测试计划并进行评审
- 编码和单元测试
- 1.生成测试数据库
- 2.生成代码
- ①对程序进行编码
- ②代码评审
- ③记录和修正评审的缺陷
- 3.进行自我单元测试
- ①进行自我单元测试
- ②进行附加测试
- ③更正缺陷
- 4.进行独立单元测试
- ①准备独立单元测试
- ②进行独立单元测试
- ③记录所有缺陷
- ④关闭独立单元测试
- 集成测试
- 1.确定环境需求(硬件、软件、通信、使用模式)
- 2.决定集成规程
- ①确定将要集成的关键模块
- ②确定集成顺序
- ③确定需要测试的接口
- 3.开发集成测试计划
- ①确定测试用例和执行用例的规程
- ②确定测试数据
- ③确定期望输出
- ④重排测试用例
- 系统测试
- 1.确定所需测试环境
- 2.决定系统测试规程
- ①确定测试特性
- a.确定用户接口
- b.确定硬件接口
- c.确定软件接口
- d.确定通信接口
- e.确定系统执行的主要业务过程
- ②确定不需要测试的重要特性以及不测试的原因
- ③确定关键测试
- ①确定测试特性
- 3.开发测试用例
- ①确定每个测试用例及执行它的规程
- ②确定输入、输出数据需求
- ③确定预期结果
- 验收测试与安装
- 1.执行验收
- ①为验收制定计划
- a.从客户那里获得验收环境的细节
- b.准备安装计划
- c.准备软件发布文档
- ②参加验收
- a.在验收环境下安装软件
- b.进行实况运行
- c.协助客户进行验收测试
- d.修正验收缺陷
- e.更新文档,以反映所有的变更
- f.获得用户的验收签字
- ①为验收制定计划
- 2.执行安装
- ①在产品环境下安装软件
- ②搭建产品环境
- ③载入软件和数据
- ④进行实况运行
- ⑤获得客户对每个安装的签署
- ⑥修改安装缺陷
- ⑦执行用户的培训
- 1.执行验收
- 概要设计
- 过程裁剪的定义和分类
- 定义
- 过程裁剪是调整组织标准过程的过程,以此来获得用于项目的特定业务或技术需要的过程。
- 分类
- 概要裁剪
- 详细裁剪
- 定义
- 概要裁剪可依据的项目特征
- (1)团队和项目经理的经验和熟练程度
- (2)团队人数最多时的人数
- (3)需求透明度
- (4)项目持续时间
- (5)应用的关键程度
- 详细裁剪可选择的裁减属性
- 裁剪属性:执行、文档化、评审和详细级别。_____是项目可以用来遵照执行某些任务的一系列步骤,以及执行这些步骤的指南。
- 过程描述(或过程定义)
- 在进行过程定义时,每个开发子过程包含的基本要素是什么?
- 输入、输入准则、输出、输出准则、度量、主要步骤定义。
- 概要设计这个子过程的参加者都有谁?
- 答案:设计团队、评审团队、客户
- 详细设计子过程的输出和输出准则是什么?
- 输出准则:详细设计文档和单元测试计划已经经过评审和授权
- 输出:详细设计文档和单元测试计划
- 一般子过程的度量主要包括哪两类数据?
- 答案:工作量、缺陷。
- 什么是过程裁剪,过程裁剪遵照的指南包括哪两类?
- 答案:过程裁剪是调整组织标准过程的过程,以此来获得用于项目的特定业务或技术需要的过程。裁剪指南包括概要裁剪指南和详细裁剪指南。
- 什么是概要级裁剪?在裁剪过程中可能会应用哪些项目特征?
- 概要级剪裁是根据项目特征,应用总体指南标准对标准过程进行剪裁,可能会用到如下特征。
- (1)团队和项目经理的经验和熟练程度
- (2)团队人数最多时的人数
- (3)需求透明度
- (4)项目持续时间
- (5)应用的关键程度
- 详细裁剪指南的裁减属性有哪些?
- 答案:详细裁剪指南的裁剪属性包括执行、文档化、评审和详细级别。
- 如果开发团队规模较小,技术水平总体较高,开发项目的重要程度较低,那么在评审活动上可能实施的概要级裁剪是什么?为什么这么处理?
- 答案:可能不会对所有文档进行组评审,仅对重要影响的文档开展组评审,并且可以减少评审专家的数量。因为团队技术水平较高,并且开发项目的重要性较低,所以可以裁剪组评审的数量和规模。