Tải bản đầy đủ (.pdf) (66 trang)

Ứng dụng ký pháp BPMN2.0 và nền tảng activiti trong tự động hóa quy trình nghiệp vụ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.62 MB, 66 trang )





ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN VĂN LÂM
ỨNG DỤNG KÝ PHÁP BPMN2.0 VÀ NỀN TẢNG
ACTIVITI TRONG TỰ ĐỘNG HÓA QUY TRÌNH
NGHIỆP VỤ
LUẬN VĂN THẠC SỸ







Hà Nội - 2011




ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN VĂN LÂM
ỨNG DỤNG KÝ PHÁP BPMN2.0 VÀ NỀN TẢNG
ACTIVITI TRONG TỰ ĐỘNG HÓA QUY TRÌNH
NGHIỆP VỤ



Ngành: Công Nghệ Thông Tin
Chuyên ngành: Công Nghệ Phần Mềm
Mã số: 604810


LUẬN VĂN THẠC SỸ

NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. Trương Anh Hoàng




Hà Nội - 2011






MỤC LỤC

LỜI CẢM ƠN i
LỜI CAM ĐOAN ii
TÓM TẮT v
BẢNG CÁC TỪ VIẾT TẮT vii
DANH MỤC HÌNH VẼ viii
DANH MỤC BẢNG BIỂU ix
Chƣơng 1: Quản lý quy trình nghiệp vụ và đặc tả BPMN 2.0 1
1.1. Quy trình nghiệp vụ và quản lý quy trình nghiệp vụ 1
1.1.1. Quy trình nghiệp vụ 1

1.1.2. Quản lý quy trình nghiệp vụ 2
1.1.3. Các chuẩn công nghiệp của BPM 4
1.1.4. Quá trình phát triển của BPM 6
1.1.5. BPM và các ứng dụng doanh nghiệp khác 7
1.1.6. Thị trƣờng BPM 8
1.1.7. Phân biệt BPM và luồng công việc (Workflow) 8
1.2. Thiết kế quy trình nghiệp vụ với BPMN 2.0 9
1.2.1. Khái niệm về BPMN 2.0 9
1.2.2. Các bƣớc chính trong thiết kế quy trình nghiệp vụ với BPMN 19
1.2.3. Làm thế nào để phát triển thành công ứng dụng BPM? 20
Chƣơng 2: Activiti và giải pháp tích hợp vào nền tảng web 23




2.1. Engine Activiti 23
2.2. Tích hợp Activiti vào ứng dụng web 26
2.2.1. Mô hình tích hợp BPM tổng quát 26
2.2.2. Thiết kế tổng thể của ứng dụng 28
2.2.2.1. Tƣơng tác ngƣời dùng 29
2.2.2.2. Tƣơng tác với các hệ thống 32
2.2.2.3. Giám sát và quản trị 33
2.2.3. Lựa chọn nền tảng web và giải pháp cài đặt 36
2.2.3.1. Lựa chọn nền tảng web 36
2.2.3.2. Giải pháp cài đặt 37
Chƣơng 3: Khảo sát và cài đặt một số quy trình nghiệp vụ 41
3.1. Tích hợp BPM vào các ứng dụng thông thƣờng 41
3.1.1. Cơ chế tích hợp 41
3.1.2. Khảo sát và thực hành thực tế 42
3.1.3.1 Quy trình tổ chức thi 42

3.1.3.2 Quy trình tổ chức cuộc họp 47
3.2. Tích hợp BPM vào các hệ thống ERP đã có 49
3.2.1. Cơ chế tích hợp 49
3.2.2. Khảo sát thực tế 51
KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 56
TÀI LIỆU THAM KHẢO 58




BẢNG CÁC TỪ VIẾT TẮT

Ký hiệu
Từ tiếng Anh
Giải thích
BPM
Business Process Management
Quản lý quy trình nghiệp vụ
BPMN
Business Process Modeling And
Notation
Ký hiệu mô hình hóa quy trình
nghiệp vụ
BPEL
Business Process Execution
Language
Ngôn ngữ thực thi quy trình
nghiệp vụ
BPD
Bussiness Process Diagram

Sơ đồ quy trình nghiệp vụ
MVC
Model View Control
Mô hình lập trình phân thành ba
lớp model, view và control
ERP
Enterprise Resource Planning
Hoạch định tài nguyên doanh
nghiệp
OMG
Object Management Group
Tổ chức xây dựng chuẩn BPMN
cũng như một số chuẩn khác





DANH MỤC HÌNH VẼ

Hình 1: Lựa chọn của các nhà quản lý 1
Hình 2: Quá trình phát triển của BPM 7
Hình 3: Biểu đồ BPMN cho một hệ thống mua hàng trực tuyến 11
Hình 4: Biểu diễn lõi BPMN và kiến trúc lớp 12
Hình 5: Quy trình nghiệp vụ đấu giá trực tuyến với các quy trình được phân rã thành các
biểu đồ BPMN con. 15
Hình 6: Biểu đồ BPMN con của quy trình Đăng ký sản phẩm đấu giá 15
Hình 7: Quy trình phát triển sản phẩm 18
Hình 8: Năm bước của quản lý quy trình nghiệp vụ 19
Hình 9: Đánh độ ưu tiên của dự án BPM dựa trên độ phức tạp và ảnh hưởng. 22

