DEV TEAM OPERATION HANDBOOK
DEV TEAM OPERATION HANDBOOK
(Sổ tay tổ chức & vận hành đội phát triển phần mềm – bản dùng cho Wiki nội bộ / Markdown)
0. OUTLINE – KIẾN TRÚC TỔ CHỨC & CÔNG CỤ
0.1 Hệ sinh thái công cụ
- Jira / Issue Tracker: quản lý Bug / Feature / Task / Epic, Sprint, Roadmap.
- Git (GitHub): mã nguồn, Pull Request (PR), bảo vệ nhánh, CI/CD.
- Wiki (Confluence/Notion/GitLab Wiki): HLD/LLD, Release Notes, KB, Meeting notes.
- Chat (Teams): daily standup, thông báo release, phối hợp Dev–QA–Ops.
- CI/CD (GitHub Actions): build, test, security scan, deploy.
- Monitoring/Alerting: Sentry/Graylog/ELK + Prometheus/Grafana (log, APM, metric).
0.2 Liên kết giữa các công cụ
- Mỗi issue Jira bắt buộc có Issue Key và được gắn trong commit/PR (
[#ISSUE-123]). - PR phải liên kết Issue và HLD/LLD (nếu là feature/refactor).
- Pipeline CI gửi notification về kênh
#dev-releasevà cập nhật trạng thái vào Issue (transition tự động khi pass). - Release Notes mỗi version link danh sách PR/Issue đã merge và link tag.
1. TỔ CHỨC WORKSPACE
1.1 Jira / Boards / Workflow
- Boards:
Maintenance Board: Bug, Hotfix, Support.Development Board: Feature, Refactor, Improvement.
- Issue types:
Epic,Story/Feature,Task,Bug,Sub-task. - Workflow chuẩn:
To Do → In Progress → In Review → In Test → Ready to Deploy → Done. - Trường bắt buộc: Assignee, Priority (P1/P2/P3), Estimate (SP/giờ), Labels (module), Sprint.
1.2 Wiki / Cấu trúc thư mục
/wiki
├─ roadmap/
├─ release_notes/
├─ design/
│ ├─ hld/
│ └─ lld/
├─ processes/
├─ retro/
└─ templates/
1.3 Channel giao tiếp (ví dụ Slack/Teams)
#dev-daily: daily standup, blocker.#dev-general: trao đổi chung, thông báo.#dev-release: thông báo CI/CD, tag, downtime, rollback.#qa-channel: xác nhận test, ghi nhận bug.#dev-techup: nội dung đào tạo, tài liệu, lịch.
2. QUY TRÌNH CHUẨN ISSUE → DEPLOY (E2E)
| Stage | Mục tiêu | Đầu vào | Đầu ra | Trách nhiệm |
|---|---|---|---|---|
| 1. Tiếp nhận | Xác nhận phạm vi & độ ưu tiên | Yêu cầu/bug report | Issue hợp lệ | PO/QA/Lead |
| 2. Design & Plan | Thiết kế & ước lượng | Issue + HLD/LLD | Plan + Estimate | Lead/Dev |
| 3. Development | Thực hiện code | Plan + branch | PR hợp lệ | Dev |
| 4. Review | Bảo đảm chất lượng | PR | PR được approve | Reviewer/Lead |
| 5. Testing | Xác nhận chất lượng | Build staging | QA-PASS | QA |
| 6. Deployment | Đưa lên môi trường | Tag/release | Prod updated | DevOps |
| 7. Retrospective | Cải tiến liên tục | Số liệu sprint | Action items | Toàn team |
3. CHECKLIST THEO GIAI ĐOẠN
3.1 Stage 1 – Tiếp nhận
- Mô tả rõ What/Why/Expected Outcome.
- Assignee, Priority (P1/P2/P3), Estimate (SP/giờ), Labels module.
- Acceptance Criteria (AC) rõ ràng.
- Bug: môi trường, steps to reproduce, expected vs actual, logs/screenshot.
- Feature: link HLD (bắt buộc), LLD nếu chạm DB/API.
3.2 Stage 2 – Design & Plan
- HLD/LLD cập nhật trong
/wiki/design/. - Phân tích rủi ro: dữ liệu, hiệu năng, bảo mật, tương thích ngược.
- Chia nhỏ thành sub-task nếu > 2–3 ngày.
- Gắn Sprint/Milestone, xác nhận effort & dependency.
3.3 Stage 3 – Development
- Tạo branch đúng format (
feature/,bugfix/,hotfix/,refactor/). - Commit message:
[TYPE] short description (#ISSUE-ID). - Không commit secret/.env/log/dump;
.gitignoređầy đủ. - Có unit test/fixture (khi áp dụng), script demo nếu cần.
- Update schema/API phải có migration và doc.
3.4 Stage 4 – Code Review
Reviewer kiểm tra:
- Đúng convention (PEP8/Odoo/ESLint), dễ đọc, tách hàm.
- Không duplicate logic, không magic number.
- Xử lý lỗi/exception đầy đủ, timeout/transaction.
- Truy vấn/IO tối ưu; không N+1; index phù hợp.
- Test/CI pass; PR ≤ 500 LOC (nếu lớn: đề nghị tách PR).
- Tài liệu cập nhật khi đổi hành vi.
3.5 Stage 5 – Testing (QA)
- Test case trong Jira/TestRail; mapping AC đầy đủ.
- Test trên
stagingvới dữ liệu gần thực tế. - Kiểm tra regression module liên quan.
- Gắn nhãn
QA-PASStrước khi deploy.
3.6 Stage 6 – Deployment
- Merge
develop → release/x.y; tagvX.Y.Z. - CI/CD: build, unit/integration test, security scan pass.
- Maintenance window (20:00–22:00) + người trực Dev & QA.
- Post kết quả/rollback (nếu có) vào
#dev-release. - Cập nhật
/wiki/release_notes/.
3.7 Stage 7 – Retrospective
- Thống kê bug post-release, MTTR, tỉ lệ pass pipeline.
- Review estimate vs thực tế, nguyên nhân chênh lệch.
- Chốt action items + owner + ETA; lưu
/wiki/retro/.
4. QUẢN TRỊ MEETING & NGHI THỨC LÀM VIỆC
4.1 Lịch & nội dung chuẩn
| Meeting | Tần suất | Thành phần | Thời lượng | Nội dung/Checklist |
|---|---|---|---|---|
| Daily Standup | Mỗi ngày | Dev/QA/Lead | 15 phút | Hôm qua/Hôm nay/Blocker; cập nhật Jira trước họp |
| Sprint Planning | 2 tuần/lần | PM/Lead/Dev/QA | 60–90 phút | Chọn scope, estimate, assign, rủi ro, Definition of Done |
| Sprint Review | Cuối sprint | PM/Stakeholder/Dev/QA | 45–60 phút | Demo, kết quả KPI, quyết định release |
| Retrospective | Cuối sprint | Toàn team | 45–60 phút | What went well/bad/learned; action items |
| Weekly Report | Hàng tuần | Lead/PM | 30 phút | Velocity, bug ratio, blockers, staffing |
| TechUp | Hàng tuần | Tất cả dev | 45–60 phút | Chủ đề, slide, demo, KB; đăng ký host luân phiên |
| 1–1 Mentoring | Hàng tháng | Lead + từng Dev | 30 phút/người | Kỹ năng, mục tiêu, kế hoạch phát triển |
4.2 Quy tắc tổ chức họp
- Bắt đầu đúng giờ, kết thúc đúng giờ; facilitator rõ ràng.
- Tất cả quyết định phải ghi log vào Wiki/Minutes & assign owner.
- Không họp nếu không có agenda; agenda phải gửi tối thiểu 2h trước.
5. CHIẾN LƯỢC BRANCH, PR, CI/CD
5.1 Branching
main (production – protected)
├─ release/x.y (stable for patch)
├─ develop (integration)
│ ├─ feature/<name>
│ ├─ bugfix/<issue-id>-<slug>
│ ├─ hotfix/<critical>
│ └─ refactor/<module>
Quy tắc:
- Chỉ PR mới được merge (cấm push trực tiếp
main,release/*,develop). hotfix/*có thể từmain→ PR vàomain+develop(back-merge).
5.2 Commit & PR
- Commit: nhỏ, có ý nghĩa;
[TYPE] msg (#ISSUE-ID)(TYPE: FEATURE/BUGFIX/REFACTOR/CHORE/DOCS). - PR template bắt buộc (mô tả, ảnh hưởng, risk, checklist, test plan).
- Reviewers: ≥ 1 (PR > 500 LOC: ≥ 2). SLA phản hồi: 24h.
5.3 CI/CD Pipeline (tham chiếu)
- Lint + Unit Test → 2) Build Image/Package → 3) Security Scan (SAST/Dependency) → 4) Integration Test → 5) Staging Deploy → 6) Manual Gate → 7) Prod Deploy khi tag.
6. CODE REVIEW POLICY (TIÊU CHÍ & CHẤM ĐIỂM)
6.1 Tiêu chí đánh giá
- Đúng: logic đúng, AC đạt, không phá backward compatibility.
- Sạch: convention, cấu trúc, tách lớp/service, log rõ ràng.
- Nhanh: truy vấn tối ưu, hạn chế round-trip, batch/bulk hợp lý.
- An toàn: input validation, permission check, secret handling, rate limit.
- Kiểm thử: có test/plan; QA có thể theo dõi và tái hiện.
6.2 Thang điểm gợi ý (0–2 điểm mỗi tiêu chí; tổng 10)
- 0: thiếu/không đạt; 1: chấp nhận được; 2: tốt.
- PR < 7 yêu cầu chỉnh sửa; ≥ 8 cho phép merge.
7. WORKLOAD, KPI & NĂNG LỰC
7.1 Quy tắc phân bổ
- Mỗi dev tối đa 2 issue song song; ưu tiên dứt điểm.
- Task > 3 ngày → chia nhỏ; cập nhật estimate khi thay đổi > 20%.
7.2 KPI đề xuất
- Velocity: Story points/sprint.
- Lead Time: Issue created → Done.
- PR Throughput: số PR/tuần; Review Time trung bình.
- Bug Ratio: (Bug post-release)/(Feature release).
- TechUp Contribution: số buổi host/bài KB/quý.
7.3 Năng lực & mentoring
- Ma trận năng lực: Domain (Odoo/Backend/Frontend/DevOps), Coding, Review, Testing, Communication.
- 1–1 hằng tháng: mục tiêu 3 tháng, kế hoạch học tập, shadowing/mentoring.
8. VAI TRÒ & RACI
| Hạng mục | PO | PM | Dev | QA | Dev Lead | DevOps |
|---|---|---|---|---|---|---|
| Tiếp nhận yêu cầu | A | R | C | C | C | - |
| Thiết kế (HLD/LLD) | C | C | R | C | A | - |
| Phát triển | - | C | R | C | A | - |
| Code Review | - | - | C | - | A/R | - |
| Kiểm thử | - | C | C | A/R | C | - |
| Triển khai | - | C | C | C | C | A/R |
| Release Notes | C | A | C | C | R | C |
| Retro/Improvement | C | A | R | R | A | C |
(A: Accountable, R: Responsible, C: Consulted)
9. TEMPLATES (RAW MD)
9.1 Pull Request Template
## Description
[Feature/Bug/Refactor] …
## Related Issue
Fixes #ISSUE-ID
## Impact/Risk
- Module ảnh hưởng: …
- Migration: Có/Không (mô tả)
## Test Plan
- Case 1: …
- Case 2: …
## Checklist
- [ ] Đã test local
- [ ] Pass CI
- [ ] Cập nhật wiki/doc
- [ ] Không commit file rác/secret
9.2 Weekly Report Template
# Weekly Report – [Tên Dev] – Tuần [XX]
## Done
- [x] …
## In Progress
- [ ] …
## Blockers
- …
## Next Week Plan
- …
9.3 TechUp Note Template
# TechUp – [Ngày] – [Chủ đề]
**Host:** …
**Tóm tắt:** …
**Demo/Repo:** …
**Bài học:** …
**Tài liệu tham khảo:** …
10. PHỤ LỤC – CHECKLIST TỔNG HỢP THEO LOẠI TASK
10.1 BUG / HOTFIX
- Tiếp nhận: [ ] Steps to reproduce; [ ] Env; [ ] Logs; [ ] Priority P1/P2/P3.
- Dev: [ ] Branch
bugfix/hoặchotfix/; [ ] Test local; [ ] PR liên kết issue. - Review: [ ] RCA ngắn; [ ] Không ảnh hưởng chức năng khác; [ ] Pipeline pass.
- Test: [ ] QA regression; [ ] Tag
QA-PASS. - Deploy: [ ] Nếu P1: theo quy trình hotfix (cửa sổ khẩn).
10.2 FEATURE
- Tiếp nhận: [ ] AC; [ ] HLD; [ ] Estimate; [ ] Labels module.
- Dev: [ ] Branch
feature/; [ ] Unit test (nếu có); [ ] Doc cập nhật. - Review: [ ] Design alignment; [ ] Security/permission; [ ] Performance.
- Test: [ ] UAT trên staging với dữ liệu mẫu.
- Deploy: [ ] Tag version; [ ] Release note.
10.3 REFACTOR / IMPROVEMENT
- Tiếp nhận: [ ] Phạm vi; [ ] Chỉ số kỳ vọng (perf/memory/complexity).
- Dev: [ ] Benchmark trước/sau; [ ] Không đổi behavior (hoặc có doc).
- Review: [ ] Code smell giảm; [ ] Test coverage không giảm.
- Test: [ ] Regression lân cận; [ ] So sánh benchmark.
10.4 INFRA / MAINTENANCE
- Kế hoạch: [ ] Thời gian; [ ] Ảnh hưởng; [ ] Rollback plan.
- Thực thi: [ ] Script/IaC; [ ] Change log.
- Sau triển khai: [ ] Health check; [ ] Post-mortem nếu sự cố.
11. MEETING AGENDA – SUMMARY
- Daily: Yesterday/Today/Blocker (<= 60s/người). Cập nhật Jira trước họp.
- Planning: mục tiêu sprint, scope, estimate, risk, DoR/DoD, capacity, dependency.
- Review: demo; KPI sprint; quyết định release.
- Retro: keep/try/stop; 3 hành động ưu tiên + owner + ETA.
- TechUp: 1 chủ đề/tuần; slide + demo; KB sau buổi.
12. ĐỊNH NGHĨA – DoR & DoD
- Definition of Ready (DoR): Issue có mô tả + AC + estimate + assignee + tài liệu kèm.
- Definition of Done (DoD): Code + Review + Test pass + Doc/Release note + Deploy/Verify.
13. BẢO MẬT & TUÂN THỦ
- Không lưu secret trong repo; dùng Vault/CI variables.
- Log không chứa dữ liệu nhạy cảm; ẩn PII theo quy định.
- Bật branch protection, 2FA, review bắt buộc.
- Định kỳ security scan dependency & SAST.