关于 srs-documentation
SRS Documentation Skill 为编写正式软件需求规格说明书提供指南,面向需要按 IEEE 830 组织需求的产品和工程团队。内容涵盖章节结构、需求编写规则、优先级、格式与验证清单。
主要功能
- 01IEEE 830 文档章节指南
- 02功能与非功能需求编写规则
- 03需求编号和优先级约定
- 04表格、编号与交叉引用格式
- 05文档验证清单
适用场景
- 01起草软件需求规格说明书
- 02统一团队的需求编号和表述
- 03检查需求是否可验证且可追踪
- 04按 IEEE 830 结构审阅文档
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ doubleslashse/ claude-marketplace --skill srs-documentation安装后在 Claude Code 中输入/srs-documentation确认已加载。
附带文件checklists.mdtemplate.md
详细介绍
SRS 文档技能
概述
此技能为编写正式的软件需求规格说明书(SRS)提供指导,文档结构遵循 IEEE 830 标准。
IEEE 830 标准结构
1. 引言
1.1 目的
- 说明 SRS 文档的目的
- 确定预期读者
- 说明覆盖范围
1.2 范围
- 通过名称标识软件产品
- 说明软件将执行的功能
- 描述应用的收益、目标和目的
- 与相关的更高层级规格保持一致
1.3 定义、首字母缩略词和缩写
- 定义文档中使用的所有术语
- 包括技术术语、首字母缩略词和缩写
- 如果内容较多,请参阅术语表或附录
1.4 参考文献
- 列出所有引用的文档
- 包括文档标题、编号、日期和来源
- 标明版本或修订信息
1.5 概述
- 描述文档的组织方式
- 说明其余章节的结构
2. 总体描述
2.1 产品视角
- 系统上下文:产品如何融入更大的生态系统
- 系统接口:与其他系统的连接
- 用户界面:UI 考虑因素和限制
- 硬件接口:所需的硬件连接
- 软件接口:所需的软件连接
- 通信接口:网络和协议要求
- 内存限制:内存和存储限制
- 运行模式:正常和特殊运行模式
- 现场适配要求:安装和部署需求
2.2 产品功能
- 主要功能摘要
- 高层级功能概述
- 按用户或业务功能组织
2.3 用户特征
- 预期用户的总体特征
- 教育程度、经验和技术专长
- 无障碍考虑因素
2.4 限制
- 法规要求
- 硬件限制
- 接口要求
- 标准合规性
- 安全考虑因素
2.5 假设和依赖关系
- 假定为真的因素
- 对其他系统或组件的依赖关系
- 发生变化时会影响需求的条件
3. 具体需求
3.1 外部接口要求
- 用户界面:详细的 UI 规格
- 硬件接口:硬件交互详情
- 软件接口:API 和集成详情
- 通信接口:协议规格
3.2 功能需求
按以下方式组织:
- 功能或特性
- 用户类别
- 业务对象
- 运行模式
- 激励/响应序列
每项需求应包括:
- 唯一标识符(FR-XXX)
- 功能描述
- 输入和输出
- 处理逻辑
- 错误处理
3.3 性能需求
- 响应时间要求
- 吞吐量要求
- 容量要求
- 资源利用率限制
3.4 设计限制
- 标准合规性
- 硬件限制
- 软件限制
- 架构要求
3.5 软件系统属性
- 可靠性:平均故障间隔时间、恢复能力
- 可用性:正常运行时间要求
- 安全性:访问控制、数据保护
- 可维护性:修改的便利性、文档
- 可移植性:平台要求
3.6 其他要求
- 数据库要求
- 运行要求
- 国际化要求
4. 附录
A. 术语表
已定义术语的完整列表
B. 分析模型
- 数据流图
- 实体关系图
- 状态图
- 用例图
C. 需求可追溯性矩阵
- 将需求映射到业务目标
- 将需求映射到测试用例
- 展示需求依赖关系
写作指南
需求特征
每项需求都应:
| 特征 | 描述 | 示例 |
|---|---|---|
| 必要 | 系统成功所必需 | 并非锦上添花 |
| 明确 | 只有一种解释 | 明确定义“用户” |
| 完整 | 包含所有信息 | 包含错误场景 |
| 一致 | 不存在冲突 | 与其他需求一致 |
| 可验证 | 可以测试 | 标准可衡量 |
| 可追溯 | 来源明确 | 关联业务需求 |
| 可修改 | 易于更改 | 唯一 ID,不冗余 |
| 已确定优先级 | 按重要性排序 | MoSCoW 分类 |
需求编写风格
应做:
- 使用“shall”表示强制性需求
- 使用“should”表示期望实现的需求
- 使用“may”表示可选需求
- 明确具体,并以量化方式描述
- 使用一致的术语
- 使用主动语态
- 每条陈述只包含一项需求
不应做:
- 使用含糊的词语(快速、用户友好、灵活)
- 尽可能避免否定式需求
- 将多项需求合并在一起
- 包含设计或实现细节
- 使用不一致的术语
示例
良好需求:
FR-001: The system shall display search results within 3 seconds
of the user submitting a search query.
不良需求:
The system should be fast and display results quickly.
需求 ID 约定
功能需求
FR-XXX: Core functional requirements
FR-AUTH-XXX: Authentication related
FR-RPT-XXX: Reporting related
FR-INT-XXX: Integration related
非功能需求
NFR-PERF-XXX: Performance
NFR-SEC-XXX: Security
NFR-REL-XXX: Reliability
NFR-USA-XXX: Usability
NFR-MAINT-XXX: Maintainability
约束
CON-XXX: General constraints
CON-REG-XXX: Regulatory constraints
CON-TECH-XXX: Technical constraints
优先级
MoSCoW 方法
| 优先级 | 代码 | 描述 |
|---|---|---|
| 必须有 | M | 成功的关键 |
| 应该有 | S | 重要但并非关键 |
| 可以有 | C | 锦上添花 |
| 不会有 | W | 不在此版本范围内 |
基于风险的优先级
| 优先级 | 级别 | 描述 |
|---|---|---|
| 严重 | P1 | 缺少此项,系统无法运行 |
| 高 | P2 | 主要功能受到影响 |
| 中 | P3 | 次要功能受到影响 |
| 低 | P4 | 增强功能或便利性 |
文档格式
章节编号
1. Introduction
1.1 Purpose
1.2 Scope
2. Overall Description
2.1 Product Perspective
需求表格
| ID | Description | Priority | Status | Source |
|----|-------------|----------|--------|--------|
| FR-001 | User login | M | Approved | Stakeholder Meeting 2024-01-15 |
交叉引用
- 在文档中使用超链接
- 按 ID 引用:“参见 FR-001”
- 包含可追溯性信息:“实现 BR-003”
验证清单
完成 SRS 前,请确认:
- 已完成 IEEE 830 模板的所有章节
- 所有需求都有唯一标识符
- 所有需求均可验证
- 不存在相互冲突的需求
- 词汇表中已定义所有术语
- 可追溯性矩阵已完成
- 已获得利益相关者的签字确认
- 已包含版本控制和变更历史
请参阅 template.md 获取完整的 SRS 模板。 请参阅 checklists.md 获取验证清单。
评论
支持 Markdown