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

Tìm hiểu XPDL và xây dựng ứng dụng minh hoạ

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.94 MB, 135 trang )


Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 1
Lời cảm ơn
Chúng em xin chân thành cảm ơn Khoa Công Nghệ Thông Tin, Trường Đại
học Khoa học Tự nhiên, Tp HCM ñã tạo ñiều kiện cho chúng em thực hiện ñề tài
tốt nghiệp này.
Chúng em xin chân thành cảm ơn thầy Lâm Quang Vũ ñã tận tình hướng dẫn,
chỉ bảo chúng em trong suốt quá trình thực hiện ñề tài này. Qua sự hướng dẫn của
thầy, chúng em không chỉ học ñược nhiều kiến thức bổ ích mà còn học ở thầy
phương pháp nghiên cứu khoa học, thái ñộ và tinh thần làm việc nghiêm túc.
Chúng em cũng xin chân thành cảm ơn các thầy cô trong khoa công nghệ
thông tin ñã trang bị cho chúng em những kiến thức bổ ích trong suốt quá trình
học tập tại trường. Những kiến thức ấy ñã giúp chúng em rất nhiều trong quá trình
làm ñề tài và cũng là hành trang cho chúng em tự tin, vững bước vào ñời.
Chúng con xin ghi nhớ công ơn của Ba, Mẹ. Ba mẹ luôn là niềm ñộng viên
giúp chúng con vuợt qua khó khăn trong cuộc sống.
Chúng em xin cảm ơn các anh chị khóa trước ñã truyền ñạt các kinh nghiệm
cho chúng em trong quá trình thực hiện luận văn tốt nghiệp.
Mặc dù ñã cố gắng hoàn thành luận văn với tất cả nỗ lực của bản thân, nhưng
luận văn chắc chắn không tránh khỏi những sai sót, chúng em rất mong quí thầy cô
tận tình chỉ bảo. Một lần nữa chúng em xin gửi ñến tất cả mọi người lời cảm ơn
chân thành nhất.

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 2
Giới thiệu tổng quan ñề tài
Ngày nay, cùng với sự gia tăng quy mô tổ chức, công việc ngày càng phức tạp. Nhu
cầu sử dụng tin học trong tổ chức cũng gia tăng tương ứng. Tuy nhiên, hiện nay, tin học
chỉ ñược áp dụng ñể thực hiện các công việc thường ngày, việc quản lý quy trình thực
hiện các chuỗi công việc chưa ñược hỗ trợ. Từ ñó xuất hiện nhu cầu sử dụng tin học ñể


quản lý có hiệu quả các quy trình nghiệp vụ.
Năm 1998, tổ chức WfMC ñược thành lập với mục ñích nghiên cứu và ứng dụng tin
học vào việc quản lý các quy trình nghiệp vụ. WfMC mong muốn xây dựng ñược hệ
thống quản lý quy trình nghiệp vụ, gọi tắt là BPMS (Business Process Management
System), một BPMS gồm hai phần chính sau:
 Phần hỗ trợ mô hình hóa quy trình nghiệp cụ (ñể ñịnh nghĩa các quy trình
nghiệp vụ trong thực tế): thông thường gồm một ngôn ngữ dùng ñể ñặc tả quy
trình nghiệp vụ và các công cụ trực quan hỗ trợ người dùng thiết kế các quy
trình này.
 Phần hỗ trợ vận hành quy trình nghiệp vụ: thường gồm một ñộng cơ vận hành
quy trình giúp quản lý việc vận hành quy trình cùng với các công cụ giúp
người dùng tham gia vào quá trình thực hiện quy trình nghiệp vụ.
Tuy nhiên hướng phát triển BPMS chưa có ñộ trưởng thành cao, ña số các BPMS vẫn
còn dừng lại ở mức nghiên cứu. Về ngôn ngữ ñặc tả ñã có những bước phát triển, xuất
hiện một số ngôn ngữ ñặc tả chuẩn như XPDL, BPML. Về công cụ thiết kế và hỗ trợ vận
hành vẫn còn nhiều hạn chế.
Trong luận văn cử nhân tin học về ñề tài “Tìm hiểu XPDL và xây dựng ứng dụng
minh hoạ” của hai sinh viên Trần Đăng Khoa và Phạm Minh Tuấn (Sinh viên khoa công
nghệ thông tin, trường Đại học Khoa học Tự nhiên) ñã xây dựng thành công công cụ mô
hình hóa eXPDL. Trong khuôn khổ luận văn này, chúng em dự ñịnh nghiên cứu và xây
dựng ứng dụng hỗ trợ vận hành quy trình nghiệp vụ dựa trên ñặc tả do công cụ mô hình
hóa eXPDL phát sinh.
Với ñề tài “Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp
vụ (BPML) trên môi trường WEB ”, chúng em hy vọng góp một phần nhỏ vào việc ứng
dụng tin học quản lý các quy trình nghiệp vụ.

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 3
Mục lục
Danh mục các ký hiệu, các chữ viết tắt 6

