Tải bản đầy đủ (.ppt) (35 trang)

Mô Hình Quy Trình Và Phân Tích Quy Trình Theo Mô Hình

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 (372.55 KB, 35 trang )

BÀI GIẢNG MỘT SỐ CHỦ ĐỀ HIỆN ĐẠI
VỀ KHAI PHÁ DỮ LIỆU:
KHAI PHÁ QUÁ TRÌNH
CHƯƠNG 2. MÔ HÌNH QUY TRÌNH
VÀ PHÂN TÍCH QUY TRÌNH THEO MÔ HÌNH

PGS. TS. HÀ QUANG THỤY
HÀ NỘI 01-2015
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
ĐẠI HỌC QUỐC GIA HÀ NỘI

1


Nội dung
1.

Tính nghệ thuật của mô hình hóa quy trình
2.
Mô hình hóa quy trình
3.
Phân tích quy trình dựa trên mô hình

2


Phần 1. Tính nghệ thuật
của mô hình hóa quy trình

3



Nhu cầu mô hình hóa quy trình
Giới thiệu



 Cách mạng công nghiệp → năng suất tăng lên






 Đổi mới kỹ thuật
 Cải tiến trong tổ chức công việc
 Sử dụng CNTT
Adam Smith (1723-1790) chỉ ra các lợi thế của phân công lao động
Frederick Taylor (1856-1915) giới thiệu các nguyên lý nguyên thủy
của khoa học quản lý
Henry Ford (1863-1947) giới thiệu dây chuyền sản xuất cho sản
xuất hàng loạt các "T-Ford đen“
Từ 1950: Máy tính và hạ tầng truyền thông số bắt đầu tác động
quy trinh kinh doanh → thay đổi đáng kể trong tổ chức công việc
→ cách KD mới

4


Nhu cầu mô hình hóa quy trình



Nhu cầu mô hình hóa quy trình

 Đối mới máy tính&TT dẫn dắt chính phía sau thay đổi quy trình tác
nghiệp
 Quy trình tác nghiệp phức tạp hơn
 Chủ yếu dựa vào HTTT
 Mở rộng trong nhiều tổ chức
 Mô hình hóa quy trình trở nên quan trọng nhất: hỗ trợ quản lý
phức tạp
 Cung cấp cái nhìn sâu sắc
 Tài liệu hóa các thủ tục
 HTTT cần được cấu hình và dẫn dắt bởi các hướng dẫn chính xác
 Các quy trình liên tổ chức chỉ hành động đúng nếu có một thỏa
thuận chung khi tương tác theo yêu cầu
 Các mô hình quy trình được sử dụng rộng rãi trong các tổ chức ngày
nay

5


Cơ sở mô hình hóa quy trình


Cơ sở mô hình hóa quy trình

 Mô hình hóa trong khoa học quản lý (management science)

 Quản lý tác nghiệp
 Nói riêng là vận trù học (operation research): một môn học của Nghiên

cứu sinh HTTT

 Các mô hình toán học được sử dụng

 Quy hoạch tuyến tính (linear programming)
 Lập kế hoạch dự án (project planning)
 Mô hình hàng đợi (queueing models)
 Chuỗi Markov (Markov chains),
 Mô phỏng (simulation)
 Ví dụ
 Vị trí của một nhà kho được xác định nhờ quy hoạch tuyến tính,
 Công suất máy chủ được bổ sung dựa trên mô hình hàng đợi,
 một định tuyến tối ưu trong một khu cảng container được xác định
bằng quy hoạch nguyên …

6


Mục tiêu sử dụng mô hình


Mục tiêu sử dụng mô hình

 Khái quát

 Lập luận về quy trình (thiết kế lại: redesign)
 Tạo quyết định nội tại quy trình (lập kế hoạch và kiểm soát: planning
and control)

 Trong quản lý điều hành: hướng tới một kỹ thuật phân tích cụ thể

và chỉ được sử dụng để trả lời cho một câu hỏi cụ thể
 Trong quản lý quy trình kinh doanh:
 thường phục vụ quy trình phức
 Tạo quyết định nội tại quy trình (lập kế hoạch và kiểm soát: planning
and control)
 thảo luận về trách nhiệm, phân tích tuân thủ, dự đoán hiệu suất sử
dụng mô phỏng, và cấu hình một hệ thống WFM

7


Tạo mô hình có tính nghệ thuật


