KHAI PHÁ và kết hợp tối ưu các DỊCH vụ WEB NGỮ NGHĨA với SOA

97 140 0
KHAI PHÁ và kết hợp tối ưu các DỊCH vụ WEB NGỮ NGHĨA với SOA

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM KHOÁ LUẬN TỐT NGHIỆP KHAI PHÁ VÀ KẾT HỢP TỐI ƢU CÁC DỊCH VỤ WEB NGỮ NGHĨA VỚI SOA Giảng viên hƣớng dẫn Sinh viên thực Lớp Khoá Niên khóa : PGS TS VŨ THANH NGUYÊN ThS NGUYỄN ĐĂNG KHOA : CAO THỊ HUYỀN SA LÊ HẢI ĐƢỜNG : CNPM02 : 02 : 2007-2012 TP Hồ Chí Minh, tháng 02 năm 2012 Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng LỜI CẢM ƠN Nhóm thực xin đƣợc cảm ơn thầy Vũ Thanh Nguyên thầy Nguyễn Đăng Khoa hƣớng dẫn, tìm hƣớng cho nhóm suốt q trình thực khóa luận Xin cảm ơn thầy cô khoa Công nghệ phần mềm cung cấp cho chúng em kiến thức quý báu để hồn thành khóa luận Xin cảm ơn thành viên lớp CNPM02, hỗ trợ nhóm thời gian thực khóa luận, giúp đỡ nhóm thực tìm kiếm số tài liệu nguồn ủng hộ tinh thần cho nhóm Nhóm thực hiện: Cao Thị Huyền Sa Lê Hải Đường Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng NHẬN XÉT (Của giảng viên hƣớng dẫn) Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng NHẬN XÉT (Của giảng viên phản biện) Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng TÓM TẮT KHÓA LUẬN Một workflow bao gồm chuỗi bƣớc đƣợc kết nối Nhấn mạnh mơ hình flow, nơi mà bƣớc bƣớc trƣớc mà khơng có chậm trễ hay khoảng cách kết thúc trƣớc bƣớc bắt đầu Nó mơ tả chuỗi hoạt động, đƣợc khai báo work ngƣời, nhóm ngƣời, tổ chức nhân viên, nhiều chế đơn giản phức tạp Workflow đƣợc xem nhƣ trừu tƣợng công việc thực tế Trong công nghệ phần mềm, Kiến Trúc Hƣớng Dịch Vụ (SOA) tập hợp nguyên tắc phƣơng pháp thiết kế phát triển phần mềm form services tƣơng thích Các web services thực kiến trúc hƣớng dịch vụ Các web services làm cho building-blocks chức truy cập qua giao thức Internet tiêu chuẩn độc lập với tảng với ngơn ngữ lập trình Các Web Services mở khả có workflow đầy đủ chạy tự động ứng dụng chuyển thành web services Các implementors thƣờng xây dựng SOAs cách sử dụng chuẩn dịch vụ web (ví dụ, SOAP) đƣợc chấp nhận rộng rãi ngành công nghiệp sau giới thiệu Version 1.2 từ W3C (World Wide Web Consortium) in 2003 Những chuẩn (còn gọi đặc tả dịch vụ Web) cung cấp khả tƣơng tác cao số bảo vệ từ việc khóa phần mềm nhà cung cấp độc quyền Tuy nhiên, ngƣời ta sử dụng công nghệ dựa service nhƣ Jini, CORBA REST Một số công cụ thiết kế workflow (BPEL, Windows Workflow Foundation) có khả làm việc với web service cách cho phép định web service cho workflow step Tuy nhiên, cơng cụ thiếu khả tối ƣu hóa workflow khả đề cử web services tốt phù hợp cho bƣớc Đó cơng cụ khơng giữ thơng tin cách web services tồn sử dụng chúng q trình thiết kế Khóa luận tìm hiểu giải pháp để hỗ trợ trình thiết kế workflow với khả phát tối ƣu hóa thành phần web services Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng ABSTRACT A workflow consists of a sequence of concatenated (connected) steps Emphasis is on the flow paradigm, where each step follows the precedent without delay or gap and ends just before the subsequent step may begin It is a depiction of a sequence of operations, declared as work of a person, a group of persons, an organization of staff, or one or more simple or complex mechanisms Workflow may be seen as any abstraction of real work In software engineering, a Service-Oriented Architecture (SOA) is a set of principles and methodologies for designing and developing software in the form of interoperable services Web services can implement a service-oriented architecture Web services make functional building-blocks accessible over standard Internet protocols independent of platforms and programming languages Web Services opens the ability to have the full workflow run automatically when applications turn into web services Implementors commonly build SOAs using web services standards (for example, SOAP) that have gained broad industry acceptance after recommendation of Version 1.2 from the W3C (World Wide Web Consortium) in 2003 These standards (also referred to as Web service specifications) also provide greater interoperability and some protection from lock-in to proprietary vendor software One can, however, implement SOA using any service-based technology, such as Jini, CORBA or REST Some of workflow designing tools (BPEL, Windows Workflow Foundation) have ability to work with web service by allow assigning a web service to a workflow step Howerver, these tools lack the ability to optimize the workflow or recommend the best web services that could be suitable for each step It is because these tools don't keep the information about the existed web services and using them in the designing process This thesis learns a solution to support the workflow designing process with the ability to discovery and optimize the composition of web services Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng MỞ ĐẦU Web ngữ nghĩa, hay gọi hệ Web 3.0 lĩnh vực hồn tồn mẻ, cần có đầu tƣ nghiên cứu nghiêm túc để thực đƣa web 3.0 trở thành thực tế áp dụng rộng rãi, để tận dụng đƣợc ƣu điểm lớn chúng mà web 2.0 trở nên già cỗi khó lòng quản lý Một số khía cạnh cần đƣợc nghiên cứu lĩnh vực web ngữ nghĩa việc sử dụng ontology matching để phối hợp tối ƣu dịch vụ web ngữ nghĩa, phục vụ cho việc tái sử dụng tài ngun sẵn có mơi trƣờng web ngữ nghĩa việc xây dựng website theo hƣớng dịch vụ Với giới hạn thời gian kinh nghiệm nghiên cứu, nhóm sinh viên định thực đề tài nghiên cứu tìm hiểu khái niệm trình kết hợp dịch vụ web ngữ nghĩa cơng cụ hỗ trợ có Qua đó, xây dựng phát triển cho riêng giải thuật việc matching khai phá dịch vụ web ngữ nghĩa, phục vụ cho q trình thực tạo nên cơng cụ thực tế phát triển khóa luận sau Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng MỤC LỤC Chƣơng 1: GIỚI THIỆU ĐỀ TÀI 12 1.1 Mục tiêu – giới hạn đề tài 12 1.1.1 Mục tiêu 12 1.1.2 Giới hạn 12 1.2 Kết tóm lƣợc đề tài 12 1.3 Cấu trúc khóa luận 12 Chƣơng 2: KIẾN THỨC CƠ BẢN 14 2.1 Services Orient Architecture 14 2.1.1 Giới thiệu công nghệ 14 2.1.2 Đặc điểm SOA 17 2.1.3 Ƣu khuyết điểm SOA 20 2.2 Web Service 20 2.2.1 Giới thiệu công nghệ 20 2.2.3 Các thành phần dịch vụ web 22 2.2.4 Ƣu khuyết điểm 30 Chƣơng 3: Ontoglogy – CƠ SỞ LÝ THUYẾT 32 3.1 Description Logic 32 3.1.1 Giới thiệu 32 3.1.2 Cú pháp Description Logic 32 3.1.3 Ngữ nghĩa Description Logic 33 3.2 Ontology 35 3.2.1 Ontology 35 3.2.2 Các thành phần ontology 35 3.2.3 Phân loại Ontology 36 3.2.5 Ví dụ 39 3.3 Semantic Web 40 3.3.1 Giới thiệu Semantic Web 40 3.3.2 RDF(S) 42 3.3.3 OWL(S) 43 3.4 Dịch vụ web ngữ nghĩa (Semantic Web Service) 44 3.4.1 Giới thiệu 44 3.4.2 Kiến trúc Semantic Web Service 46 3.5 Web Service Annotation Ontology 46 Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 3.5.1 OWL-S 46 3.5.2 WSMO 47 3.5.3 WSDL-S 48 3.5.4 SAWSDL 49 3.5.5 So sánh OWL-S, WSMO, WSDL-S, SAWSDL 51 Chƣơng 4: KHAI PHÁ SEMANTIC WEB SERVICE 53 4.1 Kiến trúc (Architecture) 53 4.1.2 Kiến trúc Khai phá Dịch vụ web (Web Service Discovery) 53 4.2 Phƣơng pháp – Giải thuật 59 4.2.1 Định nghĩa Matchmaking 59 4.2.2 Degree of Match (DoM) 60 4.2.3 Các hƣớng tiếp cận Matchmaking 61 4.3 Các công cụ Matchmaking – Các cơng trình liên quan 70 4.3.1 OWL-S/UDDI Matchmaker (OWL-S/UDDIM) 70 4.3.2 Hybrid OWL-S Web Service Matchmaker (OWLS-MX) 76 4.3.3 METEOR-S Web Service Discovery Infrastructure (MWSDI) – Lumina 79 4.3.4 TUB OWL-S Matcher (OWLSM) 83 Chƣơng 5: CÁC KHÁI NIỆM TRONG VIỆC XÂY DỰNG GIẢI THUẬT PHỤC VỤ KHAI PHÁ DỊCH VỤ WEB NGỮ NGHĨA 86 5.1 Giới thiệu 86 5.2 Ví dụ: 87 5.3 Các tiêu chí đánh giá dịch vụ 90 5.4 Quá trình lựa chọn dịch vụ 91 Chƣơng 6: KẾT LUẬN 93 6.1 Tổng kết 93 6.2 Những đóng góp đề tài 94 6.3 Hƣớng phát triển 94 DANH MỤC TÀI LIỆU THAM KHẢO 95 Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 10 DANH MỤC CÁC BẢNG, SƠ ĐỒ, HÌNH Danh mục hình Hình 2.1 Mơ hình trừu tƣợng Kiến trúc hƣớng dịch vụ SOA Hình 2.2 Mơ hình hoạt động SOA Hình 2.3 Mơ hình hoạt động Web Service 11 Hình 2.4: Các thành phần Web service 12 Hình 2.5: Mơ hình gửi nhận thơng điệp qua SOAP 14 Hình 2.6: Cấu trúc SOAP message 15 Hình 2.7: Cấu trúc WSDL 16 Hình 3.1 Phân loại ontology theo chủ đề phân hóa 26 Hình 3.2 Phân loại Ontology dựa mức độ tổng quát 28 Hình 3.3 Cấu trúc Semantic web 30 Hình 3.4 Cấu trúc dịch vụ web ngữ nghĩa 34 Hình 3.5 Mơ hình OWL-S 35 Hình 3.6 Mơ hình WSMO 36 Hình 3.7 Mơ hình tài liệu WSDL-S 37 Hình 3.8 Mơ hình SAWSDL 38 Hình 3.9 Tập liệu từ giới thực 40 Hình 4.1 Kiến trúc khai phá dịch vụ web ngữ nghĩa 41 Hình 4.2 Ví dụ OWL-S SAO 43 Hình 4.3 Kiến trúc tập trung I 44 Hình 4.4 Kiến trúc tập trung II 45 Hình 4.5 Kiến trúc tập trung 46 Hình 4.6 Cấu trúc ontology trƣớc (a) sau (b) thêm u cầu Q 51 Hình 4.7 Tóm tắt giải thuật cách tiếp cận IV 52 Hình 4.8 Biểu diễn dịch vụ bảng 4.7 54 Hình 4.9 Vehicle ontology 58 Hình 4.10: Cách xác định mức DoM 58 Hình 4.11 Kiến trúc UDDI/OWL-S Registry 58 Hình 4.12: Ánh xạ OWL-S Profile UDDI 60 Hình 4.13: Màn hình tùy chọn OWLS-MX 64 10Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 83 4.3.4 TUB OWL-S Matcher (OWLSM) 4.3.4.1 Giới thiệu OWLSM đƣợc luận văn Stefan Tang với khả Matchmaking đặc tả DAML-S(2004) Sau đó, Christoph Liebetruth bổ sung để thích ứng với OWL-S(2005) Cơng cụ đƣợc viết ngôn ngữ java, phiên sử dụng OWLJessKB làm reasoner Ý tƣởng sử dụng số ranking để đánh giá khả matching truy vấn dịch vụ quảng bá dịch vụ Giải thuật MatchMaking không sử dụng Inputs, Outputs Service Profile mà khai thác việc xếp phân loại dịch vụ web UDDI(Service Category) thuộc tính khác Service Profile, chẳng hạn nhƣ nonfunctional properties Quá trình Matchmaking đƣợc chia làm phần, có ba phần đƣợc thực Input, Output Service Category với logic-based Phần lại cho phép khả ngƣời sử dụng chủ động xây dựng giải thuật matching khai thác thuộc tính khác Service Profile Chỉ số ranking tổng hợp đƣợc xác định từ kết giai đoạn Hình 4.1 mơ tả việc kết hợp kết matching từ bốn giai đoạn: Hình 4.15: Mơ hình kết hợp kết Matching 4.3.4.2 Giải thuật Matching Matching Concept: gọi A, B hai concept, OWLSM sử dụng mức DoM để mô tả mối quan hệ A B:  Fail(A,B): A B khơng có mối quan hệ subsumption 83Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 84  Subsumes(A,B): A subsumes B  Equivalent(A,B): A B trùng Trong OWLSM, giải thuật matching đƣợc đề xuất theo hƣớng “open world” Do đó, tác giả đề xuất mức DoM Unknown hai mức Fail Subsumes, đƣợc dùng trƣờng hợp không xác định đƣợc mối quan hệ hai concept thuộc vào ba trƣờng hợp Cách thức khai thác Service Category đƣợc xây dựng dựa ý tƣởng cho việc xếp, phân loại dịch vụ web theo category UDDI hồn tồn đƣợc mơ hình ontology thơng qua concept Do đó, ta áp dụng kỹ thuật reasoning concept Chỉ số ranking mức DoM tƣơng ứng cho matching với Inputs, Outputs Service Category đƣợc cho nhƣ bảng 4.1: Rank DoM Fail Unknow Subsumes Equivalent Bảng 4.9: Các mức DoM OWLSM Việc xác định số ranking tổng hợp đƣợc điều chỉnh dựa vào trọng số kết hợp số ranking thành phần Ví dụ: cho Outputs có ảnh hƣởng lớn thành phần khác ta điều chỉnh trọng số Outputs lớn so với thành phần khác 4.3.4.3 Hiện thực Công cụ đƣợc viết ngôn ngữ java Phiên sử dụng OWLJessKB làm reasoner sử dụng hàm API OWLJessKB để thao tác file OWL-S 84Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 85 4.3.4.4 Nhận xét Ƣu điểm  Khai thác đƣợc sức mạnh truyền thống UDDI với Service Category  Có thể tận dụng tất thông tin Profile với Custom Module Khuyết điểm  Chỉ số ranking qui định cho mức DoM rõ đƣợc khác biệt khoảng cách mức Ví dụ: theo số ranking khoảng cách Equivalent→Subsumes Subsumes→ Unknown  Ngƣời sử dụng không thay đổi đƣợc số ranking cho mức  Không hỗ trợ khả tìm kiếm dịch vụ web tổng hợp 85Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 86 Chƣơng 5: CÁC KHÁI NIỆM TRONG VIỆC XÂY DỰNG GIẢI THUẬT PHỤC VỤ KHAI PHÁ DỊCH VỤ WEB NGỮ NGHĨA 5.1 Giới thiệu Việc tạo ra, triển khai sử dụng dịch vụ để đáp ứng nhu cầu cá nhân lẫn cộng đồng phổ biến hầu nhƣ tất lĩnh vực phục vụ đời sống ngƣời Chúng ta thƣờng chọn lọc nhà cung cấp dịch vụ thích hợp dựa vào lời khuyên bạn bè, gia đình, tƣ vấn chuyên gia, hay tìm kiếm chúng danh mục (ví dụ nhƣ Trang Vàng) Tiến trình lựa chọn dịch vụ Khai Phá Web Service với kiến trúc hƣớng dịch vụ SOA tƣơng tự SOA cung cấp thƣ mục nơi mà Service Provider khai báo dịch vụ cho chúng kích hoạt client việc tìm liên kết dịch vụ thơng qua internet Khái niệm dịch vụ web ngữ nghĩa định nghĩa phần tiến trình tự động xây dựng triển khai dịch vụ web, ứng dụng linh hoạt tìm kiếm kết hợp dịch vụ mà khơng phần phải có cài đặt phức tạp tiến trình khai phá kết hợp chúng OWL-S phiên đặc biệt OWL ontology đƣợc thiết kế để cung cấp framework cho diễn tả ngữ nghĩa vài tiến trình (ví dụ khai phá, dẫn chứng, kết hợp) Trong suốt trình phát triển dịch vụ, khái niệm thủ tục trừu tƣợng đƣợc cung cấp ontology OWL-S đƣợc sử dụng với domain ontologies đặc biệt để cung cấp điều kiện (term), khái niệm (concept), quan hệ (relationship) đƣợc sử dụng để mô tả thuộc tính dịch vụ khác (ví dụ Inputs, Outputs, Precondicitons, Effects hay IOPE‟s) Thông thƣờng, giải thuật so khớp sử dụng ontology để khai phá kết hợp Service Provider với yêu cầu dịch vụ xác định Trong SOA, ngƣời dùng cá nhân hay cộng đồng ngƣời dùng chọn dịch vụ họ cần cách sử dụng description diễn tả điều kiện ontology Nhƣng với tăng nhanh dịch vụ đƣợc xây dựng triển khai đơn lẻ, phù hợp ngữ nghĩa user ontology đƣợc sử dụng để chọn lọc, domain ontology đƣợc sử dụng để mô tả dịch vụ, trở nên đa dạng Do đó, ngƣời dùng có khả sửa chữa tƣơng thích ontology để so khớp cách hiệu yêu cầu dịch vụ khai báo dịch vụ Các hƣớng tiếp cận cho dịch vụ đƣợc mô tả Semantic web không hỗ trợ việc xây dựng tƣơng thích ngữ nghĩa ontology Mặc dù sau đó, framework nhƣ WSMO WSDL-S, đƣợc xây dựng để hỗ trợ cho việc chuyển đổi ontology cần thiết Các kỹ thuật tối ƣu việc khai báo tìm kiếm web services (nhƣ WSDL, UDDII_ sử dụng static description service interfaces Do đó, chúng thiếu chức hỗ trợ cho việc lựa chọn dịch vụ dựa vào thuộc tính phi chức nhƣ Quality of Service (QoS) Một vài hƣớng tiếp cận kết hợp với tiêu chí QoS khai phá 86Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 87 dịch vụ lại không hỗ trợ cho việc tồn khác biệt ngữ nghĩa dịch vụ phát triển độc lập Sau cùng, với tăng nhanh Web Services service provider, chắn xuất dịch vụ web đƣợc cung cấp nhiều nhà cung cấp khác với chức Trong bối cảnh đó, ngƣời sử dụng nên xếp hạng dịch vụ đƣợc khai phá dựa vào tiêu chí cụ thể (nhƣ quality of Service (QoS), cost,… Tuy nhiên, hƣớng tiếp cận trình lựa chọn dịch vụ không tạo dự trù cho tiêu chí riêng biệt ngƣời sử dụng nhƣ phần yêu cầu dịch vụ Để giải bất cập trên, chƣơng xây dựng thành phát triển dịch vụ web ngữ nghĩa ontology dựa vào giải pháp cho tiến trình lựa chọn dịch vụ để phát triển hƣớng tiếp cận cho tiến trình khai phá dịch vụ web ngữ nghĩa (Semantic web services discover) Cụ thể hơn, chƣơng trình cho phép ngƣời sử dụng đƣợc định nghĩa riêng yêu cầu thân họ tƣơng thích ngữ nghĩa ontology để có lựa chọn đáp ứng đƣợc nhu cầu cá nhân Những tƣơng thích đƣợc sử dụng để chọn lọc dịch vụ dựa vào yêu cầu chức phi chức ngƣời sử dụng, yêu cầu thƣờng đƣợc xếp hạng dựa theo tiêu chí xác định từ phía ngƣời dùng 5.2 Ví dụ: Giả sử có domain ontologies mơ hình cộng đồng ngƣời Chúng diễn tả khái niệm đặc tính họ việc phân phát thức ăn nhà hàng khác OHomeDelivery (Hình 5.1) loại thức ăn Trung Quốc khác OChineseFood Giả sử tồn dịch vụ web W1 cho phép ngƣời tiêu dùng đặt hàng thức ăn Trung Quốc giao hàng nhà sử dụng domain ontology (hình & 2) để xác định khả dịch vụ cung cấp W1 tổ chức tên mặt hàng thức ăn (các loại thức ăn khác mà phục vụ đƣợc xác định OChineseFood), thơng tin thẻ tín dụng ngƣời dùng địa giao hàng đƣợc xem thông tin đầu vào (inputs), email hồi đáp đƣợc gửi để xác nhận thành công việc đặt hàng (đƣợc xem thơng tin đầu ra, outputs) Thêm vào đó, thể tín dụng phải đủ tiền để mua hàng địa giao hàng thực tồn đƣợc xem điều kiện tiên để kết hợp dịch vụ (preconditions), trái lại, việc chi trả qua thẻ tín dụng với giá phải việc nhận nhanh chóng xác thức ăn đặt hàng (có thể qua ngƣời giao hàng) điều kiện ngƣời sử dụng dịch vụ W1 (postconditions) Tƣơng tự vậy, dịch vụ web W2 khác cung cấp dịch vụ tƣơng tự cho việc đặt thức ăn Trung Quốc nhà dử dụng domain ontology để đặc tả chức Tuy nhiên, dịch vụ W2 thỏa mãn tiêu chuẩn khác mà ngƣời tiêu dùng đánh giá mức độ quan trọng so với tiêu chí dịch vụ W1 87Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 88 Hình 5.1 Domain ontology dịch vụ giao thức ăn nhà Giờ giả sử có ngƣời tiêu dùng U muốn đặt ăn Trung Quốc từ nhà thơng qua internet (sử dụng đại lý đó) Khó tƣởng tƣợng đƣợc ngƣời tiêu dùng U hiểu đƣợc domain ontology ODeliveryU OChineseFoodU, hai ontology khác so với OHomDelivery Sinh viên thực hiện: Cao Thị Huyền Sa 88Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Lê Hải Đƣờng 89 OChineseFood Trong tình đó, khó cho cửa hàng phục vụ ngƣời dùng U để khám phá dịch vụ đƣợc đề nghị từ danh sách dịch vụ, khái niệm ontology khác ngữ nghĩa Để gỡ rối rối rắm ngữ nghĩa này, ngƣời sử dụng cần cung cấp tiêu chuẩn cụ thể, để hệ thống khai phá dịch vụ chuyển dịch chúng thành khái niệm yêu cầu ngƣời dùng sang khái niệm domain ontology, lựa chọn nhà cung cấp dịch vụ thích hợp phƣơng pháp so khớp Hình 5.2 Domain ontology cho Thức ăn Trung Quốc Ví dụ, ontology miêu tả ngƣời dùng ODeliveryU có khái niệm Food, đƣợc map với khái niệm FoodItem domain ontology OHomeDelivery Tƣơng tự, khái niệm Chicken (trong ODeliveryU) tƣơng thích với Poultry (trong OHomeDelivery) Ngƣời sử dụng định nghĩa việc so khớp chức (procedural mapping) khái niệm khác Do đó, ngƣời sử dụng chọn lọc Customer Service đƣợc đánh giá cao Service Provider Service ứng viên đƣợc khai phá với thứ hạng cao bảng xếp hạng dựa vào vài tiêu chí (nhƣ khoảng cách nhà hàng đến nơi nhận hàng) Tƣơng tự với ngƣời tiêu dùng U‟, với Sinh viên thực hiện: Cao Thị Huyền Sa 89Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Lê Hải Đƣờng 90 ontology khác, đặt hàng Thức ăn Trung Quốc qua internet đƣợc thực thi qua giai đoạn tƣơng tự nhƣ ngƣời dùng U Tóm lại, việc khai phá dịch vụ web ngữ nghĩa gồm có hai bƣớc quan trọng: - Xác định so khớp khái niệm điều kiện user ontology domain ontology (domain ontology đƣợc dùng để mơ tả dịch vụ) - Xác định tiêu chí lựa chọn dịch vụ, tiêu chí đƣợc sử dụng để xếp hạng dịch vụ xác định mức ƣu tiên khác dịch vụ q trình so khớp 5.3 Các tiêu chí đánh giá dịch vụ Trong kịch thực tế, yêu cầu dịch vụ đƣa ra, service provider đƣợc đánh giá dựa vào yêu cầu chức mà dựa vào yêu cầu phi chức Kết là, cần xây dựng hệ thống tiêu chí xếp hạng dịch vụ để yêu cầu dịch vụ dựa vào lựa chọn dịch vụ thích hợp Các tiếp cận tryền thống cho việc xếp hạng kết so khớp để dựa vào DoM yêu cầu dịch vụ khai báo dịch vụ Trong framework đƣợc xây dựng thế, ta sử dụng DoM để phân loại tập hợp candidate service provider dựa vào yêu cầu chức ngƣời dùng Sau đó, với phân loại đƣợc phân ra, ta lựa chọn dịch vụ đáp ứng đƣợc yêu cầu phi chức ngƣời dùng Mặc dù phƣơng pháp có nhiều tiện ích, nhƣng ngƣời gửi yêu cầu phải thêm vào thuộc tính phụ để xác định tiêu chí Và thuộc tính điều kiện trình chọn lọc dịch vụ Để thực đƣợc phƣơng pháp trên, ta phải làm quen với khái niệm ranking attribute ranking function, chúng đƣợc dùng để xếp hạng candidate service provider Một chúng đƣợc xếp hạng, ngƣời sử dụng dễ dàng việc tìm kiếm dịch vụ thích hợp Định nghĩa ranking attribute (thuộc tính dùng để xếp hạng): tập thuộc tính dùng để xếp hạng dịch vụ, RA, bao gồm tất khái niệm quy tắc phân loại phạm vi QoS Quy tắc tƣơng thích với khái niệm user ontology, OU OU nắm bắt yêu cầu phi chức từ user Định nghĩa ranking function (chức xếp hạng): Tập S biểu diễn tập hợp dịch vụ khớp với yêu cầu chức phi chức từ user, x RA thuộc tính xếp hạng, RO {ascending, descending} trình tự Sinh viên thực hiện: Cao Thị Huyền Sa 90Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Lê Hải Đƣờng 91 xếp hạng, fRank(S, x, RO) = S‟ đƣợc gọi chức xếp hạng Công việc chức tạo tập candidate service S‟ đƣợc xếp hạng dựa yêu cầu tiêu chí đƣa 5.4 Q trình lựa chọn dịch vụ Bƣớc quy trình lựa chọn dịch vụ xác định tập hợp Service Providers tham tiếp nhận chức đƣợc yêu cầu Chúng đƣợc gọi Candidate Service Providers (các Service Provider ứng cử) Định nghĩa Candidate Service Providers: Cho tập S = {S1,… Sn} tập dịch vụ có sẵn Gọi S‟⊆ S , tập Candidate Service Providers, chúng thỏa mãn thuộc tính chức ngƣời sử dụng (điều kiện IOPE‟s) Thông thƣờng, vài dịch vụ khớp với tất tham số IOPE, số khác khơng Để phân biệt chúng, ta phân loại chúng dựa vào DoM (đa đƣợc trình bày chƣơng trƣớc) DoM đƣợc phân làm mức: Exact, Plug-in, Subsumption, Intersection, Disjoint Mỗi phân loại phản ánh mức độ khớp Service Provider Các dịch vụ có mức độ DoM Intersection hay Disjoint không khớp với yêu cầu dịch vụ (về mặt chức năng), loại bỏ chúng tập dịch vụ ứng cử để thực tiến trình so khớp Bƣớc thứ hai tiến trình lựa chọn dịch vụ định nghĩa tập dịch vụ ứng cử dựa vào thuộc tính phi chức đƣợc gọi QoS (Quality of Service) Nhƣ phần trƣớc chƣơng đề cập, QoS một thuộc tính phi chức phản ánh chất lƣợng Web Service Bởi dịch vụ web đƣợc phân phối tự động cách rộng khắp thơng qua phía thứ internet, QoS chúng đa dạng Do đó, thiết phải xây dựng hệ thống am hiểu QoS đƣợc cung cấp Service Provider dựa vào Serrvice Request để thúc đẩy trình khai phá dịch vụ web trở nên hiệu Tuy nhiên, mặt khác QoS quan trọng ứng dụng lớp dịch vụ khác sử dụng tập thuộc tính phi chức khác để mơ tả thuộc tính QoS dúng Ví dụ, đơn vị bit per second (bps) tiêu chí quan trọng QoS cho dịch vụ đƣợc cung cấp online phục vụ giải trí, nhƣng ngƣợc lại, chúng lại khơng quan trọng độ bảo mật dịch vụ đƣợc cung cấp cho ngân hàng trực tuyến Kết là, ta phải phân loại chúng thành: domain dependent domain independent attributes Hình 5.3 biểu diễn nguyên tắc phân loại thuộc tính QoS dịch vụ giao thức ăn nhà nhà hàng: 91Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 92 Hình 5.3 Một ví dụ ngun tắc phân loại QoS Domain-independent attribute (các thuộc tính độc lập phạm vi) đặc tính khơng xác định QoS dịch vụ riêng lẻ Ví dụ, Scalability, Availability,… Mặc khác, Domain-dependent attribute (các thuộc tính phụ thuộc phạm vi) đặc tính xác định QoS dịch vụ xác định Ví dụ, đặc tính Overall RestaurantRating, PresentationDecor,… xác định QoS dịch vụ nhà hàng Kết là, nguyên tắc phân loại tổng thể QoS đƣợc xem mềm dẻo hợp lý Tuy nhiên, vài trƣờng hợp định, user sử dụng vài thuộc tính phi chức cụ thể thỏa mãn mục đích riêng để đánh giá chất lƣợng dịch vụ, thay tất thuộc tính phi chức nguyên tắc phân loại QoS Chúng ta sử dụng thuộc tính để tạo quality vector (vector chất lƣợng) bao gồm giá trị cho dịch vụ ứng viên Những quality vector đƣợc sử dụng để tạo quality matrix, Q Định nghĩa Quality matrix (ma trận chất lƣợng): Một quality matrix, Q = {V(Qij); ≤ i ≤ m; ≤ j ≤ n}, mà tập giá trị quality attribute tập hợp candidate service, hàng ma trận diễn tả giá trị QoS Sinh viên thực hiện: Cao Thị Huyền Sa 92Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Lê Hải Đƣờng 93 cụ thể (tiêu chí mà user sử dụng) cột trình bày candidate service Nói cách khác, V(Qij) trình bày giá trị thuộc tính QoS thứ I cho candidate service thứ j Chƣơng 6: KẾT LUẬN 6.1 Tổng kết Đề tài tập trung nghiên cứu khái niệm công nghệ lĩnh vực liên quan đến tiến trình khai phá dịch vụ web ngữ nghĩa Qua đó, phát triển 93Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 94 framework phục vụ tiến trình với việc trọng vào yêu cầu phi chức ngƣời dùng cụ thể, nhằm đƣa đến lựa chọn đối ƣu đáp ứng nhu cầu lựa chọn số dịch vụ web có Ở phần trình bày kiến thức sở lý thuyết đề tài, tác giả tham khảo từ nhiều nguồn sách lẫn internet để tìm hiểu thật sâu đƣa nhìn dễ hiểu tồn diện khái niệm nói mẻ nay: mơ hình kiến trúc hƣớng dịch vụ (SOA), dịch vụ web web ngữ nghĩa, tảng lô gic mô tả (description logic) xây dựng nên ontology, ontology khái niệm liên quan, ngơn ngữ cơng cụ hỗ trợ q trình khai phá dịch vụ web ngữ nghĩa Ở phần đề tài, tác giả trình bày khái niệm việc xây dựng giải thuật phục vụ trình khai phá dịch vụ web ngữ nghĩa 6.2 Những đóng góp đề tài Đề tài trƣớc mắt tài liệu sử dụng cho tham khảo lĩnh vực SOA, ontology, web ngữ nghĩa 6.3 Hƣớng phát triển Hƣớng phát triển đề tài xây dựng nên framework phục vụ trình khai phá dịch vụ web ngữ nghĩa (Semantic web service discovery) Framework nhằm hƣớng đến việc chọn lọc dịch vụ web ngữ nghĩa đáp ứng hai yêu cầu chức yêu cầu phi chức ngƣời sử dụng Hiện tại, đề tài có nhiều hƣớng phát triển để hồn thiện: - Hƣớng phát triển công cụ khai phá dịch vụ web ngữ nghĩa với framework đƣợc xây dựng Cũng giống nhƣ cơng cụ đƣợc phân tích chƣơng đầu, công cụ đƣợc xây dựng dựa vào hƣớng tiếp cận có, phát triển theo hƣớng đáp ứng đƣợc nhu cầu framework đƣa - Xây dựng tiêu chí hồn thiện để phục vụ nhu cầu tìm kiếm phong phú dịch vụ web Việc phát triển để tài theo hƣớng này, dễ dàng xây dựng cơng cụ hữu ích thiết thực, dễ dàng phân loại chất lƣợng dịch vụ web ngữ nghĩa - Cụ thể hóa xây dựng giải thuật dựa framework với loại dịch vụ khác nhau: single service, compose service 94Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 95 DANH MỤC TÀI LIỆU THAM KHẢO Tiếng Việt: Nghiên cứu kiến trúc hướng dịch vụ (SOA) ứng dụng, Hồ Bảo Thanh, Nguyễn Hoàng Long, Đại Học Khoa Học Tự Nhiên (Đại Học Quốc Gia TP HCM) Khai phá kết hợp tối ưu dịch vụ web thiết kế workflow với SOA, Nguyễn Viết Han, Đại Học Bách Khoa (Đại Học Quốc Gia TP HCM) 95Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 96 Nghiên cứu, tìm hiểu xây dựng ứng dụng với Semantic Web, Nguyễn Thúc Duy Anh, Nguyễn Thị Khánh Hòa, Khoa Cơng Nghệ Thơng Tin, Đại Học Khoa Học Tự Nhiên (Đại Học Quốc Gia TP HCM) Phương pháp đối sánh Ontology cho tốn tích hợp doanh nghiệp, Nguyễn Mậu Quốc Hoàng, Đại Học Khoa Học, Đại Học Huế, Hoàng Hữu Hạnh, Đại Học Huế Tổng quan Ontology – Kỹ Thuật Lập Trình Trí Tuệ Nhân Tạo, Nguyễn Hữu Nhật, lớp CNTN02, TS Nguyễn Tuấn Đăng, Khoa Khoa Học Máy Tính, trƣờng Đại Học Công Nghệ Thông Tin (Đại Học Quốc Gia TP HCM) Kiến trúc hướng dịch vụ ứng dụng(Service-Oriented-Architecture, Nguyễn Thị Dung, ThS Nguyễn Hồng Tân, Khoa Công Nghệ Thông Tin, Đại Học Thái Nguyên Wikipedia.com Tiếng Anh: Web Service Discovery – A Reality Check, Daniel Bachlechner, Holger Lausen, Katharia Siorpaes, Dieter Fensel (Digital Enterprise Research Institute, Innsbruck Austria) Semantic Web Service Discovery in the WEMO Framework, Uwe Keller, Ruben Lara, Holger Lausen, Dieter Fensel (Digital Enterprise Research Institute, Innsbruck Austria) 10 Web Service Workbench – A service Composition Editing Suite, Keith Lia, Department of Computer Science and Artificial Intelligence, University of Malta Msida MSD 2080 Malta 11 Automatic Mapping of OWL Oontologies into Jave, Aditya Kalyanpur, Dainel Jimenez, Steve Battle, Julian Padget 12 Tools and Technologies for Semantic Web Services: An OWL-S Perspective, Katia Sycara, Agents and Web Technologies Lab, Carnegie Mellon University 13 Semantic Matchmaking Algorithms, Umesh Bellur, Harin Vadodaria and Amit Gupta 14 Semantic Web Service, Sheila A Mcllaith, Tran Cao Son, and Honglei Zeng, Standford University 15 Semantic Web Service, Dr.Harold, Boley, NRC-IIT Fredricton Internet Logic, ICEC 2006 Tutorial, 13 August 3006 16 Semantic Matchingmaking Services Model for the intelligent Web Services, Okkyung Choi, Sangyong Han, Ajith Abraham, Department of Computer Science 96Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng 97 and Engineering, Chungang University, 221, Huksuk-dong, Dongjak-ku Seoul, 156-756, Korea 17 Semantic Web Service Discovery in the OWL-S IDE, Naveen Srinivasan, Massimo Paolucci, Katia Sycara 18 Developer’s guide to the semantic web, Liyang Yu, Delta Air Lines, Inc., Delta Blvd, 1030, Arlanta, GA 30354, USA 19 Semantic Web Service Discovery, WSMX Working Draft – October 3, 2005, Uwe Keller, Ruben Lara, Holger Lausen, Axel Pollers, Livia Predoiu, Ioan Toma 20 Description Logics Approach to Semantic Matching of Web Service, S.Colucci, T.Di Noia, E.Di Sciascio, F.M Donini, M Mongiello 21 How to make the Semantic Web more semantic, Peter GÄRDENFORS, Lund University Cognitive Science, Kungshuset, S-222 222 Lund, Sweden 22 A Three Phase Semantic Web Matchmaker, Golsa Heidary, Kamran Zamanifar, Naser Nematbakhsh 23 Semantic Matchmaking Algorithms, Umesh Bellur, Harin Vadodaria and Amit Gupta 24 Automated Semantic Web Service Discovery with OWLS-MX, Matthias Klusch, Benedikt Fries, Katia Sycara 25 Semantic Web Service Architecture – Evolving Web Service Standards toward the Semantic Web, Tanja Sollazzo, Siegfried Handschuh, Steffen, Staab, Martin frank 26 Semantic Matching of Web Service Capabilities, Massimo Paolucci, Takahiro Kawamura, Terry R.Payne, Katia Sycara 27 Matching model for semantic web Services Discovery, Alireza Zohali, Dept of Computer Engineering, Sama Technical &Vocational Training School, Khorasgan Branch, Isfahan,Iran , Dr.Kamran Zamanifar, Assoc Prof, Dept of Computer Engineering, Faculty of Engineering, University of Isfahan, Isfahan, Iran 97Giảng viên hƣớng dẫn: PGS TS Vũ Thanh Nguyên ThS Nguyễn Đăng Khoa Sinh viên thực hiện: Cao Thị Huyền Sa Lê Hải Đƣờng ... niệm web ngữ nghĩa, mơ hình kiến trúc hƣớng dịch vụ SOA, trình kết hợp tối ƣu dịch vụ web ngữ nghĩa, giải thuật, công cụ phục vụ việc kết hợp tối ƣu dịch vụ web q trình thiết kế workflow Với cơng... thiệu web ngữ nghĩa (công nghệ, kiến trúc, ngôn ngữ ) khái niệm cao nhƣ: dịch vụ web ngữ nghĩa, web service annotation ontology - Chƣơng 4: Các kiến thức trình khai phá dịch vụ web ngữ nghĩa: giới... lĩnh vực web ngữ nghĩa việc sử dụng ontology matching để phối hợp tối ƣu dịch vụ web ngữ nghĩa, phục vụ cho việc tái sử dụng tài nguyên sẵn có môi trƣờng web ngữ nghĩa việc xây dựng website theo

Ngày đăng: 23/12/2018, 06:15

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan