prd.md 11 KB

mini-demo 页面迁移项目 产品需求文档 (PRD)

版本信息

版本 日期 描述 作者
1.0 2025-10-15 基于项目简报更新为出行服务项目 John (PM)

1. 项目介绍和分析

1.1 项目概览

项目名称: mini-demo 页面迁移项目

产品概念: 将现有的 mini-demo(纯前端出行小程序演示)的16个功能页面迁移到 mini 项目中,并基于 src 目录构建完整的后端和管理后台系统。

当前项目状态:

  • 🚗 mini-demo: 微信原生小程序,16个出行服务页面,纯前端演示
  • 🛠️ mini: Taro + React 小程序项目,基础框架已搭建
  • 🔧 src: Hono + TypeORM 后端API和管理后台,用户管理基础已实现

1.2 问题陈述

当前痛点:

  • mini-demo 仅有前端界面,所有数据都是模拟的
  • 无数据持久化,用户信息、订单数据无法保存
  • 缺乏真实业务逻辑:订单处理、支付、司机匹配等
  • 无管理后台,无法进行运营管理

问题影响:

  • 无法作为真实产品上线运营
  • 用户体验不完整,无法完成完整的出行服务流程
  • 技术债务积累,难以迭代和维护

1.3 解决方案概述

核心方法: 将 mini-demo 的16个功能页面迁移到 mini 项目(Taro + React 技术栈),并基于 src 目录构建完整的后端 API 和管理后台系统。

关键差异化:

  • 技术现代化:从微信原生迁移到 Taro + React
  • 完整业务闭环:构建真实的后端服务
  • 管理后台:提供运营管理界面
  • 数据持久化:基于 PostgreSQL 实现数据存储

1.4 目标和背景

业务目标

  • 🚀 产品转化: 将演示原型转化为功能完整的出行服务平台
  • 📈 用户增长: 3个月内达到1000名注册用户
  • 💰 收入目标: 6个月内实现月订单收入10,000元
  • 🔄 技术升级: 统一技术架构,提升可维护性和扩展性

技术背景

项目已具备优秀的技术基础:

  • mini: Taro + React + TypeScript + TailwindCSS 多端框架
  • src: Hono + TypeORM + PostgreSQL 现代化后端架构
  • 完整的用户认证和权限管理系统
  • 生产就绪的部署配置和环境

2. 需求定义

2.1 功能需求

基于项目简报和实际项目分析,定义以下出行服务功能需求:

FR1: 用户认证和会员系统

  • 支持微信小程序登录和注册
  • 用户信息持久化存储到PostgreSQL数据库
  • 积分管理系统:积分获取、使用、历史记录
  • 优惠券管理:发放、使用、过期处理

FR2: 出行服务核心功能

  • 路线查询和班次列表展示
  • 订单管理:下单、支付、状态跟踪、取消
  • 乘客管理:常用乘客信息维护
  • 支付集成:微信支付完整流程

FR3: 前端页面迁移和优化

  • 将mini-demo的16个页面迁移到Taro + React技术栈
  • 响应式设计,支持多端发布(微信小程序、H5)
  • 统一的UI组件库和设计规范
  • 优化用户体验和交互流程

FR4: 后端业务逻辑实现

  • 订单处理流程:下单、支付、司机匹配、完成
  • 积分系统业务逻辑:积分规则、兑换机制
  • 实时位置跟踪和状态更新
  • 数据统计和分析功能

FR5: 管理后台系统

  • 订单管理:订单监控、状态管理、异常处理
  • 用户管理:用户信息、积分管理、行为分析
  • 运营管理:活动配置、优惠券发放、数据统计
  • 司机管理:司机信息、接单管理、收益统计

详细 rationale (决策依据):

这些需求基于对mini-demo功能分析和现有技术架构的评估:

  • 业务连续性: 保持mini-demo的核心出行服务功能
  • 技术现代化: 利用现有Taro + React + Hono技术栈优势
  • 数据完整性: 基于现有用户管理基础扩展出行业务数据模型
  • 运营需求: 为商业化运营提供完整的管理后台支持

