Để hỗ trợ sự phối hợp hoạt động của dịch vụ web trong mô hình đăng ký, tìm kiếm, và gọi thực hiện. Chúng tôi đề xuất xây dựng thử nghiệm ba hệ thống hỗ trợhoạt động này đó là FOWLS Annotation Provider, FOWL-S JUDDI Registry và FOWLS Discovery Requester. Kiến trúc tổng thể đƣợc minh họa cụ thể trong Hình 6.1. Đối với nơi đăng ký dịch vụ (Registry) chúng tôi xây dựng thử nghiệm hệ thống FOWLS JUDDI Registry hỗ trợ hai chức năng chính đó là đăng ký dịch vụ đã chú giải các công dụng và cho phép tìm kiếm dịch vụ web dựa trên các công dụng kết hợp với các Input,
                
              
                                            
                                
            
 
            
                 14 trang
14 trang | 
Chia sẻ: vietpd | Lượt xem: 1519 | Lượt tải: 0 
              
            Bạn đang xem nội dung tài liệu Hệ thống xây dựng thử nghiệm phục vụ sự phối hợp hoạt động của dịch vụ web, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
59 
CHƢƠNG 6: CÀI ĐẶT THỬ NGHIỆM VÀ ĐÁNH GIÁ 
 
Tóm tắt: 
 Nội dung của Chương 6 trình bày về các hệ thống xây dựng thử nghiệm phục vụ 
sự phối hợp hoạt động của dịch vụ web. Nội dung đánh giá sẽ được trình bày trong 
phần cuối chương này. 
6.1 Kiến trúc tổng thể 
 Service Requester
Bind
 Inquiry UDDI Port Publish UDDI Port
FOWLS Discovery 
Requester
 Service Provider
FOWLS
Profile
OWL-S
Profile
FOWLS Annotation 
Provider
FOWLS
Profile
 Semantic Search
Template
 Semantic Search
Template
FOWLS
Profile
FOWLS JUDDI
REGISTRY
Hình 6.1 Kiến trúc tổng thể 
60 
 Để hỗ trợ sự phối hợp hoạt động của dịch vụ web trong mô hình đăng ký, tìm 
kiếm, và gọi thực hiện. Chúng tôi đề xuất xây dựng thử nghiệm ba hệ thống hỗ trợ 
hoạt động này đó là FOWLS Annotation Provider, FOWL-S JUDDI Registry và 
FOWLS Discovery Requester. Kiến trúc tổng thể đƣợc minh họa cụ thể trong Hình 
6.1. Đối với nơi đăng ký dịch vụ (Registry) chúng tôi xây dựng thử nghiệm hệ thống 
FOWLS JUDDI Registry hỗ trợ hai chức năng chính đó là đăng ký dịch vụ đã chú 
giải các công dụng và cho phép tìm kiếm dịch vụ web dựa trên các công dụng kết 
hợp với các Input, Ouput, hệ thống này xây dựng dựa trên công trình của Srinivasan 
[22]. Đối với nhà cung cấp dịch vụ, chúng tôi xây dựng thử nghiệm hệ thống 
FOWLS Annotation Provider cho phép nhà cung cấp dịch vụ thực hiện việc chú giải 
các công dụng cho các dịch vụ OWLS có sẵn và thực hiện đăng ký các dịch vụ này 
lên hệ thống FOWLS JUDDI Registry. Đối với ngƣời dùng dịch vụ chúng tôi hỗ trợ 
hệ thống FOWLS Discovery Requester, hệ thống này cho phép thử nghiệm việc tìm 
kiếm dịch vụ web dựa trên các công dụng kết hợp với các Input và Ouput. 
6.1.1 Hệ thống FOWLS JUDDI Registry 
Hệ thống FOWLS-UDDI Server đóng vai trò là một UDDI mở rộng, hệ thống 
của chúng tôi phát triển dựa trên công trình của N.Srinivasan [22] , Hệ thống 
FOWLS JUDDI REGISTRY đƣợc minh họa trong Hình 6.2. 
 Inquiry UDDI Port Publish UDDI Port
FOWLS JUDDI
REGISTRY
Hình 6.2 Hệ thống FOWLS JUDDI REGISTRY 
61 
 Hệ thống này cho phép thực hiện hai chức năng chính, thứ nhất là cho phép 
