Đặt vấn đề về ý nghĩa, tính cấp thiết và tính thực tế của đề tài. CHƢƠNG 1: CÔNG NGHỆ DỊCH VỤ WEB Chƣơng này trình bày về kiến trúc hƣớng dịch vụ SOA, tập trung vào tìm hiểu công nghệ Web service, các thành phần kiến trúc của Web Service cũng nhƣ các lợi ích khi sử dụng công nghệ này. Sau đó đi sâu tìm hiểu mô hình và các chuẩn công nghệ áp dụng trong vòng đời của dịch vụ Web, từ bƣớc phát triển cho đến bƣớc xuất bản, sẵn sàng cung cấp dịch vụ. CHƢƠNG 2: MÔ HÌNH CHẤT LƢỢNG DỊCH VỤ WEB VÀ ĐO LƢỜNG CÁC YẾU TỐ CHẤT LƢỢNG Chƣơng này trình bày mô hình chất lƣợng dịch vụ Web (WSQM) do tổ chức OASIS [8] đƣa ra, đây là mô hình chất lƣợng dịch vụ đang đƣợc sử dụng phổ biến nhất hiện nay trên thế giới và là tài liệu cực kỳ hữu ích cho những ai quan tâm đến vấn đề chất lƣợng web service (ngƣời phát triển, ngƣời sử dụng, ngƣời giám sát và ngƣời LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 12 quản trị chất lƣợng dịch vụ.) cũng nhƣ là tài liệu quý giá cho những ai muốn phát triển các công cụ đo và giám sát chất lƣợng Web Service vì WSQM là tài liệu toàn diện và có hệ thống về chất lƣợng dịch vụ web từ nhiều khung nhìn khác nhau mà đƣợc sử dụng bởi các bên liên quan mật thiết.
CHƢƠNG 3: TỔNG QUAN VỀ CHUẨN IMS QTI Chƣơng này trình bày tổng quan về chuẩn IMS QTI, lợi ích của việc sử dụng chuẩn IMS QTI, đi sâu vào phân tích các đối tƣợng cơ bản trong chuẩn IMS QTI và cấu trúc của AssessmentItem (Câu hỏi), Assessment (bài kiểm tra),. là những nội dung kiến thức quan trọng cần hiểu rõ khi muốn xây dựng hệ thống sát hạch trắc nghiệm theo chuẩn IMS QTI. CHƢƠNG 4: XÂY DỰNG MỘT SỐ DỊCH VỤ WEB TRONG HỆ THỐNG SÁT HẠCH TRẮC NGHIỆM THEO CHUẨN QTI VÀ ĐO ĐẠC THÔNG SỐ CHẤT LƢỢNG Chƣơng này trình bày việc xây dựng một số dịch vụ web có thể sử dụng trong hệ thống sát hạch trắc nghiệm bằng máy tính theo chuẩn IMS QTI và với mục tiêu nâng cao hiệu năng hệ thống tổng thể, chúng tôi sẽ thử nghiệm việc áp dụng mô hình chất lƣợng dịch vụ web, đo lƣờng tham số, đánh giá chất lƣợng dịch vụ cho một số dịch vụ đã tạo ra bằng công cụ soapUI. Phần kết luận, tóm tắt các kết quả đã đạt đƣợc và gợi mở những hƣớng nghiên cứu tiếp theo.
LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 13 CHƢƠNG 1: CÔNG NGHỆ WEB SERVICE Chương này bắt đầu bằng việc trình bày về kiến trúc hướng dịch vụ SOA, tập trung vào tìm hiểu công nghệ Web service, các thành phần kiến trúc của Web Service cũng như các lợi ích khi sử dụng công nghệ này. Sau đó đi sâu tìm hiểu mô hình và các chuẩn công nghệ áp dụng trong vòng đời của dịch vụ Web, từ bước phát triển cho đến bước xuất bản, sẵn sàng cung cấp dịch vụ.1 Kiến trúc hƣớng dịch vụ SOA 1.1 Khái niệm kiến trúc hƣớng dịch vụ SOA SOA - viết tắt của thuật ngữ Service Oriented Architecture (kiến trúc hƣớng dịch vụ) là “Khái niệm về hệ thống trong đó mỗi ứng dụng đƣợc xem nhƣ một nguồn cung cấp dịch vụ” [10]. Dịch vụ là yếu tố then chốt trong SOA. Có thể hiểu dịch vụ nhƣ là hàm chức năng (module phần mềm) thực hiện quy trình nghiệp vụ nào đó, một cách cơ bản, SOA là tập hợp các dịch vụ kết nối mềm dẻo với nhau (nghĩa là một ứng dụng có thể nói chuyện với một ứng dụng khác mà không cần biết các chi tiết kĩ thuật bên trong), có giao tiếp (dùng để gọi hàm dịch vụ) đƣợc định nghĩa rõ ràng và độc lập với nền tảng hệ thống, và có thể tái sử dụng.
SOA là cấp độ cao hơn của phát triển ứng dụng, chú trọng đến quy trình nghiệp vụ và dùng giao tiếp chuẩn để giúp che đi sự phức tạp của kĩ thuật bên dƣới. Thiết kế SOA tách riêng phần thực hiện dịch vụ (phần mềm) với giao tiếp gọi dịch vụ. Điều này tạo nên một giao tiếp nhất quán cho ứng dụng khách sử dụng dịch vụ bất chấp công nghệ thực hiện dịch vụ. Thay vì xây dựng các ứng dụng đơn lẻ và đồ sộ, nhà phát triển sẽ xây dựng các dịch vụ có tính linh hoạt có thể triển khai và tái sử dụng trong toàn bộ quy trình nghiệp vụ.
Điều này cho phép tái sử dụng phần mềm tốt hơn, cũng nhƣ tăng sự linh hoạt vì nhà phát triển có thể cải tiến dịch vụ mà không làm ảnh hƣởng đến khách hàng sử dụng dịch vụ. Thực ra khái niệm SOA không hoàn toàn mới. DCOM và CORBA cũng có kiến trúc tƣơng tự. Tuy nhiên các kiến trúc cũ ràng buộc các thành phần với nhau quá chặt, ví dụ các ứng dụng phân tán muốn làm việc với nhau phải đạt đuợc thoả thuận về chi tiết tập hàm API, một thay đổi mã lệnh trong thành phần COM sẽ yêu cầu những thay đổi tƣơng ứng đối với mã lệnh truy cập thành phần COM này.
Ƣu điểm quan trọng nhất của SOA là khả năng kết nối mềm dẻo (nhờ sự chuẩn hoá giao tiếp) và tái sử dụng. Các dịch vụ có thể đƣợc sử dụng với trình khách chạy trên nền tảng bất kì và đƣợc viết bởi ngôn ngữ bất kì. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.2 Nguyên tắc thiết kế của SOA SOA dựa trên hai nguyên tắc thiết kế quan trọng [9]: Mô-đun: đó là tách các vấn đề lớn thành nhiều vấn đề nhỏ hơn. Đóng gói: che đi dữ liệu và lô-gic trong từng mô-đun đối với các truy cập từ bên ngoài.
Hai tính chất này sẽ dẫn đến đặc điểm thiết kế của kiến trúc SOA đó là các dịch vụ tƣơng tác với nhau qua các thành phần giao tiếp. Tuy nhiên các dịch vụ đó vẫn hoạt động độc lập với nhau, chia sẻ các lƣợc đồ dữ liệu cho nhau và tuân thủ các chính sách của kiến trúc chung nhất.2 Công nghệ Web Service 1.1 Khái niệm dịch vụ Web Web Service là một giao diện truy cập mạng đến các ứng dụng chức năng, đƣợc xây dựng từ việc sử dụng các công nghệ chuẩn Internet [7]. Đƣợc minh hoạ trong hình dƣới đây. 1: Web Service cho phép truy cập tới các code ứng dụng 1.2 Đặc điểm của Web Service Web Service cho phép các ứng dụng khác nhau từ các nguồn khác nhau có thể giao tiếp với các ứng dụng khác mà không đòi hỏi nhiều thời gian viết mã.
Do tất cả các quá trình giao tiếp đều tuân theo định dạng XML, cho nên dịch vụ Web không bị phụ thuộc vào bất kì hệ điều hành hay ngôn ngữ lập trình nào. Web Service cho phép phía khách và phía chủ có thể tƣơng tác đƣợc với nhau trên các nền tảng khác nhau mà không cần bất cứ thay đổi hay yêu cầu đặc biệt nào. Ví dụ, chƣơng trình viết bằng ngôn ngữ Java cũng có thể trao đổi dữ liệu với các chƣơng trình viết bằng Perl; các ứng dụng chạy trên nền Windows cũng có thể trao đổi dữ liệu với các ứng dụng chạy trên nền Linux. Công nghệ dịch vụ Web không yêu cầu phải sử dụng trình duyệt và ngôn ngữ HTML, đôi khi Web Service còn đƣợc gọi là Application Services.
Phần lớn kỹ thuật của Web Service đƣợc xây dựng trên mã nguồn mở và đƣợc phát triển từ các chuẩn đã đƣợc công nhận. Nó tích hợp các ứng dụng trên nền web lại với nhau bằng cách sử dụng các công nghệ XML, SOAP, WSDL và UDDI trên nền tảng các giao thức Internet với mục tiêu tích hợp ứng dụng và truyền thông điệp. XML đƣợc sử dụng để đánh dấu dữ liệu; SOAP đƣợc dùng để truyền dữ liệu; WSDL đƣợc sử dụng để mô tả các dịch vụ có sẵn và UDDI đƣợc sử dụng để liệt kê những dịch vụ nào hiện tại đang có sẵn để có thể sử dụng. Web Service cho phép các tổ chức có thể LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 15 trao đổi dữ liệu với nhau mà không cần phải có kiến thức hiểu biết về hệ thống thông tin đứng ở phía sau các tƣờng lửa [7].
Web Service có thể gồm nhiều mô đun và đƣợc công bố trên Internet. Nó là sự kết hợp của việc phát triển hƣớng thành phần với những lĩnh vực cụ thể và cở sở hạ tầng Web, mang lại lợi ích cho cả doanh nghiệp, khách hàng, những nhà cung cấp dịch vụ khác cũng nhƣ các cá nhân thông qua mạng Internet. Web Service khi đƣợc triển khai sẽ hoạt động theo mô hình khách-chủ. Nó có thể đƣợc triển khai bởi một phần mềm ứng dụng phía máy chủ nhƣ PHP, JSP, ASP.NET, … Không giống nhƣ mô hình khách-chủ truyền thống, chẳng hạn nhƣ hệ thống máy chủ Web – trang web, Web Service không cung cấp cho ngƣời dùng một giao diện đồ hoạ nào.
Web Service đơn thuần chỉ là việc chia sẻ các dữ liệu và logic xử lý các dữ liệu đó thông qua một giao diện chƣơng trình ứng dụng đƣợc cài đặt xuyên suốt trên mạng máy tính. Tuy nhiên nguời phát triển Web Service hoàn toàn có thể đƣa Web Service vào một giao diện đồ hoạ ngƣời dùng (chẳng hạn nhƣ là một trang web hoặc một chƣơng trình thực thi nào đó) để có thể cung cấp thêm các chức năng đặc biệt cho ngƣời dùng.2 đã minh họa, Web Service là một giao diện ứng dụng đƣợc đặt giữa mã lệnh của ứng dụng và ngƣời sử dụng các mã lệnh đó. Nó có thể đƣợc ví nhƣ một tầng trừu tƣợng, phân tách giữa nền tảng hệ thống và ngôn ngữ lập trình. Nó mô tả cách thức mà các mã lệnh ứng dụng đƣợc triệu gọi nhƣ thế nào.
Điều này có nghĩa nếu bất kì một ngôn ngữ lập trình nào hỗ trợ Web Service đều có thể truy cập các chức năng ứng dụng của nhau. 2 Web Service cung cấp một tầng trừu tƣợng giữa ứng dụng client và ứng dụng cần gọi tới Tính tƣơng thích (Inteoperability) là một lợi thế vô cùng mạnh mẽ của dịch vụ Web. Thông thƣờng, các công nghệ Java và công nghệ của Microsoft rất khó có thể tích hợp đƣợc với nhau, nhƣng với dịch vụ Web thì các ứng dụng và trình khách sử dụng 2 công nghệ trên hoàn toàn có khả năng tƣơng tác với nhau thông qua dịch vụ Web. Nhiều nhà cung cấp ứng dụng nhƣ IBM và Microsoft đều đã hỗ trợ dịch vụ Web trong các sản phẩm của họ.
IBM hỗ trợ dịch vụ Web thông qua gói WebSphere, Tivoli, Lotus và DB2 và Microsoft cũng đã hỗ trợ dịch vụ Web với .