Hình 10: Công cụ mô hình hóa quy trình của Activiti 23
Hình 11: Các giao diện giao tiếp với Engine Activiti 25
Hình 12: Giao diện tích hợp Engine BPM 27
Hình 13: Thiết kế tổng thể của ứng dụng 28
Hình 14: Giao diện quản lý công việc 30
Hình 15: Tương tác giữa ứng dụng và engine trong quá trình chạy của một quy trình 31
Hình 16: giao diện quản trị 35
Hình 17: Mô hình MVC của Struts 2 được hiện thực hóa bằng các thành phần core của
framework: action, result và FilterDispatcher. 37
Hình 18: Luồng thực hiện một tác vụ theo mô hình MVC 40
Hình 19: Quy trình tổ chức thi 43
Hình 20: Màn hình công việc chưa giao 44
Hình 21: Màn hình công việc đã tiếp nhận 45
Hình 22: Module tạo kỳ thi 45
Hình 23: Module nhập môn thi 46
Hình 24: Module lập danh sách giám thị 46
Hình 25: Module lập danh sách thí sinh 47
Hình 26: Quy trình tổ chức họp 48





DANH MỤC BẢNG BIỂU

Bảng 1: Sự kiện trong biểu đồ BPMN 13
Bảng 2: Một số kiểu Gateway phổ biến 17
Bảng 3:Các hành động người dùng – vai trò 32
Bảng 4: Các kiểu tương tác 32
Bảng 5: Các đối tượng cần giám sát và quản trị 34

1



Chương 1: Quản lý quy trình nghiệp vụ và đặc tả BPMN 2.0
1.1. Quy trình nghiệp vụ và quản lý quy trình nghiệp vụ
1.1.1. Quy trình nghiệp vụ
Khi nói về quy trình nghiệp vụ, chúng ta hiểu đó là tất cả các quy trình bên trong
một công ty hoặc tổ chức, dù lớn hay nhỏ đều phải tuân theo trên tất cả các hoạt động.
Lãnh đạo của các tổ chức chính phủ, phi lợi nhuận, và các doanh nghiệp nhỏ và lớn, đang
đứng trước những câu hỏi khó khăn:
• Làm thế nào tổ chức có thể cải thiện mức độ dịch vụ khách hàng và nâng cao năng
suất mà không cần các chi phí phát sinh?
• Làm thế nào để có thể quản lý rủi ro và tuân thủ chúng mà không mất đi lợi thế
kinh doanh?
• Làm thế nào để trao quyền cho mỗi nhân viên đổi mới khám phá sản phẩm mới,
tìm kiếm thị trường mới, hoặc phát triển các cách hiệu quả hơn để thỏa mãn khách
hàng?
Một nghiên cứu của Robert Half Management thực hiện năm 2007 với 1.400 lãnh
đạo kinh doan đã cho thấy việc cải tiến các quy trình kinh doanh là ưu tiên hàng đầu mà
họ cần thực hiện trong các năm tới [3] (Hình 1).
25%
34%
38%
62%
65%
Mua lại và sát nhập
Mở rộng quy mô địa lý
Mở rộng sản phẩm dịch vụ mới
Nâng cấp công nghệ

Cải tiến quy trình nghiệp vụ

Hình 1: Lựa chọn của các nhà quản lý
2



Đối với nhiều giám đốc tài chính, cải tiến quy trình có ý nghĩa làm giảm chi phí:
cắt giảm bớt công việc dư thừa để mang lại hiệu quả cao hơn, từ đó mang lại nhiều lợi
nhuận hơn. Nhưng đó mới chỉ là một phần giá trị của phương trình cải tiến doanh nghiệp.
Phân tích được thực hiện bởi viện toàn cầu McKinsey cho thấy cạnh tranh và đổi
mới đã dẫn đến tăng năng suất phi thường trong những năm 1990. Viện giải thích “những
đổi mới trong công nghệ cũng như sản phẩm và quy trình nghiệp vụ đã tăng cường năng
suất. Khi năng suất tăng, cạnh tranh tăng cường, mang lại làn sóng mới của sự đổi mới”
[10].
Đối với các nước phát triển, hoạt động sản xuất chỉ chiếm 1/5 hoạt động của nền
kinh tế thì các kiến thức về nền kinh tế càng trở nên quan trọng hơn. Thật vậy, các nước
này sẽ không thể cạnh tranh với các đối thủ cung cấp sản phẩm và dịch vụ chi phí thấp
nếu như họ không học cách đổi mới tốt hơn và nhanh hơn.
Quản lý quy trình nghiệp vụ đã và đang là câu trả lời cho những vấn đề và thách
thức nêu trên.
1.1.2. Quản lý quy trình nghiệp vụ
Quản lý quy trình nghiệp vụ (BPM - Business Process Management), xét về mặt
quản lý, là cách tiếp cận có hệ thống nhằm giúp các tổ chức/doanh nghiệp tiêu chuẩn hóa
và tối ưu hóa các quy trình hoạt động với mục đích giảm chi phí, tăng chất lượng hoạt
động nhằm đạt được các mục tiêu cần thiết. Về mặt công nghệ, BPM là một bộ công cụ
giúp tổ chức/doanh nghiệp thiết kế, mô hình hóa, triển khai, giám sát, vận hành và cải tiến
các quy trình kinh doanh một cách linh hoạt [3].
Có thể coi BPM là công nghệ thúc đẩy hợp tác giữa CNTT và người dùng nhằm xây
dựng các ứng dụng có khả năng tích hợp con người, quy trình và thông tin trong tổ