Danh mục các hình vẽ 6
Danh mục các bảng 7
Chương 1. Tổng quan 9
1.1. Tổng quan về quy trình nghiệp vụ: 9
1.1.1. Định nghĩa: 9
1.1.2. Các hướng nghiên cứu về tiến trình nghiệp vụ: 9
1.1.3. Cơ chế vận hành quy trình nghiệp vụ: 13
1.1.4. Ưu và khuyết ñiểm của vận hành quy trình nghiệp vụ bằng WEB: 14
1.2. Tổng quan về ñề tài: 14
1.2.1. Các yêu cầu của ñề tài: 14
1.2.2. Kết quả ñạt ñược: 14
1.2.3. Bố cục luận văn: 15
Chương 2. Giới thiệu một số ngôn ngữ mô hình hóa: 16
2.1. Ngôn ngữ mô hình hóa XPDL: 16
2.1.1. Lịch sử: 17
2.1.2. Các ñặc ñiểm chính của XPDL 2.0: 20
2.2. Ngôn ngữ mô hình hóa BPML: 22
2.2.1. Khái niệm: 22
2.2.2. Các thành phần chính: 23
2.2.2.1. Công việc (Acitivity) : 23
2.2.2.2. Các loại công việc (Activity types): 23
2.2.2.3. Ngữ cảnh công việc (The activity context): 23
2.2.2.4. Công việc ñơn giản và công việc phức hợp (simple and complex activity):
24
2.2.2.5. Thể hiện công việc (Activity instance): 25
2.2.3. Quy trình (Process): 26
2.2.4. Ngữ cảnh (Context): 31
2.2.5. Thuộc tính (Property): 32
2.2.6. Tín hiệu (Signal): 34


Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 4
2.2.7. Kế hoạch (Schedule): 35
2.2.8. Ngoại lệ (Exception): 35
2.2.9. Giao tác (Transaction): 38
2.2.10. Hàm (Function): 40
2.3. Ngôn ngữ mô hình hóa eXPDL: 40
2.3.1. Giới thiệu: 40
2.3.2. Những cải tiến của eXPDL so với XPDL và BPML: 41
2.3.2.8. Hỗ trợ mô tả các quy trình có những hoạt ñộng theo mẫu cột mốc: 43
Chương 3. Giới thiệu tổng quan hệ thống 44
3.1. Ngữ cảnh phát triển hệ thống: 45
3.2. Yêu cầu hệ thống cần xây dựng: 45
3.3. Ý nghĩa hệ thống: 45
3.4. Công cụ thiết kế: 46
3.4.1. Giới thiệu về công cụ mô hình hóa quy trình nghiệp vụ : 46
3.4.2. Một số chỉnh sửa công cụ MyXPDL cho phù hợp với việc quản lý quy
trình nghiệp vụ 47
3.5. Nguyên lý tổ chức hệ thống: 47
3.6. Nguyên lý vận hành hệ thống: 47
3.7. Quy trình tổng quan: 48
Chương 4. Phân tích yêu cầu hệ thống 49
4.1. Các thành phần hỗ trợ trong luận văn: 49
4.2. Các chức năng chính: 50
4.2.1. Quản lý quy trình mẫu: 50
4.2.2. Khởi tạo dự án: 50
4.2.3. Quản lý dự án: 51
4.2.4. Thực hiện dự án: 52
4.2.5. Các chức năng quản trị: 52
4.3. Mô hình Use Case: 52

4.4. Đặc tả Actor: 53
4.5. Đặc tả Use Case: 53
Chương 5. Phân tích và thiết kế hệ thống 72

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 5
5.1. Thiết kế dữ liệu: 72
5.2. Một số lược ñồ cơ sở dữ liệu: 73
5.3. Thiết kế xử lý: 74
5.3.1. Sơ ñồ lớp: 75
5.3.2. Một số mô hình chính: 76
5.3.3. Một số luồng tuần tự chính trong ứng dụng: 79
5.4. Thiết kế giao diện: 91
Chương 6. Thử nghiệm và ñánh giá 93
6.1. Một số quy trình mẫu: 93
6.1.1. Quy trình ñăng ký học phần: 93
6.1.2. Quy trình chuẩn bị thi thực hành: 94
6.1.3. Quy trình xét tốt nghiệp cuối khóa 94
6.2. Cài ñặt và triển khai hệ thống: 95
6.3. Đánh giá: 95
Chương 7. Tổng kết và hướng phát triển 96
7.1. Những kết quả ñạt ñược: 97
7.1.1. Về mặt lý thuyết: 97
7.1.2. Về mặt ứng dụng: 97
7.2. Ưu và khuyết ñiểm của hệ thống: 97
7.3. Hướng phát triển: 98
7.4. Lời kết: 99
Tài liệu tham khảo 99
Phụ lục 100
Phụ lục 1: Mô tả các bảng cơ sở dữ liệu 100

Phụ lục 2: Các màn hình giao diện chính 117
Phụ lục 3: Quy trình ñăng ký học phần 128

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 6
Danh mục các ký hiệu, các chữ viết tắt
WfMS Workflow Management System
WfMC Workflow Management Coalition
XPDL XML for Process Definition Language
BPML Business Process Modeling Language
BPEL Business Process Execution Language
BPMI Business Process Management Initiative
UML Unified Modelling Language
Danh mục các hình vẽ
Hình 1 Mô hình hóa tiến trình nghiệp vụ 9
Hình 2 Mô hình vận hình quy trình nghiệp vụ 13
Hình 3Sơ ñồ chuyển ñổi trạng thái thể hiện công việc trong BPML 26
Hình 4 Nguyên lý tổ chức hệ thống 47
Hình 5 Nguyên lý vận hành hệ thống 48
Hình 6 Quy trình tổng quan 49
Hình 7 Mô hình Use Case 53
Hình 8 Mô hình cơ sở dữ liệu tổng quan 73
Hình 9 Lược ñồ cơ sở dữ liệu phân công thực hiện công việc 73
Hình 10 Lược ñồ cơ sở dữ liệu tạo mới công việc 73
Hình 11 Lược ñồ cơ sở dữ liệu tạo mới sản phẩm 74
Hình 12 Sơ ñồ lớp các ñối tượng trong dự án 75
Hình 13 Sơ ñồ lớp các ñối tượng liên quan ñến công việc 76
Hình 14 Sơ ñồ trạng thái công việc 76
Hình 15 Quy trình hiển thị cây dự án 78
Hình 16 Quy trình tìm kích hoạt công việc tiếp theo 79

Hình 17 Lược ñồ tuần tự tạo mới dự án theo mẫu 80
Hình 18 Lược ñồ tuần tự kích hoạt dự án 81
Hình 19 Lược ñồ tuần tự tạo mới thể hiện công việc 82
Hình 20 Lược ñồ tuần tự tìm công việc tiếp theo trong dự án 83
Hình 21 Lược ñồ tuần tự xử lý endevent 84
Hình 22 Lược ñồ tuần tự xử lý Gateway 85
Hình 23 Lược ñồ tuần tự thay ñổi thông tin công việc 86
Hình 24 Lược ñồ tuần tự hiển thị cây tiến trình 87
Hình 25 Lược ñồ tuần tự upload sản phẩm 88
Hình 26 Lược ñồ tuần tự doawnload sản phẩm 88
Hình 27 Lược ñồ tuần tự thêm mới ñối tượng 89
Hình 28 Lược ñồ tuần tự luân chuyển sản phẩm 90
Hình 29 Lược ñồ tuần tự truy xuất cơ sở dữ liệu 90
Hình 30 Menu chức năng hệ thống 91
Hình 31 Cây tiến trình dự án 91
Hình 32 Màn hình vận hành dự án 92

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 7
Hình 33 Màn hình báo cáo 93
Hình 34 Quy trình thi thực hành 94
Hình 35 Quy trình xét tốt nghiệp cuối khóa 95
Hình 36 Màn hình thực hiện công việc 117
Hình 37 Màn hình tạo mới dự án 118
Hình 38 Màn hình quy ñịnh thời gian thực hiện công việc 119
Hình 39 Màn hình phân công user thực hiện công việc 120
Hình 40 Màn hình chính thêm công việc vào dự án 121
Hình 41 Màn hình thêm sản phẩm 122
Hình 42 Màn hình thêm cổng ñiều khiển 123
Hình 43 Màn hình thêm kiểu dữ liệu tự ñịnh nghĩa 124

