paopao/docs/tasks/泡泡开源社区实训开发.md

73 lines
3.8 KiB
Markdown
Raw Normal View History

2024-05-12 16:13:08 +08:00
## 基于Scrum的实训项目开发
### 1. **项目背景与目标设定**
- **定义项目**
2024-05-15 08:57:42 +08:00
> 基于开源项目[paopao-ce](https://github.com/rocboss/paopao-ce),使用其前端使用spring boot开发后端系统
2024-05-12 16:13:08 +08:00
- **明确目标**
2024-05-15 08:57:42 +08:00
> - 了解scrum开发流程理解scrum开发模式
> - 了解敏捷需求分析和管理
2024-05-12 16:13:08 +08:00
> - 掌握基于spring boot框架的开发
> - 掌握基于git的协作开发流程
> - 了解CI/CD流程
### 2. **Scrum团队组建**
- **角色分配**
- **产品负责人Product Owner, PO**:负责定义用户故事,确定产品功能的优先级,代表客户利益。
- **Scrum Master**保障Scrum流程顺畅执行解决过程中遇到的障碍促进团队自我管理。
- **开发团队**:跨职能团队,负责设计、开发和测试工作,自主决定如何实现产品功能。
**练习任务** [任务1 项目启动](./任务1-项目启动与开发模型学习.md)
### 3. **Scrum工件准备**
- **产品待办事项列表Product Backlog**PO创建并维护列出所有需求项作为工作的来源。
- **Sprint待办事项列表Sprint Backlog**每次Sprint开始时团队从产品待办事项列表中挑选最高优先级的事项形成Sprint待办事项列表。
- **迭代计划会议Sprint Planning**确定Sprint目标选择本次迭代要完成的工作项并估算工作量。
**练习任务**: [任务2 需求分析和管理](./任务2-需求分析和管理)
### 4. **Sprint周期与仪式**
- **Sprint周期**建议2-4周根据项目复杂度和学生可用时间调整。
- **每日立会Daily Scrum**:每天简短会议,团队分享昨日进展、今日计划及遇到的障碍。
- **Sprint评审会议Sprint Review**Sprint结束时展示成果给PO和其他利益相关者收集反馈。
- **Sprint回顾会议Sprint Retrospective**团队反思过去Sprint的流程讨论改进措施。
**冲刺周期一的任务**
2024-05-15 08:57:42 +08:00
- 冲刺计划会议: 设定冲刺目标以及为冲刺选择用户故事
2024-05-12 16:13:08 +08:00
- [任务3 创建spring boot初始项目](./任务3-Sprint-1-创建spring%20boot初始项目.md)
- [任务4-restful接口回应数据的统一封装的实现t](./任务4-Sprint-1-restful接口回应数据的统一封装的实现.md)
- [任务5-实现统一异常处理](./任务5-Sprint-1-实现统一异常处理.md)
- [任务6-注册接口实现](./任务6-Sprint-1-注册接口实现.md)
- [任务7-基于JWT的用户认证实现](./任务7-Sprint-1-基于JWT的用户认证实现.md)
2024-05-15 08:57:42 +08:00
- [任务8-实现获取当前用户信息接口](./任务8-Sprint-1-获取当前用户信息接口.md)
- 评审和反思会议
**冲刺周期二的任务**
- 冲刺计划会议: 设定冲刺目标以及为冲刺选择用户故事
2024-05-22 14:13:04 +08:00
- [任务9-文件上传](./任务9-Sprint-2-%20文件上传.md)
2024-05-26 15:49:38 +08:00
- [任务10-发布动态](./任务10-Sprint-2-%20发布动态.md)
- [任务11-点赞和收藏](./任务11-Sprint-2-点赞和收藏动态.md)
- [任务12-评论相关功能的实现](./任务12-Sprint-2-评论相关功能的实现.md)
2024-05-15 08:57:42 +08:00
- 评审和反思会议
2024-05-12 16:13:08 +08:00
### 5. **敏捷实践应用**
- **用户故事**:使用用户故事来描述需求,确保团队关注用户价值。
- **工作可视化**:使用看板或任务板来可视化工作进度,增强透明度。
- **持续集成与交付CI/CD**:教授并实践自动化构建和部署,快速反馈代码质量。
### 6. **评估与反馈循环**
- **迭代反馈**每个Sprint结束后通过回顾会议收集反馈不断优化流程。
- **个人成长**:鼓励学生反思个人在敏捷团队中的角色和贡献,设定个人成长目标。
### 7. **工具与资源**
- **工具推荐**
> 使用gitea进行项目管理和问题追踪
>
> 使用gitea进行版本控制。
- **学习资源**