chức/doanh nghiệp.
Một bộ ứng dụng BPM bao gồm các thành phần quan trọng dưới đây:
Mô hình hóa các quy trình: Phác họa các quy trình dự kiến và cách thức hoạt
động của chúng. Chúng ta cần một công cụ mô hình hóa quy trình để xác
định quá trình kinh doanh. Nó có thể bao gồm các cách nhìn khác nhau xuất
phát từ phía người làm nghiệp vụ và người làm công nghệ. Ở đó người sử
dụng phi kỹ thuật (chẳng hạn một nhà phân tích kinh doanh) có thể tạo ra một
3



sơ đồ giống như mô hình của quản lý nghiệp vụ và người sử dụng kỹ thuật có
thể kết nối mô hình với dịch vụ web và các điểm tích hợp khác. Một mô hình
chia sẻ duy nhất là cách tốt nhất để thông tin quan trọng không bị mất đi khi
bàn giao cho bên khác. Để hội đủ điều kiện như BPM, mô hình phải có khả
năng thực thi, hoặc có thể ép các hành động lên thiết kế quy trình, chuyển tác
vụ sang cho người dùng, gửi các thông điệp cho hệ thống,
Một máy thực thi quy trình dựa trên mô hình server cài đặt tất cả các quy
trình và các tài nguyên của nó – con người, tổ chức, hệ thống – quản lý trình
tự, thực thi các quy tắc nghiệp vụ và kiểm soát từng bước nhằm đảm bảo thực
thi quy trình hoàn hảo, đóng gói, và quản lý ngoại lệ.
Một không gian làm việc, thường dựa trên trình duyệt, ở đó con người tham
gia vào quy trình có thể xác định các vị trí, mở và hoàn thành các tác vụ mà
họ được giao.
Phân tích hoạt động kinh doanh: Cho phép nhà quản lý xác định được các vấn
đề trong kinh doanh, các xu hướng, cơ hội, thách thức thông qua hệ thống các
báo cáo, biểu đồ…
Quản lý nội dung: Cung cấp một hệ thống lưu trữ và bảo vệ tài liệu điện tử,
hình ảnh, và các loại dữ liệu khác.
Các công cụ tích hợp: Loại bỏ các rào cản trong giao tiếp giữa các phòng, ban

thông qua diễn đàn thảo luận, các cổng thông tin, bảng tin được tích hợp trên
nền web cũng như trong các hệ thống…
Một số nhà phân tích nhấn mạnh các yếu tố sau là cần thiết đối với bộ phần mềm
BPM. Một số khác lại tin rằng không phải lúc nào họ cũng cần, và khi cần hó có thể liên
kết lỏng lẻo với bộ phần mềm BPM, hoặc cung cấp như một mở rộng từ các sản phẩm
khác:
Một máy quy tắc nghiệp vụ hoặc các dịch vụ ra quyết định. Chúng có thể
được dùng để xây dựng các quy tắc nghiệp vụ, thực thi và quản lý các quy tắc
nghiệp vụ.
Quản lý nội dung, ví dụ như việc lưu trữ các file đính kèm với các quy trình.
4



Cộng tác, thường là hỗ trợ tương tác phi cấu trúc trong ngữ cảnh của một quy
trình đã quản lý.
Một kênh dịch vụ doanh nghiệp (ESB – Enterprise service bus) để cung cấp
tầng tích hợp mức dịch vụ bên dưới các BPMS. Mặc dù tất cả các bộ phần
mềm BPM đều hỗ trợ gọi trực tiếp các dịch vụ web, một ESB cũng bao gồm
các chức năng như liên kết và chuyển đổi.
Các nền tảng ứng dụng cho phép rút ngắn thời gian tùy biến các quy trình
chuẩn.
Mỗi khách hàng có thể ưu tiên các chức năng trên một cách khác nhau, tùy thuộc
vào quy mô dự kiến của BPM mà họ triển khai, kỹ năng tổ chức và sở thích, hoặc các loại
công nghệ đã sử dụng.
1.1.3. Các chuẩn công nghiệp của BPM
Để theo kịp với sự phát triển của các tiêu chuẩn công nghệ là một nhiệm vụ không
hề đơn giản. Các thị trường ở giai đoạn đầu, chẳng hạn như thị trường BPM, thường thiếu
sự tiêu chuẩn hóa hiệu lực cho đến khi chúng trở nên hoàn thiện. Nhưng chuyên gia tiêu
chuẩn: họ có thể giúp làm giảm sự mập mờ giữa các cách tiếp cận khác nhau, tạo điều

kiện thuận lợi cho tính khả chuyển giữa các công cụ khác nhau, và có khả năng giảm chi
phí bên trong và bên ngoài. Điều quan trọng là các nhà hoạch định chính sách hiểu được
giá trị và tương đối trưởng thành - và các bên cam kết tuân theo các chuẩn BPM khi xem
xét chiến lược tổng thể của BPM của họ. Các tiêu chuẩn BPM được tập trung vào một
trong hai mục đích: 1) các ký hiệu trực quan phổ biến. 2) trao đổi các mô hình quy trình
giữa các công cụ [3].
Ký hiệu trực quan phổ biến cho các biểu đồ quy trình
Ký hiệu mô hình hóa quy trình trực quan phổ biến thiết lập tiêu chuẩn để làm thế
nào để đọc và xây dựng các biểu đồ quy trình. Các mô hình cung cấp một ngôn ngữ phổ
biến để mọi người trao đổi về các quy trình qua các các nhóm, các đơn vị khác nhau, các
công cụ khác nhau, và thậm trí các ngành công nghiệp khác nhau. Điều này giúp cho việc
học công cụ mới dễ hơn, mở rộng thư viện các phân tích nghiệp vụ khả dụng, và tăng
cường khả năng tái sử dụng của các quy trình.
5