Hình 44 Màn hình thêm luồng ñiều khiển vào quy trình 125
Hình 45 Màn hình quản lý sản phẩm 126
Hình 46 Màn hình xem thông tin công việc 127
Hình 47 Màn hình báo cáo dự án 128
Hình 48 Quy trình ñăng ký học phần 129
Hình 49 Quy trình chuẩn bị công tác giảng dạy 129
Hình 50 Quy trình chuẩn bị ñăng ký học phần lý thuyết 130
Hình 51 Quy trình ñăng ký học phần lý thuyết 131
Hình 52 Quy trình chuẩn bị ñăng ký thực hành 132
Hình 53 Quy trình ñăng ký thực hành 133
Hình 54 Quy trình hiệu chỉnh học phần 133
Hình 55 Quy trình ñăng ký trả nợ 134
Hình 56 Quy trình tính toán và ñóng học phí 134
Hình 57 Các vai trò trong quy trình ñăng ký học phần 135
Hình 58 Các sản phẩm trong quy trình ñăng ký học phần 135

Danh mục các bảng
Bảng 1 Bản so sánh các loại khởi tạo quy trình 28
Bảng 2 Bảng mô tả các trạng thái công việc 77
Bảng 3 CSDL mô tả người dùng 100
Bảng 4 CSDL mô tả quyền trong hệ thống 101
Bảng 5 CSDL mô tả sự phân quyền trong hệ thống 101
Bảng 6 CSDL lưu trữ các mẫu mô hình hóa 101
Bảng 7 CSDL lưu trữ các tập tin 102
Bảng 8 CSDL lưu trữ dự án 102
Bảng 9 CSDL lưu trữ mô hình 103
Bảng 10 CSDL lưu trữ vai trò 103
Bảng 11 CSDL lưu trữ tiến trình 104
Bảng 12 CSDL lưu trữ công việc 104
Bảng 13 CSDL lưu trữ trạng thái mở rộng của công việc 105

Bảng 14 CSDL lưu trữ sản phẩm 105
Bảng 15 CSDL lưu trữ trạng thái mỡ rộng của sản phẩm 106
Bảng 16 CSDL lưu trữ thuộc tính sản phẩm 106
Bảng 17 CSDL lưu trữ các sản phẩm vào/ra của công việc 106

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 8
Bảng 18 CSDL lưu trữ phân vai trò thực hiện công việc 107
Bảng 19 CSDL lưu trữ kiểu dữ liệu tự ñịnh nghĩa 107
Bảng 20 CSDL lưu trữ giá trị các kiểu dữ liệu tự ñịnh nghĩa 107
Bảng 21 CSDL lưu trữ luồng tuần tự 108
Bảng 22 CSDL lưu trữ ñiều kiện 108
Bảng 23 CSDL lưu trữ biểu thức ñiều kiện nguyên tố 109
Bảng 24 CSDL lưu trữ cổng ñiều khiển 109
Bảng 25 CSDL lưu trữ biến cố bắt ñầu 110
Bảng 26 CSDL lưu trữ biến cố trung gian 111
Bảng 27 CSDL lưu trữ biến cố kết thúc 112
Bảng 28 CSDL lưu trữ bộ ñịnh giờ 112
Bảng 29 CSDL lưu trữ thể hiện công việc 113
Bảng 30 CSDL lưu vết quá trình thực hiện công việc 113
Bảng 31 CSDL lưu trữ thể hiện sản phẩm 114
Bảng 32 CSDL lưu trữ thể hiện sản phẩm ñầu vào của công việc 114
Bảng 33 CSDL lưu trữ thể hiện sản phẩm ñầu ra của công việc 114
Bảng 34 CSDL lưu trữ thời gian thực hiện công việc 115
Bảng 35 CSDL lưu trữ phân công vai trò cho người dùng trong dự án 115
Bảng 36 CSDL lưu trữ câu hỏi 116
Bảng 37 CSDL lưu trữ câu trả lời 116

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 9


Chương 1. Tổng quan
Trình bày tổng quan các vấn ñề sẽ ñược nghiên cứu trong luận văn. Đồng thời
cung cấp một số ñịnh nghĩa, khái niệm ban ñầu về các vấn ñề liên quan ñến luận
văn.
1.1. Tổng quan về quy trình nghiệp vụ:
1.1.1. Định nghĩa:
Là một tập hợp của một hoặc nhiều thủ tục hoặc công việc mà cùng chung mục
ñích nghiệp vụ, thông thường trong ngữ cảnh của tổ chức ñịnh nghĩa các vai trò
chức năng và các mối quan hệ.
1

1.1.2. Các hướng nghiên cứu về tiến trình nghiệp vụ:
1.1.2.1. Về mô hình hóa tiến trình nghiệp vụ:
1.1.2.1.1. Mô hình hóa nghiệp vụ là gì?
Mô hình hóa tiến trình nghiệp vụ là việc ñịnh nghĩa các tiến trình nghiệp vụ
bằng cách sử dụng ngôn ngữ mô hình hóa tiến trình thích hợp. Hiện tại có rất
nhiều ngôn ngữ mô hình hóa tiến trình ñang ñược nghiên cứu và phát triển nhưng
trong ñó phổ biến nhất là 2 ngôn ngữ BPML và XPDL.

Hình 1 Mô hình hóa tiến trình nghiệp vụ
2

Ngôn ngữ mô hình hóa tiến trình cần diễn ñạt ñược các thành tố chính trong
tiến trình, thêm vào ñó cũng cần diễn ñạt ñược các thông tin phụ như tài nguyên,
việc phân tích, theo dõi, ño lường Nhưng tại sao lại phải mô hình hóa tiến trình ?

1
Trang 3, Business Project Modeling Languages: Sorting through the alphabet soup, WfMC, 1999
2

Nghiên cứu và áp dụng các kỹ thuật hỗ trợ vận hành một số tiến trình phần mềm hửu dụng, luận văn thạc
sĩ ngành tin học, TP HCM 2003

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 10
1.1.2.1.2. Mục ñích của việc mô hình hóa:
Việc mô hình hóa quy trình nghiệp vụ nhằm các mục ñích sau ñây:
 Mô tả quy trình
Cung cấp một hệ thống ñặc tả mang tính hình thức ñể thống nhất cơ chế giao
tiếp trao ñổi tài liệu giữa các tổ chức.
 Phân tích quy trình
