Skip to main content

Welcome to a Grasp lesson

Create a free account to keep studying and create your own study path.

Lesson 3

Đọc hiểu sơ đồ quy trình BPMN

Recommended resources

Chào bạn,

Chào mừng bạn quay trở lại với khóa học.

Trong bài học trước, chúng ta đã học cách nhận diện các "từ vựng" cơ bản của BPMN, bao gồm Events (Sự kiện), Activities (Hoạt động), và Gateways (Cổng rẽ nhánh). Bạn đã có thể nhìn vào một sơ đồ và chỉ ra được các thành phần riêng lẻ này.

Hôm nay, chúng ta sẽ tiến thêm một bước: kết nối các "từ vựng" đó lại thành một "câu chuyện" hoàn chỉnh. Mục tiêu của bài học này là giúp bạn đọc và giải thích được luồng xử lý của một sơ đồ quy trình BPMN đơn giản. Kỹ năng này tương tự như việc bạn đọc một đoạn code và lần theo luồng thực thi (execution flow) để hiểu logic của nó. Bạn sẽ học cách đi từ đầu đến cuối một quy trình, hiểu được các công việc được thực hiện và các quyết định được đưa ra.

1. Nguyên tắc đọc một sơ đồ BPMN

Đọc một sơ đồ BPMN cũng giống như đọc một flowchart. Nguyên tắc rất đơn giản:

  1. Bắt đầu từ Start Event (hình tròn có viền mỏng).
  2. Lần theo các mũi tên Sequence Flow (mũi tên liền nét). Đây chính là "luồng thực thi" của quy trình.
  3. Khi gặp một Activity (hình chữ nhật bo góc), hãy hiểu đó là một công việc cần được thực hiện.
  4. Khi gặp một Gateway (hình thoi), hãy xác định xem luồng đi sẽ rẽ nhánh, chạy song song hay hội tụ lại.
  5. Kết thúc khi luồng đi tới một End Event (hình tròn có viền đậm).

Để bắt đầu, hãy đọc một hướng dẫn ngắn gọn bằng tiếng Việt về cách tiếp cận này.

BPMN là gì? Cách Mô Hình Hóa Quy Trình Chuẩn Cho Doanh Nghiệp

Bài viết "BPMN là gì?" trên trang Vinno.vn có một mục nhỏ nhưng rất hữu ích, tóm tắt các bước cơ bản để đọc một sơ đồ.

Hãy tìm đến mục "Cách đọc một sơ đồ BPMN đơn giản" và đọc 4 gạch đầu dòng trong đó. Đây là những nguyên tắc cốt lõi bạn cần ghi nhớ.

Bây giờ, hãy áp dụng nguyên tắc này vào một ví dụ cụ thể: quy trình xin nghỉ phép.

BPMN – Hướng dẫn toàn diện - Visual Paradigm Guides Vietnamese

Bài viết "BPMN – Hướng dẫn toàn diện" từ Visual Paradigm cung cấp một ví dụ rất rõ ràng về quy trình xin nghỉ phép. Sơ đồ này sử dụng các "Lanes" (làn bơi) để phân chia trách nhiệm giữa các vai trò (Nhân viên, Quản lý, Nhân sự), một khái niệm rất quan trọng trong BPMN.

Hãy đọc phần "Ví dụ về BPMN" và quan sát kỹ ba hình ảnh minh họa cùng phần giải thích đi kèm. Hãy thử tự mình lần theo các mũi tên và giải thích luồng đi: Quy trình bắt đầu ở đâu và do ai khởi tạo? Khi người quản lý nhận được đơn, có những khả năng nào sẽ xảy ra? Quy trình kết thúc ở những điểm nào?


2. Giải thích luồng xử lý với các Gateways

