1. Trang chủ
  2. » Luận Văn - Báo Cáo

kiểm tra sự tinh chế hai mô hình có áp dụng mẫu thiết kế

58 262 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 58
Dung lượng 1,58 MB

Nội dung

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ Vũ Văn Thế KIỂM TRA SỰ TINH CHẾ HAI HÌNH ÁP DỤNG MẪU THIẾT KẾ KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công Nghệ Thông Tin HÀ NỘI - 2010 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ Vũ Văn Thế KIỂM TRA SỰ TINH CHẾ HAI HÌNHÁP DỤNG MẪU THIẾT KẾ KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công Nghệ Thông Tin Cán bộ hƣớng dẫn: ThS. Vũ Diệu Hƣơng Cán bộ đồng hƣớng dẫn: TS. Trƣơng Ninh Thuận HÀ NỘI - 2010 LỜI CẢM ƠN Sau hơn 5 tháng tìm hiểu và thực hiện, khóa luận “Kiểm tra sự tinh chế hai hình áp dụng mẫu thiết kế” đã hoàn thành. Để đạt được kết quả này, chúng tôi đã nỗ lực hết sức đồng thời cũng nhận được rất nhiều sự quan tâm, giúp đỡ, ủng hộ của các thầy cô, bạn bè và gia đình. Trước hết, chúng em xin gửi lời cảm ơn chân thành đến bộ môn Công nghệ phần mềm khoa Công nghệ Thông tin trường Đại học Công nghệ - Đại học Quốc gia Hà Nội và các thầy đặc biệt là Vũ Diệu Hương, thầy Trương Ninh Thuận và thầy Đặng Việt Dũng đã tận tình giúp đỡ, hướng dẫn chúng em hoàn thành khóa luận này. Chúng tôi rất cảm ơn các bạn bè, các anh chị trong khoa đã bên cạnh ủng hộ, đóng góp ý kiến cho chúng tôi trong quá trình thực hiện khóa luận. Và chúng con cũng xin chân thành cảm ơn gia đình đã luôn động viên, tạo điều kiện tốt nhất cho chúng con học tập và hoàn thành khóa luận. Khóa luận đã hoàn thành với một số kết quả nhất định, tuy nhiên vẫn không tránh khỏi sai sót. Kính mong sự cảm thông và đóng góp ý kiến từ các thầy và các bạn. Hà Nội, tháng 5 năm 2010 Vũ Văn Thế Tóm tắt Nội dung chính của bài khóa luận “Kiểm tra sự tinh chế hai hình áp dụng mẫu thiết kế” thể được trình bày ngắn gọn qua các vấn đề sau: - Tìm hiểu về khái niệm và vai trò của Mẫu thiết kế (design pattern) nói chung và mẫu thiết kế hợp nhất nói chúng cũng như việc áp dụng mẫu thiết kế hợp nhất (union design pattern) - Thực hiện chuyển biểu đồ lớp UML sang dạng đặc tả OWL Ontology trên sở lý thuyết bài khóa luận của sinh viên Giáp Thị Ngọc Thúy đã thực hiện. - Tìm hiểu một số công cụ đã hỗ trợ việc so sánh hai OWL Ontology, phân tích những ưu nhược điểm của chúng. - Tìm kiếm giải pháp cho việc truy vấn OWL Ontology từ ngôn ngữ lập trình Java đồng thời viết những luật Prolog kiểm tra sự tương đương của hai phiên bản của một biểu đồ lớp trước và sau khi áp dụng mẫu thiết kế hợp nhất. - Thiết kế và cài đặt công cụ hỗ trợ so sánh hai OWL Ontology hay hai phiên bản của một biểu đồ lớp trước và sau khi áp dụng mẫu hợp nhất thông qua những luật Prolog. Mục lục MỞ ĐẦU 1 CHƢƠNG 1: GIỚI THIỆU VỀ MẪU THIẾT KẾ 2 1.1. Vai trò của mẫu thiết kế 2 1.2. Mẫu thiết kế hợp nhất (Union Design Pattern) 3 CHƢƠNG 2: OWL ONTOLOGY VÀ PROLOG 5 2.1. OWL Ontology 5 2.1. Prolog 6 2.1.1. Giới thiệu ngôn ngữ Prolog 6 2.1.1.1. Prolog là ngôn ngữ lập trình logic. 6 2.1.1.2. Cú pháp Prolog 6 2.1.2. Sự kiện và Luật trong Prolog 7 2.2.2.1. Xây dựng sự kiện 7 2.2.2.2. Xây dựng luật 8 CHƢƠNG 3. KIỂM TRA SỰ TINH CHẾ HAI HÌNH ÁP DỤNG MẪU THIẾT KẾ 9 3.1. Chuyển biểu đồ lớp trong UML sang OWL Ontology 9 3.2. Thực hiện so sánh hai OWL Ontology 10 3.2.1. Protégé 10 3.2.2. OwlDiff 11 3.2.3. Giải pháp thực hiện so sánh hai OWL Ontology 13 CHƢƠNG 4: XÂY DỰNG CÔNG CỤ 15 4.1. Phân tích yêu cầu 15 4.1.1. Biểu đồ lớp trong UML 17 4.1.2. Biểu đồ lớp đặc tả dưới dạng OWL Ontology 21 4.1.3. Yêu cầu hệ thống 22 4.1.3.1. Yêu cầu chức năng 22 4.1.3.2. Yêu cầu về mặt giao diện 24 4.2. Pha phân tích 25 4.2.1. Biểu đồ UseCase tổng quát 25 4.2.2. Kịch bản cho các ca sử dụng 25 4.2.3. Xây dựng biểu đồ lớp phân tích 27 4.3. Pha thiết kế 28 4.3.1. Biểu đồ tuần tự 28 4.2.2.1. Biểu đồ tuần tự của ca sử dụng “Import OWL Ontology” 28 4.2.2.2. Biểu đồ tuần tự của ca sử dụng “Compare two OWL Ontology” 28 4.3.2. Biểu đồ lớp chi tiết 29 4.3.3. Thiết kế riêng từng chức năng 30 4.2.2.3. Chức năng “Import OWL Ontology” 30 4.2.2.4. Chức năng “Compare two OWL Ontology” 30 4.3.4. Thiết kế giao diện người dùng 31 4.4. Cài đặt và kiểm thử 32 4.4.1. Cài đặt 32 4.4.1.1. Môi trường thực hiện và những phần mềm, thư viện liên quan 32 4.4.1.2. Truy vấn Owl Ontology 33 4.4.1.3. Kiểm tra hai hình bằng các luật Prolog 37 4.4.2. Một số trường hợp kiểm thử 41 CHƢƠNG 5: TỔNG KẾT 47 5.1. Tổng kết quá trình thực hiện và kết quả đặt được 47 5.1.1. Về mặt khảo sát, lựa chọn phương án và phân tích thiết kế 47 5.1.2. Về mặt cài đặt và kiểm thử 47 5.2. Hướng phát triển 48 DANH SÁCH CÁC BẢNG BIỂU Bang 1: tả các lớp trong OWL Ontology đặc tả biểu đồ lớp trong UML 22 Bang 2: Kịch bản ca sử dụng “Import OWL Ontology” 25 Bang 3: Kịch bản ca sử dụng “Compare two OWL Ontology” 26 DANH SÁCH CÁC HÌNH VẼ Hinh 1 Biểu đồ lớp cho mẫu thiết kế hợp nhất 3 Hinh 2: Các kiểu dữ liệu trong Prolog 7 Hinh 3: Kết quả so sánh hai phiên bản của một OWL Ontology với Protégé 10 Hinh 4: Kết quả quá trinh so sánh hai OWL Ontology với OWLDiff 13 Hinh 5: Biểu đồ lớp trước khi áp dụng mẫu hợp nhất 15 Hinh 6: Biểu đồ lớp sau khi áp dụng mẫu hợp nhất 15 Hinh 7: Kết quả của việc không tìm ra lớp cha trừu tượng của các lớp con 16 Hinh 8: Kết quả của việc không xác định đầy đủ các phương thức cụ thể 16 Hinh 9: Kết quả của việc không xác định đầy đủ các phương thức 17 Hinh 10: Quan hệ kết hợp 20 Hinh 11: Quan hệ khai quát hóa 20 Hinh 12: Quan hệ cộng hợp 20 Hinh 13: Quan hệ hợp thành 21 Hinh 14: Quan hệ thực thi 21 Hinh 15: Quan hệ phụ thuộc 21 Hinh 16: Biểu đồ UseCase tổng thể 25 Hinh 17: Biểu đồ lớp phân tích 27 Hinh 18: BIểu đồ tuần tự ca sử dụng “Import OWL Ontology” 28 Hinh 19: Biểu đồ tuần tự ca sử dụng “Compare two OWL Ontology” 28 Hinh 20: Biểu đồ lớp chi tiết 29 Hinh 21: Thiết kế chức năng “Import OWL Ontology” 30 Hinh 22: Thiết kế chức năng “Compare two OWL Ontology” 30 Hinh 23: Giao diện chính của chương trình khi bắt đầu chạy 31 Hinh 24: Giao diện của chương trình với kết quả của quá trình kiểm tra 32 DANH SÁCH CÁC TỪ VIẾT TẮT STT Từ viết tắt Diễn giải 1 UML Unified Modeling Language 2 OWL Web Ontology Language 3 Prolog Programing in Logic 1 MỞ ĐẦU OWL (Web Ontology Language) là ngôn ngữ để phát triển Ontology. Các Ontology được thể hiện bằng ngôn ngữ OWL ưu điểm là dễ mở rộng, thể chia sẻ qua Internet, hỗ trợ khả năng suy luận bằng cách thực hiện truy vấn các thông tin trong Ontology. Một số công cụ hỗ trợ so sánh các Ontology đã được phát triển như là Protégé, OWLDiff. Các công cụ này thực hiện các chức năng như so sánh sự giống và khác nhau của hai OWL ontology, hòa trộn hai OWL Ontology. Trong công nghệ phần mềm, mẫu thiết kế được sử dụng để cải tiến thiết kế do giải pháp mẫu cung cấp mang đến một kiến trúc hệ thống tốt hơn nếu chúng ta thực hiện đúng đắn việc tích hợp giải pháp mẫu vào hình thiết kế ban đầu. Trong thực tế thì nhiều trường hợp thực hiện sai việc tích hợp này. Do đó một vấn đề đặt ra là cần kiểm tra hình thu được sau khi áp dụng mẫu thoả mãn các tính chất cấu trúc của giải pháp mẫu hay không. Cụ thể, khi chúng ta một hình thiết kế ban đầu, một mẫu thiết kế được sử dụng để cái tiến hình thiết kế này và một hình thiết kế mới, làm thế nào để kiểm tra xem hình thiết kế mới thoả mãn các tính chất cấu trúc của mẫu thiết kế hay không, hay việc áp dụng mẫu ở đây đúng đắn hay không. Trong khoá luận của sinh viên Giáp Thị Ngọc Thuý đã đề xuất quy trình chuyển đặc tả UML sang đặc tả OWL. Khoá luận này tập trung để tìm hiểu khả năng của các công cụ sẵn hỗ trợ so sánh các đặc tả OWL và tiến hành xây dựng thử nghiệm công cụ hỗ trợ kiểm tra sự tinh chế thiết kế hai hình áp dụng mẫu thiết kế trong tiến trình phát triển hướng đối tượng. Khoá luận sẽ giới thiệu về mẫu thiết kế, minh hoạ một số trường hợp áp dụng sai cấu trúc giải pháp của mẫu thiết kế và trình bày các kết quả phân tích, thiết kế, cài đặt thử nghiệm công cụ thực hiện kiểm tra tự động kết quả tích hợp mẫu. Kết cấu của Khoá luận này bao gồm x chương. Chương 1 giới thiệu về Mẫu thiết kế, Chương 2 trình bày OWL Ontology và Prolog, Chương 3 trình bày về Kiểm tra sự tinh chế hai hình áp dụng mẫu thiết kế, Chương 4 trình bày về việc xây dựng công cụ kiểm tra sự tinh chế hai hình áp dụng mẫu thiết kế, và cuối cùng là Chương 5 sẽ tổng hợp kết quả làm được và hướng phát triển của bài Khóa luận. [...]... CHƯƠNG 3 KIỂM TRA KẾT QUẢ ÁP DỤNG MẪU THIẾT KẾ Sau một thời gian tìm hiểu, cùng với sự giúp đỡ nhiệt tình của các thầy, hướng dẫn chúng tôi đã tìm ra và xin đề xuất một giải pháp hỗ trợ việc kiểm tra sự tinh chế haihìnháp dụng mẫu thiết kế Giải pháp mà chúng tôi lựa chọn được thực hiện thông qua những bước sau đây:  Chuyển biểu đồ lớp trong UML sang OWL Ontology  Thực hiện so sánh hai OWL... cho việc kiểm tra sự tinh chế haihìnháp dụng mẫu thiết kế thông qua việc so sánh hai OWL Ontology Mục tiêu của chương trình là phát huy những ưu điểm cũng như khắc phục những yếu điểm mà những chương trình trước đã 4.1 Phân tích yêu cầu Vai trò của UML trong thiết kế phần mềm là không thể hoài nghi, những mẫu thiết kế nói chung và mẫu thiết kế hợp nhất nói riêng cũng là những giải pháp vô cùng... ngữ mô hình hóa Một bản tả của mẫu thiết kế cần những vấn đề chính sau: 1 Vấn đề điều kiện áp dụng mẫu thiết kế Nó giải thích rõ hơn về bài toán và ngữ cảnh của nó Nó bao gồm một danh sách những điều kiện phải được thỏa mãn trước khi nó được áp dụng mẫu thiết kế Bài toán được biểu diễn qua phần mục đích và tính khả dụng trong tài liệu mẫu thiết kế 2 Vấn đề tả những thành phần tạo lên bản thiết. .. những giải pháp vô cùng hữu ích và cần thiết trong việc thiết kế, tối ưu hóa những mô hình UML Sau đây là một ví dụ về một biểu đồ lớp trước khi áp dụng và sau khi áp dụng mẫu thiết kế hợp nhất Hinh 5: Biểu đồ lớp trước khi áp dụng mẫu hợp nhất Hinh 6: Biểu đồ lớp sau khi áp dụng mẫu hợp nhất 15 Tuy nhiên việc thực hiện tối ưu hóa biểu đồ lớp sử dụng mẫu thiết kế hợp nhất được thực hiện tự động hay...CHƯƠNG 1: GIỚI THIỆU VỀ MẪU THIẾT KẾ Trong công nghệ phần mềm, một mẫu thiết kế là một giải pháp tổng thể cho các vấn đề chung trong thiết kế phần mềm Một mẫu thiết kế không phải là một thiết kế hoàn thiện để thể chuyển đổi trực tiếp thành mã, nó chỉ là một tả hay là sườn (template) tả cách giải quyết một vấn đề thể được dùng trong nhiều tình huống khác nhau Các mẫu thiết kế hướng đối tượng... thiết kế, những quan hệ, vai trò và sự hợp tác của chúng Nó được biểu diễn qua phần cấu trúc, sự hợp tác và những thành phần tham gia trong tài liệu của mẫu 1.1 Vai trò của mẫu thiết kế Bên cạnh những lợi ích trực tiếp của một giải pháp tốt cho việc tinh chế thiết kế của những hệ thống phần mềm, chất lượng tốt hơn, những mẫu thiết kế thậm trí còn thể cải thiện tài liệu và bảo trì những hệ thống đã có. .. và cho phép những người thiết kế trừu tượng hóa những chi tiết thiết kế đã quen thuộc (Ví dụ: những quan hệ, những 2 phương thức) và tập chung vào những nhiệm vụ quan trọng hơn Những mẫu cũng làm cho việc sử dụng lại những thiết kế và cấu trúc trở nên đơn giản hơn 1.2 Mẫu thiết kế hợp nhất (Union Design Pattern) Mẫu thiết kế hợp nhất là một mẫu mang tính cấu trúc tả quan hệ kế thừa giữa một lớp cha... nhau Mẫu hợp nhất (Union Pattern) sử dụng trên nền tảng những nguyên lý của thiết kế hướng đối tượng như tính kế thừa, tính đa hình, tính kế thừa, tính đóng gói nhằm hướng tới mục tiêu thiết kế những hệ thống mạnh mẽ hơn, linh động hơn và năng suất hơn Một cách tổng quát, Một biểu đồ lớp UML cho mẫu thiết kế hợp nhất dạng như sau: Hinh 1: Biểu đồ lớp cho mẫu thiết kế hợp nhất 3 Các đặc điểm của mẫu. .. trên còn rất nhiều lỗi mà người thiết kế thể gặp phải khi áp dụng mẫu hợp nhất như: một lớp trừu tượng ở lớp cha không được triển khai trong một số lớp con, hay các lớp con không đảm bảo đầy đủ các hành vi… Những lỗi này sẽ được thể hiện đầy đủ qua các ràng buộc được giới thiệu ở phần sau Từ việc phân tích những lỗi mà người thiết kế thể mắc phải khi áp dụng mẫu hợp nhất chúng ta thể thấy... Đảm bảo tối thiểu Thông báo lỗi nếu Đảm bảo thành công Kết quả kiểm tra phải được thông báo cho người sử dụng Kích hoạt Người dùng kích hoạt chức năng kiểm tra Chuỗi sự kiện chính Tác nhân Hệ thống 1 Hệ thống hiển form kích hoạt quá trình kiểm tra 2 Người dùng kích hoạt 3 Hệ thống kiểm tra hai owl ontology, thực 26 quá trình kiểm tra hiện truy vấn những đặc tả của hai biểu đồ lớp đồng thời so sánh . về Kiểm tra sự tinh chế hai mô hình có áp dụng mẫu thiết kế, Chương 4 trình bày về việc xây dựng công cụ kiểm tra sự tinh chế hai mô hình có áp dụng mẫu. sẵn có hỗ trợ so sánh các đặc tả OWL và tiến hành xây dựng thử nghiệm công cụ hỗ trợ kiểm tra sự tinh chế thiết kế hai mô hình có áp dụng mẫu thiết kế