Dựa vào mô hình ñể xem xét cải tiến quy trình, phân tích nhằm tìm ra các thiếu
sót và hạn chế của quy trình.
 Thực thi quy trình
Mô phỏng hay cung cấp một mức ñộ hỗ trợ xử lý tự ñộng nhất ñịnh cho các
quy trình nghiệp vụ.
Cung cấp hướng dẫn chi tiết cho các ñối tượng tham gia vào tiến trình: nhờ ñó
quá trình phối hợp thực hiện dễ dàng hơn.
1.1.2.1.3. Một số ñặc ñiểm của các ngôn ngữ mô hình hóa:
XPDL,BPML, BPEL:
BPML, BPEL và XPDL là những ngôn ngữ ñịnh nghĩa tiến trình dựa trên
XML. Chúng cung cấp một mô hình hình thức ñể biểu thị những tiến trình có thể
thực hiện, những tiến trình này thể hiện tất cả diện mạo của tiến trình nghiệp vụ
của 1 công ty. Chúng dựa vào những mô hình ñặc tả khác nhau.
Mỗi mô hình ñều xem hoạt ñộng (activities) như những phần tử cơ bản của sự
ñịnh nghĩa tiến trình. Mỗi hoạt ñộng (activity) lại là 1 bộ phận của tiến trình ñặc
biệt nào ñó. Mỗi cái ñều có thể hiện dữ liệu liên quan riêng có thể ñược ñề cập ñến
cổng lôgic và những biểu thức (expresstion).
Trong khi BPML và BPEL ñược xem như những ngôn ngữ lập trình có cấu
trúc khối, cho phép ñệ quy các khối thì XPDL ñược xem như một ngôn ngữ có cấu

trúc ñồ thị với những khái niệm bổ sung ñể ñiều khiển những khối.
BPML tập trung trong việc ñịnh nghĩa những dịch vụ mạng. BPEL cũng tập
trung trong vấn ñề này và hướng giải quyết cũng tương tự với BPML. Trong khi
ñó XPDL tập trung trên những vấn liên quan ñến phân phối các công việc.

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 11
1.1.2.1.4. Các hướng nghiên cứu hiện nay:
Lĩnh vực mô hình hóa nghiệp vụ ñang trong bước xây dựng và phát triển nên
có khá nhiều hướng nghiên cứu. Một số hướng tập trung vào việc ñặc tả các
nghiệp vụ theo tính hướng sự kiện, một số khác lại xem xét mô hình nghiệp vụ
theo một lĩnh vực công nghiệp hay thương mại chuẩn. Trong ñề tài này chúng em
xin ñược tập trung chủ yếu vào phương pháp mô hình hóa nghiệp vụ theo mô hình
luồng công việc (Workflow). Đây là mô hình xem xét quy trình nghiệp vụ tổng
quát dưới dạng các luồng thực thi có thứ tự, tập trung vào cơ chế mô tả nghiệp vụ
sao cho có thể ñễ dàng lưu trữ và vận hành ñược trên máy tính. Mô hình
Workflow ra ñời cách ñây hơn 15 năm và hiện ñang ñược xây dựng dần dần ñể
hoàn chỉnh về cấu trúc và ngữ nghĩa.
Một số hướng nghiên cứu chính về mô hình Workflow
 Xây dựng các giao diện của mô hình Workflow
Để mô hình Workflow có khả năng hiểu ñược trong các hệ thống quản trị
luồng công việc, thì nó phải ñược cung cấp các giao diện ra “thế giới lập trình”
bên ngoài. Các giao diện này có thể ñược xem như các API chuẩn cung cấp khả
năng cho những thành phần bên ngoài có thể quản lý thông tin, giao tiếp, gọi các
hành vi ứng xử tương ứng trong mô hình.
 Xây dựng hệ thống quản lý nghiệp vụ từ các mô hình Workflow :
Các hệ thống quản lý luồng công việc cung cấp khả năng ñọc dữ liệu từ mô
hình ñã ñược mô hình hóa, và cho phép vận hành, kiểm soát các mô hình này ñể tự
ñộng hóa các nghiệp vụ thực tế. Hiện nay hướng nghiên cứu này ñạt khá nhiều
thành tựu như : việc cung cấp các cơ chế ñộng ñể hỗ trợ việc thực thi mô hình

workflow, giám sát ghi nhận các thông tin quản lý từ mô hình, cho phép phân
quyền và xử lý trên các thành phần thuộc mô hình khi thực thi.
 Xây dựng cấu trúc mô hình luồng công việc ở mức meta :
Mô hình luồng công việc ở mức meta ñược ñịnh nghĩa ở mức trừu tượng hóa
cao nhất, nhằm cung cấp khả năng mở rộng mô hình luồng công việc ở mức tối ña.
Nó có ứng dụng rất mạnh trong việc chuyển ñổi giữa các ngôn ngữ mô hình hóa

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 12
luồng công việc. Đồng thời từ mô hình này các ngôn ngữ mô hình hóa luồng công
việc có thể cung cấp những khả năng mở rộng khi cần thiết.
Đây là một trong những hướng nghiên cứu chính của các tổ chức mô hình hóa
lớn hiện nay. Điển hình là UML, WfMC, và BPMI. Tổ chức ñang có những
nghiên cứu khá sâu về vấn ñề này là WfMC. WfMC xây dựng một mô hình Meta
tương ñối tốt và có cấu trúc tương tự với khá nhiều ngôn ngữ mô hình hóa khác.
Thông qua mô hình meta này có thể dễ dàng chuyển ñổi giữa khá nhiều ngôn ngữ
mô hình hóa khác nhau thông qua việc ánh xạ về mô hình meta.
 Xây dựng các ngôn ngữ mô hình hóa cho mô hình Workflow
Những nghiên cứu về ngôn ngữ mô hình hóa ñi sâu vào việc phân tích khả
năng diễn ñạt, xây dựng cú pháp, ñặc tả các cấu trúc hỗ trợ cho các hệ quản trị
Workflow có thể phân tích và dễ dàng triển khai những mô hình xây dựng theo
các ngôn ngữ này.
Hiện tại có khá nhiều ngôn ngữ ñược xây dựng cho mô hình Workflow như :
XPDL, BPML, UML,… Tuy nhiên các ngôn ngữ này vẫn còn khá nhiều hạn chế
về khả năng diễn ñạt cho các nghiệp vụ thực tế.
Bên cạnh ñó còn có một số hướng tiếp cận khác ñi sâu về lý thuyết các cơ chế
nghiệp vụ của mô hình luồng công việc : xây dựng phương pháp luận, tính toán
ñộ phức tạp, tính hiệu quả của các mô hình,
1.1.2.2. Về vận hành tiến trình nghiệp vụ
1.1.2.2.1. Vận hành tiến trình nghiệp vụ là gì?