Ký hiệu mô hình hóa quy trình nghiệp vụ (BPMN - Business Process Modeling
Notation) phát triển bởi nhóm OMG (Object Management Group) đang là một chuẩn
quan trọng cho mục đích này, và đã ổn định trong hơn hai năm qua. Hầu hết các đối tác
đã cam kết hỗ trợ BPMN trở thành ngôn ngữ mô hình hóa, nhưng chưa chuẩn hóa hoàn
toàn các sản phẩm mà họ cung cấp.
Trao đổi các mô hình quy trình liền mạch giữa các công cụ
Một số công ty sử dụng nhiều công cụ BPM. Ví dụ, một công ty có thể chọn một
công cụ mô hình hóa quy trình từ một nhà cung cấp và máy chủ chạy quy trình từ nhà
cung cấp khác. Theo cách khác, hai đơn vị bên trong một công ty có thể lựa chọn hai công
cụ khác nhau cho các kiểu dự án khác nhau. Thậm chí nếu các công cụ mô hình hóa đáp
ứng cùng một chuẩn, sự thực thi của các mô hình đó cũng có thể trao đổi được - đó là, mô
hình chạy giống nhau trên các máy chạy quy trình khác nhau. Một định dạng trung gian
được chuẩn hóa sẽ giúp điều này trở thành hiện thực.

Một số chuẩn hướng tới mục đích này
• XPDL (XML Process Definition Language) là một dạng trung gian do WfMC
(Workflow Management Coalition) đưa ra. Mục đích ban đầu của XPDL là để định
hướng công việc giữa mọi người nhưng tính mềm dẻo và khả năng mở rộng đã giúp nó
trở nên phù hợp đối với các kiểu quy trình nghiệp vụ. XPDL ngày nay được hỗ trợ bởi
hơn 70 đối tác và là định dạng trung gian hoàn thiện nhất.
• Business Process Execution Language (BPEL), tạo bởi OASIS (Organization for
the Advancement of Structured Information Standards), là ngôn ngữ kết hợp với Web-
service. Nó không hỗ trợ hoạt động của con người như khi một quy trình thực thi, nó cũng
không hỗ trợ đầy đủ đặc tả BPMN. Dù thế, với một vài mở rộng nó có thể được sử dụng
cho hầu hết các kiểu mô hình hóa quy trình. Sẽ phù hợp hơn khi BPEL được sử dụng cho
các kiểu quy trình tích hợp tập trung (các quy trình phối hợp tương tác giữa các hệ thống
hơn là giữa con người với nhau). Trong trường hợp hệ thống là trung tâm, BPEL là ngôn
ngữ hoàn chỉnh, tuy nhiên ít khi BPEL được sử dụng cho các kiểu quy trình lấy con người
làm trung tâm
6



• BPDM (Business Process Definition Metamodel) là một chuẩn định nghĩa quy
trình mới được công bố hỗ trợ đầy đủ đối với tất cả các đối tượng của BPMN, và sẽ được
tích hợp vào chuẩn BPMN trở thành một định dạng trung gian mặc định.
Sự trao đổi các mô hình quy trình giữa các công cụ là một vấn đề thách thức. Không
có chuẩn nào nêu trên hỗ trợ đầy đủ, liền mạch sự trao đổi này. Cho tới khi các công nghệ
BPM và các chuẩn gắn liền với nó trở nên hoàn thiện trong tương lai, một số mức của
công việc tích hợp tùy biến vẫn sẽ yêu cầu phải chuyển các mô hình giữa các công cụ
khác nhau.
1.1.4. Quá trình phát triển của BPM
Trong quá trình hình thành và phát triển, BPM đã trải qua nhiều dạng thức với sự
tiếp nối của nhiều công nghệ. Thập niên 80 chứng kiến sự phát triển của các ứng dụng

quản lý theo luồng công việc. Luồng công việc (Workflow) là thuật ngữ được sử dụng để
miêu tả các quy trình được gắn liền với hệ thống, trong đó liệt kê danh sách các công việc
cần hoàn thành, cả thủ công lẫn tự động hoá và lên kế hoạch từ trước trong doanh
nghiệp/tổ chức. Việc tích hợp các ứng dụng quản lý trong doan nghiệp/tổ chức với những
quy trình này đòi hỏi phải tùy chỉnh với chi phí tốn kém và khả năng linh hoạt thấp.
Trong thời gian đó, sự xuất hiện của các công nghệ tích hợp ứng dụng doanh nghiệp (EAI
– Enterprise Application Intergration) đã cải thiện phần nào sự giao tiếp giữa các hệ thống
– giúp các dữ liệu tự động đồng bộ trên toàn tổ chức; dữ liệu trong một hệ thống được kế
thừa và sử dụng trong các hệ thống khác mà không cần thiết phải nhập liệu lại.
Cuối những năm 90, thị trường các ứng dụng quản lý theo luồng công việc và thị
trường EAI bắt đầu hội tụ, ranh giới giữa các giải pháp này gần như bị xóa nhòa với sự
xuất hiện của các giải pháp kết hợp các tính năng bao trùm cả hai lĩnh vực – đó là BPM.
Quá trình này được mô tả trong hình 2 dưới đây [3]:
7