Tạo mô hình tốt

 Có tính nghệ thuật hơn là khoa học

 Điểm chung của QLQTTN (BPM) và QLĐH (OP)
 Khó khăn và dễ bị lỗi

Quan niệm cổ điển về mô hình hóa: Trọng tâm là trạng thái ổn định và mô
hình được làm bằng tay
8


Lỗi tạo mô hình bằng tay


Lỗi phổ biến khi tạo mô hình bằng tay


 Mô hình mô tả phiên bản lý tưởng hóa của thực tại

 Tập trung vào “hành vi chuẩn” hay “hành vi mong muốn”.
 Đa dạng lập luận đơn giản hóa “Mô hình chỉ cần bao gói 80% trường
hợp giả định”
 Do không nhận thức các lệch lạc xảy ra; do nhân thức con người có
tính thiên vị
 Mô hình thủ công có tính chủ quan: chủ yếu do mục đích “dễ hiểu”

 Không có khả năng nắm bắt đầy đủ hành vi của con người

 mô hình toán học đơn giản có thể đủ để mô hình hóa máy móc hoặc
con người làm việc trong một dây chuyền lắp ráp
 Mô hình toán học đơn giản không thể mô hình hóa sự tham gia của
con người vào các quy trình phức tạp và tiếp xúc với các độ ưu tiên
phức tạp
 Một công nhân tham gia vào quy trình phức cần phân bố sự quan tâm
của mình trên toàn bộ quy trình phức: Mô hình hóa QT khó hơn nhiều
QT cô lập
 Công nhân cũng không làm việc với năng suất không đổi: Luật Yerkes–
Dodson. Quan sát trong hầu hết quá trình: mất nhiều thời gian và số
giờ hiệu quả ít hơn nếu làm công việc khó.
9


Luật Yerkes–Dodson (Yerkes–Dodson law)


G


 C

 



N
 

Luật Yerkes–Dodson: năng suất (Performance) tăng khi tăng kích thích
(Arousal) về sinh lý hoặc tinh thần, nhưng chỉ đến một điểm nhất định. Khi
mức độ của kích thích trở nên quá cao thì năng suất lại giảm.
10


Lỗi tạo mô hình bằng tay




Lỗi phổ biến khi tạo mô hình bằng tay















Mô hình ở một độ trừu tượng sai
Mức độ trừu tượng của mô hình phụ thuộc vào: (i) dữ liệu vào; (ii) câu hỏi cần được trả lời
Mô hình quá trừu tượng: không trả lời câu hỏi liên quan
Mô hình quá cụ thể: (i) hoặc không đạt được câu trả lời; (ii) hoặc mô hình quá phức tạp để
hiểu
Ví dụ: Một nhà máy sản xuất ô tô có kho chứa hàng ngàn phụ tùng thay thế. Mô hình hóa toàn
bộ phụ tùng có thể được coi là “hấp dẫn” khi để nghiên cứu mô phỏng so sánh các chính sách
kiểm kê khác nhau song thực ra là “không phù hợp” nếu không cần mô tả một phụ tùng cụ thể.
Khó khăn (i) khi thay đổi mức trừu tượng của một mô hình; (ii) Các câu hỏi xuất hiện lại ở mức
cô đọng rất khác nhau.

Bàn luận
Còn có các lỗi khác khi tạo mô hình bằng tay
Mô hình có giá trị tiên đoán tốt và làm khởi đầu để thiết kế lại: Chỉ do chuyên gia giàu kinh
nghiệm (nhà thiết kế/nhà phân tích)
Tạo mô hình từ dữ liệu sự kiện để thiết kế lại; thiết kế ban đầu
KPQT cung cấp các mức độ trừu tượng khác nhau (80%; 100%..)
Tiết lộ con người không hành động như cái máy…

11


Mô hình hóa quy trình từ nhật ký sự kiện


Mô phỏng quy trình tác nghiệp tiên tiến đặt trong bối cảnh khai phá quy trình
12


Phần 2. Mô hình hóa quy trình
- Các hệ chuyển (Transition Systems)

Lưới Petri (Petri Nets)
- Các mạng dòng công việc (Workflow Nets)
-YAWL (Yet Another Workflow Language)
-BPMN (Business Process Modeling Notation)
-Chuỗi quy trình điểu khiển theo sự kiện (Event-Driven
Process Chains: EPCs)
-Mạng nhân quả (Causal Nets)
-