Vận hành tiến trình nghiệp vụ chính là quá trình xây dựng và phát triển nghiệp
vụ thực sự. Nếu một tiến trình ñược mô hình hóa hoặc ñịnh nghĩa trước ñó bằng
các ngôn ngữ mô hình hóa tiến trình, việc vận hành tiến trình chính là việc trình
diễn lại những mô hình ñã ñược mô hình hóa. Việc vận hành tiến trình ñược
những nhân viên tham gia phát triển tiến trình thực hiện thông qua các thao tác,
hành ñộng

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 13

Hình 2 Mô hình vận hình quy trình nghiệp vụ
3

1.1.2.2.2. Mục ñích của vận hành tiến trình nghiệp vụ:
Tiến trình có thể ñược vận hành dưới sự kiểm soát và quản lý, hướng dẫn của
các ñộng cơ tiến trình, ñảm bảo các bước thực hiện ñúng theo những mô hình tiến
trình ñã ñược thiết kế, một số công việc ñơn giản cũng có thể ñược thực hiện tự
ñộng.
1.1.2.2.3. Hiện trạng:
Hiện nay cũng có nhiều cơ chế hỗ trợ vận hành một tiến trình phần mềm như:
hỗ trợ vận hành và quản lý tiến trình nghiệp vụ trên môi trường WEB, hỗ trợ vận
hành tiến trình bằng các hệ thống Agent hoặc các bằng các CaseTool, hỗ trợ vận
hành tập trung hoặc phân tán về mặt không gian, thời gian Trên cơ sở khảo sát
một số cơ chế vận hành trong các môi trường PSEE hiện có Adele,Arcadia, ALF,
AP5, EPOS, Marvel, OIKOS, ProcessWeaver, SPADE,… chúng tôi thử nghiệm
xây dựng một Tool hỗ trợ việc vận hành tiến trình phần mềm ñược ñặc tả bằng
ngôn ngữ eXPDL, hỗ trợ vận hành tiến trình nghiệp vụ trong một môi trường
WEB.
1.1.3. Cơ chế vận hành quy trình nghiệp vụ:
Quy trình nghiệp vụ ñược vận hành dựa vào một hệ thống quản lý luồng công

việc (Workflow Management System, gọi tắt là WfMS). WfMS xác ñịnh luồng


3
Nghiên cứu và áp dụng các kỹ thuật hỗ trợ vận hành một số tiến trình phần mềm hửu dụng, luận văn thạc
sĩ ngành tin học, TP HCM 2003

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 14
công việc ñã ñược ñịnh nghĩa trước trong ñịnh nghĩa quy trình nghiệp vụ. WfMS
quản lý các tài nguyên (ứng dụng, dữ liệu, con người) cần thiết ñể ñạt ñược mục
tiêu của công việc, cung cấp khả năng theo dõi và ñiều khiển quy trình
4

1.1.4. Ưu và khuyết ñiểm của vận hành quy trình nghiệp vụ bằng WEB:
 Ưu ñiểm:
- Hỗ trợ tính chất phân tán của tiến trình rất mạnh.
- Tính không ñồng nhất của tiến trình: do việc giao tiếp ñều thông qua Web
nên các thành viên chỉ cần có một Web Browser ñể giao tiếp với hệ thống,
hoàn toàn không lệ thuộc vào môi trường thực hiện.
- Hỗ trợ người dùng thực hiện công việc bất kỳ lúc nào
- Hỗ trợ làm việc nhóm thông qua mạng.
- Thực hiện liên kết với các quy trình nghiệp vụ khác trong nội bộ tổ chức.
 Khuyết ñiểm:
- Vấn ñề bảo mật thông tin.
- Truyền thông chậm, ñặc biệt việc kết nối cơ sở dữ liệu từ xa. Nếu dự án lớn
và ñòi hỏi khối lượng thông tin trao ñổi nhiều thì ñây là khó khăn rất lớn.
1.2. Tổng quan về ñề tài:
1.2.1. Các yêu cầu của ñề tài:
Trong phạm vi nghiên cứu của luận văn chúng em dự kiến thực hiện một số

yêu cầu chủ yếu sau:
 Tìm hiểu về các ngôn ngữ mô hình hóa quy trình nghiệp vụ hiện nay.
 Tìm hiểu về vận hành quy trình nghiệp.
 Xây dựng ứng dụng hỗ trợ vận hành quy trình nghiệp vụ theo ñặc tả của
một ngôn ngữ mô hình hóa.
1.2.2. Kết quả ñạt ñược:
 Về mặt lý thuyết:


4
Micheal zur Muehlen và Rob Allen, Workflow classification Embeded & Autonomous Workflow
Management System, Workflow Management Coalition, 10/3/2000.

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 15
o Kiến thức về vấn ñề mô hình hóa và vận hành quy trình nghiệp vụ hiện nay.
Thực hiện so sánh ñặc ñiểm của các ngôn ngữ mô hình hóa (trình bày trong
chương 1).
o Nguyên lý vận hành quy trình nghiệp vụ (trình bày trong chương 1)
o Kết quả nghiên cứu về ngôn ngữ mô hình hóa BPML (trình bày trong
chương 2).
o Kết quả nghiên cứu về ngôn ngữ mô hình hóa XPDL (trình bày trong
chương 2)
o Kết quả nghiên cứu về ngôn ngữ mô hình hóa eXPDL và công cụ mô hình
hóa MyXPDL (trình bày trong chương 2).
 Về mặt ứng dụng:
o Xây dựng ứng dụng hỗ trợ vận hành quy trình nghiệp vụ ñược ñặc tả theo
ngôn ngữ eXPDL trên môi trường WEB. (trình bày trong chương 4,5).
o Ứng dụng hỗ trợ thiết kế và vận hành trực tiếp các quy trình ñơn giản.
1.2.3. Bố cục luận văn:

 Chương 1: Tổng quan: Giới thiệu tổng quan về tiến trình nghiệp vụ, các ngôn
ngữ mô hình hóa và công cụ vận hành tiến trình nghiệp vụ hiện tại: các kết quả
ñạt ñược, các vấn ñề còn tồn ñộng. Giới thiệu tổng quan về các yêu cầu và kết
quả ñạt ñược của ñề tài.
 Chương 2: Giới thiệu các ngôn ngữ mô hình hóa BPML phiên bản 1.0, XPDL
