【Java项目-轻聊】02-AI赋能整理产品需求文档
声明本文档为项目需求文档内容由 AI 辅助生成、博主整理优化仅作本项目开发参考使用。✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨你正在阅读「Java项目-轻聊」系列文章✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨弹简特 个人主页❄️个人专栏直通车软件测试入门记野生测试修炼手册 | APP 专项测试笔记接口测试从入门到跑路☕一个后端的 JavaEE 续命指南网络原理续命手册Python 从零摸索日记☕Java项目-轻聊☕Java项目-企悦抽✨靠热爱去书写自己靠勇敢去书写生活✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨ 博主简介:文章目录写在最前-项目同步码云轻聊 · 产品需求文档PRD1. 文档目的2. 项目背景2.1 市场/场景背景2.2 产品定位2.3 建设目标2.4 不在本期范围Out of Scope3. 用户与角色3.1 目标用户3.2 用户角色定义3.3 用户画像简要4. 产品信息架构5. 用户故事User Stories6. 功能需求6.1 认证与个人FR-AUTH-001 用户注册 【P0】FR-AUTH-002 用户登录 【P0】FR-AUTH-003 退出登录 【P0】FR-AUTH-004 登录态访问控制 【P0】FR-USER-001 个人头像 【P1】6.2 好友FR-FRIEND-001 好友列表 【P0】FR-FRIEND-002 搜索用户 【P0】FR-FRIEND-003 发送好友请求 【P0】FR-FRIEND-004 处理好友请求 【P0】6.3 会话与消息FR-SESSION-001 会话列表 【P0】FR-SESSION-002 创建/进入会话 【P0】FR-CHAT-001 实时文字消息 【P0】FR-CHAT-002 历史消息 【P0】FR-CHAT-003 未读提示 【P1】6.4 系统规则FR-SYS-001 单点在线 【P0】7. 非功能需求NFR8. 界面与交互需求UX8.1 页面清单8.2 主界面布局要求8.3 交互原则写在最前-项目同步码云 项目源码 | 码云仓库点击 点我看项目同步代码轻聊 · 产品需求文档PRD属性内容文档编号PRD-LIGHTCHAT-v1.0产品名称轻聊产品版本V1.0MVP文档版本V1.0文档状态已定稿撰写角色AI模拟产品经理目标读者项目经理、开发、测试、UI、业务方1. 文档目的本文档定义「轻聊」业务目标、用户价值、功能范围与验收口径作为研发与测试的唯一业务需求来源。2. 项目背景2.1 市场/场景背景即时通讯是高频刚需。网页版微信等产品验证了「浏览器即可沟通、无需安装客户端」的模式适合JavaEE课设、内网协作、轻量社交等场景。2.2 产品定位轻聊是一款面向 Web 端的一对一即时文字聊天产品交互布局参考网页版微信左侧会话/好友右侧聊天区强调轻量、易部署、易二次开发。2.3 建设目标目标编号描述衡量方式G-01用户可完成注册、登录并在浏览器内稳定聊天核心流程通过率 100%G-02用户可搜索并建立好友关系后再聊天加好友到首条消息 ≤3 分钟体验G-03消息实时送达且刷新后可查历史双人在线互发延迟可感知为实时历史可加载G-04单账号避免多处同时登录造成混乱重复登录有明确提示且不影响先登录方2.4 不在本期范围Out of Scope编号说明OOS-01群聊、聊天室广播OOS-02语音、视频通话OOS-03图片/文件消息仅头像上传OOS-04消息撤回、编辑、、表情商店OOS-05服务端已读回执、多端同步策略OOS-06手机号注册、短信验证码、第三方登录OOS-07生产级安全密码加密、HTTPS 强制3. 用户与角色3.1 目标用户高校 JavaEE课设 / Web 实训学生主场景需要简易内网沟通的小团队3.2 用户角色定义角色 ID角色名描述权限概要R-01访客未登录访问者仅登录页、注册页R-02注册用户已完成注册并登录好友、会话、聊天、头像等全部 MVP 功能3.3 用户画像简要画像特征核心诉求学生甲首次使用无技术背景注册后能马上找到同学并聊天学生乙多标签页、可能误开两个浏览器重复登录时有清晰提示不丢先登录会话4. 产品信息架构轻聊 ├── 认证模块注册 / 登录 / 退出 ├── 个人中心头像、昵称展示 ├── 好友模块列表 / 搜索 / 好友请求 ├── 会话模块会话列表 / 创建会话 └── 消息模块实时消息 / 历史消息 / 未读提示主界面入口登录成功后进入client.html主工作台。5. 用户故事User Stories故事 ID作为…我希望…以便…优先级US-01新用户注册账号使用轻聊P0US-02注册用户登录系统进入聊天主界面P0US-03注册用户退出登录账号可被其他设备登录P0US-04注册用户上传头像在列表中被识别P1US-05注册用户查看好友列表选择对象发起聊天P0US-06注册用户搜索用户名并发送好友请求与非好友建立联系P0US-07注册用户同意或拒绝好友请求控制我的好友关系P0US-08注册用户查看会话列表及最后一条消息快速找到聊天对象P0US-09注册用户与好友实时收发文字消息即时沟通P0US-10注册用户查看历史聊天记录回顾此前内容P0US-11注册用户看到未读消息数量知道哪些会话有新消息P1US-12系统限制同账号重复登录避免状态错乱P06. 功能需求需求编号规则FR-{模块}-{序号}优先级P0必须上线P1重要P2可延后6.1 认证与个人FR-AUTH-001 用户注册 【P0】项说明描述访客在注册页创建唯一用户名账号前置条件无输入用户名、密码均非空业务规则① 用户名全局唯一② 密码本期明文存储技术债见 OOS-07成功结果提示注册成功引导至登录页系统创建用户记录失败结果用户名重复时提示失败不创建账号异常/边界空字段由前端拦截不允许提交FR-AUTH-002 用户登录 【P0】项说明描述注册用户凭用户名密码进入主界面业务规则① 用户名密码完全匹配方可登录② 同一账号若已在其他浏览器保持登录或 WebSocket 在线拒绝本次登录提示「该账号已在其他地方登录请勿重复登录」不踢下线先登录方成功结果进入主界面保持登录态失败结果凭证错误提示检查用户名或密码重复登录展示明确文案FR-AUTH-003 退出登录 【P0】项说明描述用户主动退出释放登录与实时连接成功结果回到登录页同账号可再次登录FR-AUTH-004 登录态访问控制 【P0】项说明描述未登录用户不得使用聊天主界面规则直接打开主界面时若未登录则跳转登录页FR-USER-001 个人头像 【P1】项说明描述用户可上传并展示自定义头像业务规则① 仅支持 jpg/jpeg/png② 单文件 ≤2MB③ 仅能修改本人头像成功结果主界面头像更新好友侧可见聊天/列表失败结果格式/大小/权限不符时给出明确原因6.2 好友FR-FRIEND-001 好友列表 【P0】项说明描述展示当前用户已建立好友关系的用户展示信息好友昵称、头像交互点击好友进入聊天流程空状态无好友时展示空列表非报错FR-FRIEND-002 搜索用户 【P0】项说明描述按关键词模糊搜索用户名用于添加好友业务规则结果中不得包含本人已是好友存在待处理好友请求含我发出与对方发来的用户交互搜索关键词不可为空FR-FRIEND-003 发送好友请求 【P0】项说明描述向目标用户发起好友申请可填写理由业务规则不可添加自己目标须存在不可重复申请不可向已是好友用户申请成功结果提示已发送对方在线时即时收到通知失败结果返回可读失败原因已是好友、重复请求等FR-FRIEND-004 处理好友请求 【P0】项说明描述接收方对好友请求同意或拒绝业务规则仅接收方可处理同意后双方互为好友拒绝则关系不建立离线用户上线后应能看到离线期间收到的待处理请求同意结果双方好友列表更新双方收到「已成为好友」类通知6.3 会话与消息FR-SESSION-001 会话列表 【P0】项说明描述展示用户参与的单聊会话展示信息对方头像、昵称、最后一条消息摘要业务规则同一好友在列表中只展示一条会话去重排序有新消息的会话优先置顶体验要求FR-SESSION-002 创建/进入会话 【P0】项说明描述与好友发起或进入一对一聊天业务规则两人之间已存在会话则复用不重复创建边界会话 ID 未就绪时不允许发送消息需提示用户FR-CHAT-001 实时文字消息 【P0】项说明描述在会话中实时发送与接收文字消息业务规则① 消息持久化保存② 发送方界面即时看到自己发送内容③ 对方在线时即时收到④ 两人多条会话记录时消息归入统一会话避免分裂失败连接异常时提示用户刷新FR-CHAT-002 历史消息 【P0】项说明描述进入会话时加载历史聊天记录业务规则单会话最多展示最近 100 条按时间正序排列展示自己与他人消息左右区分FR-CHAT-003 未读提示 【P1】项说明描述会话列表展示未读消息条数角标业务规则① 收到他人消息且用户未正在该会话聊天界面时累计② 用户进入该会话后清零③ 用户停留在好友 Tab 或搜索页时仍累计说明未读状态本期由前端维护不要求多端同步6.4 系统规则FR-SYS-001 单点在线 【P0】项说明描述同一账号在同一时刻仅允许一处有效 HTTP 登录与一条 WebSocket 连接规则后发起的登录或 WebSocket 连接被拒绝先登录方不受影响7. 非功能需求NFR编号类别需求描述验收口径NFR-01性能常规局域网环境下消息收发用户可感知为「即时」双人互发 10 条无肉眼可见分钟级延迟NFR-02可用性核心操作有明确成功/失败反馈注册、登录、加好友、发消息均有提示NFR-03兼容性支持 Chrome/Edge/Firefox 等现代浏览器测试矩阵内浏览器主流程通过NFR-04可维护性后端分层清晰便于二次开发符合 SRS 架构约束NFR-05数据用户名≤20 字单条消息≤2048 字超长由库表/接口约束NFR-06安全本期为学校JavaEE课设原型密码明文、无 HTTPS 强制文档声明不纳入 V1.0 验收否决项8. 界面与交互需求UX8.1 页面清单页面路径说明登录页login.html品牌「轻聊」用户名/密码跳转注册注册页register.html创建账号返回登录主工作台client.html左栏右栏 IM 布局8.2 主界面布局要求区域要求左栏顶部当前用户头像可点击上传、昵称、退出左栏 Tab「会话」「好友」切换左栏搜索关键词搜索用户左栏列表会话项 / 好友项 / 好友请求项请求置顶右栏聊天标题、消息区、输入框、发送按钮或搜索结果区弹窗好友请求展示发起人、理由、同意/拒绝8.3 交互原则布局与操作习惯参考网页版微信降低学习成本。视觉风格简洁、美观视觉稿/CSS 可借助设计工具或 AI 辅助由前端集成。未读角标红色数字大于 0 显示。OK老铁们我们知道我们项目的需求之后后续我们开发就会参照这个需求进行有目标有方向的开发了。那么通过这个需求文档我们下一期将会遵照这个产品需求来制定出自己的开发需求老铁们咱们下一期见~