Nền tảng Trung bình 7 phút đọc

Rủi ro vs Issue: RAID log cứu dự án

Cách theo dõi rủi ro trước khi xảy ra, issue sau khi xảy ra, và format RAID log giữ cả hai trong một chỗ. Template + nhịp họp giữ log trung thực.

Mục lục
  1. Khi nào risk log thật sự bắt đầu mang lại giá trị?
  2. Cái giá của việc không có risk log là gì?
  3. RAID log tối thiểu trông thế nào?
  4. RAID log ở quy mô đa team trông thế nào?
  5. Nhịp tuần giữ cho log luôn trung thực ra sao?
  6. RAID log có thể tự tạo ra những lỗi nào?
  7. Khi nào RAID log là quá liều?
  8. Đi tiếp từ đây như thế nào?

Có một artifact phân biệt giữa dự án sống sót và dự án không - đó là risk log. Lý do rất đơn giản: rủi ro nào được lộ ra giấy thì sẽ được giảm thiểu, còn rủi ro nằm trong đầu ai đó thì sẽ bị bỏ quên. Chương này giới thiệu format RAID log, nhịp tuần để giữ nó luôn trung thực, và một template bạn có thể đem vào repo ngay hôm nay.

Khi nào risk log thật sự bắt đầu mang lại giá trị?

Có ba dấu hiệu chính.

Dự án dài hơn 4 tuần. Dưới mức đó, bạn vẫn có thể giữ toàn bộ rủi ro trong đầu. Vượt qua đó, trí nhớ bắt đầu suy giảm và một số rủi ro sẽ rơi rụng trong im lặng.

Dự án phụ thuộc vào bên ngoài. Vendor, các team khác, review pháp lý, review bảo mật, handover sang ops - mỗi đầu mối là một nguồn rủi ro mà bạn không kiểm soát. Cái log là cách duy nhất để nhìn thấy hết tất cả cùng lúc.

Dự án có deadline cứng từ bên ngoài. Một ngày ra mắt cố định nghĩa là rủi ro phải có kế hoạch dự phòng, chứ không chỉ giảm thiểu kiểu best-effort. Cái log buộc cả team phải ngồi xuống thảo luận về phương án dự phòng.

Nếu không dấu hiệu nào ở trên đúng (ví dụ một tool nội bộ làm trong 1 tuần và bạn kiểm soát đầu cuối), thì tổng kết bằng trí nhớ là đủ. Phần lớn dự án không-nhỏ thường chạm vào ít nhất hai trong ba dấu hiệu trên.

Cái giá của việc không có risk log là gì?

Có ba kiểu lỗi thường gặp.

Bị bất ngờ bởi những vấn đề lẽ ra phải thấy trước. Mỗi postmortem của một dự án thất bại đều có câu "đáng lẽ phải nhìn thấy chuyện này từ trước". Risk log chính là artifact giúp bạn nhìn thấy trước và viết ra ở chỗ ai đó có thể hành động.

Giảm thiểu được làm quá muộn. Ngay cả khi rủi ro được phát hiện, nếu không có log thì việc theo dõi diễn ra không chính thức và phương án giảm thiểu sẽ trượt. Đến lúc có người nói "thật sự phải fix vấn đề vendor đó", thì SDK của vendor đã ship hỏng từ lâu rồi.

Không có dấu vết giấy tờ ở retrospective. Khi dự án trễ ngày, lãnh đạo sẽ hỏi "lẽ ra có thể làm gì khác?". Nếu có risk log, bạn có bằng chứng. Nếu không, mọi postmortem sẽ biến thành cuộc tranh luận về việc lẽ ra ai phải biết trước.

RAID log tối thiểu trông thế nào?

Với một team 5 người, chỉ cần một bảng markdown duy nhất cho mỗi dự án:

# RAID Log Dự án — {{ Tên dự án }}

Cập nhật cuối: 2026-06-03 bởi {{ Tên PM }}

## Rủi ro (có thể xảy ra)

| ID | Mô tả | XS | TĐ | Điểm | Owner | Giảm thiểu | Trạng thái |
|----|-------|----|----|------|-------|------------|------------|
| R1 | Vendor SDK v3 có thể trượt từ tháng 6 sang tháng 8 | dễ | lớn | 16 | TL | Build adapter trên v2; review 15/6 | Mở |
| R2 | Cửa sổ upgrade Postgres trùng ngày launch | có thể | nặng | 15 | EM | Đàm phán cửa sổ với infra; hạn 10/6 | Mở |
| R3 | Designer nghỉ thai sản tuần launch | chắc chắn | nhẹ | 5 | PM | Ghi handover trước; designer #2 thay | Đã giảm thiểu |

## Giả định (coi là đúng)

| ID | Mô tả | Đã verify | Owner |
|----|-------|-----------|-------|
| A1 | Webhook Stripe retry idempotent phía ta | chưa | TL |
| A2 | Team customer success xử lý support tier-1 sau launch | đã xác nhận | PM |

## Issue (đang xảy ra)

| ID | Mô tả | Mức | Owner | Hành động kế | Mở từ |
|----|-------|-----|-------|--------------|-------|
| I1 | Env staging down từ thứ Ba; chặn QA | cao | EM | Ticket infra #4421 | 2026-06-01 |

## Dependency (ngoài tầm kiểm soát)

| ID | Mô tả | Bên cấp | Hạn | Trạng thái |
|----|-------|---------|-----|------------|
| D1 | Spec API auth service v4 | Team Platform | 2026-06-08 | Đúng tiến độ |
| D2 | Asset thương hiệu cho trang launch | Marketing | 2026-06-12 | Có rủi ro |

