Định dạng file hỗ trợ
draw.io, BPMN 2.0, nhật ký sự kiện CSV, và giới hạn hiện tại.
Nhật ký sự kiện (.csv) — dựng quy trình từ dữ liệu thật
Thay vì tự khai thời gian theo trí nhớ, bạn có thể tải lên nhật ký mà hệ thống nghiệp vụ xuất ra. Công cụ dựng lại quy trình từ chính dữ liệu đó: bước nào đứng trước bước nào, tỉ lệ rẽ nhánh thật, thời gian làm và thời gian chờ thật.
MaHoSo,HoatDong,BatDau,KetThuc
HS-001,Tiếp nhận,2026-03-01 08:00,2026-03-01 08:20
HS-001,Thẩm định,2026-03-02 09:00,2026-03-02 10:30
HS-001,Trả kết quả,2026-03-02 14:00,2026-03-02 14:10
- Tên cột nhận cả tiếng Việt không dấu lẫn tiếng Anh
(
case_id,activity,timestamp…). - Hai cột tuỳ chọn:
NguoiThucHienvàChiPhi. - Có
KetThucthì tách được làm và chờ. Chỉ một cột thời gian thì toàn bộ khoảng cách giữa hai sự kiện được ghi vào phần chờ — không biết thì thừa nhận là không biết, không đoán bừa.
Công cụ soát file trước khi dựng — và nói ra mọi chỗ đáng ngờ
Một file đọc được vẫn có thể cho ra con số sai. Công cụ soát hai lớp và mọi thứ nó tìm thấy đều hiện trên màn hình, không có gì bị bỏ qua trong im lặng.
Lớp một — file có dùng được không:
- Thiếu cột bắt buộc, hoặc không có dòng tiêu đề → từ chối, kèm tên các cột đọc được để bạn biết đặt lại thế nào.
- Dòng thiếu mã hồ sơ, thiếu tên hoạt động, hoặc không đọc nổi thời gian → bị bỏ, và số dòng bị bỏ được nói ra kèm vài ví dụ.
- Ngày tháng nhập nhằng
dd/mm↔mm/dd: quyết bằng cách đếm bằng chứng từng dòng, không đoán theo dòng đầu. Cả cột làmm/dd, hay file ghép từ hai nguồn, đều có câu cảnh báo riêng.
Lớp hai — dữ liệu có hợp lý không:
KetThucđứng trướcBatDau: thời gian làm bị tính bằng 0, nên phút làm của bước đó thấp hơn thực tế.- Chi phí âm: cũng bị tính bằng 0.
- Dòng trùng khít (cùng hồ sơ, hoạt động, dấu thời gian) — thổi phồng tần suất, mà tần suất chính là xác suất nhánh.
- Hồ sơ chỉ có một sự kiện: không sinh ra chuyển tiếp nào.
- Quá ít hồ sơ (dưới 5): mọi tỉ lệ chỉ là ví dụ, không phải số đo.
- Khoảng cách trên 30 ngày giữa hai sự kiện liên tiếp: toàn bộ khoảng đó tính là thời gian chờ nên kéo thời gian chu kỳ lên rất mạnh.
Nút ⬇ Tải nhật ký mẫu (.csv) có ở mọi chỗ nhận file. Mẫu gồm 24 hồ sơ, ba biến thể (đi thẳng · có vòng làm lại · bị từ chối), hai bước chạy chồng lấn thời gian để bạn thấy bộ dò khối song song làm việc, và đủ cả sáu cột. Nó cố tình không sinh ra một cảnh báo chất lượng nào — nên nếu file của bạn sinh ra cảnh báo, khác biệt nằm ở dữ liệu chứ không ở công cụ.
A đứng ngay trước B trong cùng một hồ sơ thì có cạnh A→B, xác suất nhánh chính là tần suất quan sát được. Đây là cách đơn giản nhất trong process mining — nói rõ để bạn biết đây không phải thuật toán inductive hay alpha. Vòng lặp làm lại tự hiện ra thành cạnh quay lui, và chỗ rẽ nhánh được chèn cổng XOR cho đúng ký pháp.
Hai định dạng được hỗ trợ
| Định dạng | Đuôi file | Nguồn thường gặp |
|---|---|---|
| draw.io / mxGraph | .drawio, .xml |
diagrams.net, draw.io desktop, Confluence |
| BPMN 2.0 (OMG) | .bpmn, .xml |
Camunda Modeler, Bizagi, Signavio, bpmn.io |
Công cụ nhận diện hình vẽ thế nào
Với file draw.io, kiểu dáng của ô quyết định loại bước:
| Hình | Style chứa | Được hiểu là |
|---|---|---|
| Elip / hình tròn | ellipse | Sự kiện bắt đầu hoặc kết thúc |
| Chữ nhật bo góc | rounded=1 | Công việc |
Hình thoi có + | rhombus + nhãn + | Cổng song song (AND) |
| Hình thoi khác | rhombus | Cổng loại trừ (XOR) |
Bắt đầu và kết thúc còn được suy ra từ cấu trúc: bước không có luồng vào là điểm bắt đầu, không có luồng ra là điểm kết thúc — kể cả khi bạn không vẽ hình elip.
Ghi chú dán trên sơ đồ
File BPMN 2.0 cho phép dán một mẩu chữ cạnh bước — textAnnotation nối
bằng association. Đây là chỗ người phân tích ghi những thứ không ô nào
chứa được: “theo Thông tư 39”, “SLA 3 ngày”, “chỉ áp dụng cho
hồ sơ trên 500 triệu”.
- Bước có ghi chú hiện huy hiệu ✎ trên bảng Bước — di chuột vào để đọc,
bấm Chi tiết để sửa. Ghi chú được ghi ngược ra khi bạn xuất
file
.bpmnhoặc.drawio. - Tối đa 300 ký tự; phần dài hơn bị cắt khi đọc file.
- Nối theo chiều nào cũng được — công cụ vẽ mỗi hãng làm một kiểu.
- Nhiều ghi chú trên một bước thì gộp lại, ngăn bằng dấu ·.
- Ghi chú không nối vào bước nào (tiêu đề sơ đồ, chú giải chung) thì bỏ qua.
Ghi chú là chữ, không phải dữ liệu tính toán. Thêm hay xoá ghi chú không làm thời gian, chi phí hay đường găng thay đổi một chút nào.
Viết thời lượng trong nhãn
Đơn vị nhận được, không phân biệt hoa thường, có dấu hay không:
giây · s · sec · seconds → 1/60 phút
phút · m · min · minutes → 1 phút
giờ · h · hr · hours → 60 phút
ngày · d · day · days → 480 phút (1 ngày làm việc = 8 giờ)
tuần · w · week · weeks → 2.400 phút (5 ngày)
Chấp nhận số thập phân bằng cả dấu chấm và dấu phẩy: 1.5 giờ hay
1,5 giờ đều ra 90 phút.
Viết chi phí trong nhãn
Chi phí phải nằm ở đoạn cuối, sau dấu · và chỉ chứa số tiền:
Đối chiếu chứng từ 35 minutes · 120k → 120.000
Giao hàng 4 giờ · 900.000 VND → 900.000
Thẩm định 25 minutes · 1,5 triệu → 1.500.000
Tên bước thật rất hay chứa số tiền: “Giá trị > 50 triệu?”. Nếu quét số tiền ở bất kỳ đâu trong nhãn, bước đó sẽ bị gán nhầm chi phí 50 triệu và toàn bộ kết quả sai. Bắt buộc đứng sau dấu · khiến việc gán chi phí luôn là hành động có chủ ý.
Xác suất trên nhánh
Ghi phần trăm vào nhãn của luồng: đạt 70%, không đạt 30%. Công
cụ tách phần trăm ra làm xác suất và giữ lại chữ làm nhãn hiển thị. Bạn cũng có thể bỏ
qua bước này và điền trực tiếp trong bảng Luồng sau khi tải lên.
Giới hạn an toàn
- Kích thước file: 2 MB (đổi được bằng
MAX_UPLOAD_MBnếu bạn tự triển khai). - Tối đa 600 bước và 1.500 luồng mỗi quy trình.
- File chứa DTD hoặc entity ngoài bị từ chối — đây là cách chặn tấn công XXE (một file XML độc có thể yêu cầu máy chủ đọc file hệ thống rồi nhét vào kết quả).
Phần tử BPMN chưa hỗ trợ
Bộ tính toán hiện hiểu công việc, sự kiện và cổng rẽ nhánh. File có những cấu trúc dưới đây vẫn nạp được, nhưng công cụ báo rõ ngay trên màn hình là chưa tính phần đó — thà nói thẳng còn hơn đưa một con số trông bình thường mà thiếu cả một nhánh.
- Quy trình con (sub-process) — giữ thành một bước, ruột bên trong chưa tính.
- Sự kiện biên không ngắt mà nhánh của nó quay lại luồng chính — công cụ tính chúng như loại ngắt, tức là một cận trên. Cho nhánh đó kết thúc bằng điểm kết thúc riêng thì tính được đúng.
- Sự kiện kết thúc kiểu dừng hẳn (terminate) — đang được tính như một điểm kết thúc bình thường.
- Bước lặp nhiều thực thể không khai số lượng — khai rõ
loopCardinalitythì tính đủ.
Đã hỗ trợ đầy đủ từ các đợt mở rộng gần đây: sự kiện biên ngắt, bước nhiều thực thể, cổng chờ sự kiện, sự kiện hẹn giờ, cổng OR, và pool · lane · luồng thông điệp — trong đó luồng thông điệp được nạp nhưng không mang hồ sơ đi, còn việc của bên khác được vẽ nhưng không cộng vào con số của quy trình này.
Lộ trình mở rộng đã được lập, xếp theo thứ tự thứ nào đang cho số sai thì sửa trước.