nhà cung cấp dịch vụ đăng ký các dịch vụ web đã chú giải các công dụng thông qua 
Publish UDDI Port và thứ hai là cho phép ngƣời dùng dịch vụ tìm kiếm các dịch vụ 
web dựa trên các công dụng kết hợp với các Input và Ouput thông qua Inquiry 
UDDI Port. 
Publish UDDI Port 
Publish UDDI Port cho phép nhà cung cấp dịch vụ (Service Provider) đăng 
ký các dịch vụ OWL-S sau khi đã đƣợc chú giải các công dụng tƣơng ứng ( chúng 
tôi gọi là FOWLS). Trong Module này chúng tôi cài đặt phép ánh xạ từ FOWLS 
sang UDDI. 
FOWLS JUDDI
REGISTRY
 Publish UDDI Port
FOWLS
Profile
 Service Provider
Hình 6.3 Publish UDDI Port 
Cơ chế này thực hiện phép ánh xạ một-một từ các thành phần OWL-S Profile 
vào bên trong UDDI. Đầu vào của Module này là danh sách các FOWLS Profile, sau 
62 
đó hệ thống chịu trách nhiệm lƣu trữ các FOWLS Profile cùng với thông tin nhà 
cung cấp dịch vụ. Publish UDDI Port đƣợc minh họa trong Hình 6.3. 
Inquiry UDDI Port 
Inquiry UDDI Port cho phép ngƣời dùng dịch vụ tìm kiếm các dịch vụ web 
theo các nhu cầu của họ dựa trên các công dụng kết hợp với các Input và Output của 
OWL-S Profile. 
FOWLS-UDDI
 Service Requester
 Inquiry UDDI Port
 Semantic Search
Template
FOWLS
Profile
Hình 6.4 Inquiry UDDI Port 
 Sau khi hệ thống nhận đƣợc yêu cầu truy vấn từ ngƣời dùng dịch vụ, hệ thống 
thực hiện truy vấn các FOWLS Profile trong UDDI dựa trên các công dụng kết hợp 
với các Input và Ouput (cơ chế tìm kiếm dựa trên ngữ nghĩa) và sau đó trả kết quả 
các OWLS Profile (FOWL-S) thỏa yêu cầu về cho ngƣời dùng dịch vụ theo các mức 
63 
độ phù hợp tƣơng ứng và đƣợc sắp xếp theo thứ tự ƣu tiên giảm dần. Inquiry UDDI 
Port đƣợc minh họa trong Hình 6.4. 
6.1.2 Hệ thống FOWLS Annotation Provider 
Hệ thống FOWLS Annotation Provider cho phép nhà cung cấp dịch vụ hai 
chức năng chính, thứ nhất là cho phép chú giải thêm các công dụng vào bên trong 
dịch vụ OWLS và thứ hai là cho phép đăng ký các dịch vụ web đã chú giải các công 
dụng lên FOWLS JUDDI Registry đƣợc minh họa trong Hình 6.5. 
 Inquiry UDDI Port Publish UDDI Port
 Service Provider
FOWLS
Profile
OWL-S
Profile
FOWLS Annotation 
Provider
FOWLS JUDDI
REGISTRY
Hình 6.5 FOWLS Annotation Provider 
64 
Chức năng chú giải các công dụng cho dịch vụ OWLS 
 Đầu vào của chức năng này là các dịch vụ OWLS chƣa đƣợc chú giải công 
dụng. 
FOWLS
Profile
OWL-S
Profile
FOWLS Annotation 
Provider
Hình 6.6 Chức năng chú giải các công dụng cho dịch vụ OWLS 
 Publish UDDI Port
FOWLS
Profile
FOWLS Annotation 
Provider
FOWLS JUDDI
REGISTRY
Hình 6.7 Chức năng đăng ký dịch vụ OWLS đã chú giải các công dụng 
Và đầu ra là các dịch vụ đã chú giải các công dụng tƣơng ứng. Khái niệm 
động từ chúng tôi sử dụng wordnet [40] để chú giải, còn khái niệm danh từ đƣợc sử 
65 
dụng các khái niệm trong domain ontology kèm theo tập dữ liệu test để chú giải ngữ 
nghĩa. 
Chức năng đăng ký dịch vụ OWLS đã chú giải các công dụng 
 Chức năng này cho phép nhà cung cấp dịch vụ đăng ký các dịch vụ OWLS đã 
