09 - Release Management (Quản lý Release)
Mục tiêu: Quản lý Release hiệu quả từ GitHub Projects
Thời lượng: 45 phút Đối tượng: PM, QA Lead
🎯 Release trong GitHub Projects
Release là gì?
Release = Phiên bản sản phẩm được deploy lên production, chứa một tập hợp features/bugs đã hoàn thành.
📋 Pre-Release Checklist (PM)
2 tuần trước release:
- [ ] Tất cả issues trong milestone đã ở status "Testing" or "Done"
- [ ] QA regression test complete
- [ ] No critical bugs open
- [ ] Release notes drafted
1 tuần trước:
- [ ] Stakeholder review features on staging
- [ ] PM verify all features
- [ ] Security review (if needed)
- [ ] Performance check
3 ngày trước:
- [ ] Freeze code (no new features)
- [ ] Bug fixes only
- [ ] Final QA smoke test
1 ngày trước:
- [ ] Deployment plan ready
- [ ] Rollback plan ready
- [ ] Team on standby
📝 Release Notes Template
# Release v2.5.0 - June 16, 2024
## 🎉 New Features
- [#123] Save for Later in shopping cart
- [#125] Dark mode support
- [#130] Export reports to PDF
## 🔧 Improvements
- [#135] Faster checkout flow (2x speed)
- [#137] Better mobile responsive
## 🐛 Bug Fixes
- [#140] Fix login with Google on Safari
- [#142] Fix checkout crash on iOS
- [#145] Fix typo in email template
## 📊 Metrics
- 12 features shipped
- 8 bugs fixed
- 98% test coverage
- 0 critical bugs
## 🙏 Thanks
Thanks to @dev-alice, @dev-bob, @qa-carol for great work!
## 📦 Installation
```bash
npm install [email protected]
Full changelog: https://github.com/org/repo/compare/v2.4.0...v2.5.0
---
## 🚀 Release Process
### 1. Code Freeze
T-3 days: Code freeze
- No new features
- Bug fixes only
- Deploy to staging
### 2. QA Final Test
T-2 days: QA smoke test
- Test all features in release
- Regression test
- Performance test
- Sign-off
### 3. Deploy Production
T-Day: Deploy
- Backup database
- Deploy code
- Run migrations
- Smoke test production
- Monitor logs (2 hours)
- Announce to users
### 4. Post-Release
T+1 day:
- Monitor metrics (error rate, performance)
- Close milestone
- Retrospective
- Plan next release
---
## 🏷️ GitHub Release Feature
### Tạo Release trên GitHub
```bash
# Using GitHub CLI
gh release create v2.5.0 \
--title "Release v2.5.0" \
--notes-file RELEASE_NOTES.md
# Or via GitHub UI
Repository → Releases → Draft new release
- Tag: v2.5.0
- Title: Release v2.5.0
- Description: (paste release notes)
- Attach binaries (if needed)
- Publish
📊 Release Metrics
Track per release:
- Features shipped
- Bugs fixed
- Test coverage %
- Deployment time
- Rollback count
- Critical bugs in production (target: 0)
✅ Checklist sau khi đọc xong
- Hiểu release process
- Biết viết release notes
- Biết pre-release checklist
- Biết cách tạo GitHub release
🚀 Tiếp theo: 10-practical-exercises.md - Bài tập thực hành