Thiết kế modul

Một phần của tài liệu Khung Cộng Tác Đa Dụng Trong Môi Trường Tính Toán Lưới (Trang 103)

2. Tầng Điều Phối Tài nguyên (Resource Coordination Layer): nhiệm vụ chính của

4.2.2 Thiết kế modul

Kiến trúc của khung cộng tác ở trên được chia thành một số modul như sau (xem Hình 4-2):

1. VO and Group Management Modul (VGMM): Như đã nói ở trên, modul này sẽ chịu trách nhiệm cập nhật các tổ chức ảo, cũng như các nhóm người dùng trong đó.

2. Activity Planning Modul (APM): Modul này cho trách nhiệm xây dựng và cập nhật các kế hoạch hoạt động. Để cho kế hoạch vừa có thể được biểu diễn dễ dàng, vừa có thể thực thi được, cách tiếp cận ngôn ngữ luồng công việc (hay nói ngắn gọn là ngôn ngữ luồng) đã được lựa chọn. Đồng thời, qua khảo sát các ngôn ngữ luồng hiện nay, BPMN (Business Process Model & Notation) [70] là phù hợp nhất đối với khung cộng tác này vì một số lý do:

Thứ nhất, vì đây là ngôn ngữ luồng được phát triển nhằm thống nhất các

ngôn ngữ luồng khá đa dạng hiện nay. Hơn nữa, đây là ngôn ngữ hướng vào việc mô tả các chu trình nghiệp vụ của người dùng ở mức cao (mức làm gì và chu trình thực hiện gồm các bước gì), chứ không mô tả ở mức thấp, thực hiện chu trình đó như thế nào. Chính vì vậy, rất thích hợp để mô tả các kế hoạch công việc của một nhóm người.

Thứ hai, việc chuyển từ BPMN sang ngôn ngữ luồng để thực thi BPEL

(Business Process Execution Language), là ngôn ngữ được chọn để cài đặt Activity Execution Modul, cũng đang thu hút được khá nhiều nghiên cứu và đã đạt được khá nhiều kết quả khả quan [73] [18] [3] [79].

3. Activity Execution Modul (AEM): Modul này sẽ chịu trách nhiệm thực thi luồng công việc ở modul APM trên. Để triển khai modul này, tương tự như với modul APM, cách tiếp cận sử dụng ngôn ngữ luồng đã được sử dụng. Trong số các ngôn ngữ luồng hiện nay, BPEL (Business Process Execution Language) [68] [33] đã được chọn làm ngôn ngữ mô tả cho modul này vì một số lý do sau:

Thứ nhất: BPEL là ngôn ngữ luồng vừa có khả năng mô tả các tiến trình

nghiệp vụ mức cao, vừa có thể thực thi luồng công việc nhờ các BPEL engine đã được phát triển khá phổ biến hiện nay như ActiveBPEL, ODE, v.v.

Thứ hai: BPEL là ngôn ngữ luồng hướng dịch vụ, bằng cách chuẩn hóa việc

thực thi các luồng công việc thông qua việc gọi các dịch vụ Web. Điều này rất có ý nghĩa trong việc triển khai và mở rộng ngôn ngữ luồng trong môi trường lưới, vì đây là môi trường đang được phát triển và chuẩn hóa theo hướng dịch vụ. Tuy nhiên, BPEL có hạn chế là khả năng chỉ mới hỗ trợ việc

gọi các dịch vụ Web, chứ chưa gọi được dịch vụ lưới. Khắc phục hạn chế này cũng là một trong những nội dung nghiên cứu của luận án.

4. Hạ tầng lưới: Hạ tầng sẽ chứa kho tài nguyên và quản lý một cách có hiệu quả các tài nguyên của lưới để phục vụ cho các chức năng của các modul khác. Ngoài ra, hạ tầng này cũng sẽ giúp thực thi và giám sát các công việc trong các kế hoạch đã đề ra trong các modul APM và AEM ở trên.

Bảng 4-1 mô tả việc ánh xạ các khối chức năng của khung cộng tác vào các modul hệ thống trình bày ở trên.

Từ các modul trên, chúng có thể được lắp ghép như trong Hình 4-2. Theo cấu trúc này, trình tự các thao tác của người sử dụng có thể được khái quát gồm các bước sau:

Bảng 4-7: Ánh xạ các khối chức năng vào các modul hệ thống.

Khối chức năng Modul

Quản Lý VO và nhóm. VO and Group Management Modul (VGMM).

Lập kế hoạch hoạt động. Activity Planning Modul (APM): Sử dụng BPMN làm ngôn ngữ mô tả kế hoạch.

Phân công hành động. Activity Planning Modul (APM) và Activity Execution Modul (AEM): Sử dụng công cụ để dịch từ BPMN sang BPEL.

Lựa chọn tài nguyên và công cụ. Activity Execution Modul (AEM): Sử dụng BPEL làm ngôn ngữ mô tả việc thực thi kế hoạch ở trên.

Kho chứa các công cụ cộng tác. Tích hợp trong APM và AEM.

Cho chạy và giám sát. Workflow engine tích hợp trong AEM & Hạ tầng lưới.

Hình 4-51: Cấu trúc các modul của khung.

1. Bước 1: Người dùng đăng nhập (login) vào hệ thống. Ngoài tài khoản để đăng

nhập như các hệ thống thông thường, đối với hệ thống lưới, người dùng phải có trước các bản chứng thực (certificate) hợp lệ, được cấp bởi một trong các tổ chức chứng thực có đủ tin cậy (Authorization Organization). Sau khi đăng nhập, người dùng có thể đăng ký vào trong các tổ chức ảo để bắt đầu các phiên làm việc. 2. Bước 2: Người dùng sử dụng các công cụ soạn thảo kế hoạch (ở đây là các

BPMN editor) để cập nhật các bản kế hoạch về một công việc nào đó. Việc soạn thảo này có thể được thực hiện phối hợp với nhau – nhóm người dùng vừa cùng trao đổi và cùng cập nhật bản kế hoạch để đưa ra được bản thảo tốt nhất tại thời điểm đó. Sau đó, nó vẫn có thể được điều chỉnh cho phù hợp hơn với tình hình mới.

3. Bước 3: Bản kế hoạch đã được thống nhất ở trên sẽ được dịch sang một bản thảo

ở dạng mới (là BPEL trong hệ thống này) để phù hợp hơn với việc thực thi và giám sát việc thi hành này trên môi trường lưới.

4. Bước 4: Để chuẩn bị cho việc thực thi bản kế hoạch đã được dịch, cần phải tìm và

định vị các tài nguyên (phần cứng, phần mềm) cần thiết.

5. Bước 5: Người sử dụng sẽ cho thực thi và trong quá trình đó giám sát các kết quả

thực hiện, so sánh với kế hoạch đã đề ra ban đầu, từ đó có thể phát hiện kịp thời các vấn đề nảy sinh và có những điều chỉnh cần thiết.

Một phần của tài liệu Khung Cộng Tác Đa Dụng Trong Môi Trường Tính Toán Lưới (Trang 103)