Template được giữ ngắn gọn có chủ ý. Quan trọng nhất là kỷ luật viết ra một thứ gì đó, chứ không phải làm cho format hoàn hảo. Mười phút mỗi tuần luôn tốt hơn một cái log bóng bẩy mà chẳng ai cập nhật.

RAID log ở quy mô đa team trông thế nào?

Có ba thay đổi khi dự án vượt qua biên giới của một team:

flowchart TB
    Team1[RAID Team A] --> Combined[RAID cấp dự án<br/>top 5 rủi ro tổng hợp]
    Team2[RAID Team B] --> Combined
    Team3[RAID Team C] --> Combined
    Combined --> Exec[Status lãnh đạo<br/>chỉ top 3]
    Combined --> Review[Review dự án tuần]

Mỗi team sở hữu RAID log riêng của mình; project lead tổng hợp top 5 rủi ro xuyên các team thành một log ở cấp dự án. Chỉ top 3 rủi ro cấp dự án (điểm từ 15 trở lên) mới được đẩy lên status report của lãnh đạo - vì lãnh đạo không thể hành động được trên 30 rủi ro nhỏ cùng lúc. Chương status report sẽ lo phần format tổng hợp này.

Nhịp tuần giữ cho log luôn trung thực ra sao?

Có bốn checkpoint, được sắp vào cùng slot lịch mỗi tuần:

  1. Cập nhật từ owner. Mỗi owner rủi ro dành 30 giây để nói về thay đổi trạng thái, tiến độ giảm thiểu, hoặc đơn giản là "vẫn mở, không đổi".
  2. Rủi ro mới. Ai cũng có thể nêu một rủi ro mới trong 60 giây. PM chấm điểm ngay tại chỗ.
  3. Chuyển cấp. Các rủi ro đã trở thành issue trong tuần sẽ được chuyển cột; những rủi ro đã giảm thiểu thành công sẽ được đánh dấu đóng.
  4. Review top 5. Năm rủi ro điểm cao nhất, mỗi cái một phút - phương án giảm thiểu có chạy không, có cần escalate không.

Tổng thời gian: 15 phút. Nếu cuộc họp kéo dài hơn, hoặc là log đã lỗi thời, hoặc là dự án có quá nhiều rủi ro - cả hai đều là tín hiệu cần chú ý.

RAID log có thể tự tạo ra những lỗi nào?

Khi nào RAID log là quá liều?

Có hai trường hợp.

Task nội bộ kéo dài 2 tuần. Một sprint fix bug hay refactor nhỏ không cần đến log chính thức. Engineer senior chỉ cần nhắc rủi ro trong daily standup là đủ.

Dự án thực sự ổn định. Các công việc bảo trì dài hạn, nơi cùng một vài rủi ro xoay vòng đều đặn (cert hết hạn, cập nhật dependency, dọn test flaky). Hãy ghi chúng vào runbook của team, chứ không phải vào RAID log của dự án.

RAID log chỉ thật sự đáng đầu tư công sức ở mức dự án - khi có scope giới hạn, deadline cứng, và nhiều unknown. Dưới mức đó, các artifact nhẹ hơn vẫn chạy được.

Đi tiếp từ đây như thế nào?

Chương tiếp theo: stakeholder và comms - cách truyền tải các rủi ro được theo dõi ở đây tới những người không tham dự cuộc review hàng tuần. Sau đó, scope và đánh đổi sẽ cho thấy cách phản ứng khi một rủi ro buộc bạn phải đổi scope.

Câu hỏi thường gặp

Rủi ro khác issue ra sao?
Khác nhau ở thì. Rủi ro nằm ở tương lai ('vendor X có thể không giao SDK đúng hạn'); issue đang ở hiện tại ('vendor X đã không giao SDK; chúng ta đang bị chặn'). Cùng một vấn đề sẽ chuyển từ rủi ro thành issue khi xác suất xảy ra thành 100%. Phải theo dõi cả hai vì cách phản ứng khác nhau: rủi ro cần kế hoạch giảm thiểu, còn issue cần ứng phó như một sự cố.
Thang xác suất và tác động dùng thế nào?
Mỗi thang có 5 mức, càng đơn giản càng tốt. Xác suất: hiếm / khó / có thể / dễ / chắc chắn. Tác động: nhẹ / vừa / lớn / nặng / thảm hoạ. Nhân thứ tự của hai thang để có điểm từ 1-25. Các rủi ro từ 15 điểm trở lên sẽ được đẩy lên status report cho lãnh đạo hàng tuần; các rủi ro dưới 15 ở lại trong RAID log cấp team.
Ai là người sở hữu RAID log?
PM, hoặc engineer senior đang đóng vai PM theo chương 1. Mỗi entry trong log có owner riêng chịu trách nhiệm giảm thiểu, nhưng bản thân cái log thì phải có duy nhất một người chịu trách nhiệm chính. Khi hai người cùng sở hữu một log, kết quả là không ai cập nhật cả. Hãy review log trong cuộc họp dự án hàng tuần và archive các entry đã đóng được hơn 30 ngày.
Rủi ro nên để trong Jira/Linear hay viết doc riêng?
Doc riêng. Issue tracker dành cho task; còn rủi ro là cái có thể xảy ra. Trộn hai loại sẽ làm loãng cả hai. Một file markdown trong repo dự án là đủ cho team nhỏ; team lớn hơn thì dùng trang Confluence hay bảng Notion. Yêu cầu duy nhất là cái log đó phải xuất hiện trong cuộc review status hàng tuần - nếu nó nằm ở chỗ không ai mở, thì coi như nó không tồn tại.