心境日记 - 软件需求文档

1. 项目概述与目标

项目愿景

创建一个专注于情绪记录和疗愈体验的web应用,帮助用户通过日常情绪记录、日记写作和数据分析来提升心理健康和自我认知。为用户提供一个温暖、安全的数字空间,促进情绪管理和心理疗愈。

核心目标

  • 帮助用户建立持续的情绪记录习惯
  • 通过数据可视化让用户了解自己的情绪变化趋势
  • 提供一个私密、安全的情绪表达空间
  • 通过日记写作促进用户的自我反思和情感疏导

MVP约束

  • 无需用户注册/登录功能
  • 数据存储在本地浏览器中
  • 专注于核心情绪记录和分析功能

2. 用户角色

  • 普通用户: 需要情绪管理和心理疏导的个人用户,希望通过记录和分析情绪来提升心理健康水平和自我认知能力。

3. 功能史诗与用户故事

史诗: 情绪记录管理


用户故事: EMOTION-001

作为一个普通用户,我想要快速记录当前的情绪状态,以便跟踪我的日常情绪变化

验收标准:
  • AC-1: 用户可以在主页面看到情绪记录入口
  • AC-2: 用户可以选择1-10的情绪分数(1=非常糟糕,10=非常好)
  • AC-3: 用户可以选择情绪类型标签(如:开心、焦虑、愤怒、平静等)
  • AC-4: 用户可以添加简短的情绪描述文字(可选,最多200字符)
  • AC-5: 系统自动记录提交的时间戳
  • AC-6: 情绪记录保存到本地浏览器存储

用户故事: EMOTION-002

作为一个普通用户,我想要查看我的历史情绪记录,以便回顾我的情绪变化

验收标准:
  • AC-1: 用户可以查看按时间倒序排列的情绪记录列表
  • AC-2: 每条记录显示日期、时间、情绪分数、类型标签和描述
  • AC-3: 用户可以按日期筛选查看特定时间段的记录
  • AC-4: 列表支持分页或滚动加载,避免一次加载过多数据
  • AC-5: 页面加载时间在2秒内完成

史诗: 日记写作功能


用户故事: DIARY-001

作为一个普通用户,我想要写日记记录我的想法和感受,以便进行深度的自我反思

验收标准:
  • AC-1: 用户可以创建新的日记条目
  • AC-2: 日记编辑器支持富文本格式(粗体、斜体、列表等)
  • AC-3: 日记内容支持最多5000字符
  • AC-4: 系统自动保存草稿,避免意外丢失内容
  • AC-5: 用户可以为日记添加标题(可选)
  • AC-6: 系统记录创建和最后修改时间
  • AC-7: 日记内容保存到本地浏览器存储

用户故事: DIARY-002

作为一个普通用户,我想要查看和管理我的历史日记,以便回顾我的心路历程

验收标准:
  • AC-1: 用户可以查看按时间倒序排列的日记列表
  • AC-2: 列表显示日记标题、创建日期和内容预览(前100字符)
  • AC-3: 用户可以点击进入完整的日记阅读页面
  • AC-4: 用户可以编辑已有的日记内容
  • AC-5: 用户可以删除不需要的日记,删除前需要确认
  • AC-6: 支持按关键词搜索日记内容

史诗: 多媒体内容管理


用户故事: MEDIA-001

作为一个普通用户,我想要在日记中添加图片,以便更完整地记录我的生活和情绪

验收标准:
  • AC-1: 用户可以在日记编辑器中上传图片文件
  • AC-2: 支持常见图片格式(JPG、PNG、GIF)
  • AC-3: 单个图片文件大小限制为5MB
  • AC-4: 每篇日记最多可添加10张图片
  • AC-5: 图片存储在本地浏览器中
  • AC-6: 图片在日记中正确显示,支持点击放大查看
  • AC-7: 用户可以删除已添加的图片

史诗: 数据可视化分析


用户故事: ANALYTICS-001

作为一个普通用户,我想要查看我的情绪变化趋势图,以便了解我的情绪模式

验收标准:
  • AC-1: 系统提供情绪分数的时间线图表
  • AC-2: 用户可以选择查看不同时间范围(7天、30天、90天)
  • AC-3: 图表清晰显示情绪分数的变化趋势
  • AC-4: 图表支持交互,悬停显示具体数值和日期
  • AC-5: 页面在3秒内完成图表渲染
  • AC-6: 移动端图表适配良好

用户故事: ANALYTICS-002

作为一个普通用户,我想要查看我的情绪类型分布统计,以便了解我最常出现的情绪状态

验收标准:
  • AC-1: 系统提供情绪类型的饼图或柱状图
  • AC-2: 图表显示每种情绪类型的出现频率和百分比
  • AC-3: 用户可以选择统计的时间范围
  • AC-4: 点击图表某个部分可以查看该情绪类型的详细记录
  • AC-5: 当没有数据时显示友好的提示信息

史诗: 用户界面与体验


用户故事: UI-001

作为一个普通用户,我想要在一个温暖、舒适的界面中使用应用,以便感到安全和放松

验收标准:
  • AC-1: 应用采用温暖的色彩方案(柔和的暖色调)
  • AC-2: 界面设计简洁清晰,避免视觉混乱
  • AC-3: 字体易读,行间距合适
  • AC-4: 按钮和交互元素有适当的大小,易于点击
  • AC-5: 页面布局在不同屏幕尺寸下都能良好显示
  • AC-6: 加载状态有友好的提示动画

用户故事: UI-002

作为一个普通用户,我想要快速找到我需要的功能,以便高效地使用应用

验收标准:
  • AC-1: 主导航清晰显示所有主要功能入口
  • AC-2: 每个页面都有明确的标题和面包屑导航
  • AC-3: 关键操作按钮突出显示
  • AC-4: 首次使用时提供简单的功能介绍或引导
  • AC-5: 错误信息和操作反馈及时、清晰
  • AC-6: 应用响应时间在正常网络条件下保持流畅

史诗: 数据存储与管理


用户故事: DATA-001

作为一个普通用户,我想要我的数据安全地保存在本地,以便保护我的隐私并确保数据不丢失

验收标准:
  • AC-1: 所有用户数据(情绪记录、日记、图片)存储在浏览器本地存储中
  • AC-2: 数据结构合理,便于查询和管理
  • AC-3: 系统定期检查存储空间使用情况
  • AC-4: 当存储空间不足时,向用户显示警告信息
  • AC-5: 用户可以导出所有数据为JSON格式文件
  • AC-6: 用户可以清空所有数据(需要二次确认)

用户故事: DATA-002

作为一个普通用户,我想要导入和导出我的数据,以便备份数据或迁移到其他设备

验收标准:
  • AC-1: 用户可以将所有数据导出为JSON格式文件
  • AC-2: 导出文件包含情绪记录、日记内容和相关元数据
  • AC-3: 用户可以通过上传JSON文件导入数据
  • AC-4: 导入时验证文件格式的正确性
  • AC-5: 导入冲突时提供合并或覆盖选项
  • AC-6: 导入/导出过程有进度提示和错误处理
Edit

Pub: 28 Jul 2025 04:51 UTC

Views: 34