Hề lốôôôôôô. Chào mừng anh em đã quay trở lại với blog Thinhnotes.com. Và hôm nay mình sẽ tiếp tục với chủ đề BPMN: vẽ BPMN sao cho ngầu và nguy hiểm 😎
Cụ thể bài này mình sẽ demo cho anh em vẽ BPMN step by step và điểm qua 5 sai lầm thường mắc phải khi vẽ BPMN.
Anh em nào chưa xem phần một và phần hai về BPMN, thì nhớ xem lại để nắm ý nghĩa và mục đích của nó, trước khi đi vào thực hành ở bài này nhé.
Ô kê, vì bài này mang tính thực hành cao, nên mình sẽ không nói dài dòng, chém gió lan man mà sẽ đi vào nội dung chính ngay và luôn. Hi vọng bài này sẽ giúp anh em:
- Vẽ được BPMN
- Anh em nào đã vẽ được rồi, thì sau bài này có thể vẽ chính xác và nguy hiểm hơn 😎
Chém gió vậy thôi, mục tiêu vẫn là vẽ đơn giản nhưng đầy đủ nội dung. Vẽ đơn giản mới là đỉnh kout. Okay, let’s goooooo!!!
Nội dung
1. Tool vẽ BPMN
Đầu tiên muốn vẽ thì phải có tool.
Nói về tool vẽ BPMN thì rất nhiều. Đa phần anh em sẽ dùng Microsoft Visio. Nhưng Visio gặp vấn đề lớn ở License. License đi theo bản quyền Office. Nên xài win lậu thì anh em không access vô được những chức năng quan trọng của Visio, như search library online chẳng hạn.
Mình dùng Visio rất nhiều để vẽ workflow lẫn mockup. Và thực tế là cũng rất nhiều lần painful với nó.
Do đó, bài này mình muốn giới thiệu với anh em một tool khác, gọn nhẹ hơn Visio, chuyên dụng cho BPMN và đặc biệt là free. Đó là DRAW.IO
Anh em truy cập vào draw.io để sử dụng, một số tính năng rất rất rất tiện của Draw.IO như:
- Vẽ online/offline ngay trên web, lưu file về và có thể vẽ tiếp bất kỳ lúc nào
- Dùng được với tất cả các browser (và responsive với mobile, tablet)
- Có bản cài đặt cho Windows, Mac
- Tích hợp với Google Drive MIỄN PHÍ
- Truy cập vào toàn bộ library Draw.IO MIỄN PHÍ
- Đọc được nhiều đuôi tệp: gliffy, vsdx, jpg, png, svg…
- Export với độ phân giải lớn
- Hỗ trợ đánh version.
Draw.IO có nhiều tính năng free khủng như vậy thì nó kiếm tiền bằng cách nào. Thường thấy cái gì free quá mình cũng hơi nghi, nhưng anh em đừng lo. Draw.IO nhắm tới các enterprise để kiếm tiền chứ không phải personal như anh em mình.
Cụ thể Draw.IO sẽ charge phí khi tích hợp với Confluence, Jira hoặc một Data Center bất kỳ, tính theo số lượng user.