chú giải các công dụng lên FOWLS JUDDI Registry. 
 Đầu vào của chức năng này là các dịch vụ OWLS đã chú giải các công dụng, 
và hệ thống chịu trách nhiệm đăng ký các dịch vụ web này lên nơi đăng ký dịch vụ 
thông qua Publish UDDI Port của FOWLS JUDDI Registry đƣợc minh họa trong 
Hình 6.7. 
6.1.3 Hệ thống FOWLS Discovery Requester 
FOWLS JUDDI
Registry
 Inquiry UDDI Port
FOWLS Discovery 
Requester
 Semantic Search
Template
F WLS
Profile
Hình 6.8 Hệ thống FOWLS Discovery Requester 
Hệ thống này đƣợc xây dựng để thử nghiệm việc tìm kiếm các dịch vụ web 
dựa trên công dụng kết hợp với các Input và Ouput. Hệ thống này chịu trách nhiệm 
gửi các yêu cầu của của ngƣời dùng dịch vụ là các công dụng, các Input và các 
66 
Ouput lên Inquiry UDDI Port và nhận về danh sách các dịch vụ web phù hợp với các 
công dụng, các Input, các Ouput ngƣời dùng muốn tìm kiếm. Hệ thống FOWLS 
Discovery Requester đƣợc minh họa trong Hình 6.8. 
6.2 Đánh giá 
6.2.1 Dữ liệu thử nghiệm 
Chúng tôi sử dụng OWLS-TC 3.0 [21]với 1005 dịch vụ OWL-S đƣợc chia 
vào 7 domain : Communication , Economy, Education, Food , Medical, Travel, 
Weapon đã đƣợc chú giải ngữ nghĩa các Input và Output. 
Chúng tôi chú giải thêm ngữ nghĩa các công dụng cho các dịch vụ trên trong 
đó: 
 Các khái niệm động từ sử dụng các khái niệm động từ trong wordnet 2.1. 
 Các khái niệm danh từ sử dụng các khái niêm trong domain ontology kèm 
theo OWL-S TC 3.0. 
Chúng tôi sử dụng JWNL 1.6 để phát triển thật toán xác định mức độ phù hợp 
giữa hai khái niệm động từ trong wordnet và sử dụng Jena 2.6.2 để phát triển thuật 
toán xác định mức độ phù hợp giữa hai khái niệm danh từ trong domain ontology. 
 Từ 1005 OWL-S Profile đã chú giải công dụng và lƣu trữ tại FOWLS JUDDI 
Server chúng tôi tạo ra: 1005 truy vấn dịch vụ web dựa trên công dụng , 1005 truy 
vấn dịch vụ web dựa trên Input và Output và 1005 truy vấn dịch vụ web kết hợp các 
công dụng và các Input , Ouput. Từ 3 loại truy vấn này, chúng tôi lần lƣợt truy vấn 
trên 100, 200, 300, 400, 500, 600, 700, 800, 900, 1005 OWL-S Profile đƣợc lƣu trữ 
tại server để xác định thời gian thực thi và số dịch vụ tìm đƣợc tƣơng ứng với các 
phƣơng pháp F, IO, FIO, IOF. 
67 
6.2.2 Cấu hình máy thử nghiệm 
Chúng tôi tiến hành các thử nghiệm trên máy tính có cấu hình đƣợc trình bày 
trong Bảng 6.1. 
CẤU HÌNH THỰC NGHIỆM 
CPU AMD Turion 64x2 Mobile Technology TL 60 2.0 GHZ 
RAM 3.0 GB 
Hệ điều hành Windows 7 Ultimate 
Laptop HP Pavilion DV6000 
Bảng 6.1 Cấu hình máy thực nghiệm 
6.2.3 Kết quả 
Ký hiệu: 
- F: Tìm kiếm dịch vụ web dựa trên công dụng. 
- IO: Tìm kiếm dịch vụ web dựa trên Input, Ouput. 
- FIO: Tìm kiếm dịch vụ web bao gồm 2 giai đoạn trong đó giai đoạn 1 tìm kiếm 
dựa trên công dụng, giai đoạn 2 tìm kiếm dựa trên Input, Ouput. 
- IOF: Tìm kiếm dịch vụ web bao gồm 2 giai đoạn trong đó giai đoạn 1 tìm kiếm 
dựa trên Input, Ouput, giai đoạn 2 tìm kiếm dựa trên công dụng. 
Cụ thể kết quả đạt đƣợc nhƣ sau: 
Thống kê theo thời gian thực hiện đƣợc minh họa trong Bảng 6.2. 
THEO THỜI GIAN (TÍNH THEO MS) 
 100 200 300 400 500 600 700 800 900 1005 