13


Mở đầu






Lợi thế của khai phá quy trình
















Mô hình quy trình tốt: Rất quan trọng
Tạo mô hình quy trình tốt: Việc không dễ dàng
Khai phát quy trình
Tạo mô hình quy trình tốt hơn
Thời gian nhanh hơn
Tự động hóa: các thuật toán α, α+, α++ (Chương 4)

Ngôn ngữ mô hình quy trình
Đầu ra của phát hiện quy trình
Tồn tại nhiều ngôn ngữ mô hình quy trình
Giới thiệu các ngôn ngữ điển hình nhất, chuyển đổi nhau

Quy ước
A: tập hữu hạn nhãn các hành động trong tổ chức, A ={a, b, c, ….}
Mô hình hóa quy trình: Các hành động nào được thực hiện và theo thứ tự như thế nào ?
Thực hiện tuần tự, thực hiện đồng thời, được thực hiện chọn lựa, thực hiện lặp

14



Các hệ chuyển: Định nghĩa













Giới thiệu
Transition Systems (TS)
Là khái quát của các ngôn ngữ mô hình hóa

Định nghĩa
TS=(S, A, T)
 S là tập các trạng thái
 A ⊆ A là tập các hành động (hoạt động),
 T ⊆ S×A×S là tập các thanh chuyển
 Sstart ⊆ S là tập các trạng thái khởi đầu ("xuất phát ")
 Send ⊆ S là tập các trạng thái cuối ("chấp nhận")

Chú ý
Sstart và Send là ngầm định

S: có thể vô hạn; thực tế: hữu hạn và TS được gọi là máy trạng thái hữu hạn
(Finite-State Machine : FSM) hay ô-tô-mát trạng thái hữu hạn (finite-state
automaton)

15


Các hệ chuyển: Ví dụ









Ví dụ
S = {s1, s2, s3, s4, s5, s6, s7}
A = {register request, examine thoroughly, examine casually, check ticket,
decide, reinititate request, reject request, pay compensation}
T = {(s1, register request, s2), (s2, examine casually, s3), (s2, examine
thoroughly, s3), (s2, check ticket, s4), (s3, check ticket, s5), (s4, examine
casually, s5), (s4, examine thoroughly, s5), (s5, decide, s6), (s6, reinitiate
request, s2), (s6, pay compensation, s7), (s6, reject request, s7)}
Sstart = {s1} và Send = {s7}

16



Các hệ chuyển: Hành vi (hoạt động)










Hoạt động chuyển
Chuyển xuất phát từ một trạng thái ban đầu
Đường đi bất kỳ trong đồ thị xuất phát từ một trạng thái ban đầu được gọi là “chuối thực hiện có thể”
(possible execution sequence). Chuỗi thực hiện ghi nhận bằng chuỗi các hành động
Ví dụ, register request, examine casually, check ticket xuất phát từ trạng thái đầu s1 và kết thúc ở trạng thái
s5. Có vô số chuỗi thực hiện (chu trình).
Chuỗi thực hiện thành công nếu kết thúc ở trạng thái kết thúc
Chuỗi thực hiện bế tắc (deadlock) nếu kết thúc ở trạng thái không kết thúc mà không chuyển tiếp được.
Không bế tắc ≠ thành công
Hệ thống chuyển là đơn giản song có vấn đề về thể hiện tính đồng thời. Giả sử, có n hành động song
song: mọi n được thực hiện cho phép với thứ tự bất kỳ → hệ thống cần 2n trạng thái và n×2n-1 thanh chuyển
(vấn đề “bùng nổ trạng thái”). Với n=10 thì 1024 trạng thái và 5120 thanh chuyển.
Các ngôn ngữ mô hình hóa thu gọn kích thước hệ thống chuyển. Với bài toán ví dụ trên (n=10), lưới
Petri 10 thanh chuyển và 10 trạng thái là đủ.

17


Lưới Petri


Định nghĩa lưới Petri







N = (P, T, F)
P là một tập hữu hạn vị trí
T là một tập hữu hạn thanh chuyển; P∩T = Ø
F ⊆ (P × T) ∪ (T × P) tập cung có hướng (quan hệ dòng: flow
relation)

Định nghĩa lưới Petri đánh dấu