Hình 2: Quá trình phát triển của BPM
1.1.5. BPM và các ứng dụng doanh nghiệp khác
Các ứng dụng BPM được tích hợp như một bộ công cụ có khả năng xây dựng và
quản lý các giải pháp dựa trên nền tảng các quy trình kinh doanh đặc thù của doanh
nghiệp. BPM cho phép doanh nghiệp mô hình hóa, thiết kế và thay đổi các quy trình kinh
doanh một cách nhanh chóng và hiệu quả. Trong khi đó, các ứng dụng doanh nghiệp khác
thường chỉ bao gồm các chức năng được xây dựng sẵn, khi doanh nghiệp muốn triển khai
sẽ đứng trước hai lựa chọn: hoặc chấp nhận các quy trình sẵn có trong phần mềm hoặc
đầu tư thêm chi phí và thời gian để chỉnh sửa.
BPM có khả năng tích hợp các ứng dụng doanh nghiệp cũng như người dùng vào
trong một quy trình mới. Các ứng dụng doanh nghiệp cho phép dịch chuyển, kế thừa dữ
liệu lẫn nhau, BPM cung cấp thêm tính năng tương tác với con người và khả năng hỗ trợ

các quy trình phức tạp. Con người tham gia theo hai hướng:
Dưới góc độ nhân viên tác nghiệp: BPM thể hiện các đơn vị tham gia trong
quy trình dưới dạng các nhiệm vụ, mỗi nhiệm vụ có hướng dẫn công việc chi
tiết, tình trạng, mức độ ưu tiên, ngày hoàn thành và các thuộc tính khác. Nhân
8



viên tác nghiệp sử dụng BPM để giám sát và thực hiện các nhiệm vụ được
giao cho họ hoặc cho các nhóm làm việc của họ.
Dưới góc độ người quản lý: Người quản lý sử dụng BPM để kiểm soát quy
trình thực hiện công việc thông qua các báo cáo đồ họa, cho phép họ nắm bắt
nhanh chóng tình trạng công việc và cảnh báo các nút thắt cổ chai (điểm tắc
nghẽn) nếu có. Họ cũng thường xuyên tham gia vào các nhiệm vụ bằng cách
tham gia vào quá trình phê duyệt.
Các ứng dụng BPM phản ánh quy trình theo thời gian thực, cho phép người quản lý
không chỉ dễ dàng xác định các nút thắt cổ chai hay các hoạt động kém hiệu quả trong
quy trình đó, mà còn dễ dàng sửa đổi để cải thiện hiệu năng.
1.1.6. Thị trường BPM
Đây là một trong những mảng thị trường nóng trong ngành công nghiệp phần mềm
ngày nay, với mức độ tăng trưởng dự kiến gấp 10 lần trong vòng 5 năm, từ 500 triệu USD
(2006) lên 6 tỷ USD (2011) [9]. Thị trường BPM sau quá trình phát triển rộng về quy mô,
đang có xu hướng dần thống nhất, trong năm 2006 có tới hơn 150 nhà cung cấp, nhưng
đến cuối năm 2008 số lượng các nhà cung cấp tên tuổi đã được khẳng định còn lại không
nhiều, có thể kể đến Appian, IBM, Oracle, Software AG, SAP, Microsoft, Lombardi,
Pegasystems, TIBCO…. Nguyên nhân một phần là do quá trình mua lại và sát nhập các
giải pháp BPM nhỏ của các “ông lớn” trên thị trường phần mềm ứng dụng doanh nghiệp.
Các hãng nghiên cứu tên tuổi như Gartner, Forrester và IDC đều đưa ra các dự báo
về thị trường BPM trong những năm tới. Mặc dù các con số có thể không thống nhất,
nhưng tất cả đều cho thấy BPM sẽ có mức tăng trưởng chóng mặt.

1.1.7. Phân biệt BPM và luồng công việc (Workflow)
Cả BPM và Workflow cho phép một quy trình được định nghĩa ra, được kiểm tra và
được đưa vào sử dụng. BPM chủ yếu tập trung vào các giao dịch máy tính – các giao dịch
với số lượng lớn các quy trình nghiệp vụ, hầu hết trong số chúng được xử lý bởi máy tính.
Workflow chủ yếu tập trung vào nội dung yêu cầu có sự đánh giá hay xử lý của con
người, với mỗi quy trình có thể cần một khoảng thời gian liên quan dài, vì thế có thể bị
gián đoạn. Cả BPM và Workflow có thể kiểm soát tất cả phạm vi của quy trình nghiệp vụ,
vấn đề là mức độ phù hợp của chúng trong từng tình huống cụ thể [5].
9