F 23.79 47.11 79.50 104.69 127.09 150.15 175.19 202.09 219.95 240.25 
IO 29.46 54.16 82.40 121.71 168.90 193.78 233.78 267.84 286.36 320.53 
FIO 24.28 48.57 81.96 109.19 133.57 157.61 182.95 210.34 228.75 249.20 
IOF 32.82 56.17 84.91 124.43 172.17 197.61 237.91 272.36 291.71 326.25 
Bảng 6.2 Thống kê theo thời gian thực hiện 
68 
 Thống kê theo số dịch vụ tìm đƣợc đƣợc thể hiện trong Bảng 6.3 
THEO SỐ DỊCH VỤ 
 100 200 300 400 500 600 700 800 900 1005 
F 1.15 2.91 4.65 5.97 7.63 8.87 9.86 10.95 12.10 13.33 
IO 4.00 5.59 7.13 8.13 10.06 11.11 12.32 13.84 15.70 17.09 
FIO 0.54 0.96 1.55 1.94 2.59 2.91 3.23 3.65 4.12 4.48 
Bảng 6.3 Thống kê theo số lƣợng dịch vụ tìm thấy 
Biểu đồ so sánh số lƣợng dịch vụ tìm đƣợc theo phƣơng pháp F, IO, FIO 
Hình 6.9 Biểu đồ so sánh số lƣợng dịch vụ tìm đƣợc 
Biểu đồ Hình 6.9 cho thấy phƣơng pháp FIO giúp loại bỏ đi đáng kể các dịch 
vụ web không liên quan với yêu cầu của ngƣời dùng dịch vụ bao gồm các dịch vụ 
web có các công dụng phù hợp với yêu cầu nhƣng các Input, và Output không phù 
hợp hoặc các dịch vụ web có các Input, output phù hợp với yêu cầu nhƣng có các 
0.00
2.00
4.00
6.00
8.00
10.00
12.00
14.00
16.00
18.00
100 200 300 400 500 600 700 800 900 1005
S
ố
 l
ư
ợ
n
g
 d
ịc
h
 v
ụ
 t
ìm
 t
h
ấ
y
Số lượng dịch vụ trên FOWLS JUDDI 
F
IO
FIO
69 
công dụng không phù hợp. Số lƣợng các dịch vụ không liên quan đƣợc loại bỏ trung 
bình là 75,26%. Vì vậy với phƣơng pháp FIO có thể phục vụ cho quá trình tìm kiếm 
dịch vụ web hỗ trợ quá trình thiết kế dịch vụ web tổng hợp trong hệ thống theo kiến 
trúc hƣớng dịch vụ, hoặc các dịch vụ web tìm đƣợc có thể phục vụ quá trình tìm 
kiếm, tổng hợp và gọi thực hiện một cách tự động trong quá trình thực thi theo qui 
trình nghiệp vụ của dịch vụ web tổng hợp. 
Biểu đồ so sánh thời gian thực hiện giữa FIO và IO 
Hình 6.10 Biểu đồ so sánh thời gian thực hiện giữa IO và FIO 
Mặc dù các OWL-S Profile đƣợc chú giải thêm các công dụng ngữ nghĩa, 
nhƣng thời gian thực hiện tìm kiếm dịch vụ web theo phƣơng pháp FIO lại giảm so 
với phƣơng pháp IO 18,9% , các công dụng giúp phân loại nhanh các dịch vụ web 
tìm kiếm trƣớc khi xác định mức độ phù hợp các Input, Ouput so với yêu cầu của 
ngƣời dùng dịch vu. Việc so sánh giữa các phƣơng pháp đƣợc minh họa trong Hình 
6.10, Hình 6.11, Hình 6.12. 
0
50
100
150
200
250
300
350
100 200 300 400 500 600 700 800 900 1005
Th
ờ
i g
ia
n
 t
