产品需求文档 (PRD) - 研发项目全生命周期管理系统
| 文档版本 | 修改日期 | 修改人 | 备注 | | :--- | :--- | :--- | :--- | | v1.0 | 2023-10-XX | Owner | MVP 初始版本定义 |
#1. 项目概述
1.1 背景
为了解决当前研发过程不透明、进度难以追踪的问题,我们需要构建一个轻量级但专业的 Web 项目管理工具。
1.2 核心目标 (MVP)
- ▸全链路追踪:支持从“需求设计”到“已完成”的 7 阶段全生命周期管理。
- ▸可视化风险:通过仪表盘直观展示阻塞项目和待上线项目。
- ▸数据沉淀:记录项目的优先级、进度、标签及关键时间节点。
#2. 核心业务流程 (Workflow)
本项目严格遵循以下研发状态流转逻辑:
graph LR
A[需求设计] --> B[待开发]
B --> C[开发中]
C --> D{是否顺利?}
D -- 遇到问题 --> E[阻塞/挂起]
E -- 问题解决 --> C
D -- 开发完成 --> F[测试中]
F --> G[待上线]
G --> H[已完成]
这是一份可以直接复制使用的 Markdown 格式需求文档。不仅结构完整,而且集成了我们之前讨论的所有核心逻辑(7阶段生命周期、仪表盘逻辑等)。
你可以直接将下面的内容复制到你的 Notion、Obsidian 或 README.md 中。
Markdown
# 产品需求文档 (PRD) - 研发项目全生命周期管理系统
| 文档版本 | 修改日期 | 修改人 | 备注 |
| :--- | :--- | :--- | :--- |
| v1.0 | 2023-10-XX | Owner | MVP 初始版本定义 |
## 1. 项目概述
### 1.1 背景
为了解决当前研发过程不透明、进度难以追踪的问题,我们需要构建一个轻量级但专业的 Web 项目管理工具。
### 1.2 核心目标 (MVP)
1. **全链路追踪**:支持从“需求设计”到“已完成”的 7 阶段全生命周期管理。
2. **可视化风险**:通过仪表盘直观展示阻塞项目和待上线项目。
3. **数据沉淀**:记录项目的优先级、进度、标签及关键时间节点。
---
## 2. 核心业务流程 (Workflow)
本项目严格遵循以下研发状态流转逻辑:
```mermaid
graph LR
A[需求设计] --> B[待开发] --> C[开发中]--> D{是否顺利?}
D -- 遇到问题 --> E[阻塞/挂起]
E -- [阻塞/挂起] --> 问题解决 --> C
D -- 开发完成 --> F[测试中]
F --> G[待上线]
G --> H[已完成]
状态定义表:
状态代码,中文名称,含义说明
DESIGN,需求设计,需求文档撰写、原型设计阶段
TODO_DEV,待开发,需求已确认,排队等待开发资源
DEV_ING,开发中,正在进行代码编写
BLOCKED,阻塞/挂起,因外部依赖、Bug 或需求不清导致停滞 (需高亮报警)
TESTING,测试中,开发完成,QA 介入测试
READY,待上线,测试通过,等待发布窗口
DONE,已完成,已上线并验收通过
3. 功能需求详细说明
3.1 首页仪表盘 (Dashboard)
位置:系统首页顶部区域。 功能:提供上帝视角,快速识别异常。
模块名称,数据逻辑,UI 展示要求
进行中任务,统计状态为 DEV_ING + TESTING 的项目总数,蓝色数字卡片
阻塞报警,统计状态为 BLOCKED 的项目总数,红色高亮,配警示图标
待发布,统计状态为 READY 的项目总数,绿色数字卡片
总项目数,所有状态项目的总和,灰色数字卡片
3.2 项目列表 (Project List)
位置:首页主体区域。 功能:所有项目的表格展示与筛选。
字段定义:
标题:项目名称(点击可查看/编辑)。
优先级:
P0 (最高 - 红色徽章)
P1 (高 - 橙色徽章)
P2 (中 - 蓝色徽章)
P3 (低 - 灰色徽章)
状态:显示当前生命周期状态 Tag。
进度:0-100% 进度条显示。
标签:显示前 3 个标签,其余折叠。
更新时间:显示 YYYY-MM-DD HH:mm。
交互要求:
筛选:支持按 状态 (多选) 和 优先级 筛选。
搜索:支持按 标题 模糊搜索。
3.3 新建/编辑项目 (CRUD)
交互形式:使用模态框 (Modal/Dialog),无需跳转页面。
表单字段:
字段,类型,必填,编辑限制,默认值
项目名称,文本框,是,无,-
描述,文本域,否,无 (支持 Markdown 最佳),-
优先级,单选/下拉,是,无,P1
当前状态,下拉菜单,是,需符合流转逻辑,需求设计
进度,滑块 (0-100),是,无,0%
标签,输入框,否,回车生成 Tag,-
负责人,输入框,是,无,当前用户
4. 数据库设计建议 (Schema)
CREATE TABLE projects (
id INT PRIMARY KEY AUTO_INCREMENT,
title VARCHAR(255) NOT NULL COMMENT '项目名称',
description TEXT COMMENT '项目描述',
-- 核心状态枚举
status ENUM('DESIGN', 'TODO_DEV', 'DEV_ING', 'BLOCKED', 'TESTING', 'READY', 'DONE') NOT NULL DEFAULT 'DESIGN',
-- 优先级枚举
priority ENUM('P0', 'P1', 'P2', 'P3') NOT NULL DEFAULT 'P1',
-- 进度 (0-100)
progress TINYINT UNSIGNED NOT NULL DEFAULT 0,
-- 标签 (MVP 暂存 JSON 字符串)
tags JSON COMMENT 'e.g. ["Backend", "Urgent"]',
owner VARCHAR(100) NOT NULL COMMENT '负责人',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
5. UI/UX 设计规范
1.颜色语义:
🔴 Red (#F5222D): 用于 P0 优先级、BLOCKED 状态、删除操作。
🟢 Green (#52C41A): 用于 DONE 状态、READY 状态。
🔵 Blue (#1890FF): 用于 DEV_ING、TESTING 状态、提交按钮。
🟡 Orange (#FA8C16): 用于 P1 优先级、TODO_DEV。
2.交互反馈:
操作成功需有 Toast 提示(如“创建成功”)。
删除项目需有二次确认弹窗。
数据加载时需显示骨架屏 (Skeleton) 或 Loading 转圈。