2.0, eXPDL.
 Chương 3: Giới thiệu tổng quan hệ thống: Giới thiệu các công cụ, ngôn ngữ
chính sử dụng, nguyên lý tổ chức hệ thống, một số quy trình tổng quan trong
hệ thống.
 Chương 4: Phân tích yêu cầu hệ thống: Bối cảnh ra ñời, giới thiệu các chức
năng chính mà hệ thống cần phải xây dựng.
 Chương 5: Phân tích và thiết kế hệ thống: Trình bày về kỹ thuật thiết kế và xây
dựng ứng dụng iPMS.

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 16
 Chương 6: Thử nghiệm và ñánh giá: Trình bày về thử nghiệm vận hành một số
quy trình nghiệp vụ, ñánh giá kết quả ñạt ñược và quá trình cài ñặt và triển khai
hệ thống.
 Chương 7: Tổng kết và hướng phát triển: Tổng kết lại kết quả ñạt ñược của
luận văn, ưu và khuyết ñiểm, cuối cùng ñưa ra các hướng phát triển trong
tương lai.
Chương 2. Giới thiệu một số ngôn ngữ mô hình hóa:
Trình bày kiến thức tổng quát về các ngôn ngữ mô hình hóa: XPDL, BPML,
eXPDL. Đặc biệt là eXPDL, vì ñặc tả quy trình nghiệp vụ theo eXPDL là ñầu vào
cho việc xây dựng ứng dụng vận hành quy trình nghiệp vụ iPMS (Trình bày trong
chương 4,5).
XPDL, BPML, BPEL là những ngôn ngữ mô hình tiến trình ñược dùng cho
việc thực hiện tiến trình. Chúng không ñược sử dụng trực tiếp trong các pha phân
tích thiết kế. Được thể hiện trong bộ cú pháp của XML, chúng còn có một khuôn

dạng trao ñổi riêng cho chính mình. Không có cái nào trong số chúng ñưa ra ñược
bộ ký hiệu ñồ họa chuẩn.Từ ñịnh nghĩa của chúng ta có thể thấy chúng thì chưa
ñược thiết kế ñể bao trùm các cấp ñộ của sự phân tích dây chuyền và có tổ chức.
WFMC là tổ chức ñầu tiên phát triển một chuẩn thực hiện. Một phiên bản
XML mới của ngôn ngữ WFMC ñược phát hành vào năm 2002 dưới tên XPDL.
BPMI ñã ñưa ra 1 ngôn ngữ cạnh tranh vào năm 2001 ñược gọi là Ngôn ngữ
mô hình hóa tiến trình nghiệp vụ (BPML). Sáng kiến này khởi ñộng lại những
công việc về những ngôn ngữ thực hiện tiến trình và làm ngày càng có nhiều ñóng
góp tiếp sau ñó như, BPEL. BPEL (Business Process Execution Language) ñược
bắt ñầu bởi Microsoft và IBM ñể ñáp lại sáng kiến của BPMI. Kể từ ñó, ngôn ngữ
này ñã nhận sự hỗ trợ của ña số người trên thị trường, bao gồm cả BPMI. BPEL ñã
trở thành là chuẩn thực tế cho việc thực hiện qui trình nghiệp vụ. Nó có nhiệm vụ
chính là ñặc tả các dịch vụ mạng. Từ năm 2003, một tổ chức có tính tiêu chuẩn là
OASIS ñã mua và có trách nhiệm cho sự phát triển của ngôn ngữ BPEL
2.1. Ngôn ngữ mô hình hóa XPDL:

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 17
2.1.1. Lịch sử:
STT

Tên phiên bản Tác giả Đặc ñiểm chính
1 Version 1.0 Roberta Norin
2 Version 1.01 Mike Marin và Robert
Shapiro
Bản thảo ban ñầu, ánh xạ 2 chiều ñến
BPMN 1.0
3 Version 1.02 Mike Marin và Robert
Shapiro
Tổ chức lại tài liệu và thêm những siêu

mô hình (meta model) mới
4 Version 1.03 Robert Shapiro - Thêm phần chú thích dưới dạng
Text trong phần siêu mô hình của
BPMN
- Cập nhật lại những bảng và mô
hình riêng, thêm những mục
(section) cho tất cả các thành phần.
5 Version 1.04 Robert Shapiro - Một số thay ñổi nhỏ trong mô hình:
thứ tự các phần tử và một số phần
tử ñược tạo tùy chọn.
- Ví dụ về gateways và events.
6 Version 1.05 Robert Shapiro - Một phần nhỏ thay ñổi trong mô
hình: ProcessType - thứ tự của các
thành phần ñược giữ lại ñể tương
thích với phiên bản XPDL 1.0
- Một số lỗi nhỏ về in ấn.
- Thuộc tính Instantiate ñược loại bỏ
khỏi TaskSend và TaskService. Tài
liệu TaskSend ñược chỉnh sửa
- Giải thích mệnh ñề OTHERWISE
ñược chuyển thành SPLITS. Chỉnh
sửa tài liệu về Splits và Joins trong

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 18
phần mở rộng của BPMN. Thêm tài
liệu vào mục Route Activity
- Những gói liên quan ñược mở rộng
bao gồm cả phần khai báo kiểu
- Thêm thuộc tính External Package

Reference
- Thêm sự tham khảo vào gói ngoài
(external package) cho những người
tham gia nhận biết.
7 Version 1.06 Robert Shapiro - Bao gồm tất cả những soạn thảo
thay ñổi từ Justin Brunt
(
)
8 Version 1.07 Robert Shapiro - Bao gồm những thay ñổi dựa trên
những yêu cầu của phiên bản
XPDL 1.0
- Chỉ số tham số hình thức (Formal
parameter index) không còn dùng
nữa
- Thuộc tính AccessLevel của tiến
trình ñược tạo tùy chọn với mặc
ñịnh là PUBLIC
- Thuộc tính Additional của dòng
con (Subflow) cung cấp tên của
vùng dữ liệu (datafield) trong ñó
chứa instantiation id
- Thuộc tính Execution cho các
luồng con ñược tùy chọn với mặc
ñịnh là SYNCHR

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 19
- Thuộc tính GraphConformance
trong lớp Conformance ñược tùy
chọn với mặc ñịnh là

