Files
memora/REQUIREMENTS.md

2.5 KiB
Raw Blame History

Memora 需求文档(重设计版)

1. 项目目标

Memora 是一个以「长期记忆留存」为目标的背单词系统,面向中文学习者,提供:

  • 单词学习与复习闭环(学习 → 测试 → 复习)
  • 基于遗忘曲线的复习调度
  • 数据可视化与学习反馈
  • Web 端优先,后续支持移动端复用 API

2. 用户角色

  • 普通用户:学习、复习、查看统计
  • 管理员(可选):词库管理、运营配置、异常数据处理

3. 核心功能需求

3.1 账户与身份

  • 用户注册/登录(邮箱或手机号,后续可扩展 OAuth
  • Token 鉴权JWT
  • 个人学习偏好(每日目标、提醒时间、难度偏好)

3.2 词库与学习内容

  • 词书管理:内置词书 + 自定义词书
  • 单词详情:拼写、音标、词性、释义、例句、发音
  • 标签体系:阶段(新词/熟词/难词)、来源、主题

3.3 学习流程

  • 新词学习:按计划推送
  • 测试模式:拼写题、选择题、释义匹配(可扩展)
  • 学习结果记录:正确率、耗时、连续正确次数

3.4 复习调度(核心)

  • 基于 SRS间隔重复策略生成复习计划
  • 每日待复习队列
  • 复习结果回写并动态调整下次复习时间

3.5 统计与反馈

  • 今日学习量、复习量、正确率
  • 连续学习天数
  • 周/月趋势图
  • 难词排行与建议复习列表

3.6 系统能力

  • 统一错误码与错误响应
  • 审计日志(关键操作)
  • 基础监控(接口耗时、错误率)

4. 非功能需求

  • 可维护性:前后端分层清晰,模块边界明确
  • 可扩展性:后续可拆分记忆引擎为独立服务
  • 性能:常用接口 P95 < 300ms本地单机目标
  • 安全性:鉴权、限流、输入校验、敏感信息脱敏
  • 可测试性:核心调度逻辑具备单元测试

5. API 需求(第一阶段)

  • POST /api/v1/auth/register
  • POST /api/v1/auth/login
  • GET /api/v1/words(分页)
  • GET /api/v1/words/:id
  • POST /api/v1/study/sessions
  • POST /api/v1/study/answers
  • GET /api/v1/review/today
  • POST /api/v1/review/submit
  • GET /api/v1/stats/overview

6. 里程碑

  • M1基础骨架 + 认证 + 词库查询 + 学习记录
  • M2SRS 调度 + 每日复习 + 统计面板
  • M3体验优化 + 管理能力 + 稳定性增强

7. 验收标准(当前阶段)

  1. 能完成注册/登录并访问受保护接口
  2. 能查看单词并完成一次学习-复习提交
  3. 能生成当日复习任务
  4. Web 端可展示学习概览数据