Các hàm WAPI giao tiếp

Một phần của tài liệu Nghiên cứu và thử nghiệm hệ thống workflow (Trang 56 - 59)

Tính tổng quát của thông tin và điều khiển luồng giữa hai hệ thống Workflow không thuần nhất được chỉ ra ở hình dưới đây

Triệu gọi hành vi hoặc các tiến trình con Trao đổi Tiến trình/Trạng thái hành vi

/Ứng dụng điều khiển /Dữ liệu WF Phối hợp các điểm đồng bộ Đọc/ghi các định nghĩa tiến trình

Hình 2-11. Giao diện chức năng giao tiếp của Workflow

Có hai khía cạnh lớn cần xem xét với chức năng giao tiếp:

Workflow API and Interchange formats Workflow API and Interchange formats Workflow Enactment Service Workflow Enactment Service

Workflow

Engine(s) Workflow Engine(s) A1 A4 A2 A3 A5 B1 B3 B2 Tiến trình A Tiến trình B Miền dịch vụ WF A Miền dịch vụ WF B B3 B3

• Sự đánh giá tới quá trình thông dịch chung của định nghĩa tiến trình (hoặc một tập con) là cần thiết và có thể hoàn thành được

• Quá trình thực thi hỗ trợ cho việc thông dịch nhiều kiểu khác nhau của thông tin điều khiển và để truyền dữ liệu Workflow, dữ liệu ứng dụng giữa các dịch vụ Enactment khác nhau

Sử dụng các định nghĩa tiến trình trong dịch vụ đa miền

Khi mà cả hai dịch vụ Enactment có thể truyền cho nhau một định nghĩa tiến trình chung, ví dụ được sinh ra từ một công cụ định nghĩa chung nào đó. Điều này cho phép cả hai môi trường cùng có chung một quan nhiệm riêng rẽ về các đối tượng định nghĩa tiến trình và các thuộc tính của chúng. Các đối tượng này có thể bao gồm hành vi, ứng dụng, một tổ chức và vai trò được đặt tên, hay những điều kiện định hướng, ...Những Workflow Engine riêng rẽ có thể truyền các thực thi của các hành vi hay tiến trình con tới những Engine không đồng nhất trong ngữ cảnh có sự quy ước chung về cách đặt tên và mô hình đối tượng. Cách tiếp cận này có thể áp dụng một cách cụ thể cho scenario 3, khi mà một vài hệ thống cùng làm việc ở mức ngang hàng với nhau

Khi quan niệm chung về một định nghĩa tiến trình là không khả thi, cách tiếp cận ‘Truy xuất ra bên ngoài’ các chi tiết của một tập con định nghĩa tiến trình như một phần của các trao đổi trong quá trình chạy là có thể được. Các API trao đổi định nghĩa tiến trình cung cấp một phương tiện của việc truy vấn dữ liệu về đối tượng và thuộc tính từ một dịch vụ Workflow cụ thể, do đó một Workflow Engine có thể sử dụng dữ liệu liên quan tới định nghĩa tiến trình cho một hành vi riên lẻ hay tiến trình con

Khi định nghĩa tiến trình trao đổi thông qua những cách tiếp ở trên là không thể, khả năng giao tiếp bắt buộc phải dùng tới cách tiếp cận qua cổng. Các đối tượng chỉ định và các thuộc tính được ánh xạ giữa hai môi trường thông qua một ứng dụng cổng chung. Trong trường hợp đơn giản nhất, hai dịch vụ Enactment riêng rẽ sử dụng các định dạng tiến trình riêng của chúng và bất cự một ánh xạ nào giữa chúng đều được quản lý bởi ứng dụng cổng. Cách tiếp cận cũng có thể sử dụng trong các truờng hợp đơn giản hơn như scenario 1 và 2 hay một vài ví dụ thông thường của scenario 4

Các giao tiếp trong quá trình thực thi

Trong quá trình chạy, các lời gọi WAPI được sử dụng để truyền điều khiển giữa các dịch vụ Workflow để ban hành các tiến trình con hay các hành vi riêng rẽ trên một dịch vụ cụ thể. Khi cả hai dịch vụ đều hỗ trợ các lời gọi WAPI ở một mức chung và cùng có chung một quan niệm về các đối tượng định nghĩa tiến trình (bao gồm các quy ước đặt tên, dữ liệu Workflow, dữ liệu ứng dụng ...), Engine sẽ trực tiếp giao tiếp với nhau – mặc dù sẽ có đòi hỏi sự chấp thuận về giao thức chung hỗ trợ cho các WAPI chính

Các lời gọi API có thể được sử dụng để thiết kế một cổng chwsc năng cho phép kết hợp giữa hai dịch vụ workflow bởi các ánh xạ những quan niệm khác nhau về đối tượng và dữ liệu của hai môi trường và (khi cần) hỗ trợ các môi trường giao thức khác nhau trong mỗi dịch vụ workflow

Hình 2-12. Gate way operation using WAPI

Hình vẽ trên mô tả nguyên lý chính của thao tác cổng theo một trường hợp kết hợp cụ thể, một hành vi riêng rẽ từ một miền (A) có thể được ánh xạ tới một hành vi đơn lẻ hoặc một tiến trình / tiến trình con mới trong miền thứ hai (B)

Phần lớn các câu lệnh WAPI có vẻ thích hợp được khai thác để hỗ trợ cho chức năng giao tiếp khác bằng lời gọi trực tiếp giữa hai dịch vụ workflow hoặc thông qua một chức năng cổng. Rất nhiều câu lệnh WAPI được thảo luận từ trước cũng có khả năng thích hợp cho chức năng giao tiếp này

Workflow domain A Workflow domain B

WAPI WAPI Protocol A Protocol B Workflow Engine(s) Workflow Engine(s)

Start activity Transformations start activity or processs

completion completion

Prrocess definition object types & names Workflow relevant data formats & names

Application data transfer Gateway

• Thiết lập phiên làm việc

• Các thao tác trên các định nghĩa workflow và các đối tượng của chúng • Các chức năng liên quan tới điều khiển tiến trình và trạng thái của chúng • Các chức năng quản lý hành vi

• Các thao tác quản lý dữ liệu

Một phần của tài liệu Nghiên cứu và thử nghiệm hệ thống workflow (Trang 56 - 59)