Ngày đăng: 17/02/2014, 22:54

HÌNH ẢNH LIÊN QUAN

KIỂM TRA SỰ TINH CHẾ HAI MƠ HÌNH CĨ ÁP DỤNG MẪU THIẾT KẾ  - kiểm tra sự tinh chế hai mô hình có áp dụng mẫu thiết kế
KIỂM TRA SỰ TINH CHẾ HAI MƠ HÌNH CĨ ÁP DỤNG MẪU THIẾT KẾ (Trang 1)
Các kiểu dữ liệu trong Prolog được biểu diễn trong hình sau đây: - kiểm tra sự tinh chế hai mô hình có áp dụng mẫu thiết kế
c kiểu dữ liệu trong Prolog được biểu diễn trong hình sau đây: (Trang 16)
Hình ảnh sau biểu diễn kết quả quả của quá trình kiểm tra hai phiên bản khác nhau của một Owl Ontology bằng Protégé:  - kiểm tra sự tinh chế hai mô hình có áp dụng mẫu thiết kế
nh ảnh sau biểu diễn kết quả quả của quá trình kiểm tra hai phiên bản khác nhau của một Owl Ontology bằng Protégé: (Trang 19)
Hình sau đây thể hiện giao diện chính của chương trình khi mới bắt đầu chạy, giao diện chính của chương trình đảm bảo cho phép người sử dụng dễ dàng nhập vào  hai OWL Ontology cần kiểm tra - kiểm tra sự tinh chế hai mô hình có áp dụng mẫu thiết kế
Hình sau đây thể hiện giao diện chính của chương trình khi mới bắt đầu chạy, giao diện chính của chương trình đảm bảo cho phép người sử dụng dễ dàng nhập vào hai OWL Ontology cần kiểm tra (Trang 40)
 Input là hai đặt tả của hai mơ hình lớp sau dưới dạng OWL Ontology - kiểm tra sự tinh chế hai mô hình có áp dụng mẫu thiết kế
