AI斩书 · V1.0
| 项 | 内容 |
|---|---|
| 文档名称 | AI斩书 - 筛选错题组卷导出功能 PRD |
| 版本号 | V1.0 |
| 最后更新 | (待填写) |
| 产品负责人 | (待填写) |
| UI 负责人 | (待填写) |
| 前端负责人 | (待填写) |
| 后端负责人 | (待填写) |
| 测试负责人 | (待填写) |
| 排期 | (待填写) |
| 文档状态 | 📝 初稿 |
AI斩书是一款面向中小学生的AI智能错题管理应用,核心功能包括错题收集、错题本管理和试卷生成。用户可通过拍照或手动录入的方式收集错题,并利用AI技术进行错题分析和相似题推荐。
| 竞品 | 筛选能力 | 组卷能力 | 导出能力 |
|---|---|---|---|
| 猿题库 | 基础筛选 | 支持 | PDF导出 |
| 作业帮 | 多维度筛选 | 支持 | PDF/图片 |
| 错题星球 | 基础筛选 | 支持 | PDF导出 |
| AI斩书(本产品) | 待增强 | 待优化 | 待优化 |
错题筛选组卷导出功能的用户使用率达到 40%(基于活跃用户数)
采用 MoSCoW 法则分级
| 编号 | 用户故事 | 验收标准 |
|---|---|---|
| M1 | 作为学生,我希望能按科目筛选错题,以便针对性复习某一学科 | 支持选择单一科目或全部科目 |
| M2 | 作为学生,我希望能按年级筛选错题,以便找到对应学段的题目 | 支持小学、初中、高中各年级筛选 |
| M3 | 作为学生,我希望能按收集时间筛选错题,以便找到近期的错题 | 支持今日、本周、本月、全部 |
| M4 | 作为学生,我希望能勾选多道错题进行批量组卷 | 支持单选、多选、全选操作 |
| M5 | 作为学生,我希望能预览生成的试卷,确认题目内容 | 生成试卷前可预览,支持翻页 |
| M6 | 作为学生,我希望能导出试卷为PDF,方便打印练习 | 支持PDF格式导出 |
| M7 | 作为学生,我希望导出时可以选择是否显示答案解析 | 支持开启/关闭答案解析显示 |
| 编号 | 用户故事 | 验收标准 |
|---|---|---|
| S1 | 作为学生,我希望能按掌握程度筛选错题,以便重点复习不懂的题目 | 支持"懂了"、"不懂"筛选 |
| S2 | 作为学生,我希望能按来源筛选错题,如举一反三题目 | 支持"举一反三"、"未标记"筛选 |
| S3 | 作为学生,我希望能删除不需要的错题,保持错题本整洁 | 支持单选删除和批量删除 |
| S4 | 作为学生,删除前希望有确认提示,避免误操作 | 弹出确认弹窗 |
| S5 | 作为学生,我希望在选择模式下能快速全选或取消全选 | 提供全选/取消全选按钮 |
| 编号 | 用户故事 | 验收标准 |
|---|---|---|
| C1 | 作为学生,我希望导出时可以选择相似题替代原题 | 预览时支持切换"原题"/"相似题" |
| C2 | 作为学生,我希望查看试卷的页码信息 | 显示当前页/总页数 |
| C3 | 作为学生,我希望在首页能快速进入组卷功能 | 首页提供便捷入口 |
| 区域 | 内容 | 说明 |
|---|---|---|
| 顶部导航栏 | 返回箭头、页面标题"组成试卷"、"管理"按钮 | - |
| 筛选条件栏 | 科目下拉、年级下拉、时间下拉、筛选按钮 | 快速筛选入口 |
| 错题列表 | 错题卡片列表 | 支持滚动加载 |
| 列表项 | 日期、状态标签、题目内容、操作按钮 | - |
每张卡片包含以下信息:
| 区域 | 内容 | 说明 |
|---|---|---|
| 顶部导航栏 | 返回箭头、页面标题"筛选" | - |
| 科目区域 | 标题 + 选项网格 | 单选 |
| 来源区域 | 标题 + 选项网格 | 单选 |
| 掌握程度区域 | 标题 + 选项网格 | 单选 |
| 收集时间区域 | 标题 + 选项网格 | 单选 |
| 年级区域 | 标题 + 选项网格 | 单选 |
| 维度 | 选项 | 默认值 | 选择方式 |
|---|---|---|---|
| 科目 | 全部、语文、数学、英语、科学、物理、化学、生物、地理、历史、政治、其他 | 全部 | 单选 |
| 来源 | 全部、举一反三、未标记 | 全部 | 单选 |
| 掌握程度 | 全部、懂了、不懂 | 全部 | 单选 |
| 收集时间 | 全部、今日、本周、本月 | 全部 | 单选 |
| 年级 | 全部、一年级~高三、其他 | 全部 | 单选 |
在组成试卷页面点击右上角"管理"按钮进入
| 区域 | 内容 | 说明 |
|---|---|---|
| 顶部导航栏 | "取消"按钮、页面标题、"全选"按钮 | - |
| 筛选条件栏 | 与组成试卷页面相同 | 支持筛选 |
| 错题列表 | 每项右侧增加复选框 | - |
| 底部操作栏 | "删除"按钮(红色)、"选择组卷"按钮(蓝色) | - |
删除按钮
选择组卷按钮
| 元素 | 内容 | 样式 |
|---|---|---|
| 标题 | "错题删除后不可恢复,确认是否删除?" | 黑色加粗 |
| 取消按钮 | "取消" | 蓝色文字,左侧 |
| 确认按钮 | "确认删除" | 红色文字,右侧 |
| 区域 | 内容 | 说明 |
|---|---|---|
| 顶部导航栏 | 返回箭头、页面标题"生成试卷" | - |
| 切换按钮组 | "原题"、"相似题" | 切换显示内容 |
| 试卷预览区 | 试卷内容展示 | 支持上下滚动、翻页 |
| 页码指示器 | "1/2" + 左右箭头 | 显示当前页/总页数 |
| 底部信息栏 | "已选错题"图标、"显示内容:答案解析" | - |
| 导出按钮 | "导出组卷"按钮 | 蓝色主按钮 |
| 用途 | 颜色值 |
|---|---|
| 主色调(品牌蓝) | #4A90E2 |
| 选中状态 | #E8F4FD(背景)/ #4A90E2(文字/边框) |
| 未选中状态 | #F5F5F5(背景)/ #333333(文字) |
| 删除按钮 | #FF4D4F |
| 确认删除文字 | #FF4D4F |
| 取消按钮文字 | #4A90E2 |
| 状态标签(未斩题) | #4A90E2(背景)/ #FFFFFF(文字) |
| 状态标签(已斩题) | #FF4D4F(背景)/ #FFFFFF(文字) |
| 禁用状态 | #CCCCCC |
| 场景 | 字号 | 字重 | 颜色 |
|---|---|---|---|
| 页面标题 | 18px | Semi Bold | #333333 |
| 筛选维度标题 | 16px | Medium | #333333 |
| 筛选选项文字 | 14px | Regular | #333333 |
| 错题日期 | 14px | Regular | #666666 |
| 按钮文字 | 16px | Medium | #FFFFFF |
| Toast文字 | 14px | Regular | #FFFFFF |
| 场景 | 间距 |
|---|---|
| 页面左右边距 | 16px |
| 卡片内边距 | 12px |
| 卡片间距 | 12px |
| 筛选区域间距 | 24px |
| 筛选项间距 | 8px |
| 元素 | 圆角 |
|---|---|
| 卡片 | 12px |
| 按钮 | 8px |
| 复选框 | 圆形 |
| 筛选选项 | 8px |
| 弹窗 | 16px |
| 埋点ID | 事件名称 | 触发时机 | 上报参数 |
|---|---|---|---|
| enter_exam_page | 进入组成试卷页面 | 用户进入页面 | source: 首页/底部Tab |
| click_filter | 点击筛选按钮 | 用户点击筛选入口 | current_filters: 当前筛选条件 |
| select_subject | 选择科目 | 用户选择科目选项 | subject: 科目名称 |
| select_grade | 选择年级 | 用户选择年级选项 | grade: 年级名称 |
| select_time | 选择时间 | 用户选择时间选项 | time_range: 时间范围 |
| select_source | 选择来源 | 用户选择来源选项 | source_type: 来源类型 |
| select_mastery | 选择掌握程度 | 用户选择掌握程度 | mastery_level: 掌握程度 |
| filter_result | 筛选结果 | 筛选完成 | result_count: 结果数量, filters: 筛选条件 |
| enter_manage_mode | 进入管理模式 | 用户点击"管理"按钮 | question_count: 列表题目数量 |
| select_question | 选择题目 | 用户勾选/取消勾选题目 | question_id: 题目ID, is_selected: true/false |
| select_all | 全选/取消全选 | 用户点击全选按钮 | is_select_all: true/false, selected_count: 选中数量 |
| click_delete | 点击删除按钮 | 用户点击删除 | selected_count: 选中数量 |
| confirm_delete | 确认删除 | 用户点击确认删除 | selected_count: 选中数量 |
| cancel_delete | 取消删除 | 用户点击取消 | - |
| delete_success | 删除成功 | 删除操作完成 | deleted_count: 删除数量 |
| click_generate_paper | 点击选择组卷 | 用户点击组卷按钮 | selected_count: 选中数量 |
| paper_preview | 试卷预览 | 进入预览页面 | question_count: 题目数量, source_type: 原题/相似题 |
| switch_paper_type | 切换试卷类型 | 用户切换原题/相似题 | paper_type: original/similar |
| click_export | 点击导出组卷 | 用户点击导出按钮 | paper_type: 试卷类型 |
| export_with_answer | 导出设置 | 用户设置导出选项 | show_answer: true/false |
| export_success | 导出成功 | 导出完成 | file_size: 文件大小, question_count: 题目数量 |
| 参数名 | 类型 | 说明 |
|---|---|---|
| source | String | 来源渠道:home_page(首页)、bottom_tab(底部Tab) |
| current_filters | JSON | 当前所有筛选条件 |
| subject | String | 科目名称 |
| grade | String | 年级名称 |
| time_range | String | 时间范围:today/week/month/all |
| source_type | String | 来源类型:举一反三/unmarked |
| mastery_level | String | 掌握程度:懂了/不懂 |
| result_count | Number | 筛选结果数量 |
| question_id | String | 题目唯一标识 |
| is_selected | Boolean | 是否选中 |
| is_select_all | Boolean | 是否全选 |
| selected_count | Number | 选中题目数量 |
| deleted_count | Number | 删除题目数量 |
| paper_type | String | 试卷类型:original(原题)/similar(相似题) |
| show_answer | Boolean | 是否显示答案解析 |
| file_size | Number | 导出文件大小(KB) |
| 场景 | 指标要求 |
|---|---|
| 筛选结果加载 | ≤ 500ms |
| 试卷生成 | ≤ 3s(10道题以内) |
| PDF导出 | ≤ 5s(10道题以内) |
| 页面切换 | ≤ 300ms |
| 列表滚动 | 60fps,无卡顿 |
| 平台 | 版本要求 |
|---|---|
| iOS | 12.0+ |
| Android | 6.0+ |
| 屏幕分辨率 | 720p ~ 2K |
| 风险 | 概率 | 影响 | 应对方案 |
|---|---|---|---|
| 试卷生成性能问题 | 中 | 用户等待时间过长 | 优化生成算法,添加加载动画,设置超时提示 |
| PDF导出失败 | 低 | 用户无法保存试卷 | 增加重试机制,提供替代导出格式(如图片) |
| 筛选结果为空 | 高 | 用户体验差 | 显示空状态提示,引导用户调整筛选条件 |
| 相似题质量不高 | 中 | 用户满意度下降 | 优化AI模型,提供原题作为备选 |
| 大量题目导出内存溢出 | 低 | 应用崩溃 | 分批处理,限制单次导出数量 |
| 用户误删题目 | 中 | 数据丢失 | 二次确认机制,可考虑增加回收站功能 |
| 阶段 | 时间 | 内容 |
|---|---|---|
| 开发阶段 | (待填写) | 前后端开发 |
| 测试阶段 | (待填写) | 功能测试、性能测试、兼容性测试 |
| 灰度阶段 | (待填写) | 灰度1% → 10% → 50%用户 |
| 全量上线 | (待填写) | 全量发布 |