Bỏ qua

WORKFLOW THEO MÔI TRƯỜNG: DEV > QA > PPD > PROD > HOTFIX > DR

Đây là kiểu workflow khác biệt như thế nào?

1. Đặc điểm khác biệt chính

Workflow này khác với các mô hình phổ biến như Git Flow, GitHub Flow hay Trunk Based Development ở những điểm sau:

  • Nhiều môi trường trung gian hơn: Thay vì chỉ có development và production, workflow này có tới 4-6 môi trường
  • Luồng di chuyển code một chiều: Code luôn di chuyển theo thứ tự nhất định qua nhiều "cổng kiểm soát"
  • Tách biệt rõ ràng giữa các vai trò: Developer, QA, SysAdmin, DevOps đều có môi trường và trách nhiệm riêng
  • Hướng đến sự ổn định và an toàn hơn là tốc độ: Ưu tiên kiểm soát rủi ro và chất lượng

2. Giải thích từng thành phần

  • DEV: Môi trường phát triển, nơi developers làm việc và tích hợp code
  • QA: Môi trường kiểm thử, nơi QA team thực hiện test kỹ lưỡng
  • PPD (Pre-Production/Pre-Deployment): Môi trường gần giống production, dùng để kiểm tra tích hợp cuối cùng
  • PROD: Môi trường sản xuất, phục vụ người dùng thật
  • HOTFIX: Nhánh đặc biệt để xử lý lỗi khẩn cấp trên production
  • DR (Disaster Recovery): Môi trường dự phòng khi có sự cố, đảm bảo tính liên tục của dịch vụ

Luồng làm việc điển hình

Feature Branch → DEV → QA → PPD → PROD
                 ↑                  ↓
                 └──── HOTFIX ←─────┘
                                   DR (sync)
  1. Developer tạo Feature Branch từ DEV
  2. Sau khi hoàn thành, merge vào DEV và deploy để team test nội bộ
  3. Khi ổn định, deploy lên QA để QA team test kỹ lưỡng
  4. Sau khi QA chấp nhận, deploy lên PPD để UAT (User Acceptance Testing)
  5. Cuối cùng, deploy lên PROD khi mọi bên đã chấp thuận
  6. HOTFIX được tạo trực tiếp từ PROD khi có lỗi khẩn cấp, sau khi sửa sẽ merge ngược về các môi trường khác
  7. DR được đồng bộ với PROD để sẵn sàng thay thế khi cần

Tổ chức nào thường áp dụng workflow này?

  • Ngân hàng và tổ chức tài chính: VCB, BIDV, TPBank
  • Bảo hiểm: Bảo Việt, Manulife
  • Chính phủ và cơ quan nhà nước
  • Hệ thống y tế
  • Các doanh nghiệp lớn với yêu cầu compliance cao

Ưu điểm của workflow này

  • An toàn cao: Nhiều lớp kiểm tra trước khi lên production
  • Phù hợp với quy trình approval phức tạp: Nhiều stakeholder phải duyệt trước khi release
  • Kiểm soát chất lượng tốt: Phát hiện lỗi sớm ở môi trường thấp
  • Đáp ứng quy định tuân thủ: Audit trail rõ ràng, phù hợp với các tiêu chuẩn như SOX, PCI-DSS

Nhược điểm của workflow này

  • Chậm: Thời gian từ khi phát triển đến khi ra production có thể kéo dài
  • Phức tạp: Nhiều môi trường, nhiều quy trình cần theo dõi
  • Chi phí cao: Duy trì nhiều môi trường đòi hỏi nhiều tài nguyên
  • Không phù hợp với agile/fast delivery: Khó áp dụng cho startup hoặc sản phẩm cần phát triển nhanh

nó chỉ phù hợp với những tổ chức có yêu cầu kiểm soát chặt chẽ và ưu tiên độ an toàn, ổn định hơn là tốc độ phát hành.

Bình luận