BPM đặt trọng tâm vào việc định nghĩa quy trình nghiệp vụ tổng quát, và việc quản
lý và giám sát quy trình đó khi nó đang chạy, thường là xuyên qua nhiều tổ chức, các hệ
thống máy tính khác nhau, ở nhiều vị trí và thậm chí ở các doanh nghiệp khác nhau. Tuy
nhiên, mỗi giao dịch thông thường diễn ra trong thời gian ngắn. Có thể chỉ có một hệ
thống thực hiện một giao dịch riêng biệt, và khi chạy rất ít khi dừng lại. Khi việc xử lý
diễn ra nhanh, hầu hết các giao dịch được xử lý theo cơ chế first-in, first-out. BPM được
tối ưu cho các quy trình tự động, không có tương tác với con người.
Workflow cũng đặt trọng tâm vào việc quản lý quy trình, nhưng chúng thường có
các thành phần có độ thiếu chính xác và có độ trễ (ví dụ như chúng được gắn với con
người). Chúng ta có thể gửi công việc tới ai đó để phê duyệt, nhưng cá nhân đó có thể
đang ngừng làm việc. Có thể có nhiều thành phần xử lý (con người hay các hệ thống) có
thể đảm nhiệm các mảng khác nhau của công việc, và một thành phần xử lý có thể xử lý
nhiều kiểu công việc khác nhau. Tổng công việc cần phải được phân tán đều giữa các
thành phần xử lý. Một vài quá trình xử lý có thể mất một vài phút hoặc một vài giờ, vì thế
công việc quan trọng hơn có thể gán độ ưu tiên cao hơn – được giao phó trước. Trong
một số trường hợp cụ thể Workflow thường được sửa đổi khi một cá nhân tìm kiếm các
thông tin bổ sung. Chất lượng cần được kiểm tra – không chỉ là tính chính xác trong các
thao tác của hệ thống, mà có thể còn do những sai sót do con người tạo ra. Hầu hết các

sản phẩm workflow có thể gọi các chương trình một cách tự động (ví dụ như các engine
BPM), nhưng được tối ưu hóa cho nhiều thành phần xử lý và nhiều độ trễ trong quy trình.
Nhưng nhiều sản phẩm workflow trên thị trường ngày nay không chú trọng vào các quy
trình vắt chéo qua nhiều doanh nghiệp ví dụ như các công cụ BPM.
1.2. Thiết kế quy trình nghiệp vụ với BPMN 2.0
1.2.1. Khái niệm về BPMN 2.0
Nhóm OMG đã phát triển một chuẩn mô hình và ký hiệu quy trình nghiệp vụ BPMN
(Business Process Model and Notation). Mục đích chính của BPMN là cung cấp một tập
ký hiệu dễ hiểu đối với tất cả người làm nghiệp vụ, từ các nhà phân tích nghiệp vụ những
người tạo ra bản nháp ban đầu của các nghiệp vụ, tới những nhà phát triển công nghệ với
nhiệm vụ cài đặt chương trình để thực hiện các quy trình đó, và cuối cùng tới người làm
nghiệp vụ những người sẽ quản lý và điều hành các quy trình đó. Vì thế, BPMN tạo ra
một cầu nối tiêu chuẩn cho khoảng các giữa thiết kế và cài đặt quy trình nghiệp vụ.
10



Mục đích khác không kém phần quan trọng đó là để đảm bảo rằng các ngôn ngữ
XML đã được thiết kế cho việc thực thi các quy trình nghiệp vụ, như WSBPEL (Web
Services Business Process Execution Language), có thể được mô hình hóa bởi một ký
hiệu hướng nghiệp vụ.
Mục tiêu của BPMN là chuẩn hóa mô hình và ký hiệu quy trình nghiệp vụ trong bối
cảnh có rất nhiều ký hiệu mô hình hóa và các quan điểm khác nhau. Để làm điều đó,
BPMN sẽ cung cấp một vai trò đơn giản trong việc trao đổi thông tin quy trình cho người
cài đặt quy trình, khách hàng và nhà cung cấp. Các thành viên của OMG đã đưa ra chuyên
môn và kinh nghiệm với nhiều ký hiệu hiện có và đã tìm cách củng cố những ý tưởng tốt
nhất từ các ký hiệu khác nhau vào một ký hiệu tiêu chuẩn.
BPMN xác định một biểu đồ nghiệp vụ duy nhất, được gọi là biểu đồ quy trình
nghiệp vụ BPD (Bussiness Process Diagram). Biểu đồ này được thiết kể để làm hai việc.
Đầu tiền, nó phải dễ để sử dụng và dễ hiểu. Chúng ta có thể sử dụng nó để mô hình hóa

quy trình nghiệp vụ một cách dễ dàng và nhanh chóng, và nó dễ hiểu đối với những người
không làm về công nghệ (thường là người quản lý). Thứ hai, nó cung cấp một sự diễn giải
cho các quy trình nghiệp vụ phức tạp, và có thể được ánh xạ tự nhiên với các ngôn ngữ
thực thi nghiệp vụ.
Để mô hình hóa một luồng quy trình nghiệp vụ, bạn đơn giản mô hình hóa các sự
kiện xảy ra để bắt đầu một quy trình, các quy trình được thực thi, và các kết quả cuối cùng
của quy trình nghiệp vụ.
Các nghiệp vụ ra quyết định và các nhánh của các luồng được mô hình hóa sử dụng
các gateway. Một gateway tương tự như ký hiệu quyết định trong flowchart.
Ngoài ra, một quy trình trong luồng có thể chứa các quy trình con, chúng có thể
được biểu diễn một cách hình tượng bởi biểu đồ quy trình nghiệp vụ khác gắn kèm thông
qua siêu liên kết tới một ký hiệu quy trình. Nếu một quy trình không được chia nhỏ thành
các quy trình con, nó được xem như một tác vụ - một quy trình ở mức thấp. Một dấu „+‟
trong ký hiệu quy trình có nghĩa là quy trình đã được chia nhỏ; nếu nó không có dấu „+‟,
nó là một tác vụ.
11