ín
h
 t
h
e
o
 m
s
Số lượng dịch vụ trên FOWLS JUDDI
IO
FIO
70 
 Biểu đồ so sánh thời gian thực hiện giữa FIO và IOF 
Hình 6.11 Biểu đồ so sánh thời gian thực hiện giữa FIO và IOF 
Biểu đồ so sánh thời gian thực hiện giữa F, IO, FIO, IOF 
Hình 6.12 Biểu đồ so sánh thời gian thực hiện giữa F, IO, FIO, IOF 
0
50
100
150
200
250
300
350
100 200 300 400 500 600 700 800 900 1005
Th
ờ
i g
ia
n
 t
h
e
o
 m
s
Số lượng dịch vụ trên FOWLS JUDDI
FIO
IOF
0.00
50.00
100.00
150.00
200.00
250.00
300.00
350.00
100 200 300 400 500 600 700 800 900 1005
Th
ờ
i g
ia
n
 t
h
e
o
 m
s
Số lượng dịch vụ trên FOWLS JUDDI
F
IO
FIO
IOF
71 
6.3 Ví dụ 
Giả sử ngƣời dùng dịch vụ muốn tìm dịch vụ web có Input là Title và các 
Ouput là Media, RecommendedPrice và Quantity. Ví dụ về tìm kiếm dịch vụ web 
dựa trên IO đƣợc minh họa cụ thể trong Hình 6.13. 
Hình 6.13 Ví dụ về tìm kiếm dịch vụ web dựa trên IO 
Hình 6.14 Ví dụ về tìm kiếm dịch vụ dựa trên công dụng 
 Sau đó ngƣời sử dụng dịch vụ sử dụng hệ thống FOWL-S Discovery 
Requester để tìm kiếm dịch vụ web trên FOWLS JUDDI Registry với mong muốn 
tìm đƣợc các dịch vụ có các Input nhƣ trong Hình 6.13. Khi đó số lƣợng dịch vụ web 
phù hợp tìm đƣợc là 12 dịch vụ. Các dịch vụ web trong 12 dịch vụ web này thì mỗi 
dịch vụ có các Input, Output phù hợp, nhƣng có thể có các công dụng khác nhau. 
72 
 Còn nếu ngƣời dùng dịch vụ tìm kiếm dịch vụ web chỉ bằng công dụng 
“Search Media” thì có đến 16 dịch vụ web tìm thấy phù hợp với công dụng yêu cầu. 
Các dịch vụ web trong 16 dịch vụ web này có công dụng phù hợp với yêu cầu ngƣời 
sử dụng, tuy nhiên có thể có các Input, Output không phù hợp. Công dụng yêu cầu 
từ ngƣời dùng đƣợc minh họa trong Hình 6.14. 
 Nhƣng khi ngƣời dùng dịch vụ kết hợp tìm kiếm dịch vụ web với các Input và 
Output nhƣ trong Hình 6.13 với công dụng là “Search Media”, ví dụ về sự kết hợp 
này đƣợc minh họa trong Hình 6.15, thì số lƣợng dịch web tìm đƣợc phù hợp với các 
Input, Ouput và các công dụng trên là 3 dịch vụ. Từ kết quả này cho thấy số lƣợng 
các dịch vụ không phù hợp với công dụng hoặc không phù hợp Input, Output đƣợc 
loại bỏ đi đáng kể. Với các dịch vụ tìm đƣợc này có thể đƣợc sử dụng bán tự động/tự 
động khi thiết kế/thực thi dịch vụ tổng hợp theo kiến trúc hƣớng dịch vụ vì có thể 
gọi thực hiện đƣợc thông qua các Input, Ouput dịch vụ và công dụng của dịch vụ 
cũng phù hợp với công dụng yêu cầu của ngƣời dùng. 
Hình 6.15 Ví dụ tìm kiếm dịch vụ web kết hợp các công dụng với các Input và Ouput