Kiến trúc khung lưới cộng tác

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 99 - 103)

100

Quản Lý VO và nhóm (VO and Group Management): có trách nhiệm cập nhật các tổ chức ảo (VO), các nhóm trong VO, người dùng trong các nhóm, quản lý quyền truy nhập và vai trò của người dùng trong các VO.

Lập kế hoạch hoạt động (Activity Planning): chịu trách nhiệm tạo mới các kế hoạch

làm việc hay cập nhật các kế hoạch đang triển khai

Phân công hành động (Activity Planning): chịu trách nhiệm phân công các hành động cụ thể trong kế hoạch làm việc cho từng người dùng

Lựa chọn tài nguyên và công cụ (Selecting Resources and Artifacts): cho phép người dùng tìm và lựa chọn các tài nguyên phù hợp cho các hành động trong kế hoạch làm việc, cũng như các công cụ cộng tác cần thiết cho việc cộng tác của các hành động. Kết quả cuối cùng của việc chọn lựa này sẽ là một kịch bản công việc.

Kho chứa các công cụ cộng tác (Collaborative Artifact Store): lưu trữ toàn bộ các

công cụ cộng tác.

Cho chạy và giám sát (Running and Monitoring): có nhiệm vụ khởi động, cho chạy, giám sát và cho kết thúc các hoạt động.

Thư mục tài nguyên (Resource Directory): chứa toàn bộ các tài nguyên cần thiết cho

việc chạy các thao tác của công việc.

2. Tầng Điều Phối Tài nguyên (Resource Coordination Layer): nhiệm vụ chính của tầng này là quản lý các tài nguyên phân tán và làm cho chúng luôn trong trạng thái sẵn sàng sử dụng cho tầng ở trên. Hạ tầng lưới hiện tại (hệ thống Globus Toolkit 4) sẽ được sử dụng cho tầng này.

Ở đây, đưa ra một ví dụ đơn giản trong lĩnh vực ra quyết định y tế cộng tác, nhằm minh họa ý tưởng về việc sử dụng khung cho việc trợ giúp sự cộng tác trong hoạt động này.

Ví dụ 4-1:Khi khối lượng tri thức điều trị y tế không ngừng tăng lên, làm cho các nhân viên y tế ngày càng khó để trở thành chuyên gia trong vài lĩnh lực chuyên môn. Sự thật này đã làm cho việc tư vấn trở thành một thành phần thiết yếu của các tiến trình chẩn trị cộng tác hiện đại. Một kịch bản đơn giản có thể như sau:

Một bác sĩ và hai chuyên gia chia sẻ kiến thức nhằm đi đến một sự nhất trí liên quan đến một ca chẩn đoán, đòi hỏi có các kiểm tra chẩn đoán và các thủ tục can thiệp. Quá trình suy luận và ra quyết định có thể gồm các bước sau:

- Bước 1: Bác sĩ và các chuyên gia cộng tác với nhau để đưa ra một kế hoạch chẩn đoán, mà bao gồm các giai đoạn, các đặc điểm ra quyết định, các kiểm tra y tế, các hỗ trợ y tế, các dữ liệu dựa trên tri thức và sự trao đổi của họ.

- Bước 2: Một khi kế hoạch đã được sắp đặt, mỗi thành viên trong nhóm sẽ chịu trách nhiệm một phần nào đó trong kế hoạch và trao đổi với nhau theo đặc tả đã đề ra.

- Bước 3: Mỗi thành viên lựa chọn các công cụ cộng tác cần thiết nhằm trợ giúp quá trình chẩn đoán của họ. Bước này sẽ tạo ra một kịch bản mô tả đầy đủ chi tiết liên

101

quan đến những người thực hiện và các hành động phải làm để thu được kết quả đã được mô tả ở trong kế hoạch.

- Bước 4: Các hành động được thực thi theo kịch bản. Trong giai đoạn này, các thành viên tham gia cộng tác có thể luôn luôn giám sát tiến độ của toàn bộ tiến trình và nếu cần thì cập nhật lại kế hoạch.

Cũng cần lưu ý, quá trình suy luận và ra quyết định trong thực tế thường phức tạp hơn mô tả ở trên rất nhiều, như đã được trình bày trong [86].

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

102

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-1: Á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. Thư mục tài nguyên. Hạ tầng lưới.

103

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 99 - 103)