Hình 3: Biểu đồ BPMN cho một hệ thống mua hàng trực tuyến
Chúng ta có thể xác định „ai làm gì‟ bằng cách đặt các sự kiện và các quy trình vào
trong các vùng được gọi là pool cho biết ai đang thực hiện một quy trình. Hơn nữa chúng
ta có thể phân chia một pool vào các lane. Một pool thường biểu diễn một tổ chức còn
một lane thường biểu diễn một phòng bên trong tổ chức đó (mặc dù chúng ta có thể dùng
chúng để biểu diễn các thứ khác như các chức năng, ứng dụng và hệ thống).
1.2.1.1. Kiến trúc lõi của BPMN
Kiến trúc công nghệ của BPMN được dựa trên khái niệm các lớp mở rộng trên một
loạt các yếu tố cơ bản gồm các thành đơn giản được xác định là thành phần lõi của đặc tả.
Từ tập lõi của cấu trúc, lớp được sử dụng để mô tả các thành phần bổ sung của đặc tả

được mở rộng và thêm vào đặc tả và dựa trên các đường phụ thuộc rõ ràng giữa các lớp.
Hình 4 biểu diễn lõi và kiến trúc lớp của BPMN [1].
12




Hình 4: Biểu diễn lõi BPMN và kiến trúc lớp
Hình trên cho thấy các nguyên tắc cơ bản của phân lớp có thể được gói trong cách
xác định rõ ràng. Cách tiếp cận sử dụng các kiến trúc chính thức dành cho các mở rộng
được áp dụng thống nhất cho các định nghĩa.
Một lợi ích khác của phân lớp là các lớp tương thích có thể được xây dựng, cho
phép các mức độ phù hợp khác nhau giữa các nhà cung cấp, và cũng cho phép các nhà
cung cấp thêm các lớp của chính họ. Hơn nữa, nó cung cấp cơ chế cho việc định nghĩa lại
các khái niệm tồn tại trước đó mà không ảnh hưởng tới khả năng tương thích ngược.
Đặc tả BPMN được cấu trúc thành các lớp, mỗi lớp xây dựng ở phía trên và mở rộng
từ các lớp thấp hơn. Trong đó có một lõi hoặc nhân bao gồm hầu hết các thành phần cơ
bản cần phải có cho xây dựng các biểu đồ BPMN: quy trình (Process), Choreography và
cộng tác (Collaboration). Mục tiêu của lõi là đơn giản, ngắn gọn và có thể mở rộng với
các hành vi được xác định rõ.
Lõi bao gồm ba gói con:
1. Nền tảng (Foundation): kiến trúc nền tảng cần thiết cho mô hình hóa BPMN
13



2. Dịch vụ (Service): kiến trúc nền tảng cần thiết cho mô hình hóa các dịch vụ
và các giao diện
3. Thành phần chung (common): những lớp (class) phổ biến của Process,
Choreography và Collaboration

1.2.1.2. Mô hình hóa các sự kiện nghiệp vụ
Trong khi mô hình hóa quy trình nghiệp vụ, chúng ta có thể mô hình hóa các sự kiện
xảy ra trong nghiệp vụ, và chỉ ra chúng ảnh hưởng như thế nào tới các luồng quy trình.
Một sự kiện hoặc khởi động một luồng quy trình, hoặc xảy ra trong luồng quy trình, hoặc
kết thúc một luồng quy trình. BPMN cung cấp một ký hiệu riêng biệt cho mỗi kiểu sự
kiện đó, như chỉ ra hình dưới.
Sự kiện bắt đầu
Sự kiện trung gian
Sự kiện kết thúc
Sự kiện bắt
đầu

Bắt đầu
một luồng
nghiệp vụ
Sự kiện

Sự kiện xảy
ra trong
luồng nghiệp
vụ
Sự kiện kết thúc

Kết thúc
một
luồng
nghiệp
vụ

Bảng 1: Sự kiện trong biểu đồ BPMN

Khi cần mô hình hóa các luồng nghiệp vụ phức tạp, như các webservice B2B, cần
mô hình hóa các sự kiện phức tạp hơn, như các thông điệp, các bộ đếm thời gian, các quy
tắc nghiệp vụ, và các điều kiện lỗi. BPMN cho phép xác định kiểu trigger của sự kiện, và
biểu diễn nó bằng các biểu tượng có tính trực quan.
Nhiều khi một sự kiện xuất hiện trong khi một quy trình riêng biệt đang được thực
thi, gây ra ngắt tới quy trình, và kích hoạt một quy trình khác được thực thi. Hoặc, một
quy trình sẽ hoàn thành, sẽ gây ra một sự kiện để bắt đầu, và một quy trình mới được thực
thi.
Chúng ta có thể mô hình hóa các sự kiện giữa chừng đó bằng cách đặt một sự kiện
trực tiếp trên quy trình gắn với sự kiện đó. Trong hình bên dưới, một sự kiện thông điệp
được kích hoạt khi quy trình kiểm tra mail hoàn thành, gây ra một thông điệp yêu cầu mật
14