关键假设:

  • 目标用户是出行服务需求人群和司机/运营人员
  • 主要使用场景是城市内拼车、商务车、包车服务
  • 微信小程序是主要发布平台
  • 需要支持完整的出行服务业务流程

需要验证的领域:

  • 现有用户数据如何迁移到新系统?
  • mini-demo中模拟数据的转换策略?
  • 司机端功能是否需要在MVP中实现?
  • 积分系统的具体规则和兑换机制?

2.2 非功能性需求

NFR1: 性能和响应速度

  • 页面加载时间 < 2秒,API响应时间 < 500ms
  • 支持实时位置更新和状态同步
  • 数据库查询优化,支持高并发访问
  • 前端资源优化,减少首屏加载时间

NFR2: 可靠性和稳定性

  • 订单处理流程必须保证数据一致性
  • 支付系统需要99.9%的可用性
  • 支持事务处理和异常恢复
  • 系统监控和告警机制

NFR3: 安全性和数据保护

  • 用户数据加密存储和传输
  • 支付信息安全保护
  • 防止SQL注入和XSS攻击
  • 用户隐私数据合规处理

NFR4: 可扩展性和维护性

  • 模块化架构,支持功能扩展
  • 清晰的代码结构和文档
  • 自动化测试覆盖核心业务逻辑
  • 支持灰度发布和回滚

NFR5: 用户体验和易用性

  • 直观的操作流程和界面设计
  • 错误提示和引导信息清晰
  • 支持离线操作和网络异常处理
  • 多端体验一致性

详细 rationale (决策依据):

这些非功能性需求基于出行服务业务特点:

  • 性能关键: 出行服务需要快速响应和实时更新
  • 可靠性优先: 订单和支付系统必须稳定可靠
  • 安全合规: 用户数据和支付信息需要严格保护
  • 扩展需求: 业务增长需要系统能够水平扩展

技术约束:

  • 必须兼容微信小程序平台限制
  • 支持PostgreSQL关系型数据库
  • 基于现有Taro + Hono技术栈
  • 多八多云端开发容器环境部署

3.2 集成策略

数据库集成策略:

  • 基于现有TypeORM实体扩展出行业务数据模型
  • 支持订单、乘客、积分等复杂业务关系
  • 数据库迁移和版本控制
  • 连接池管理和性能优化

API集成策略:

  • RESTful API设计,支持微信小程序调用
  • Hono RPC确保前后端类型安全
  • 统一的错误处理和响应格式
  • 第三方服务集成:微信支付、地图服务

前端集成策略:

  • Taro多端框架,支持微信小程序和H5
  • 统一的UI组件库和设计规范
  • 状态管理和数据流优化
  • 微信小程序API集成

5. Epic和故事结构

5.1 Epic方法

Epic结构决策: 按业务领域划分Epic - 针对出行服务不同业务模块分别开发

决策依据:

  • 项目需要从演示原型转化为完整产品
  • 不同业务模块有明确的依赖关系和优先级
  • 独立Epic便于并行开发和专门团队负责
  • 每个Epic对应一个完整的业务功能模块

5.2 Epic详情

Epic 001: 前端页面迁移和基础框架 Epic目标: 将mini-demo的16个页面迁移到Taro + React技术栈,建立统一的前端架构和组件库。 成功标准: 所有页面功能完整迁移,UI组件库建立,多端发布支持正常

Epic 002: 用户和会员系统 Epic目标: 基于现有用户管理基础,扩展积分、优惠券等会员功能,支持微信小程序登录。 成功标准: 用户注册登录流程完整,积分系统正常运行,优惠券功能可用

Epic 003: 出行服务核心功能 Epic目标: 实现路线查询、订单管理、乘客管理、支付集成等核心出行服务功能。 成功标准: 用户能够完成从查询到支付的完整出行流程,订单数据正确存储

Epic 004: 管理后台系统 Epic目标: 构建运营管理后台,支持订单管理、用户管理、数据统计等运营功能。 成功标准: 管理后台功能完整,运营人员能够正常进行日常管理操作