Draw.IO chỉ tính tiền tích hợp nên anh em cứ yên tâm dùng các chức năng miễn phí (nguồn ảnh: draw.io)
Tất cả các hình minh họa trong chuỗi bài về BPMN này, mình đều dùng Draw.IO để vẽ. Nó cập nhật đầy đủ các notation mới nhất trong bản BPMN 2.0 nên anh em yên tâm không lo thiếu hình hoặc hình bị outdated như Visio nhé (bản không có license).
2. Thực hành
Để vẽ BPMN thì có 3 bước cơ bản sau.
Tóm gọn >> Phân loại >> Vẽ
Đầu tiên sau khi elicit requirement về, anh em sẽ phải làm công việc analysis để làm gọn mớ thông tin này. Sau khi làm những bước này xong, anh em sẽ áp dụng 3 bước trên để vẽ BPMN.
Vì mục đích của mình là thể hiện một nùi chữ, một nùi đoạn ghi âm hoặc thậm chí là meeting video cả mấy tiếng thành một hình vẽ đơn giản, súc tích và đầy đủ thông tin. Nên bước sàn lọc bên trên là rất quan trọng nhé anh em.
Mình sẽ lấy quy trình đi máy bay ra làm ví dụ ở bài này. Đây là quy trình mà hãng hàng không tương tác với khách hàng trước và sau chuyến bay. Tạm gọi là quy trình đi máy bay cho dễ hình dung nhé anh em.
2.1. Version 1
Mình sẽ trình bày quy trình đi máy bay bằng một đoạn TEXT RẤT DÀI sau đây.
Thực tế thì sẽ có rất nhiều bên tham gia vào quá trình sử dụng dịch vụ bay của hành khách, từ hãng máy bay, dịch vụ mặt đất, cho đến các bộ phận của nhà ga.
Tuy nhiên mình chia thành 2 nhóm đối tượng chính cho anh em dễ hình dung là:
- Hành khách
- Và phần còn lại (gồm: Ký gửi, Check in, An ninh, Hải quan, Dịch vụ mặt đất, Tiếp viên hàng không, và Lost & Found).
Mục đích là để mô tả lại quy trình hành khách đi máy bay sẽ qua những bước nào, chặng nào và tiếp xúc với những đối tượng nào nhé anh em (lấy hành khách làm trọng tâm).
…
Đầu tiên, hành khách cần chuẩn bị: Vé máy bay, CMND và Visa.
Vé máy bay thì có 2 loại: online hoặc vé giấy. Nếu hành khách mua online thì phải in vé này ra, và mang theo để làm thủ tục check in.
Về hành lý, hành khách tuyệt đối không được mang những đồ cấm như dao kéo, chất cháy nổ, dung dịch, hóa chất… Hành lý được chia làm 2 loại: hàng ký gửi (checked luggage) và hàng xách tay (cabin luggage).
Hàng ký gửi có khối lượng và kích thước quy định tùy vào hạng vé (và tùy hãng bay), ví dụ:
- Hạng First Class và Business Class: 30 kg hành lý ký gửi và 2 kiện hành lý xách tay, kích thước không vượt quá 119x119x81 (cm).
- Hạng Economy Class: 20 kg hành lý ký gửi và 1 kiện hành lý xách tay, kích thước không vượt quá 119x119x81 (cm).
Nếu hàng ký gửi và hàng xách tay vượt quá mức quy định, hãng sẽ từ chối nhận hành lý.
Sau khi đến sân bay (departure), hành khách sẽ di chuyển đến khu vực nhận hàng ký gửi để làm thủ tục ký gửi hành lý nếu có. Thủ tục ký gửi phải hoàn thành trước 3 tiếng trước khi máy bay cất cánh. Nếu trễ hơn, hãng sẽ từ chối nhận hàng ký gửi.
Nhân viên ký gửi sẽ tiến hành kiểm tra hàng hóa, và làm thủ tục. Nếu hàng đạt đúng quy định, nhân viên ký gửi sẽ nhận hàng và làm thủ tục. Ngược lại, hàng sẽ bị từ chối.
Tiếp đến, hành khách đến quầy check in để làm thủ tục kiểm tra vé máy bay và các giấy tờ liên quan. Quy trình này cần phải được tiến hành từ 3 giờ máy bay cất cánh đến trước 40 phút so với giờ máy bay cất cánh. Khu vực check in được sắp xếp theo hạng vé máy bay, mỗi hạng vé sẽ xếp hàng theo một line riêng.
Trong quá trình kiểm tra, nếu có bất kỳ sự sai sót nào, hành khách sẽ không được qua cửa soát vé và phải làm việc với hãng để tiến hành xử lý. Ngược lại, hành khách sẽ được trả lại vé máy bay, các giấy tờ tùy thân, và thẻ lên máy bay (boarding pass).
Trong trường hợp hành khách có transit, hãng sẽ làm luôn thẻ lên máy bay cho các chặng transit.
Sau khi check in xong, nếu hành khách bay quốc tế sẽ được làm thủ tục xuất cảnh, nếu hành khách bay nội địa sẽ được hãng tiến hành kiểm tra an ninh và kiểm tra hành lý xách tay.
Tại khu vực làm thủ tục xuất cảnh, hành khách phải trình visa để nhân viên hải quan kiểm tra và đóng dấu.
Sau đó, hành khách đặt hành lý xách tay lên băng chuyền để kiểm tra. Nếu hành lý nằm ngoài mức khối lượng và kích thước quy định, hãng sẽ từ chối không cho mang hành lý lên máy bay.
Bên cạnh đó, hành khách cũng sẽ được yêu cầu tháo bỏ các đồ dùng kim loại ra khỏi cơ thể, và tiến hành scan toàn thân để đảm bảo an ninh cho chuyến bay.
Sau khi kiểm tra an ninh và kiểm tra hành lý xách tay, hành khách sẽ được đưa vào phòng đợi.
Thời gian hành khách chờ ở phòng đợi trung bình là 30 phút trước khi được bộ phận mặt đất đưa lên máy bay. Hành khách có thể đi trực tiếp từ phòng đợi lên máy bay hoặc di chuyển bằng xe buýt chuyên dụng của hãng hàng không. Hành khách phải có mặt trên máy bay chậm nhất là trước 15 phút so với giờ cất cánh (sau thời gian này, cửa lên máy bay sẽ đóng).
Khi lên máy bay, tiếp viên hàng không sẽ kiểm tra thẻ lên máy bay, hướng dẫn hành khách vào chỗ ngồi và bắt đầu chặng hành trình.
…….
vèoooooooo
…….
Khi hạ cánh, tiếp viên hàng không sẽ hướng dẫn hành khách xuống máy bay.
Nếu hành khách đi transit thì bộ phận mặt đất sẽ chở vào phòng đợi.
Nếu hành khách đi tuyến quốc tế thì sẽ di chuyển đến khu vực nhập cảnh. Khi làm thủ tục nhập cảnh, hành khách phải trình lại Visa cho nhân viên hải quan kiểm tra và đóng dấu. Sau đó điền thêm một số form thông tin và tiến hành phỏng vấn sơ bộ với nhân viên hải quan (nếu có).
Sau đó, hành khách sẽ qua phòng lấy hành lý ký gửi (nếu có), và di chuyển ra cổng về nếu đã đến cuối chặng hành trình.
Nếu hành khách đi tuyến nội địa, có gửi hành lý ký gửi thì di chuyển đến khu vực lấy đồ và ra về.
Nếu hành lý bị mất, hành khách phải liên hệ ngay phòng Báo Mất và Thất Lạc (Lost and Found) để xử lý. Nếu không có hành lý ký gửi, hành khách di thuyển thẳng ra về.
XONGGGG!!!
2.2. Version 2
Okay, phần dưới đây mình sẽ tóm gọn mớ bồng bông phía trên. Những thông tin nào không cần modeling sẽ được lược bỏ, chỉ giữ lại những nội dung chính thôi.
Bên cạnh đó mình cũng sẽ làm bước phân loại như sau 😎
- Tô màu cam: Pool
- Tô màu vàng: Lane
- Tô màu hồng: Activity
- Tô màu xanh lá: Gateway
- Tô màu xanh dương: Event
- Tô màu tím: Information Artifact
Bước 1: Check in
Hành khách đến khu vực check in của hãng hàng không để làm thủ tục lên máy bay trong vòng trước 40 phút so với giờ máy bay cất cánh. Trễ 40 phút trước khi máy bay cất cánh, hãng sẽ từ chối làm thủ tục bay.
Nếu hành khách ký gửi hàng hóa phải làm thủ tục tại quầy ký gửi hàng hóa và phải hoàn thành trước 3 tiếng trước khi máy bay cất cánh. Ngược lại, hãng sẽ từ chối nhận hàng ký gửi. Nhân viên ký gửi sẽ kiểm tra hàng hóa, và làm thủ tục. Nếu hàng đạt đúng quy định, nhân viên ký gửi sẽ nhận hàng và làm thủ tục. Ngược lại, hàng sẽ bị từ chối.
Hàng hóa phải tuân thủ quy định sau:
- First Class/ Business Class: 30 kg ký gửi và 2 kiện xách tay, kích thước nhỏ hơn 119x119x81 (cm). Ngược lại từ chối nhận.
- Economy Class: 20 kg ký gửi và 1 kiện xách tay, kích thước nhỏ hơn 119x119x81 (cm). Ngược lại từ chối nhận.
Sau đó, nhân viên check in sẽ tiến hành kiểm tra vé và các giấy tờ liên quan. Nếu sai quy định, hành khách sẽ không được qua cửa soát vé. Ngược lại, hành khách được trả lại vé máy bay, CMND, và thẻ lên máy bay (boarding pass).
Nếu hành khách đi quốc tế có transit, hãng sẽ làm thủ tục transit và phát hành thẻ lên máy bay cho các chặng transit.
Bước 2: Làm thủ tục xuất cảnh
Nếu hành khách đi quốc tế sẽ được nhân viên hải quan kiểm tra visa. Nếu visa hết hạn, nhân viên từ chối làm thủ tục. Nếu visa còn hạn, nhân viên hải quan sẽ đóng dấu và gửi lại visa cho hành khách. Còn hành khách đi nội địa, sẽ đi thẳng qua bước kiểm tra hành lý và an ninh tiếp theo.
Bước 3: Kiểm tra hành lý và an ninh
Bộ phận an ninh sẽ kiểm tra hành lý và an ninh để đảm bảo an ninh. Nếu sai quy định, hành khách bị từ chối cho bay. Nếu đúng quy định, hành khách sẽ được đưa vào phòng đợi.
Bước 4: Lên máy bay
Bộ phận mặt đất di chuyển hành khách lên máy bay và phải có mặt trên máy bay chậm nhất là trước 15 phút so với giờ cất cánh. Nếu không, hành khách sẽ bị hủy chuyến bay.
Tiếp viên hàng không sẽ kiểm tra vé lên máy bay (boarding pass), hướng dẫn hành khách lên máy bay và bắt đầu chặng hành trình.
Bước 5: Xuống máy bay
Sau khi máy bay hạ cánh, tiếp viên hàng không sẽ hướng dẫn hành khách xuống máy bay. Bộ phận mặt đất sẽ di chuyển hành khách xuống máy bay.
- Nếu hành khách đi tuyến quốc tế sẽ được di chuyển qua khu vực nhập cảnh.
- Nếu hành khách đi tuyến nội địa và có ký gửi hàng hóa sẽ được di chuyển qua khu vực lấy đồ.
- Nếu hành khách đi tuyến nội địa và không ký gửi hàng hóa sẽ được di chuyển qua khu vực Arrival.
Bước 6: Làm thủ tục nhập cảnh
Nếu hành khách đi tuyến quốc tế thì phải làm thủ tục nhập cảnh:
- Trình Visa cho nhân viên hải quan kiểm tra và đóng dấu.
- Điền form thông tin
- Phỏng vấn sơ bộ với nhân viên hải quan (nếu có).
Bước 7: Check out
Hành khách sẽ qua phòng lấy hành lý ký gửi nếu có. Nếu hành lý bị mất, hành khách phải liên hệ ngay bộ phận Lost and Found để xử lý. Nếu không có hành lý ký gửi, hành khách di thuyển thẳng ra về.
2.4. Vẽ
Okay, sau khi anh em đã tóm gọn được như ở trên rồi, chúng ta sẽ bắt đầu vẽ vời.
Vậy là mình đã vẽ xong BPMN. Nếu anh em thấy hình to quá, rối quá, phức tạp quá thì có thể break down nó ra thành những subprocess nhỏ, rồi mỗi subprocess là 1 mình BPMN cho đơn giản.
Nếu anh em quên các ký hiệu, thì có thể xem lại ở phần 2 nhé.
Ô kêêêêê và đó là những gì mình muốn demo ở phần thực hành này. Trước khi kết thúc bài này thì mình sẽ điểm qua về 5 sai lầm hay mắc phải khi vẽ BPMN.
3. Sai lầm hay gặp khi vẽ BPMN
Đây là “tuyển tập những sai lầm” mà mình đúc kết được từ bản thân 😎 Cụ thể là có 5 mistakes mình hay gặp phải, được chia theo cấp độ rõ ràng. Anh em xem tham khảo nhé.
Vẽ BPMN thì ít có sai hay đúng, chỉ là hợp lý hay chưa mà thôi. Tuy nhiên, có những quy tắc mình không được phạm phải như sau.
Cấp độ 1: Chuyện đặt tên
Đối với Task là một hành động thì phải luôn đặt theo cú pháp: VERB + OBJECT, dù tiếng Anh hay tiếng Em. Khỏi cần Verb_ing hay gì hết. Nhưng phải nhớ có Object, nói cho có đầu có đuôi.
Kiểm tra là kiểm tra cái gì, assign là assign cái gì, anh em phải ghi rõ ràng ra. Còn về đối tượng hay tên người làm thì khỏi cần, vì đã có swimlane và flow thể hiện rồi 🙂
Cấp độ 2: Lạm dụng Subprocess
Mình chỉ nên dùng Subprocess khi task đó có thể phân rã thành nhiều task nhỏ, và các task nhỏ này có ý nghĩa với quy trình của mình. Chứ đừng bạ đâu cũng quất subprocess, là mình đang đi lan man, không tập trung.
Cấp độ 3: Dùng sai Flow
Flow thì có 2 loại chính: Sequence Flow và Message Flow. Hai cái này mình thấy anh em rất hay dùng nhầm. Cụ thể:
- Sequence Flow chỉ được dùng để nối các task trong cùng 1 pool.
- Còn Message Flow thì chỉ dùng để nối các task ở các pool khác nhau.