khẩu được gửi tới quy trình gửi mật khẩu. Kiểu ký hiệu BPMN này làm nó rõ ràng với
người đọc rằng quy trình kiểm tra mail tạo ra một sự kiện thông điệp gửi một thông điệp
tới quy trìn khác.
1.2.1.3. Quy trình nghiệp vụ, quy trình con, tác vụ
Thành phần cốt lõi của mô hình hóa quy trình nghiệp vụ là bản thân các quy trình.
Có ba kiểu quy trình – quy trình, quy trình con, và tác vụ. Chúng được mô tả bởi biểu
tượng hình chữ nhật được làm tròn; việc sử dụng các danh từ khác nhau đơn giản để thể
hiện quan hệ phân cấp giữa chúng.
Một quy trình là một mạng lưới của các điều cần làm. Chúng được biểu diễn bởi
một hình chữ nhật làm tròn ở mức cao nhất của biểu đồ quy trình nghiệp vụ. Bạn có thể
xác định các chi tiết bên trong của một quy trình bằng cách tạo hoặc gắn một biểu đồ quy
trình nghiệp vụ khác vào nó. Một quy trình có một biểu đồ con được đánh dấu bởi dấu „+‟
trong thân của biểu đồ.
Việc hiển thị chi tiết một quy trình bởi một biểu đồ quy trình khác được gọi là phân
tách quy trình. Bạn có thể tiếp tục phân tách một quy trình mà không có giới hạn nào. Các

quy trình mà bạn vẽ trên các biểu đồ con được xem là các quy trình con. Mức thấp nhất
của quy trình, ở đó không còn phân tách nữa, được xem là các tác vụ. Như ví dụ trong
hình 5 các quy trình đăng ký sản phẩm đấu giá, mua sản phẩm, đấu giá sản phẩm được
phân rã thành một biểu đồ BPMN con có các quy trình con trong đó. Hình 6 là biểu đồ
BPMN con của quy trình đăng ký sản phẩm
15




Hình 5: Quy trình nghiệp vụ đấu giá trực tuyến với các quy trình được phân rã
thành các biểu đồ BPMN con.

Hình 6: Biểu đồ BPMN con của quy trình Đăng ký sản phẩm đấu giá.

1.2.1.4. Mô hình hóa luồng trình tự của một quy trình
Để hiển thị thứ tự thực thi của các quy trình, chúng ta kết nối chúng với một luồng
trình tự. Một luồng trình tự được vẽ bởi một đường với mũi tên ở đầu. Một luồng trình tự
16



được dùng để hiển thị trình tự thực thi của các quy trình trong một tổ chức hoặc phòng
ban. Vì thế nếu bổ sung thêm pool và lane vào biểu đồ, chúng ta có thể dùng các đường
luồng trình tự để kết nối các sự kiện, các quy trình, và các gateway được đặt bên trong các
pool và các lane.
BPMN tạo một đường trình tự thứ hai – trình tự thông điệp – dùng để mô hình hóa
thứ tự của các quy trình giữa các tổ chức và các phòng ban (nói cách khác, là giữa các
pool).
1.2.1.5. Mô hình hóa các điểm quyết định bởi các gateway

Các quyết định, các điểm hợp nhất, các điểm rẽ nhánh và các điểm kết nối trong
luồng quy trình được mô hình hóa với một biểu tượng gateway. Một gateway có thể được
xem như câu hỏi tại điểm trên luồng quy trình. Câu hỏi có một tập định nghĩa sẵn các câu
trả lời. Có thể thiết lập khuôn mẫu (stereotype) của một gateway, và vì thế thay đổi ý
nghĩa logic do nó xác định, và biểu tượng biểu diễn nó. Bảng dưới đây liệt kê một số kiểu
Gateway và các biểu tượng gắn với nó.
Khuôn mẫu Gateway
Giải thích
Quyết định loại trừ (XOR)
XOR gateway dùng để mô hình hóa
quyết định dựa trên sự kiện hoặc dựa
trên dữ liệu
Quyết định XOR dựa vào dữ liệu

Đây là kiểu XOR gateway phổ biến.
Một thẻ mang dữ liệu trong luồng quy
trình đến XOR gateway. Đường đi tiếp
theo được chọn dựa trên biểu thức điều
kiện.
17



Gateway quyết định XOR dựa vào sự kiện

Gateway dựa trên sự kiện biểu diễn
điểm rẽ nhánh dựa trên một sự kiện xảy
ra tại điểm đó trong luồng quy trình.
Gateway quyết định OR


Gateway này có một hoặc nhiều luồng
quy trình đi ra từ điểm quyết định.
Gateway phức hợp

Xác định điều kiện chuyển tiếp phức
tạp tham chiếu đến tên của các luồng
quy trình ra. Biểu thức xác định luồng
quy trình ra nào được lựa chọn.
Bảng 2: Một số kiểu Gateway phổ biến
18



1.2.1.6. Biểu diễn ai làm gì bằng Pool và Lane
Khi bạn đang mô hình hóa các luồng nghiệp vụ, bạn nhận được các quy trình, các
sự kiện, và các gateway của biểu đồ quy trình nghiệp vụ và đặt chúng trong các pool hoặc
lane. Một pool được vẽ bởi một hình chữ nhật làm tròn các cạnh vẽ theo chiều ngang hoặc
dọc. Một lane là một phân vùng nhỏ với một pool bên trong và mở rộng toàn bộ độ dài
của pool.
Thông thường, một pool biểu diễn một tổ chức và một lane biểu diễn một phòng
ban trong tổ chức đó. Bằng cách đặt các quy trình vào các pool hoặc các lane, bạn đang
chỉ định ai làm gì, đối với các sự kiện bạn chỉ định các sự kiện đó diễn ra ở đâu, và đối
với các gateway bạn chỉ định các quyết định đó được thực thi ở đâu, ai thực thi chúng.
Hình dưới đây [1] mô tả quy trình phát triển sản phẩm với các tác vụ được thực hiện bởi
các nhóm khác nhau như nhóm tiếp thị, nhóm bán hàng, nhóm tư vấn và nhóm phát triển
sản phẩm.

Hình 7: Quy trình phát triển sản phẩm



×