NON_BLOCKED.
- Điều kiện chuyển tiếp có thể có ở
bất cứ 1 thành phần con nào của
biểu thức
- “Kiểu” thuộc tính Tool ñược loại
bỏ : nó không còn ñược cần nữa kể
từ khi không có sự khởi dựng trong
việc khai báo Thủ tục (Procedures)
hoặc bất kỳ những thông tin nào về
tham số hình thức hoặc chuyển
tham số. Vì vậy kể từ giờ tất cả các
Tools phải chuyển là Applications.
- DeadlineCondition ñược loại bỏ.
Phần tử DeadlineDuration ñược
giới thiệu
Ví dụ làm lại sử dụng ký hiệu của
BPMN

9 Version 1.08 Mike Marin - Tăng cường tài liệu và mô hình với
những mẫu thuộc tính mở rộng mới
- Tất cả các kiểu mô hình (schema
types) ñược thêm vào tiếp ñầu ngữ
‘t’
- Thay ñổi thuộc tính
ExternalPackage id thành Id ñể

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 20
thích hợp với tất cả những Ids khác
- Bình thường hóa thuộc Name và id

cho tất cả các thực thể
- Thay ñổi Assignment ñể có ñược
thực thể Đích (Target) và Biểu thức
(Expression)
- Thay ñổi TaskScript ñể ñược biểu
thức tùy ý
- Giới thiệu kiểu tExpressionType
và sử dụng cho tất cả các biểu thức
- Cập nhật thêm mô hình ở tất cả các
mục(section)
- Thêm 1 mục (section) vào phiên
bản 1.0 ñể tượng thích
10 Version 1.09 Robert Shapiro - Những lỗi in của phiên bản trước
ñã ñược chỉnh sửa
- Thuộc tính toolId ñược thay thế
bằng ToolId
- Kiểu thuộc tính Target ñược thay
ñổi thành NMTIKEN
- Tất cả giản ñồ thêm vào ñược cập
nhật cho cách tiếp cận mới sử dụng
namespace.
11 Version 2.0 Robert Shapiro, Mike
Marin, Justin Brunt và
Sasa Bojanic
- Phiên bản mới nhất hiện nay.

2.1.2. Các ñặc ñiểm chính của XPDL 2.0:
Chúng em xin giới thiệu sơ lược về phiên bản mới nhất của XPDL 2.0

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB

Trang 21
Phiên bản XPDL 2.0 thì tương thích với phiên bản XPDL 1.0, và ñược dự
ñịnh sẽ sử dụng như một dạng tập tin (file) cho BPMN. Mục ñích nguyên thủy của
XPDL là phải ñược duy trì và tăng cường bởi phiên bản thứ hai này của bảng ñặc
tả.
XPDL và bảng ñặc tả BPMN ñều có chung 1 vấn ñề về mô hình từ những viễn
cảnh khác nhau. XPDL cung cấp 1 ñịnh dạng file XML mà từ ñó ta có thể sử dụng
ñể trao ñổi giữa những mô hình tiến trình và những công cụ. BPMN cung cấp một
bộ ký hiệu ñồ họa ñể làm dễ dàng cho việc truyền thông của con người như giữa
những người dùng nghiệp vụ và người dùng kỹ thuật hoặc của những quy trình
nghiệp vụ phức tạp.
Có một số thành phần trong BPMN phiên bản 1.0 nhưng không ñược thể hiện
trong XPDL phiên bản 1.0. Tất cả các thành phần này ñược hợp nhất lại trong
phiên bản XPDL 2.0.
Phiên bản XPDL 2.0 tương thích với phiên bản XPDL 1.0. Tuy nhiên có một
số ngoại lệ phụ. Phiên bản XPDL 2.0 có một tên miền (namespace) khác, và
những công cụ muốn tương thích với phiên bản XPDL 1.0 cần hiểu cả XPDL 1.0
và tên miền của XPDL 2.0
Những thành phần trong phiên bản XPDL 1.0 sau ñây ñã ñược loại bỏ trong
phiên bản 2.0
• Thành phần Automatic. Thay thế bởi thuộc tính Mode trong thành
phần StartMode và FinishMode
• Thuộc tính BlockId của thành phần BlockActivity. Thay thế bởi
ActivitySetId.
• Thành phần DeadlineCondition. Thay thế với DeadlineDuration.
• Thuộc tính Index trong thành phần FormalParameter. Vì
FormalParameters phải phù hợp với thứ tự trong khai báo, và như vậy
không cần thiết phải có thuộc tính Index
• Thành phần Manual. Thay thế bởi thuộc tính Mode trong thành
phần FinishMode và StartMode


Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 22
• Thuộc tính Type của thành phần Tool. Vì những công cụ là những
ứng dụng và như vậy thuộc tính này không phải là cần thiết. ( những công
cụ không thể là những thủ tục – từ WPDL - vì XPDL không cung cấp bất
kỳ những cách ñịnh nghĩa tham số hình thức cho những thủ tục nào.)
• Thành phần Xpression bên trong thành phần Condition. Thay thế
bởi Expression
• Thứ tự trong một WorkflowProcess thay ñổi từ DataFields,
Participants, và Applications thành Participants, Applications, và
DataFields.
2.2. Ngôn ngữ mô hình hóa BPML:
2.2.1. Khái niệm:
 Phiên bản mới nhất BPML 1.0.
 Đặc tả BPML cung cấp một mô hình trừu tượng và cấu trúc XML cho
việc diễn tả các quy trình nghiệp vụ có thể thực hiện và hỗ trợ các thực
thể.BPML ñịnh nghĩa một mô hình hình thức cho việc diễn tả các quy
trình nghiệp vụ một cách trừu tượng và có thể thực thi ñược mà nhắm
ñến tất cả các khía cạnh của của quy trình nghiệp vụ phát triển, bao
gồm các công việc ở các mức ñộ phức tạp khác nhau, các giao tác và
cơ chế ñền bù giao tác, sự quản lý dữ liệu, sự nhất quán, bắt lỗi và các
ngữ nghĩa toán học (operational semantics). BPML cũng cung cấp một
cấu trúc ngữ pháp dưới dạng lược ñồ XML cho việc duy trì và trao ñổi
ñịnh nghĩa giữa các hệ thống và công cụ mô hình hóa không thống
nhất nhau. BPML tự nó không ñịnh nghĩa bất kỳ một ngữ nghĩa ứng
dụng nào cụ thể ví dụ như các quy trình cụ thể hay các quy trình trong
một lĩnh vực cụ thể. Thay vào ñó, nó ñịnh nghĩa một mô hình trừu
tượng và ngữ pháp cho việc diễn tả các quy trình chung. Điều này cho
phép BPML có thể ñược sử dụng cho nhiều mục ñích khác nhau bao

