doc/笔记/软件需求-ruanjainxuqiu.md

157 lines
3.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: 软件需求
date: 2023-04-12 20:07:02.2
updated: 2023-04-12 20:07:02.2
url: /archives/ruanjainxuqiu
categories:
- 软件测试
tags:
- 测试基础
---
## 需求工程
### 需求开发
- 需求获取
从用户那里获取原始需求,即用户的真实想法
- 需求分析
将用户的需求具体化或者条目化
- 需求定义
将分析出来的需求写成需求规格完成需求规格说明书SRS
- 需求验证
需求人员通过一些原型工具,把确定好的需求实现成一个界面,演示给用户看,进行确认验证
### 需求管理
- 需求分配
分配给多个需求人员协同一起进行需求分析
- 需求评审
保证项目组所有人对需求的理解是一致的,保证 需求从设计角度和测试角度都是可以实施的
- 需求基线
评审后的需求规格作为标准文档供项目组成员使 用,保证大家拿到的需求规格是一致的、完整的
- 需求跟踪
保证设计和测试是按照需求规格来的
- 需求变更
项目过程中对需求规格进行修改的过程
## 需求规格说明书内容
- 产品环境介绍
- 软件在什么环境下使用
- 搭建什么配置的测试环境
- 用户特征
- 软件给谁用
- 测试人员需根据这些用户特征,站用户的角度而 去考虑如何测试
- 假设和依赖关系:开发语言、开发环境
- 用户接口
- 功能需求:软件的基本功能
- 性能需求
- 技术限制
- 软件接口:与外部软件的接口(软件模型中的互操作性)
- 标准符合性:软件质量模型中的功能性依从性
- 需求分级
- 螺旋模型可以根据需求分级来确定哪些功能先做
- 测试用例的重要级别和需求分级相关
## 同行评审
来源于IBM
**目的**:用于检查研发工作成果是否有问题
**常见的工作成果物**
- 管理类
- 项目计划
- 软件开发计划
- 软件测试计划
- 技术类
- 需求规格
- 概要设计、详细设计、代码
- 测试方案、测试用例、测试报告
- 程序、用户手册、帮助文档
**分类**
- 正规检视:仅针对基础性的技术类工作成果物
- 技术评审会议
- 管理类工作成果物
- 测试的工作成果物
- 走查(邮件审核):代码、用户手册、帮助
## 需求评审
**角色和职责**
被评审工作成果物相关的人
项目经理、设计人员、测试人员、用户
**评审流程**
1. 需求提交SRS
2. 项目经理确定评审专家并提供SRS、评审表单、评审checklist
(可选)需求较复杂或不好理解可召开介绍会议
3. 评审专家评审并提供评审反馈
4. 项目经理汇总评审反馈给需求
5. 组织评审会议,需求逐一确认每条评审意见
(可选)针对评审意见可召开第三小时会议
6. 需求人员确认评审意见后修改需求规格
7. 评审专家确认修改是否正确
8. 最后需求规格正式发布
## 需求跟踪
开发:需求项-模块-函数-代码
测试:需求项-测试项-测试用例-缺陷
**作用:**
避免有些需求被遗漏
需求变更时能很快确定哪些地方需要同步修改
## 需求变更
**变更原因**
- 用户需求变化
- 缺陷导致
- 需求跟踪引起
**变更流程**
1. 需求发起变更请求
2. CCB审核是否变更基于成本和进度影响
3. 如果能变更开发给出变更方案1、技术能否实现2、时间进度影响
4. 评审变更方案
5. 需求人员修改需求
6. 重新进行需求评审流程
7. 评审通过,需求跟踪