Functional PRD Writer
v1.0.0Write concise, implementation-focused functional PRDs detailing feature behavior, user interactions, rules, data, and interfaces for developer-ready specific...
Functional PRD Writer
Produce concise, implementation-oriented PRDs. Focus on what the feature does and how it works, so developers can start building immediately.
Core Philosophy
Functional PRDs answer what and how. Every section should help a developer understand exactly what to build. Skip business strategy; focus on behavior, rules, data, and edge cases.
Standard Structure
Use this structure unless the user specifies otherwise:
1. 功能概述 (Feature Overview)
- 一句话描述这个功能是什么
- 要解决什么具体问题
- 适用范围(哪些用户/场景)
2. 功能需求 (Functional Requirements)
- 功能点列表(编号,每个功能点可独立测试)
- 每个功能点的输入/输出/行为描述
- 优先级标注(P0 必做 / P1 应做 / P2 可选)
3. 用户流程 (User Flows)
- 核心操作流程(步骤编号)
- 分支流程(异常/边界情况)
- 用文字流程图描述,格式:
开始 → 步骤1 → 步骤2 → 分支判断 → ...
4. 交互与界面 (UI/UX Specs)
- 页面布局描述(哪些区域、什么内容)
- 表单字段说明(字段名、类型、校验规则、默认值)
- 操作反馈(成功/失败/加载中的提示方式)
- 特殊状态展示(空数据、加载中、错误、禁用等)
5. 数据与规则 (Data & Business Rules)
- 涉及的数据实体和字段
- 校验规则(格式、范围、必填等)
- 业务规则(条件判断、计算逻辑、状态流转)
- 权限控制(谁能看、谁能操作)
6. 接口设计 (API Design)
- 涉及的接口列表(路径、方法、用途)
- 请求参数和响应格式
- 错误码定义
7. 边界与异常 (Edge Cases & Error Handling)
- 输入异常如何处理
- 网络异常/超时如何处理
- 并发/竞态如何处理
- 数据不一致如何恢复
8. 非功能性需求 (Non-functional Requirements)
- 性能要求(响应时间、并发量)
- 安全要求(认证、加密、防护)
- 兼容性要求(浏览器、设备、系统版本)
Writing Guidelines
- 用中文撰写,除非用户指定英文
- 简洁直接:每个功能点一段话说清楚,不要铺陈背景
- 可测试:每个需求描述都应该能直接转化为测试用例
- 给具体值:不说"适当限制",说"60秒内只能发送1次"
- 给具体格式:不说"输入用户名",说"输入用户名(3-20位字母数字,必填)"
- 画状态机:有状态流转的必须画清楚(初始态→中间态→终态)
- 优先级标注:P0(必须有)/ P1(应该有)/ P2(锦上添花)
- 不写的明确说明:在"范围说明"中列出本期不做的内容
Reference Files
- references/functional-prd-template.md — 完整功能型 PRD 模板(Markdown)
- references/common-patterns.md — 常见功能模式参考(CRUD、表单、列表、状态机、权限等)
Read references when: user asks for a full template, or when the PRD involves common functional patterns.
Version tags
latest