gồm, nhưng không hạn chế, ñịnh nghĩa các quy trình nghiệp vụ phát
triển (enterprise business processes), ñịnh nghĩa các dịch vụ WEB

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 23
phức tạp, và ñịnh nghĩa sự tương tác giữa nhiều ñối tác cung cấp
(multi - party) với nhau.
5

 Là một ngôn ngữ hình thức, ñộc lập với nền tảng (flatform)/ phần
mềm, do ñó các công ty có thể diễn tả rõ ràng quy trình nghiệp vụ của
họ dưới dạng biểu mẫu có thể chỉnh sủa và thực hiện ñược.
6

 Có thể cho phép tất cả các ñối tượng tham gia trong việc thiết kế, triển
khai, thực hiện, bảo trì và tối ưu hóa quy trình quản lý các công việc
nghiệp vụ trong mô hình hướng quy trình (process – oriented fashion)
trong khi vẫn giữ nguyên tính toàn vẹn trong liên kết quy trình nghiệp
vụ.
2.2.2. Các thành phần chính:
Trong khuôn khổ luận văn chúng em xin giới thiệu tổng quan một số thành
phần chính và quan trong trong BPML.
2.2.2.1. Công việc (Acitivity) :
Là thành phần thực hiện một chức năng cụ thể. Các công việc phức tạp là sự
kết hợp của các công việc khác và hướng trực tiếp ñến sự thực hiện của chúng.
Một quy trình là một sự kết hợp của các công việc và có thể nó là một công việc
trong một quy trình khác lớn hơn. Ngữ nghĩa của một công việc ñược áp dụng cho
ñịnh nghĩa quy trình với một số ngoại lệ.
2.2.2.2. Các loại công việc (Activity types):
BPML ñịnh nghĩa tất cả 17 loại Activity và 3 loại Process. Tất cả các loại

Activity ñều ñược xuất phát từ một loại cơ bản thông dụng (common base type)
sau. Các thuộc tính của loại cơ bản:
- name: Tên công việc
- documentation: Tài liệu mô tả công việc.
- other: Các thuộc tính khác ñịnh nghĩa cho 1 loại Activity cụ thể.
2.2.2.3. Ngữ cảnh công việc (The activity context):


5
Business Process Modeling Language, 13/11/2002, Assaf Arkin, Intalio
6
IEEE Workshop on advanced issues of e-commerce and web-based information system, 26-28/6/2002,
Newport Beach, California.

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 24
Các công việc mà thực hiện trong cùng ngữ cảnh sử dụng ngữ cảnh ñể trao ñổi
thông tin thông qua thuộc tính ñược ñịnh nghĩa trong ngữ cảnh. Ví dụ, một công
việc nhận vào một thông ñiệp thiết lập các giá trị cho một thuộc tính từ nội dung
của thông ñiệp. Một chuỗi tuần tự con các công việc sử dụng giá trị của thuộc tính
vừa ñược tạo ñể tạo và gửi một thông ñiệp ra.
Ngữ cảnh ñịnh nghĩa tính chất thông dụng cho tất cả các công việc trong ngữ
cảnh ñó, ví dụ bắt các ñiều kiện và lỗi ngoại lệ, cung cấp các ngữ nghĩa nguyên tố,
ñịnh nghĩa rang buộc thời gian…
Các công việc và ngữ cảnh ñược xây dựng theo kiểu phân cấp. Ngữ cảnh hiện
tại của công việc này có thể là ngữ cảnh con của một vài ngữ cảnh khác, và cũng
có thể là “cha” của nhiều ngữ cảnh con khác.
2.2.2.4. Công việc ñơn giản và công việc phức hợp (simple and
complex activity):
 Công việc ñơn giản (Simple activity): là một con việc mà không thể phân

rã nhỏ hơn. Các loại công việc ñơn giản ñược ñịnh nghĩa trong BPML:
o Action: Thực hiện hoặc gọi một hành ñộng liên quan ñến trao ñổi các
thông ñiệp vào và ra.
o Assign: Gán một giá trị mới cho thuộc tính.
o Call: Tạo mới một quy trình và chờ cho quy trình hoàn tất.
o Compensate: Gọi thực hiện ñền bù (compensation) cho các quy trình
ñã ñược ñặt tên.
o Delay: Diễn tả sự trôi ñi của thời gian.
o Emty: Không làm gì hết.
o Fault: Phát ra lỗi trong ngữ cảnh hiện tại.
o Raise: Phát sinh một tín hiệu.
o Spawn: Khởi tạo một quy trình nhưng không chờ cho quy trình hoàn
tất.
o Synch: Đồng bộ hóa trên một tín hiệu

Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên môi trường WEB
Trang 25
 Công việc phức hợp (Complex activity): Là sự kết hợp của một hoặc
nhiều công việc. Các công việc có thể là ñơn giản hoặc phức hợp. Một công
việc phức hợp chức một tập một hoặc nhiều công việc và hướng trực tiếp
ñến sự thực hiện của các công việc từ một trong các tập công việc này.
Các loại công việc phức hợp ñược ñịnh nghĩa trong BPML:
o All: Thực hiện các công việc song song.
o Choice: Thực hiện các công việc từ một trong tập các công việc, ñược
chọn thực hiện ñể ñáp ứng cho một sự kiện.
o Foreach: Thực hiện các công việc một lần cho mỗi công việc trong
danh sách các công việc.
o Sequence: Thực hiện các công việc theo thứ tự tuần tự.
o Switch: Thực hiện các công việc từ một trong tập các công việc, ñược
chọn dựa vào giá trị ñúng của ñiều kiện.

o Until: Thực hiện các công việc một hoặc nhiều lần dựa vào giá trị ñúng
của ñiều kiện.
o While: Thực hiện các công việc không hoặc nhiều lần dựa vào giá trị
ñúng của ñiều kiện.
2.2.2.5. Thể hiện công việc (Activity instance):
Sự ñịnh nghĩa công việc chỉ rõ một thể hiện công việc sẽ ñược thực hiện như
thế nào. Nhiều thể hiện của công việc ñó có thể ñược thực hiện song song. Mặc dù
các thể hiện này ñược khởi tạo từ cùng một ñịnh nghĩa công việc, chúng là khác
nhau và không có liên quan trực tiếp với nhau.
Các trạng thái của một thể hiện công việc:
o Ready: Thể hiện công việc chưa thực hiện bất kỳ công việc nào. Ở trạng
thái này chúng ta có thể thực hiện bỏ qua công việc, khi ñó nó chuyển qua
“Cancelled” (tức là công việc bị hủy bỏ).
o Active: Thể hiện công việc ñang thực hiện công việc cụ thể theo ñịnh nghĩa
của nó.

×