Gateways là các cấu trúc điều khiển (control structures) của quy trình. Với nền tảng lập trình của bạn, hãy xem chúng như sau:

  • Exclusive Gateway (XOR): Giống như một khối lệnh if-else if-else. Chỉ một đường đi được chọn.
  • Parallel Gateway (AND): Giống như việc bạn tạo ra nhiều threads để thực thi song song (fork) và sau đó chờ tất cả chúng hoàn thành (join).
  • Inclusive Gateway (OR): Một sự kết hợp linh hoạt, cho phép một hoặc nhiều đường đi được kích hoạt nếu điều kiện của chúng thỏa mãn.

Cách tốt nhất để hiểu rõ cách các gateway này điều khiển luồng là xem chúng hoạt động trong thực tế.

The Only BPMN Tutorial You Will Ever Need To Watch (For Beginners)

Video "The Only BPMN Tutorial You Will Ever Need To Watch" mà chúng ta đã xem ở bài trước có các phần demo rất trực quan về từng loại gateway. Bạn sẽ thấy tác giả chạy quy trình và luồng đi thay đổi như thế nào.

Hãy xem từ 04:58 đến 09:44. Đây là phần demo về Exclusive Gateway (either/or). Chú ý cách quy trình chỉ đi theo một trong hai nhánh (send email HOẶC call boss) tùy thuộc vào giá trị của credit amount.

The Only BPMN Tutorial You Will Ever Need To Watch (For Beginners)

Tiếp theo, hãy xem cách Parallel Gateway hoạt động.

Xem tiếp từ 09:44 đến 11:57. Quan sát cách mà sau khi đi qua Parallel Gateway, cả hai tác vụ send email VÀ call boss đều được tạo ra và cần phải được hoàn thành trước khi quy trình có thể đi tiếp.

The Only BPMN Tutorial You Will Ever Need To Watch (For Beginners)

Bây giờ là Inclusive Gateway.

Xem từ 11:57 đến 14:54. Đây là trường hợp phức tạp hơn. Chú ý cách tác giả thiết lập điều kiện: nếu credit amount > 100 thì đi nhánh trên, nếu credit amount > 1000 thì đi nhánh dưới. Khi nhập giá trị là 150, chỉ một nhánh chạy. Khi nhập 2000, cả hai nhánh cùng chạy.

The Only BPMN Tutorial You Will Ever Need To Watch (For Beginners)

Cuối cùng, hãy xem qua một loại gateway đặc biệt: Event-based Gateway. Thay vì dựa vào dữ liệu, nó chờ đợi một sự kiện xảy ra.

Xem từ 14:54 đến 19:17. Trong ví dụ này, quy trình sẽ chờ. Nếu một "tín hiệu" (signal) đến trước, nó sẽ đi theo nhánh call boss. Nếu sau một phút mà không có tín hiệu nào, nó sẽ đi theo nhánh send email do timeout. Đây là một pattern rất hữu ích trong các hệ thống bất đồng bộ.


3. Thực hành đọc sơ đồ phức tạp hơn

Bây giờ bạn đã nắm vững các nguyên tắc, hãy thử áp dụng chúng vào một sơ đồ hoàn chỉnh hơn.

BPMN Diagram: Pizza Ordering Process
Sơ đồ BPMN mô tả quy trình đặt bánh pizza, với sự tham gia của nhiều bên: Khách hàng (Pizza Customer), Nhân viên (Clerk), Đầu bếp (Pizza Chef), và Người giao hàng (Delivery Boy).

Dựa vào sơ đồ trên, hãy thử trả lời các câu hỏi sau:

  • Quy trình bắt đầu với hành động gì của khách hàng?
  • Sau khi nhân viên nhận đơn, những công việc gì xảy ra song song? Gateway nào đã được sử dụng để thể hiện điều này?
  • Điều gì sẽ xảy ra nếu khách hàng không nhận được bánh pizza trong vòng 60 phút? (Gợi ý: chú ý đến ký hiệu đồng hồ trên task "Receive Pizza").
  • Quy trình kết thúc khi nào?

Tiếp theo, hãy xem một ví dụ liên quan trực tiếp đến mục tiêu của bạn: microservices orchestration.