Cặp (N,M): N lưới Petri, M ∈ B(P) là một tập phức (multi-set) trên
P. N là tập mọi lưới Petri đánh dấu trên N
Lưới Petri hình vẽ: P = {start, c1, c2, c3, c4, c5, end}, T = {a, b, c,
d, e, f, g, h} và F = {(start, a), (a, c1), (a, c2), (c1, b), (c1, c), (c2,
d), (b, c3), (c, c3), (d, c4) (c3, e), (c4. e), (e, c5), (c5, f), (f, c1), (f,
c2), (c5, g), (c5, h) , (g, end), (h, end)}. M = {start}
18



Tập phức: multi-set


















Định nghĩa
Tập phức tương tự như tập thông thường song phần tử có thể xuất hiện nhiều lần
Quy ước: ký hiệu [x1, x2, …]

Ví dụ
[a, b2, c3, d2, e] là tập phức gồm 9 phần từ 1 a, 2 b, 3 c, 2 d, và 1 e
Quan tâm số lần xuất hiện của một phần tử mà không quan tâm tới thứ tự xuất hiện. Ba
tập phức [a, b, b, c3, d, d, e], [e, d2, c3, b2, a] và [a, b2, c3, d2, e] là như nhau.
X tập phức thì X(a) chỉ số lượng phần tử a trong tập X

Các phép toán


Tổng hai tập phức XΘY: [a, b2, c3, d] Θ [c3, d, e2, f3] = [a, b2, c6, d2, e2, f3]
Hiệu hai tập phức X\Y
“Hiện diện” (presence): x ∈ X
Tập con X ≤Y: [a, b] ≤ [a, b3, c ]
Có thể áp dụng các phép toán tập phức tới tập thông thường
Có thể áp dụng miền phần tử khác nhau

19


Hoạt động cháy














Quy tắc cháy (firing rule)
Thanh chuyển “cháy được”: mỗi vị trí vào chứa một thẻ
Cháy thanh chuyển cháy được: tiêu thụ mỗi thẻ ở mọi vị trí vào và tạo một thẻ ở mọi vị trí ra
Ví dụ: Thanh chuyển a cháy được do thẻ ở [start]. Khi cháy a cho đánh dấu [c1,c2]. Với

đánh dấu [c1,c2], thanh chuyển a không cháy được song các thanh chuyển b, c, d cháy
được. Cháy b cho đánh dấu [c2, c3], lúc đó chỉ còn d là cháy được.
P∪T là tập các nút, nút x∈ P∪T ký hiệu •x và x•.

Định nghĩa quy tắc cháy