nput là hai đặt tả của hai mơ hình lớp sau dưới dạng OWL Ontology (Trang 50)
Hình 4.9: Kết quả kiểm thử 1 - kiểm tra sự tinh chế hai mô hình có áp dụng mẫu thiết kế
Hình 4.9 Kết quả kiểm thử 1 (Trang 51)
 Input là hai đặt tả của hai mơ hình lớp sau dưới dạng OWL Ontology - kiểm tra sự tinh chế hai mô hình có áp dụng mẫu thiết kế
nput là hai đặt tả của hai mơ hình lớp sau dưới dạng OWL Ontology (Trang 52)
Hình 4.10: Kết quả kiểm thử 2 - kiểm tra sự tinh chế hai mô hình có áp dụng mẫu thiết kế
Hình 4.10 Kết quả kiểm thử 2 (Trang 53)
 Input là hai đặt tả của hai mơ hình lớp sau dưới dạng OWL Ontology - kiểm tra sự tinh chế hai mô hình có áp dụng mẫu thiết kế
nput là hai đặt tả của hai mơ hình lớp sau dưới dạng OWL Ontology (Trang 54)
Hình 4.11: Kết quả kiểm thử 3 - kiểm tra sự tinh chế hai mô hình có áp dụng mẫu thiết kế
Hình 4.11 Kết quả kiểm thử 3 (Trang 55)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w