5.3 各Epic用户故事概览

Epic 001 - 前端页面迁移:

  • 首页和路线查询页面迁移
  • 订单相关页面迁移(下单、支付、订单列表、详情)
  • 积分商城和个人中心页面迁移
  • 乘客管理和优惠券页面迁移
  • 统一的UI组件库建设

Epic 002 - 用户和会员系统:

  • 微信小程序登录注册功能
  • 积分获取和使用规则实现
  • 优惠券发放和使用功能
  • 会员等级和权益管理

Epic 003 - 出行服务核心功能:

  • 路线查询和班次列表功能
  • 订单创建、支付、状态管理
  • 乘客信息管理和常用乘客
  • 微信支付集成和回调处理

Epic 004 - 管理后台系统:

  • 订单管理和监控功能
  • 用户管理和行为分析
  • 运营数据统计和报表
  • 司机管理和收益统计

6. 成功指标和验收标准

6.1 关键绩效指标(KPI)

Epic 001 - 前端页面迁移指标:

  • ✅ 16个页面完整迁移,功能测试通过率100%
  • ⚡ 页面加载时间 < 2秒,API响应时间 < 500ms
  • 🎨 UI组件库建立,设计一致性达到95%
  • 📱 多端发布支持正常(微信小程序、H5)

Epic 002 - 用户和会员系统指标:

  • 👥 用户注册登录成功率 > 99%
  • 💰 积分系统正常运行,积分获取和使用记录准确
  • 🎫 优惠券功能可用,发放和使用流程完整
  • 🔐 微信小程序登录集成正常

Epic 003 - 出行服务核心功能指标:

  • 🚗 路线查询准确率 > 95%
  • 📦 订单创建到支付完成转化率 > 85%
  • 💳 微信支付集成正常,支付成功率 > 98%
  • 👥 乘客信息管理功能完整

Epic 004 - 管理后台系统指标:

  • 📊 订单管理功能完整,监控数据准确
  • 👤 用户管理功能正常,行为分析可用
  • 📈 运营数据统计报表生成正常
  • 🚕 司机管理基础功能实现

总体业务指标:

  • 📈 用户增长: 3个月内达到1000名注册用户
  • 💰 收入目标: 6个月内实现月订单收入10,000元
  • 🔄 用户留存: 30天用户留存率达到40%
  • 订单转化: 首页到下单转化率达到15%

6.2 验收标准

项目级验收:

  • 所有16个页面功能完整迁移并测试通过
  • 用户能够完成从查询路线到支付完成的完整出行流程
  • 核心业务数据能够正确存储和展示
  • 管理后台能够处理基本的订单和用户管理
  • 系统稳定运行,无明显性能问题

阶段性验收:

  • 每个Epic完成后进行功能演示和用户测试
  • 每周演示进度和获取业务反馈
  • 每月进行整体质量评估和业务指标检查
  • MVP完成后进行上线前综合测试

7. 附录

7.1 参考资料

  • 项目简报: docs/brief.md
  • mini-demo项目: ./mini-demo/
  • mini项目: ./mini/
  • src后端项目: ./src/

7.2 相关文档

  • 技术架构文档: docs/architecture.md
  • API文档: 通过 /ui 端点访问
  • 开发指南: docs/development.md
  • 部署指南: docs/deployment.md

7.3 联系方式

  • 产品负责人: [待指定]
  • 技术负责人: [待指定]
  • 开发团队: [待指定]

7.4 项目约束和假设

约束:

  • 预算:基于现有开发资源,无额外预算
  • 时间线:MVP在4-6周内完成
  • 资源:现有开发团队,无额外人员
  • 技术:必须兼容微信小程序平台

关键假设:

  • Taro框架能够满足出行小程序的功能需求
  • 现有后端架构能够扩展支持出行业务
  • 微信支付接口能够正常集成
  • 用户接受新的界面设计和交互方式
  • 市场对出行服务有持续需求

文档状态: 已更新 最后更新: 2025-10-15 下次评审: 2025-10-22