Dev-Flow
otherlaunched

Dev-Flow

为了解决当前研发过程不透明、进度难以追踪的问题,我们需要构建一个轻量级但专业的 Web 项目管理工具。

作者
「云析」
28 浏览2025年12月上线
变现方式完全免费

技术栈

React
Supabase
Vercel
TypeScript
Next.js

产品需求文档 (PRD) - 研发项目全生命周期管理系统

| 文档版本 | 修改日期 | 修改人 | 备注 | | :--- | :--- | :--- | :--- | | v1.0 | 2023-10-XX | Owner | MVP 初始版本定义 |

#1. 项目概述

1.1 背景

为了解决当前研发过程不透明、进度难以追踪的问题,我们需要构建一个轻量级但专业的 Web 项目管理工具。

1.2 核心目标 (MVP)

  1. 全链路追踪:支持从“需求设计”到“已完成”的 7 阶段全生命周期管理。
  2. 可视化风险:通过仪表盘直观展示阻塞项目和待上线项目。
  3. 数据沉淀:记录项目的优先级、进度、标签及关键时间节点。

#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 转圈。