Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 72 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
72
Dung lượng
1,04 MB
Nội dung
2 MỤC LỤC Chương 1 Tổng quan 8 1.1 Dẫn nhập 8 1.2 Mục tiêu đề tài: 9 1.3 Phạm vi đề tài 9 1.4 Nội dung luận văn 10 Chương 2 Mẫu thiết kế hướng đối tượng 11 2.1 Khái niệm mẫu thiết kế 11 2.2 Lịch sử và vai trò của mẫu thiết kế 11 2.3 Các loại mẫu được sử dụng trong phát triển phần mềm 12 2.4 Các mẫu thiết kế hướng đối tượng GoF 14 2.4.1 Các mẫu tạo lập (Creational patterns) 15 2.4.2 Các mẫu cấu trúc (Structural patterns) 15 2.4.3 Các mẫu ứng xử (Behavioural patterns) 15 2.4.4 Mẫu thiết kế hướng đối tượng dạng phức hợp 15 2.5 Các bước để lựa chọn mẫu thiết kế 16 2.6 Một số vấn đề được giải quyết bằng mẫu thiết kế 17 Chương 3 Tổng quan về rút trích thông tin 19 3.1 Giới thiệu chung 19 3.2 Giới hạn hướng nghiên cứu của đề tài 21 3.3 Giới thiệu về Rút trích thông tin 22 3.3.1 Khái niệm 22 3.3.2 So sánh rút trích thông tin và tìm kiếm thông tin 22 3.3.3 Hệ thống rút trích thông tin từ các trang web 23 3.4 Bài toán cần giải quyết 25 3.5 Các nghiên cứu liên quan đến bài toán đặt ra 28 3 Chương 4 Mẫu thiết kế xây dựng ứng dụng hỗ trợ rút trích thông tin từ web 30 4.1 Giới thiệu ứng dụng 30 4.2 Kiến trúc ứng dụng hỗ trợ rút trích thông tin từ web Nn theo ch 30 4.2.1 Quá trình s dng ng dng rút trích thông tin t web Nn 30 4.2.2 Kin trúc h thng 32 4.3 Các mu thit k ưc dùng xây dng ng dng 33 4.3.1 Mu thit k MVC 33 4.3.2 Mu Data Access Pattern 35 4.3.3 Mu Dynamic Factory 36 4.3.4 Mu Abstract Factory 39 4.3.5 Mu Strategy 40 Chương 5 Cài t và kim th 43 5.1 Quá trình xây dng các thuc tính h tr rút trích thông tin: 43 5.2 Quá trình xây dng công c h tr rút trích thông tin: 44 5.2.1 Giao din ng dng: 44 5.2.2 T chc lưu tr thông tin các ch và trang web Nn 47 5.2.3 T chc lưu tr thông tin cu hình 49 5.3 Cài t các thành phn có s dng mu thit k hưng i tưng 50 5.3.1 Áp dng mu thit k Dynamic Factory iu hưng x lý các yêu cu 50 5.3.2 Áp dng mu Abstract Factory cho thành phn rút trích thông tin t web Nn ni dung ng 52 5.3.3 Áp dng mu thit k Strategy óng gói thut toán 57 Chương 6 Kt lun và hưng phát trin 60 6.1 Kt lun: 60 6.1.1 Kt qu t ưc 61 6.1.2 Hn ch: 62 6.2 Hưng phát trin 62 Tài liu tham kho 63 4 Ph lc A Gii thiu v web Nn 66 A. 1 Khái nim 66 A. 2 Gii thiu v web Nn ni dung ng 67 Ph lc B Cài t minh ha mu thit k mu Dynamic Factory 69 Ph lc C Áp dng thng kê thu thp thuc tính chung ch 71 5 DAN H MC CÁC T VIT TT & THUT N G Information Extraction: Rút trích thông tin. Information retrieval : Tìm kim thông tin. Information Integration : Tng hp thông tin. Object Oriented Design patterns: Mu thit k hưng i tưng. Composite Patterns: Mu thit k phc hp. Wrapper: Công c rút trích thông tin t web. Deep web: Trang web Nn. Meta search engine: Máy tìm kim liên hp. Web mining: Khai phá web Content mining: Khai phá ni dung. Text Mining: Khai phá văn bn. Structure Mining: Khai phá cu trúc. Usage Mining: Khai phá s dng 6 DAN H MC CÁC BN G, HÌN H Hình 3-1 : Mt s form tìm kim theo ch vic làm [10] 26 Hình 3-2: Minh ha Visual Block Tree, và canh l các mc d liu 28 Hình 3-3: Mu ánh nhãn form 29 Hình 4-1 : Biu hot ng ca ngưi s dng 31 Hình 4-2 : Kin trúc h thng h tr rút trích thông tin t web Nn theo ch 32 Hình 4-3: Mô hình MVC 34 Hình 4-4: Mu Data Access Object 35 Hình 4-5 : Mu Factory Method 36 Hình 4-6 : Mu Dynamic Factory - ci tin ca mu Factory Method 37 Hình 4-7: Mu Abstract Factory 40 Hình 4-8: Mu Strategy 42 Hình 5-1: Giao din ca ng dng web dành cho ngưi s dng 45 Hình 5-2: Giao din chính ca công c qun lý 45 Hình 5-3: Giao din qun lý các thuc tính chung 46 Hình 5-4: Giao din qun lý các trang web 46 Hình 5-5 : CSDL lưu thông tin ch và trang web Nn 49 Hình 5-6: Sơ lp thành phn iu hưng x lý yêu cu 50 Hình 5-7: Cài t không dùng mu Abstract Factory 52 Hình 5-8: Mu Abstract Factory cho thành phn rút trích thông tin t web Nn 53 Hình 5-9: Sơ lp áp dng mu thit k Strategy 57 Hình A-1: Quá trình truy cp form 67 Hình A-2: Form minh ha 67 Hình C-1: Mt s trang tìm kim vic làm 71 7 Bng 2-1: Phân loi mu thit k 14 Bng 4-1 : So sánh h thng xây dng và máy tìm kim liên hp 27 Bng 5-1: Minh ha các thuc tính chung theo ch Vic làm 44 Bng C-1: Bng thuc tính thông dng ch vic làm 73 Bng C-2: Bng tng kt thuc tính chung ch Vic làm 73 8 Chương 1 Tổng quan Chương 1 giới thiệu ngữ cảnh và lý do thực hiện đề tài; trình bày mục tiêu, phạm vi đề tài và nội dung chính của từng chương trong luận văn. 1.1 Dẫn nhập N gành công ngh phn mm ã phát trin rt mnh m và gii quyt nhiu vn liên quan n phương pháp và qui trình công ngh xây dng phn mm. Tuy nhiên, khi òi hi ca ngui s dng cui ngày càng nhiu thì phn mm ngày càng ln và kin trúc càng phc tp, làm cho nhà phát trin khó khăn trong vic gii quyt nhng vn phát sinh như: s tương thích mã ngun, kh năng tương tác gia các thành phn, bo trì phn mm. Trong các giai on phát trin phn mm, thit k là mt công on rt quan trng. Phn mm ưc thit k tt s giúp nhà phát trin tn ít thi gian, công sc cho công vic cài t, bo trì và tin hóa. Hin nay, trong quá trình phát trin ng dng, các phương pháp phân tích thit k hưng i tưng [3] ã phát trin rt mnh m và góp phn áng k vào vic ci tin cht lưng ca phn mm nh vào kh năng xây dng các lp i tưng có tính tái s dng cao, d bo trì và d m rng. N gôn ng UML (Unified Modeling Language) [17] ưc xut s dng như mt ngôn ng chuNn mô hình hóa các thành t phn mm trong quá trình phân tích thit k hưng i tưng. Tuy nhiên, các phương pháp hưng i tưng tp trung ch yu vào các hot ng tng th trong tin trình phát trin phn mm hưng i tưng. N hng phương pháp này thưng không gii quyt các vn chi tit ny sinh trong quá trình thit k phn mm. b sung cho phương pháp hưng i tưng, các mu thit k hưng i tưng (mu thit k GoF, Gamma và cng s [5]) là mt tip cn c áo, ưc xut gii quyt các vn ny sinh trong quá trình thit k phn mm hưng i tưng. Khi áp dng các mu thit k này s giúp nâng cao cht lưng phn mm các yu t: hiu sut ng dng, n nh và tính tái s dng. tài chúng tôi mong mun óng góp mt phn vào lĩnh vc nghiên cu này. 9 iu c bit trong nhng năm gn ây là các chuyên gia công ngh phn mm cũng như các nhà nghiên cu ngoài vic nghiên cu nhng mu thit k cho phát trin phn mm nói chung còn ưa ra nhng mu thit k phù hp cho nhng lĩnh vc c th như các mu thit k cho Web [1], các mu thit k cho phn mm hưng dch v [14] [23], các mu thit k trong xây dng cu trúc d liu [15]… iu này ã thúc Ny các mu thit k hưng i tưng ngày càng ưc a dng. Trong tài, tôi nghiên cu các mu thit k hưng i tưng áp dng cho nhóm phn mm rút trích thông tin. Sau ó tôi áp dng các mu thit k ã có và ci tin cho phù hp vi các tính cht c thù ca nhóm phn mm này. 1.2 Mục tiêu đề tài: N ghiên cu các mu thit k hưng i tưng, chn lc và xut chnh sa mt s mu thit k hưng i tưng áp dng vào vic xây dng ng dng h tr rút trích thông tin t web. 1.3 Phạm vi đề tài Gii thiu các loi mu thit k, c bit là các mu thit k hưng i tưng trong lĩnh vc phát trin phn mm. Trình bày cách la chn mu thit k sao cho phù hp áp dng vào h thng phn mm cn xây dng và mt s vn ưc gii quyt bng mu thit k. Áp dng mu thit k hưng i tưng vào vic xây dng ng dng h tr rút trích thông tin ưc gii hn vào vic chn lc, chnh sa các mu thit k rút trích thông tin t các trang web Nn vi ni dung ng. ây là các trang web có mt lưng ln các thông tin Nn bên dưi các giao din tìm kim và không th truy cp thông qua các công c tìm kim tng quát (xem ph lc A). T cơ s nhng mu thit k ó, tin hành xây dng b khung h tr vic rút trích thông tin t các trang web Nn ni dung ng theo tng ch riêng bit. 10 1.4 ội dung luận văn N i dung ca lun văn ưc t chc thành 6 chương: Chương 1 gii thiu ng cnh và lý do thc hin tài; trình bày mc tiêu, phm vi tài và ni dung chính ca tng chương trong lun văn. Chương 2 gii thiu các loi mu thit k, các mu thit k hưng i tưng trong lĩnh vc phát trin phn mm. Cách la chn mu thit k sao cho phù hp áp dng vào h thng cn xây dng và mt s vn ưc gii quyt bng mu thit k. Chương 3 gii thiu chung v tình hình nghiên cu và gii hn hưng nghiên cu ca tài. Phân bit gia hưng nghiên cu ca tài và các hưng nghiên cu khác. Bài toán t ra và các nghiên cu liên quan cũng ưc trình bày trong chương này. Chương 4 gii thiu v ng dng h tr rút trích thông tin t các trang web Nn theo các ch riêng bit và kin trúc h thng. Chương này cũng trình bày các khái nim và lý do la chn các mu thit k ưc áp dng vào h thng. Chương 5 xây dng ng dng bng ngôn ng lp trình Java và gii thích vì sao s dng các mu thit k ã gii thiu chương 4. Chương 6 là chương cui cùng ca lun văn. Chương này tng kt, ánh giá v các công vic ã làm và xác nh hưng phát trin ca tài. 11 Chương 2 Mẫu thiết kế hướng đối tượng Chương 2 giới thiệu các loại mẫu thiết kế, các mẫu thiết kế hướng đối tượng trong lĩnh vực phát triển phần mềm. Cách lựa chọn mẫu thiết kế sao cho phù hợp để áp dụng vào hệ thống cần xây dựng và một số vấn đề được giải quyết bằng mẫu thiết kế. 2.1 Khái niệm mẫu thiết kế Mu thit k [5] mô t gii pháp ưc chng minh cho mt vn lp li nhiu ln. Mt mu thit k gm 3 phn chính: ng cnh, vn và gii pháp. • N g cnh: mô t các tin iu kin dn n vic phát sinh vn . Tin iu kin là các iu kin, tình hung cn có xác nh vic áp dng mu. Các iu kin kt qu là các kt qu có ưc sau khi áp dng mu. • Vn : mô t mt vn lp li nhiu ln. Trong các mu thit k, mô t vn ưc b sung thêm các nh hưng, các khía cnh mà vn cn ưc xem xét gii quyt nó. Ví d: các yêu cu mà gii pháp phi tha, các ràng buc cn xem xét, các tính cht mong mun mà gii pháp nên có. • Gii pháp: ưa ra cách gii quyt vn lp li và chú ý n các nh hưng, tác ng n nó. 2.2 Lịch sử và vai trò của mẫu thiết kế Khái nim mu thit k ưc ưa ra bi kin trúc sư Christopher Alexander khi ông vit cun sách trình bày v mu thit k kin trúc nhà vào nhng năm 1970. Ý tưng này ã ưc ng dng vào lĩnh vc phát trin phn mm vào u nhng năm 1980. thi im ó, các ngôn ng lp trình hưng i tưng như Smalltalk, C++ chưa ưc s dng rng rãi. Công ngh lp trình ph bin là lp trình cu trúc trong khi lp trình hưng i tưng chưa ưc quan tâm. Tuy nhiên, khi ý tưng xây dng nhng thư vin lp (framework) ra i và ưc hin thc thì lĩnh vc [...]... vực rút trích thông tin từ web và rút trích thông tin từ các trang web Nn nhưng để nhà phát triển xây dựng và phát triển một ứng dụng rút trích thông tin từ các trang web Nn vẫn là một quá trình phức tạp Đề tài của chúng tôi mong muốn đóng góp vào hướng nghiên cứu này 3.3 Giới thiệu về Rút trích thông tin 3.3.1 Khái niệm Rút trích thông tin (IE – Information Extraction) [18] là quá trình lấy thông tin. .. ứng dụng hỗ trợ rút trích thông tin từ các trang web n theo các chủ đề riêng biệt và kiến trúc hệ thống Chương này cũng trình bày các khái niệm và lý do lựa chọn các mẫu thiết kế được áp dụng vào hệ thống 4.1 Giới thiệu ứng dụng Ứng dụng được xây dựng là một ứng dụng hỗ trợ công việc rút trích thông tin từ các trang web Nn với nội dung động theo từng chủ đề riêng biệt Các thông tin sau khi rút trích có... toán áp dụng chung cho các trang web thuộc chủ đề • Hỗ trợ 2 component cơ bản của thuộc tính là text và select khi phát sinh giao diện các thuộc tính tự động khi nguời dùng chọn chủ đề cần rút trích 4.2 Kiến trúc ứng dụng hỗ trợ rút trích thông tin từ web n theo chủ đề 4.2.1 Quá trình sử dụng ứng dụng rút trích thông tin từ web n Đối với người sử dụng: N gười sử dụng có thể yêu cầu rút trích thông tin. .. đích chính đề tài là các mẫu thiết kế để xây dựng bộ khung cho ứng dụng này Các chức năng chính của ứng dụng: • Rút trích thông tin từ các trang web Nn theo chủ đề • Hỗ trợ nhà phát triển quản lý các thông tin về chủ đề, trang web một cách dễ dàng Minh họa ứng dụng: • Tôi minh họa rút trích thông tin ở 3 chủ đề chính là: Job, Paper, Mobiphone • Áp dụng 2 thuật toán rút trích thông tin: dựa trên XPath (cấu... phức hợp Theo Dirk Riehle, mẫu thiết kế phức hợp [16] là một mẫu thiết kế có ý nghĩa như các mẫu thiết kế thông thường khác và là sự kết hợp của các mẫu thiết kế nguyên tử (atomic patterns) hay các mẫu thiết kế phức hợp khác Trong đó mẫu 16 thiết kế nguyên tử là những mẫu thiết kế không thể được mô tả bằng sự kết hợp của các mẫu thiết kế khác Trong mẫu thiết kế phức hợp, các mẫu thành phần tích hợp với... và thỏa mãn hơn 3.3.3.2 Phân loại hệ thống rút trích thông tin từ web N gày nay, có rất nhiều hệ thống rút trích thông tin từ web được các nhà phát triển nghiên cứu và xây dựng Các tiêu chí để phân loại một hệ thống rút trích thông tin từ web như sau: Dựa vào mức độ can thiệp của con người trong quá trình rút trích thông tin, các hệ thống rút trích thông tin có thể được chia ra làm 4 loại: thủ công,... trình Mẫu kết quả trong đó mô tả giải pháp hướng đến kết quả là sản phNm Các mẫu thiết kế có giải pháp là các đối tượng, các lớp được đề nghị sử dụng để giải quyết vấn đề Do đó, mẫu thiết kế thuộc loại mẫu kết quả Tương tự, các mẫu phân tích, tổ chức thuộc loại mẫu kết quả Mẫu tiến trình mô tả làm thế nào để đạt được kết quả mong muốn, giải pháp của mẫu là tiến trình 14 2.4 Các mẫu thiết kế hướng đối tượng. .. chọn những mẫu thiết kế đó 4.3 Các mẫu thiết kế được dùng để xây dựng ứng dụng 4.3.1 Mẫu thiết kế MVC Kiến trúc của ứng dụng được thiết kế tuân theo mô hình MVC [21], ứng dụng được tổ chức thành 3 thành phần: 34 Hình 4-3: Mô hình MVC Hình 4-3 là mô hình MVC, chi tiết các thành phần như sau • Mô hình trong (Model): là đối tượng biểu diễn thông tin nghiệp vụ bên trong ứng dụng đang xây dựng Đối tượng này... luật, sử dụng các mẫu thông tin, dựa vào cấu trúc cây,… được sử dụng để rút trích thông tin • Các hệ thống dựa trên các phương pháp học: sử dụng các phương pháp mô hình Markov, ngữ nghĩa, học trên cấu trúc cây,… để giúp cho các hệ thống hiểu và rút trích thông tin chính xác hơn 3.3.3.3 Khảo sát một số ứng dụng rút trích thông tin từ web • Web- Harvest là công cụ mã nguồn mở để rút trích dữ liệu Web Công... phá web Khi khai phá nội dung Web, một số bài toán được quan tâm trong khai phá nội dung Web là tìm kiếm thông tin, rút trích thông tin, phân loại thông tin, tóm tắt thông tin 22 Trong phạm vi đề tài, tôi tập trung vào hướng nghiên cứu rút trích thông tin Đặc biệt chúng tôi tập trung vào việc rút trích thông tin từ các trang web Nn với nội dung động bên dưới các form theo từng chủ đề riêng biệt Hiện . 2 Mẫu thiết kế hướng đối tượng 11 2.1 Khái niệm mẫu thiết kế 11 2.2 Lịch sử và vai trò của mẫu thiết kế 11 2.3 Các loại mẫu được sử dụng trong phát triển phần mềm 12 2.4 Các mẫu thiết kế hướng. hạn hướng nghiên cứu của đề tài 21 3.3 Giới thiệu về Rút trích thông tin 22 3.3.1 Khái niệm 22 3.3.2 So sánh rút trích thông tin và tìm kiếm thông tin 22 3.3.3 Hệ thống rút trích thông tin từ. từ các trang web 23 3.4 Bài toán cần giải quyết 25 3.5 Các nghiên cứu liên quan đến bài toán đặt ra 28 3 Chương 4 Mẫu thiết kế xây dựng ứng dụng hỗ trợ rút trích thông tin từ web 30 4.1