Files
pikasTech-unidesk/project-management/templates/iso-iec-ieee-29148-requirements-spec-template.md
T
2026-07-13 07:15:24 +00:00

147 lines
5.5 KiB
Markdown
Raw 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.
# ISO/IEC/IEEE 29148 需求规格模板
## 来源和定位
本模板用于 UniDesk `project-management/` 下的 L0、L1、L2 需求规格文档。
模板基线包括:
- ISO/IEC/IEEE 29148:2018 的需求工程分层思路;
- HWLAB 项目管理约束的轻量裁剪。
参考来源:
- ISO/IEC/IEEE 29148:2018<https://www.iso.org/standard/72089.html>
- IEEE 830-1998 已被替代的官方说明:<https://standards.ieee.org/ieee/830/1222/>
- ReqView 对 29148 模板族的说明:<https://www.reqview.com/doc/iso-iec-ieee-29148-templates/>
- ReqView 的 29148 软件需求规格示例:<https://www.reqview.com/doc/iso-iec-ieee-29148-srs-example/>
使用原则:
- 需求规格类型如下:
- 业务需求规格用于使命和商业目标;
- 利益相关方需求规格用于用户和运营方诉求;
- 系统需求规格用于跨硬件、软件、人员和流程的系统级要求;
- 软件需求规格用于软件能力要求。
- L0、L1、L2 规格共用同一骨架,但粒度不同:
- L0 写使命、边界、预期终态和全局需求;
- L1 写内部模块职责和验收边界;
- L2 写具体课题的目标交付物和验证契约。
- SPEC 全文只写预期终态:
- 目标能力;
- 稳定边界;
- 目标架构、数据流和接口;
- 原子需求;
- 验收契约和稳定过程控制。
- SPEC 不写执行态:
- 当前实现状态或能力基线;
- 已完成、未完成、当前阻塞或阶段差距;
- 源码路径、commit、PR、作业、日志、截图、样片或一次性证据。
- 执行态进入阶段报告、任务报告、偏离记录或 GitHub issue,并从这些载体引用 SPEC。
- 每条原子需求使用独立小节:
- 信息表使用横向表格且只放编号、短名和主责模块等短元数据;
- 主责模块填写下一层主责单元,L0 写 L1,L1 写 L2L2 写 L3
- 不重复当前规格本级;
- 关联模块、需求定义、职责划分、意图、范围和边界写在正文中。
- 不要为了凑全局需求条目自动添加次要需求:
- 证据收集;
- 硬编码诊断或建议;
- 任务状态收集;
- 结果包或结果收集。
- 除非用户明确授意,上述次要内容不进入 OA 规格。
## 文档骨架
```markdown
# <编号> <短名> 需求规格
## 修改历史
| 版本 | 更新日期 | 变更说明 |
| --- | --- | --- |
| v0.1 | <年-月-日> | 创建预期终态需求规格;如来自历史议题,只在这里写迁移来源 <组织>/<仓库>#<编号>。 |
修改历史只记录规格语义变更,不记录实现进度、阶段基线或一次性证据。
## 正文
## <编号> <短名> 需求规格
## 1. 文档控制
| 字段 | 内容 |
| --- | --- |
| 编号 | <项目编号> |
| 短名 | <短名> |
| 层级 | L0、L1 或 L2 |
| 规格状态 | 已生效、已废弃或未生效;只表示规格生命周期 |
| 需求规格模板 | [ISO/IEC/IEEE 29148 需求规格模板](<相对路径>) |
| 上级规格 | <相对路径链接;L0 可留空> |
| 规格治理索引 | <相对路径链接> |
本文采用 ISO/IEC/IEEE 29148 需求规格模板的项目裁剪版。
正文边界如下:
- 只定义预期终态、稳定使命、范围、术语、系统边界、内部分工、原子需求和验收契约;
- 不记录实现进度、阶段基线或执行证据;
- 编号、层级职责、回写、偏离判定和交叉引用治理由规格治理文档承载。
## 2. 目的和范围
### 2.1 目的
<用一段话说明该规格服务的项目目标、用户目标或系统目标。>
### 2.2 范围内
- <范围项>
### 2.3 范围外
- <非目标或转交范围>
## 3. 术语表
| 术语 | 定义 |
| --- | --- |
| <术语> | <稳定定义> |
## 4. 系统边界和接口
本规格把目标对象作为一个完整系统看待;本章只描述外部输入、外部输出和系统边界,不描述内部治理流程。
| 边界项 | 内容 |
| --- | --- |
| 外部使用者 | <用户、管理员或自动化任务> |
| 外部输入 | <用户请求、业务对象、资源约束、身份凭据、配置项或文件> |
| 受控资源 | <系统管理的资源、数据、运行环境或外部设备> |
| 外部输出 | <用户可获得的状态、结果、产物、通知、报告或记录> |
| 用户接口 | <网页端、命令行、应用接口、开发工具包等> |
| 系统边界 | <系统负责什么;明确不替代用户、管理员或运行环境负责什么> |
## 5. 内部分工与规格索引
| 编号 | 模块或课题 | 规格文档 | 主责边界 | 上游依赖 | 下游支撑 |
| --- | --- | --- | --- | --- | --- |
| <项目编号> | <短名> | [<规格名>](<相对路径>) | <主责> | <依赖> | <支撑对象> |
## 6. 原子需求
### 6.1 <需求编号> <需求短名>
| 编号 | 短名 | 主责模块 | 关联模块 |
| --- | --- | --- | --- |
| <需求编号> | <需求短名> | <下一层项目编号 短名,必要时使用相对路径链接> | <关联模块,使用相对路径链接> |
<正文第一段写完整需求定义。正文后续段落写主责职责、关联模块职责、意图、范围和边界。正文不放执行流水和长证据。>
## 7. 过程控制
本章只定义长期稳定的实现引用、验收、配置、安全、偏离和回写规则。
- 当前状态、阶段验证、内测、灰度和用户反馈进入阶段报告或执行 issue;
- 问卷、参与者资料、原始反馈、长证据和执行流水不进入 SPEC;
- 执行载体应引用本 SPEC 编号和适用的规格版本。
```