Cho (N, M) là lưới Petri đánh dấu với N = (P, T, F) và M ∈ B(P).
Thanh chuyển t∈T cháy được, ký hiệu (N, M) [t> ↔ •t ≤ M.
Quy tắc cháy -[- >- ∈ N × T × N là quan hệ nhỏ nhất đảm bảo bất kỳ (N,M)∈N và bất kỳ
t∈T: (N, M) [t> ⇒ (N, M) [t> (N, (M\•t) Θ t•).
(N, M) [t> biểu thị t là cháy được theo dấu M, ví dụ, (N,[start])[a> có nghĩa a cháy được theo
dấu [start]
(N, M) [t> (N, M’) có nghĩa (N, M) cháy tại t dẫn tới (N, M’), ví dụ, (N,[start])[a>(N, [c1,c2]),
(N, [c3, c4])[e> (N, [c5])…

20


Lưới Petri: đánh dấu đạt được














Dáy cháy
Cho (N, Mo) là một lưới Petri đánh dấu
Dãy σ∈T* được gọi dãy cháy (firing sequence) của (N,Mo) ↔ với một số tự nhiên n: ∃
các đánh dấu M1, M2, …, Mn và các dãy thanh chuyển t 1, t2,…, tn sao cho: σ = <t1, . . , tn>
và ∀ i: 0 ≤ i (N, Mi) [ti+1> và (N, Mi) [ti+1> (N, Mi+1)
Ví dụ: Lưới Petri (N, [start]) như hình vẽ. Dãy rỗng σ = <> là dãy cháy của (N, [start]),
dãy huỗi σ=<a, b> cũng cháy được và kết quả cháy σ cho đánh dấu [c2, c3]; tương tự,
σ= <a, c, d, e, f, b, d, e, g>.

Đánh dấu đạt được

đánh dấu M đạt được từ đánh dấu M0 ban đầu ↔ ∃ một chuỗi thanh chuyển cháy được
mà khi cháy dẫn từ M0 đến M.
Tập mọi đánh dấu đạt được từ (N, M0) được ký hiệu là [N, M0>
Ví dụ, (N,[start])> có 7 đánh dấu đạt được: (N, [start])>, (N, [c1,c2])>, (N, [c1, c4])>, ((N,
[c2, c3])>, (N, [c3, c4])>, (N, [c5])>, (N, [end])>. Một số trường hợp, dùng M thay cho
(N,M)>

21


Lưới Petri gắn nhãn


Định nghĩa

 N = (P, T, F, A, l): (P, T, F) là lưới Petri, A⊆A là tập nhãn, l: T→A là

hàm ghi nhãn
 Một nhãn có thể gán cho nhiều thanh chuyển
 A: hành động quan sát được, A∪τ với τ là hành động không quan
sát được


Đồ thị đạt được
 Cho (N, M0) với N = (P, T, F, A, l) là một lưới Petri đánh dấu gán
nhãn. (N, M0) xác định một hệ thống chuyển TS = (S, A', T') với
S=[N, M0>, Sstart = {M0}, A' = A, và T' = {(M, l(t), M‘)∈S×A×S | ∃t∈T
(N, M) [t> (N, M')}. TS được gọi là đồ thị đạt được của (N, M0).

22


Lưới Petri đánh dấu bị chặn













Lưới Petri thu gọn trạng thái hệ chuyển

Mô hình chứa nhiều đồng thời hoặc nhiều thẻ đặt tại cùng một vị trí, thì kích thước
hệ thống chuyển lớn hơn nhiều so với lưới Petri
(a) có vô hạn đánh dấu đạt được ~ hệ thống chuyển có vô hạn trạng thái; (b) hệ
thống chuyển có một trạng thái [p], (c) hệ thống chuyển có 7776 trạng thái và
32400 thanh chuyển

Lưới Petri đánh dấu bị chặn

(N, M0) là k-bị chặn: ∀p ∈ P, ∀M∈[N, M0>: M (p) ≤ k.
Ví dụ, lưới (c) là 25-bị chặn vì không có đánh dấu nào có quá 25 thẻ, nó không 24bị chặn vì có một trạng thái để out có 25 thẻ.
(N, M0) là an toàn nếu nó là 1-bị chặn
(N, M0) là bị chặn: nếu ∃k để là k-bị chặn. (b) và (c) là bị chặn, (a) không bị chặn

23


Không bế tắc

















Không bế tắc
lưới Petri đánh dấu (N, M0) là không bế tắc (deadlock free) nếu ở mọi đánh dấu đạt
được có ít nhất một thanh chuyển cháy được:
∀ M∈ [N, M0>: ∃ một thanh chuyển t∈T mà (N, M) [t>
(c) là bế tắc còn (a), (b) là không bế tắc

Thanh chuyển sống (live)
Thanh chuyển t được gọi là “sống” nếu từ mỗi đánh dấu đạt được thì có thể làm cho t
cháy
∀M ∈ [N, M0>: ∃ M'∈ [N, M> mà (N, M') [t>
Lưới Petri đánh dấu được gọi là sống nếu mỗi thanh chuyển của nó là sống.

Ứng dụng của lưới Petri
Có cơ sở lý thuyết vững chắc
Biểu diễn tốt cho tính đồng thời
Bổ sung tem thời gian
Trong khai phá quy trình: xem chương 1

24


Lưới dòng công việc


Định nghĩa

 Lưới dòng công việc (WF-net) là lớp con đặc biệt của lưới Petri:

một vị trí đầu khởi động quy trình và vị trí cuối kết thúc quy trình
 N = (P, T, F, A, l) là một lưới Petri có nhãn và ϒ là định danh làm
tươi không thuộc P∪T. N được gọi là một lưới WF ↔ (1) P có
chứa một vị trí vào i (vị trí nguồn) mà *i = Ø, (2) P chứa một vị trí
ra o (vị trí cuối) mà o*= Ø, và (c) N1 = (P, T∪{ϒ}, F∪{(o, ϒ), (ϒ, i)},
A∪{τ}, l ∪{(ϒ, τ)}) là liên thông mạnh, nghĩa là, tồn tại đường đi
trực tiếp giữa bất kỳ cặp nút của N1.
 Ví dụ, xem các hình đã có: WF-net (trái), không là WF-net (phải)

25


×