|
|
# 编程教育系统项目分工
|
|
|
## 题库建设
|
|
|
- 经典教材习题选
|
|
|
- 语言入门课
|
|
|
- 算法课
|
|
|
- leetcode
|
|
|
|
|
|
## 产品管理
|
|
|
- 产品管理:整体规划,产品开发过程审计和完善。
|
|
|
- 进度管理:设定版本目标,审计 issue 时间规划,追踪完成进度,组织定期 release。
|
|
|
- 文档管理:编写用户文档及产品文档,撰写专利等。
|
|
|
|
|
|
## UX设计
|
|
|
- 用户故事
|
|
|
- 流程实现
|
|
|
- 体验优化
|
|
|
- 同类调研
|
|
|
- 需求分析:将需求整理为用户故事,并明确受众用户、设计目标、时间规划等,形成规范 issue。
|
|
|
- 原型设计:针对上述 issue 设计界面原型。
|
|
|
- 调研:调研竞争产品,调研类似设计等。
|
|
|
- 视觉设计:设计颜色、logo、图标、按钮样式等。
|
|
|
|
|
|
## 前端实现
|
|
|
- 页面布局:页面整体语义结构设计,位置布局。
|
|
|
- 组件编写:前端组件逻辑和样式实现。
|
|
|
- 状态管理:管理路由、跳转逻辑、全局状态等。
|
|
|
|
|
|
## 业务逻辑
|
|
|
- 接口实现
|
|
|
- 数据模型
|
|
|
## 支持服务
|
|
|
- 投递
|
|
|
- 分析
|
|
|
- 搜索
|
|
|
- 日志
|
|
|
- 社区
|
|
|
- 接口定义:管理 GraphQL 接口,通过 issue 提出修改 proposal。
|
|
|
- 逻辑对接:将 GraphQL 接口对接到模型操作或外部模块 API,进行完整的权限控制。
|
|
|
- 模型实现:将模型操作实现为数据库操作。
|
|
|
|
|
|
## 外部服务
|
|
|
- 投递:短信、邮件投递模块,管理验证码,管理邮件样式、退订链接等。
|
|
|
- 日志:部署 Elastic Stack,抓取和存储资源、日志信息。
|
|
|
- 搜索:对接 ElasticSearch,提供搜索 API。
|
|
|
- 分析:对接 Redis、ElasticSearch 等,实现高级统计和分析 API。
|
|
|
- 推荐:对接 ElasticSearch 等,结合离线数据,实现推荐系统 API。
|
|
|
|
|
|
## 工程建设
|
|
|
- 代码审查
|
|
|
- 测试
|
|
|
- 文档
|
|
|
- 版本控制
|
|
|
- 安全审计 |
|
|
- 代码审查:审查合并请求,管理、控制代码质量。
|
|
|
- 测试:编写单元测试用例,界面集成测试,报告错误。
|
|
|
- 部署:开发环境自动部署维护,生产环境部署、升级管理。
|
|
|
- 文档:编写和维护开发文档、接口文档等。
|
|
|
- 版本控制:审查合并请求,维护线性提交历史,培训、讲解协作开发规范。
|
|
|
- 安全审计:数据安全、网络安全等审计,提供安全防护建议。
|
|
|
|
|
|
## 题库建设
|
|
|
- 官方题库:编写和管理官方题库、题包,针对目标受众需要建立核心题库。
|
|
|
- 主题题库:针对不同主题(如 C++ 学习、考研准备等),编写、管理相应的题库和题包。 |