BPMN Diagram of an Order Fulfillment Process in Camunda Modeler
Sơ đồ BPMN cho quy trình xử lý đơn hàng, minh họa cách nó điều phối các microservices khác nhau (Payment, Inventory, Shipment) được viết bằng các ngôn ngữ khác nhau (Java, Go, C#).

Sơ đồ này cho thấy cách một quy trình BPMN có thể đóng vai trò như một "nhạc trưởng", điều phối hoạt động của nhiều microservices. Hãy thử đọc luồng chính:

  1. Quy trình bắt đầu khi có một đơn hàng được đặt.
  2. Hệ thống gọi đến Payment microservice để thu tiền.
  3. Nếu thanh toán thành công, nó sẽ song song gọi đến Inventory microservice để lấy hàng và Shipment microservice để chuẩn bị giao hàng.
  4. Quy trình kết thúc khi hàng được giao.

Đây chính là bản chất của việc sử dụng Camunda cho microservices orchestration mà chúng ta sẽ tìm hiểu sâu trong các module sau.


4. Mẹo để đọc sơ đồ dễ dàng hơn: Các Best Practices

Việc đọc một sơ đồ sẽ dễ dàng hơn rất nhiều nếu nó được vẽ một cách rõ ràng và tuân theo các quy ước chung.

BPMN in Action: Best Practices for Process Modeling, Part 1

Video "BPMN in Action: Best Practices for Process Modeling" từ chính Camunda sẽ chỉ ra một số mẹo giúp sơ đồ dễ đọc hơn. Hiểu được các quy tắc này sẽ giúp bạn phân tích các sơ đồ của người khác hiệu quả hơn.

Hãy xem các đoạn sau: 02:58 - 07:10 (Explicit Modeling): Tập trung vào lý do tại sao việc luôn sử dụng gateway (mô hình tường minh) lại giúp sơ đồ dễ hiểu hơn, tránh được các hành vi ngầm định khó đoán của BPMN. 07:10 - 08:40 (Layout and Labels): Chú ý các quy tắc về bố cục (trái sang phải, tránh các đường cắt nhau) và cách đặt tên (label) cho các thành phần để chúng có ý nghĩa hơn. 08:40 - 13:11 (Refactoring Example): Quan sát cách tác giả cải thiện một sơ đồ lộn xộn, khó đọc thành một sơ đồ rõ ràng, dễ hiểu bằng cách áp dụng các quy tắc trên. Điều này cho thấy tầm quan trọng của việc trình bày trực quan.


Tổng kết bài học

Qua bài học này, bạn đã trang bị cho mình kỹ năng cốt lõi để "đọc" và hiểu bất kỳ sơ đồ quy trình BPMN đơn giản nào. Các điểm chính cần nhớ:

  • Luôn bắt đầu từ Start Event và lần theo các Sequence Flow.
  • Activities là các bước công việc, còn Events là những điều xảy ra.
  • Gateways là các điểm kiểm soát luồng đi, tương tự như các cấu trúc if-else hay xử lý song song trong lập trình.
  • Một sơ đồ được vẽ tốt (rõ ràng, có nhãn đầy đủ) sẽ dễ đọc và dễ hiểu hơn rất nhiều.

Việc đọc hiểu sơ đồ quy trình là bước đầu tiên và quan trọng nhất trước khi bạn có thể bắt tay vào việc thiết kế, cải tiến và tự động hóa chúng bằng Camunda.


Xem trước bài học tiếp theo

Bây giờ bạn đã có thể đọc và hiểu một bản thiết kế quy trình. Trong bài học tiếp theo, bạn sẽ vào vai một kiến trúc sư và tự tay tạo ra bản thiết kế của riêng mình. Chúng ta sẽ học cách mô hình hóa một quy trình nghiệp vụ đơn giản sử dụng các ký hiệu BPMN 2.0 cơ bản. Đây sẽ là bước thực hành đầu tiên để bạn chuẩn bị cho việc xây dựng các quy trình thực tế với Camunda.