Cái này là sai

Cái này là đúng!
Cấp độ 4: Đặt Task sai vị trí
Một task chỉ thuộc một lane hoặc một pool duy nhất. Không thể vừa “ăn cơm”, vừa “ăn phở” như dưới này được.

Sai rồi lượm ơiiii
Một trong những cái quan trọng của BPMN là thể hiện được: ai là người làm task đó. Nếu một task hai người làm thì cứ đặt task đó ở cả hai lane (hoặc 2 pool), không vấn đề gì hết.
Cấp độ cuối: Anh như biến thành người nhện
Vì trong “hình” nhiều tơ vương.
Đây là cấp độ cao nhất của tuyển tập các sai lầm khi vẽ BPMN. Lỗi này đến từ 2 lý do:
- Mắt thẩm mỹ: chiếm 0,000000000001%
- Ẩu: 99,999999999%
Cụ thể anh em xem tuyển tập ví dụ bên dưới mình sưu tầm được từ Camunda.com
Ngoài ra, mình cũng bonus thêm cho anh em những resources khá hay về BPMN:
- Poster BPMN ver2.0: download free tại đây. Đây là tổng hợp tất cả các notation có trong BPMN, kèm giải thích ý nghĩa (mặc dù giải thích hơi ít).
- Tải và cài đặt BPMN Quick Guide vào máy để xem trọn bộ các ví dụ chuẩn về BPMN của tổ chức OMG (Object Management Group).
.
.
.
Okay anh em, vậy là chuỗi bài về BPMN đã kết thúc. Hi vọng sau chuỗi 3 bài này anh em sẽ có cái nhìn thực tế và tự tin hơn về một trong những công cụ hàng đầu của người làm Business Analyst, đó là BPMN.
Bái bai, hẹn gặp anh em ở những bài sau 🙂
References
- lucidchart.com/pages/bpmn-activity-types
- signavio.com/post/bpmn-pools-and-lanes
- dichungtaxi.com/blog/thu-tuc-may-bay-cho-nguoi-di-lan-dau
Hế lô anh em, mình là Thịnh, và mình đang làm BA tại Bosch. Thinhnotes là nơi mình tập viết và góp nhặt những trải nghiệm THÚ vị trong cuộc sống hằng ngày. Hi vọng những bài notes cu te này sẽ giúp ích được anh em 🙂
16/01/2019 at 5:36 chiều
Cho em hỏi, 1 gate way có mở ra thêm được 1 gateway con bên trong không anh ?
16/01/2019 at 8:08 chiều
Hi em, thường thì anh thấy ko quy định gateway có được trong gateway hay không. Nhưng nếu flow mình vẽ đã có gateway rồi, mà trong đó còn có thêm gateway nữa thì chắc hình mình vẽ có vấn đề gì rồi. Vẽ để đơn giản hơn mà, chứ vẽ vậy rối lắm. Em thử dùng Event-Driven Gateway xem sao, chắc đáp ứng được yêu cầu của em. Em xem thêm bài giải thích các ký hiệu BPMN để rõ hơn nhé.
18/01/2019 at 3:21 chiều
Cấp độ 4: Đặt Task sai vị trí
Một task chỉ thuộc một lane hoặc một pool duy nhất….
…..Nếu một task hai người làm thì cứ đặt task đó ở cả hai lane (hoặc 2 pool), không vấn đề gì hết.
Hai ý này có đá nhau ko anh, anh Thịnh giải thích giúp em với?
18/01/2019 at 7:08 chiều
Hi Dương, nguyên lý của BPMN là phải thể hiện được task này của ai, của vai trò gì. Nên nếu 1 task cùng thuộc 2 lanes hoặc 2 pools thì bị sai nguyên lý này mất rồi, vì người đọc sẽ không biết task này là do lane A hay lane B làm…
Thường thì process sẽ đi theo 1 chiều, phải task này xong thì mới tới task khác được, nên trường hợp 1 task 2 vai trò cùng làm cũng hiếm, nhưng không phải không có. Ví dụ như: khi document được tạo xong, bộ phận A và bộ phận B phải ký duyệt. Nếu không quy định rõ: bộ phận nào phải ký trước bộ phận nào, thì ngay chỗ này hoàn toàn có thể duplicate task “ký duyệt” cho cả 2 lanes (bộ phận A và B) 🙂
18/01/2019 at 9:55 chiều
got it. có vẻ nghĩ đơn giản hơn là được. e cảm ơn a Thịnh nhiều :p
19/02/2019 at 9:35 chiều
Thông tin mà bạn cung cấp rất thiết thực cho người mới vào BA như mình. Xin càm ơn.
Bản thân mình thấy việc xác định Lane, pool, activity thì không vấn đề gì. Nhưng để tìm ra các event thì mình còn kém quá. Bạn có tip nào cho việc xác định event ko ?
19/02/2019 at 10:40 chiều
Cảm ơn bạn nhé. Vẽ Event thì đúng là khó nhớ thiệt. Nhưng như mình có nói, cứ nắm rõ Message Event và Timer Event, với đầy đủ cả 3 trạng thái: bắt đầu (vòng tròn 1 lằn) – ngay lập tức (vòng tròn 2 lằn) – kết thúc (vòng tròn đậm) là được 🙂 Vì Message và Timer được dùng rất phổ biến.
Còn vô vàn loại Event khác muốn dễ xác định thì chỉ có cách tham khảo, vẽ nhiều rồi nhớ thôi chớ không còn cách nào 😀 Nhưng dù Event nào thì cũng chỉ có 3 trạng thái bắt đầu – ngay lập tức – kết thúc như mình nói ở trên. Mà ký hiệu của 3 trạng thái này thì như nhau (vòng tròn 1 lằn – vòng tròn 2 lằn – vòng tròn đậm). Mình nghĩ nắm vậy cũng đủ xài và đọc BPMN rồi. Có gì bạn tham khảo nhé!
16/05/2019 at 5:31 chiều
Hi Thịnh, mình hơi bị confuse giữa send/receive task và send/receive message events, Thịnh có thể giúp đưa example để giải thích kĩ hơn điểm khác nhau giữa 2 phần này không?
16/05/2019 at 8:31 chiều
Hi Quỳnh, về ý nghĩa thì cả 2 đều nói về việc nhận/ gửi một “nội dung” gì đó.
+ Task thể hiện 1 hành động nhỏ, trong chuỗi các hành động có trong quy trình của mình. Hành động này là nhận/ gửi cái gì đó thì mới đi tiếp sang hành động tiếp theo được. Hành động tức là có người làm, hay nói theo BPMN là task đó phải nằm trong lane.
+ Còn event thì chỉ đơn thuần là thể hiện 1-SỰ-KIỆN. Tức không phải là hành động, không cần biết là có người làm hay không, cũng như ai là người làm.
Message Event ở đây có thể được xem như kết quả của các Task trước đó vậy. Chỉ cần làm A, làm B, làm C, là chúng ta có được D. Và D ở đây là 1 sự kiện gì đó, thể hiện 1 ý nghĩa gì đó, chẳng hạn như đánh dấu kết thúc quy trình ABC chẳng hạn 🙂
Ví dụ quy trình quay và nhận thưởng Vietlot. Event thì có nhiều dạng, mình ví dụ 2 dạng là throw và catch cho Message Event:
+ Throw thể hiện: khi quy trình qua trình tự các bước phát hành game >> chốt game >> quay số random >> dò tìm người trúng thưởng >> LÚC NÀY quy trình quăng ra 1 event là 1 thông báo: Khách hàng Quỳnh đã trúng thưởng, yêu cầu lên nhận giải. Thì message event đó chỉ đơn thuần là 1 thông báo xem như là kết quả sau cùng của chuỗi quy trình phía trước.
+ Còn catch là khi 1 quy trình khác start bằng 1 message event dạng catching, tức là nó bắt (catch) message event được quăng ra (throw) từ quy trình trước, để bắt đầu cho 1 quy trình mới, ví dụ quy trình nhận thưởng Vietlot chẳng hạn 😀
21/06/2019 at 11:19 sáng
Chào bạn.
Cái hình quy trình đi máy bay nó bị mờ quá. Bạn có bản chất lượng hơn cho mình xin vào mail ngocnv@gimo.vn với.
Cảm ơn bài viết rất hay của bạn.
21/06/2019 at 11:56 sáng
Cảm ơn Ngọc nhé. Bạn bấm vào hình ở bài viết >> rồi kéo xuống 1 tí >> chọn nút View Full Size (góc phải, bên dưới) >> hình full size mở ra rồi bạn tải về máy nhé. Mình không giữ source nên hình trên web là chất lượng nhất rồi 🙂
09/07/2019 at 2:21 chiều
Hi Thịnh, mình đang có business process mà trong đó có 1 step là sau khi 1 user xử lý xong 1 task (trên hệ thống) thì hệ thống sẽ tự động tạo thêm 2 bản ticket liên quan, sau đó sẽ có 2 user khác nhau vào xử lý tiếp 2 ticket đấy, tiếp đó sẽ có vài step nữa mà hệ thống tự động update các bản ghi khác,..Vậy theo Thịnh trong TH này mình sẽ mô tả cái step mà hệ thống tạo ticket ntn, mình có nên thêm 1 lane hoặc 1 pool riêng cho phần hệ thống không?
09/07/2019 at 3:22 chiều
Hi Quỳnh, trong Task có một loại ký hiệu hình bánh răng, tức là Task đó system tự chạy, không cần sự can thiệp của user (Quỳnh xem lại bài 2 về giải thích các ký hiệu nhé). Quỳnh có thể dùng ký hiệu này cho task tạo ra 2 bản ticket và update các nội dung khác, mà không cần (thật ra là không nên) làm một lane riêng cho system.
20/01/2020 at 10:50 sáng
Anh cho em hỏi, 1 activity thì bắt buộc có 1 sequence/message flow vào và 1 flow ra thôi, hay là mình được tự do sử dụng 2 vào 1 ra hoặc 1 vào 2 ra vậy anh? Nếu bắt buộc, thì có trường hợp ngoại lệ nào không anh?
20/01/2020 at 12:22 chiều
Cái đó a k thấy quy định hay bắt buộc gì hết. Em cứ vẽ theo đúng quy trình muốn mô tả thôi. Thực tế có cả trăm quy trình, trăm kiểu mà, quy định tới lui chi cho nó phức tạp :v
20/01/2020 at 12:48 chiều
Em cám ơn anh 😀
09/03/2020 at 8:30 chiều
Em chào anh Thịnh, cảm ơn anh vì bài viết vô cùng hữu ích ạ, Em đang tự học BA và thấy phần BPMN nếu chỉ đọc thui thì chỉ hiểu chứ không làm đc. Vậy không biết anh có thể recommend một số nguồn để tự practice BPMN không ạ? Em cảm ơn anh ạ!
16/03/2020 at 6:17 chiều
Hi Chi, e thử check trên bpmnquickguide.com, tải file exe về rồi cài vài máy. Nó là bộ ví dụ các mẫu bpmn, em đọc mô tả >> vẽ theo >> rồi đối chiếu với hình vẽ của họ.
Còn ko trên mạng có rất nhiều resource mà, em chịu khó tìm kỹ hơn sẽ ra. Thanks em nhé!
26/05/2020 at 1:33 chiều
Chào anh Thịnh,
Ở phần quy trình mà bạn vẽ, những hình thể hiện kết thúc, lúc là hình tròn, lúc lại là hình tròn có dấu X, lúc hình tròn với phong bì sẫm, mình chưa hiểu quy tắc của nó, lúc nào thì dùng ạ. Anh giải thích giùm em được không? Cảm ơn bạn nhiều!
30/05/2020 at 4:06 chiều
Hi Vui Tran, đó là event kết thúc. Với mỗi lần kết thúc khác nhau thì mình dùng mỗi loại ký hiệu khác nhau.
Có đối tượng khi kết thúc quy trình thì họ sẽ phải gửi ra 1 email nào đó.
Hoặc có đối tượng muốn kết thúc quy trình thì phải dựa trên yếu tố thời gian. Phải đúng X giờ hằng ngày sau khi check A B C gì đó thì họ mới xong quy trình của họ.
Hoặc cũng có thể đối tượng đó hoàn thành xong task trước đó là kết thúc thôi.
Để rõ hơn bạn tham khảo phần 2 mình có giải thích chi tiết các ký hiệu nhé!
30/06/2020 at 3:47 chiều
Cho em hỏi, ví dự KH gửi yêu cầu hỗ trợ của Shopee, có 3 nguồn gửi là gửi từ web, gửi từ Fanpage, gửi từ app. Thì mấy cái nguồn đó trong BPMN mình sẽ để thế nào vậy a? Dạng ghi chú?
04/07/2020 at 9:12 sáng
Hi Bambi, nếu quy trình xử lý ticket đến từ 3 nguồn này khác nhau thì mới cần tách luồng ra.
Còn về ký hiệu thì em cứ vẽ 1 Message Flow đính kèm icon [email, facebook, mobile app] từ Pool của Shopee đến system của mình, rồi bên system mình làm 1 event Start Message để bắt đầu quy trình cho mỗi ticket đến từ mỗi luồng. Em tham khảo thêm nhé!
30/06/2020 at 3:52 chiều
Đặc tả một hệ thống có sẵn thì cần tạo những tài liệu gì vậy ạ 🙁 Em đang bị mù mờ, mong anh chỉ giáo với ạ
04/07/2020 at 9:06 sáng
Chào Bambi 😀 Thường anh sẽ làm User Manual (tài liệu hướng dẫn người dùng) và FS (ở mức đơn giản, mô tả các function của system đang làm chuyện gì và chạy như thế nào).
Ngoài ra còn tùy vào việc em đặc tả hệ thống có sẵn lại ĐỂ LÀM GÌ nữa? Nếu để team sau vào catch up system, để tích hợp hoặc enhancement thì bắt buộc FS phải làm chi tiết. Còn nếu đơn thuần để người sau đọc và hiểu về system thì anh nghĩ User Manual là đủ 🙂 Em tham khảo thêm nhé.
02/11/2020 at 9:47 sáng
Hi Thịnh,
Bài viết của Thịnh rất hay , tuy nhiên mình có thac mắc . Thinh có ghi là : “Còn Message Flow thì chỉ dùng để nối các task ở các pool khác nhau” . Tại sao từ data input “Visa” nối với task “Kiểm tra visa” và task “Đóng dấu và gửi lai Visa” , mình lai dùng message sequence flow vậy trong khi chúng đều nằm chung 1 pool chứ không phải 2 pool khác nhau. Thinh có thể giải thích giúp chỗ này được không ?
08/11/2020 at 2:08 chiều
Hi Thanh, thật ra chỗ này ko phải message flow (không có biểu tượng hình email) mà chỉ là flow thông thường thôi 🙂 Mình vẽ nét đức là để phân biệt luồng dữ liệu giữa Task và Data Object, thay vì nét liền là đi giữa các Task với nhau.
Phần này thật ra không có quy ước chung gì đâu, mà do hình hơi rối, nên tự mình phân biệt ra bằng nét đứt và nét liền vậy cho dễ nhìn thôi. Thanh tham khảo thêm nhé 😀
11/11/2020 at 9:37 sáng
Hi anh Thịnh,
Em thấy phần Sai lầm số 3: Sequence Flow chỉ được dùng để nối các task trong cùng 1 pool.
nhưng trong hình vẽ quy trình đi máy bay thì em thấy rất nhiều lần anh sử dụng sequence flow nối các task ở các pool khác nhau. Ví dụ: pool Nhân viên hải quan và Nhân viên an nình, giữa task Đóng dấu và gửi lại visa —> Kiểm tra hành lý và an ninh.
Liệu đây có phải là các trường hợp đặc biệt, hay có rule khác không anh.
Rất mong được anh giải đáp
28/11/2020 at 10:07 sáng
Hi Trung Đức, sr e a bị miss cmt này mất. Sequence Flow là mình dùng để liên kết các Task giữa các Lane trong cùng 1 Pool nhé em. Trong ví dụ như em nói là 2 Lane (2 objects thực hiện task) nhưng đều ở trong pool Hãng hàng không >> nên mình dùng Sequence Flow vô tư nhé 😀
02/11/2020 at 8:44 chiều
Hi anh Thịnh,
Anh có thể gợi ý giúp em sách hay, thực tiễn, ứng dụng cao về BPMN không ? Cảm ơn anh nhiều.
Mỹ Chi
08/11/2020 at 2:12 chiều
Hi Mỹ Chi, trước giờ anh ko đọc sách về BPMN nên cũng ko rõ nữa em ơiiii 😀 em tham khảo trên Goodreads thêm nhé!