# 技术形态与MVP范围 > 创建时间:2025-02-04 > 决策内容:技术选型、第一版功能范围 --- ## 一、技术形态决策 ### 1.1 总体架构 ``` ┌─────────────────────────────────────────────────────────────────┐ │ 平台技术架构 │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ 超管端 │ │ 学校端 │ │ 教师端 │ │ │ │ Web端 │ │ Web端 │ │ Web端 │ │ │ └──────────┘ └──────────┘ └──────────┘ │ │ │ │ │ │ │ └─────────────────┼─────────────────┘ │ │ │ │ │ ┌──────▼──────┐ │ │ │ 后端API服务 │ │ │ └─────────────┘ │ │ │ │ │ ┌──────▼──────┐ │ │ │ 数据库 │ │ │ └─────────────┘ │ │ │ │ ┌──────────┐ │ │ │ 家长端 │ ◀─── 后续版本实现 │ │ │ H5端 │ (响应式设计,支持微信/浏览器访问) │ │ └──────────┘ │ │ │ └─────────────────────────────────────────────────────────────────┘ ``` ### 1.2 端形态选择 | 端 | 技术形态 | 说明 | 实现版本 | |---|---------|------|---------| | **超管端** | Web端 | PC浏览器访问,复杂内容管理操作 | ✅ MVP | | **学校端** | Web端 | PC浏览器访问,数据查看和管理 | ✅ MVP | | **教师端** | Web端 | PC/平板浏览器访问,支持投屏上课 | ✅ MVP | | **家长端** | H5响应式 | 手机/平板访问,支持微信内打开 | ⬜ V2 | ### 1.3 技术选型建议 | 层级 | 技术选型 | 说明 | |-----|---------|------| | 前端框架 | Vue 3 / React | 现代化SPA框架,组件化开发 | | UI组件库 | Ant Design / Element Plus | 企业级UI组件库 | | 状态管理 | Pinia / Redux | 复杂状态管理 | | 后端框架 | Node.js(Nest) / Java(Spring) | API服务 | | 数据库 | PostgreSQL / MySQL | 关系型数据库 | | 文件存储 | OSS / S3 | 绘本、音视频等大文件存储 | | 缓存 | Redis | 热点数据缓存 | --- ## 二、MVP第一版功能范围 ### 2.1 MVP目标 **核心目标:验证商业模式和课程包价值** | 目标 | 说明 | |-----|------| | 内容验证 | 课程包制作发布流程是否可行 | | 用户验证 | 教师是否愿意使用课程包进行教学 | | 商业验证 | 幼儿园是否愿意为课程包付费 | | 数据验证 | 是否能收集到有效的使用反馈 | ### 2.2 MVP功能清单 #### 🔴 超管端(MVP核心) | 模块 | 功能 | 优先级 | 说明 | |-----|------|-------|------| | **基础功能** | 登录/权限 | P0 | 超级管理员登录 | | **课程包制作** | 基础信息配置 | P0 | 名称、年级、领域标签 | | | 数字资源上传 | P0 | 电子绘本、音频、视频 | | | 教学课件上传 | P0 | PPT、动画组件 | | | 课堂计划编辑 | P0 | 教学脚本配置(重点) | | | 延伸活动配置 | P1 | 素材和活动指引 | | | 测评工具配置 | P1 | 记录表模板 | | | 课程包预览 | P0 | 教师端视角预览 | | **课程包管理** | 课程包列表 | P0 | 筛选、搜索、状态查看 | | | 课程包发布 | P0 | 审核流程 | | | 课程包编辑 | P0 | 草稿编辑 | | | 课程包下架 | P1 | 已发布课程包管理 | | **租户管理** | 租户开通 | P0 | 创建幼儿园账号 | | | 套餐配置 | P0 | 基础/标准/高级套餐 | | | 课程授权 | P0 | 套餐课程包范围配置 | | | 教师账号管理 | P1 | 增删改查教师账号 | | **资源库管理** | 绘本库 | P1 | 绘本资源管理 | | | 多媒体素材库 | P1 | 音视频素材管理 | | **数据统计** | 基础数据看板 | P1 | 租户数、课程包数、使用量 | | **系统配置** | 标签体系配置 | P0 | 预置《3-6岁指南》标签 | | | 年级班级配置 | P0 | 小/中/大班 | #### 🔴 学校端(MVP核心) | 模块 | 功能 | 优先级 | 说明 | |-----|------|-------|------| | **基础功能** | 登录/权限 | P0 | 园长/管理员登录 | | **首页看板** | 学校数据概览 | P1 | 授课次数、教师活跃度 | | **教师管理** | 教师列表 | P0 | 查看本校教师 | | | 教师账号管理 | P0 | 新增/停用教师账号 | | | 教师数据查看 | P1 | 教师使用情况 | | **课程管理** | 已授权课程包 | P0 | 查看可用的课程包 | | | 课程包使用数据 | P1 | 各课程包使用情况 | | **学生管理** | 学生列表 | P1 | 管理学生信息 | | | 班级管理 | P1 | 班级配置 | | **套餐管理** | 当前套餐查看 | P0 | 套餐内容和到期时间 | | | 套餐续费申请 | P0 | 联系超管续费 | | **数据报表** | 基础数据报表 | P1 | 授课统计、教师活跃度 | #### 🔴 教师端(MVP核心) | 模块 | 功能 | 优先级 | 说明 | |-----|------|-------|------| | **基础功能** | 登录/权限 | P0 | 教师登录 | | **首页** | 待上课提醒 | P1 | 今日/本周待上课 | | | 快捷入口 | P1 | 课程中心、我的班级 | | **课程中心** | 课程包浏览 | P0 | 筛选、搜索课程包 | | | 课程包详情 | P0 | 查看完整课程包内容 | | | 课程包收藏 | P1 | 收藏喜欢的课程包 | | | 待上清单 | P1 | 添加课程到待上清单 | | **备课模式** | 课程内容预览 | P0 | 预览所有资源 | | | 素材清单 | P0 | 线上/线下素材列表 | | | 备课笔记 | P1 | 添加个人笔记 | | **上课模式** | 课程展示 | P0 | 大屏展示课程内容 | | | 环节导航 | P0 | 教学环节切换 | | | 互动组件 | P0 | 调用互动组件 | | | 上课工具 | P1 | 音频播放、计时器 | | | 上课笔记 | P1 | 快速记录观察 | | **反馈记录** | 快速反馈 | P0 | 课后快速记录 | | | 详细反馈表 | P1 | 完整反馈表单 | | **班级管理** | 学生列表 | P0 | 管理班级学生 | | | 班级数据 | P1 | 班级整体数据 | | **测评记录** | 学生参与记录 | P1 | 记录学生参与情况 | | | 成长档案查看 | P1 | 查看学生发展情况 | #### ⬜ 家长端(V2版本) | 模块 | 功能 | 优先级 | 说明 | |-----|------|-------|------| | **基础功能** | 登录/绑定 | P0 | 微信授权/手机号登录 | | **孩子档案** | 成长档案查看 | P0 | 查看孩子阅读和发展情况 | | | 阅读记录 | P0 | 查看阅读过的绘本 | | | 测评数据 | P0 | 查看各领域发展情况 | | **亲子共读** | 推荐绘本 | P1 | 根据孩子情况推荐 | | | 共读指导 | P1 | 亲子共读建议 | | **家校沟通** | 教师通知 | P0 | 接收园所通知 | | | 孩子表现 | P1 | 教师反馈的孩子情况 | ### 2.3 MVP功能优先级说明 | 优先级 | 定义 | 第一版处理 | |-------|------|----------| | **P0** | 必须实现,否则无法验证核心价值 | ✅ 实现 | | **P1** | 重要功能,影响用户体验 | ✅ 实现(时间允许) | | **P2** | 锦上添花的功能 | ⬜ 后续版本 | --- ## 三、MVP第一阶段实施计划 ### 3.1 开发顺序 ``` ┌─────────────────────────────────────────────────────────────────┐ │ MVP开发顺序建议 │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ Phase 1:基础框架 (2周) │ │ ├── 项目架构搭建 │ │ ├── 用户认证系统 │ │ ├── 权限管理系统 │ │ └── 标签体系初始化 │ │ │ │ Phase 2:超管端核心 (3-4周) │ │ ├── 课程包制作工作台 │ │ ├── 课程包管理(草稿/发布) │ │ ├── 租户管理 │ │ └── 资源库管理 │ │ │ │ Phase 3:教师端核心 (3-4周) │ │ ├── 课程中心(浏览/详情) │ │ ├── 备课模式 │ │ ├── 上课模式 │ │ └── 班级管理 │ │ │ │ Phase 4:学校端 (2周) │ │ ├── 教师管理 │ │ ├── 课程包授权查看 │ │ └── 基础数据看板 │ │ │ │ Phase 5:反馈与数据 (2周) │ │ ├── 教师反馈收集 │ │ ├── 测评记录 │ │ ├── 基础数据统计 │ │ └── 数据看板 │ │ │ │ 预计总时间:12-14周 │ │ │ └─────────────────────────────────────────────────────────────────┘ ``` ### 3.2 MVP验证指标 | 指标 | 目标 | 说明 | |-----|------|-----| | 内容完成度 | ≥10个课程包 | 覆盖小/中/大班,覆盖多领域 | | 试点学校 | ≥5所幼儿园 | 不同规模、不同地区 | | 活跃教师 | ≥20人 | 每校至少4人 | | 使用次数 | ≥100次授课 | 验证课程包可用性 | | 反馈收集 | ≥50条反馈 | 验证优化方向 | | 付费意愿 | ≥2所续费意向 | 验证商业模式 | --- ## 四、技术实现要点 ### 4.1 教师端上课模式 ``` ┌─────────────────────────────────────────────────────────────────┐ │ 教师端上课模式技术要求 │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ 1. 大屏展示 │ │ • 支持全屏模式 │ │ • 支持投屏到教室大屏 │ │ • 支持平板PC双端 │ │ │ │ 2. 互动组件 │ │ • 电子绘本:支持翻页、放大、标记 │ │ • 音频播放:支持播放/暂停/进度控制 │ │ • 视频播放:支持全屏播放 │ │ • 动画组件:支持嵌入播放 │ │ • 互动练习:支持点击、拖拽等交互 │ │ │ │ 3. 环节导航 │ │ • 左侧/顶部导航栏显示当前环节 │ │ • 支持快速跳转到任意环节 │ │ • 显示当前环节进度 │ │ │ │ 4. 工具栏 │ │ • 暂停/继续 │ │ • 音频控制 │ │ • 课件展示 │ │ • 笔记记录 │ │ • 计时器 │ │ │ └─────────────────────────────────────────────────────────────────┘ ``` ### 4.2 课程包存储结构 ``` 课程包 ├── 基础信息 │ ├── 课程包ID │ ├── 名称 │ ├── 年级标签 │ ├── 领域标签 │ └── 教学时长 ├── 数字资源 │ ├── 电子绘本 (PDF/HTML) │ ├── 配套音频 (MP3) │ └── 配套视频 (MP4) ├── 教学课件 │ ├── PPT课件 │ ├── 动画组件 │ └── 互动组件 ├── 课堂计划 │ ├── 环节1:导入环节 │ │ ├── 时长 │ │ ├── 目标 │ │ ├── 教师话术脚本 │ │ ├── 关联资源 │ │ └── 互动要点 │ ├── 环节2:引导观察 │ ├── 环节3:师幼共读 │ │ ├── 逐页配置 │ │ │ ├── 第1页:提问、互动组件 │ │ │ ├── 第2页:提问、互动组件 │ │ │ └── ... │ ├── 环节4:延伸活动 │ └── 环节5:活动结束 ├── 延伸活动 │ ├── 活动一 │ │ ├── 名称 │ │ ├── 领域标签 │ │ ├── 活动形式 │ │ ├── 线上素材 │ │ ├── 线下素材说明 │ │ └── 活动指引 │ └── ... └── 测评工具 ├── 观察记录表 ├── 参与情况记录表 └── 掌握情况评估表 ``` ### 4.3 数据流转 ``` ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ 超管端 │ ──▶ │ 数据库 │ ◀── │ 教师端 │ │ (发布课程) │ │ (存储) │ │ (使用课程) │ └─────────────┘ └─────────────┘ └─────────────┘ │ │ │ │ ▼ │ │ ┌─────────────┐ │ │ │ 数据统计 │ │ │ │ (分析) │ │ │ └─────────────┘ │ │ │ │ └───────────────────┼───────────────────┘ ▼ ┌─────────────┐ │ 数据看板 │ │ (展示) │ └─────────────┘ ``` --- ## 五、后续版本规划 ### 5.1 V2版本功能 | 模块 | 新增功能 | |-----|---------| | 家长端 | 完整H5响应式家长端 | | 教师端 | 离线缓存、AI智能推荐 | | 超管端 | 课程包AI辅助生成、数据分析增强 | | 学校端 | 自定义报表、家校互动 | ### 5.3 V3版本功能 | 模块 | 新增功能 | |-----|---------| | 全平台 | 多语言支持、个性化推荐 | | 教师端 | 虚拟教研室、在线协作备课 | | 家长端 | 亲子共读直播、AI阅读陪伴 | --- ## 六、决策记录 ### 6.1 技术形态决策 | 决策项 | 决策结果 | 理由 | |-------|---------|------| | 超管端形态 | Web端 | 复杂管理操作,PC端体验更好 | | 学校端形态 | Web端 | 数据查看和管理,PC端更方便 | | 教师端形态 | Web端 | 支持PC/平板,上课投屏更灵活 | | 家长端形态 | H5响应式 | 移动端访问,支持微信打开 | ### 6.2 MVP范围决策 | 决策项 | 决策结果 | 理由 | |-------|---------|------| | 第一版端范围 | 超管+学校+教师端 | 核心B2B2C闭环,家长端可后续 | | 第一版课程包数量 | ≥10个 | 覆盖主要年级和领域,验证内容质量 | | 第一版试点学校 | ≥5所 | 小范围验证,快速迭代 | | 第一版付费模式 | 套餐订阅 | 验证付费意愿 | --- ## 七、待确认问题 - [x] ~~前端技术栈选择(Vue vs React)?~~ **已确认:Vue 3 + Vite + Ant Design Vue** - [x] ~~后端技术栈选择(Node.js vs Java vs Go)?~~ **已确认:NestJS + Prisma** - [x] ~~数据库选型?~~ **已确认:SQLite(开发)→ PostgreSQL(生产)** - [ ] 是否需要支持离线使用(教师端上课模式)? - [ ] 课程包是否需要支持导出/导入? - [ ] 是否需要支持多租户数据完全隔离? - [ ] 预计开发周期和团队规模? --- ## 八、资源库开发策略(2026-02-13 确认) 根据MVP优先级,资源库功能(绘本库、多媒体素材库、模板库)采用三阶段开发策略: | 阶段 | 内容 | 状态 | |-----|------|------| | **第一阶段** | 完成课程包核心功能,关联绘本使用文本输入 | ✅ 进行中 | | **第二阶段** | 开发资源库完整管理功能 | ⬜ 待开发 | | **第三阶段** | 重构资源选择逻辑,整合课程包与资源库 | ⬜ 待开发 | 详见 `开发进展记录.md` 资源库开发策略部分。 --- ## 八、下一步 1. **确定技术栈** - 前端、后端、数据库具体技术选型 2. **设计数据模型** - 核心实体和关系设计 3. **API接口设计** - 主要接口规范 4. **UI/UX设计** - 关键页面原型设计 5. **开发排期** - 详细开发计划和里程碑