Tải bản đầy đủ (.pdf) (178 trang)

XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDI A HƯỚNG ĐỐI TƯỢNG

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.71 MB, 178 trang )





KHOA CNTT – H KHTN








TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHI ÊN
KHOA CÔNG NGHỆ THÔNG TI N
BỘ MÔN CÔNG NGHỆ PHẦN MỀM




CAO THỊ THÙY LIÊN - NGUYỄN THẾ VŨ




XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDI A
HƯỚNG ĐỐI TƯỢNG





LUẬN VĂN CỬ NHÂN TIN HỌC

















TP. HCM, 2004





KHOA CNTT – H KHTN









TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHI ÊN
KHOA CÔNG NGHỆ THÔNG TI N
BỘ MÔN CÔNG NGHỆ PHẦN MỀM




CAO THỊ THÙY LIÊN - 0012054
NGUYỄN THẾ VŨ - 0012134




XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDI A
HƯỚNG ĐỐI TƯỢNG


LUẬN VĂN CỬ NHÂN TIN HỌC



GIÁO VIÊN HƯỚNG DẪN

Thạc sĩ NGUYỄN THỊ BÍ CH












NI ÊN KHÓA 2000 - 2004





KHOA CNTT – H KHTN







LỜI CẢM ƠN
Cuối cùng thì, sau một thời gian dài thực hiện, chúng em cũng ñã hoàn thành luận
văn của mình. Để có ñược thành quả này, người chúng em mong muốn ñược nói
lời cảm ơn ñầu tiên và sâu sắc nhất là cô Nguyễn Thị Bích. Cô ñã ñưa chúng em
ñến với một ñề tài thú vị, theo sát chúng em trong quá trình thực hiện luận văn, tận
tình chỉ bảo, thậm chí hết lòng lo lắng. Chính sự quan tâm của cô ñã thúc ñẩy chúng
em phải cố gắng hơn nữa.
Thành quả này cũng xin ñược gửi ñến cha mẹ, ñể ghi dấu kết thúc cho một chặng

ñường dài cha mẹ nuôi con ăn học, và mở ra chân trời mới cho con bay vào ñời.
Cuối cùng xin gởi lời cảm ơn ñến tất cả thầy cô, anh chị, bạn bè ñã có những ý kiến
quý báu cũng như ñộng viên chúng em thực hiện thành công ñề tài.
Mặc dù chúng em ñã rất nỗ lực ñể thực hiện ñề tài, thế nhưng khối lượng công việc
nhiều mà thời gian có hạn, cho nên không thể tránh khỏi một vài thiếu sót. Rất
mong thầy cô và các bạn góp ý.

Chúng em xin chân thành cảm ơn !

Thành phố Hồ Chí Minh, ngày 11 tháng 7 năm 2004
Nhóm thực hiện

 fl 




KHOA CNTT – H KHTN







MỤC LỤC
TÓM TẮT LUẬN VĂN 12
1. VẤN ĐỀ NGHIÊN CỨU 12
2. HƯỚNG TIẾP CẬN – CÁCH GIẢI QUYẾT VẤN ĐỀ 12
3. KẾT QUẢ ĐẠT ĐƯỢC 12

PHẦN MỞ ĐẦU 13
4. MỤC TIÊU 13
5. ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU 13
CHƯƠNG 1:TỔNG QUAN 15
6. THẾ HỆ THỨ BA CỦA CÁC HỆ THỐNG HYPERMEDIA 15
7. HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG DỰA TRÊN PHƯƠNG
PHÁP LUẬN CỦA OOHDM 16
7.1. Vì sao lựa chọn hệ quản trị hypermedia hướng ñối tượng? 16
7.2. OOHDM và hệ quản trị hypermedia hướng ñối tượng 17
8. GIẢI QUYẾT VẤN ĐỀ LƯU TRỮ DỮ LIỆU 18
9. OOHDM - TỪ PHƯƠNG PHÁP LUẬN ĐẾN THỰC TIỄN 20
CHƯƠNG 2:OOHDM 22
10. GIỚI THIỆU 22
11. PHƯƠNG PHÁP THIẾT KẾ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG 22
11.1. Pha Thiết kế mức quan niệm: 23
11.2. Pha Thiết kế duyệt: 23
11.3. Pha Thiết kế giao diện trừu tượng: 24
11.4. Pha Thực thi: 24
12. PHA THIẾT KẾ MỨC QUAN NIỆM 24
13. PHA THIẾT KẾ DUYỆT 26
13.1. Lớp duyệt (Navigation class) 26
13.2. Ngữ cảnh duyệt (Navigation context) 30
13.2.1. Ngữ cảnh lớp ñơn lẻ (Simple class derived context) 31
13.2.2. Nhóm ngữ cảnh lớp (Class derived context group) 31
13.2.3. Ngữ cảnh link ñơn lẻ (Simple link derived context) 31




KHOA CNTT – H KHTN








13.2.4. Nhóm ngữ cảnh link (Link derived context group) 32
13.2.5. Ngữ cảnh tuỳ ý (Arbitrary context) 32
13.2.6. Ngữ cảnh ñộng (Dynamic context) 32
14. PHA THIẾT KẾ GIAO DIỆN TRỪU TƯỢNG 36
15. PHA THỰC THI 41
16. SỬ DỤNG OOHDM 41
17. ĐÁNH GIÁ VÀ LỰA CHỌN 43
CHƯƠNG 3:XÂY DỰNG BỘ CÔNG CỤ HỖ TRỢ PHƯƠNG PHÁP OOHDM 45
18. CÔNG CỤ THIẾT KẾ LỚP - TẠO CƠ SỞ DỮ LIỆU 45
18.1. Tạo lớp duyệt 45
18.2. Nhập liệu cho lớp duyệt 46
18.3. Mô tả ngữ cảnh duyệt 46
19. CÔNG CỤ THIẾT KẾ TEMPLATE 50
19.1. Hệ thống hàm sử dụng trong công cụ: 51
19.1.1. Index Function 51
19.1.2. Formatting Function 57
19.1.3. Navigation Function 59
19.1.4. Attrib Function 60
19.2. Frame 61
19.3. Cấu trúc tập tin template 61
20. CÔNG CỤ BROWSER 62
21. MÔ HÌNH LỚP ĐỂ XÂY DỰNG BỘ CÔNG CỤ 63
21.1. CArbitraryCtx 63

21.1.1. Thuộc tính 63
21.1.2. Phương thức 64
21.2. CClassAttribute 64
21.2.1. Thuộc tính 64
21.2.2. Phương thức 64
21.3. CClassDerivedGroupCtx 65
21.3.1. Thuộc tính 65
21.3.2. Phương thức 65
21.4. CClassObject 66
21.4.1. Thuộc tính 66




KHOA CNTT – H KHTN







21.4.2. Phương thức 66
21.5. CContextSummary 67
21.5.1. Thuộc tính 67
21.5.2. Phương thức 67
21.6. CDatabase 68
21.6.1. Thuộc tính 68
21.6.2. Phương thức 68
21.7. CDBData 69

21.7.1. Thuộc tính 69
21.7.2. Phương thức 70
21.8. CLinkDerivedGrpCtx 70
21.8.1. Thuộc tính 70
21.9. CNavigationClass 71
21.9.1. Thuộc tính 71
21.9.2. Phương thức 71
21.10. CNavigationContext 72
21.10.1. Thuộc tính 72
21.10.2. Phương thức 72
21.11. CSimpleClassDerivedCtx 74
21.11.1. Thuộc tính 74
21.11.2. Phương thức 74
21.12. CSimpleLinkDerivedCtx 75
21.12.1. Thuộc tính 75
21.12.2. Phương thức 75
21.13. CFrame 76
21.13.1. Thuộc tính 76
21.13.2. Phương thức 76
21.14. CFunction 77
21.14.1. Thuộc tính 77
21.14.2. Phương thức 77
21.15. CHypertext 80
21.15.1. Thuộc tính 80
21.15.2. Phương thức 80




KHOA CNTT – H KHTN








21.16. CTemplate 81
21.16.1. Thuộc tính 81
21.16.2. Phương thức 81
22. LỚP CHTML 82
23. CÀI ĐẶT 84
23.1. Tổ chức thư mục cho hypertext 84
23.2. Công cụ thiết kế lớp, tạo cơ sở dữ liệu 85
23.2.1. Thiết kế lớp duyệt 85
23.2.2. Tạo ñối tượng cho các lớp duyệt 88
23.2.3. Mô tả ngữ cảnh duyệt 89
23.3. Công cụ soạn thảo template 91
23.4. Công cụ Browser 94
CHƯƠNG 4:XÂY DỰNG SERVER CHO OOHDM 99
24. GIỚI THIỆU CHUNG 99
25. GIẢI PHÁP CHO VIỆC LỰA CHỌN CƠ SỞ DỮ LIỆU 99
26. CÀI ĐẶT ỨNG DỤNG OOHDM SERVER 100
26.1. Kiến trúc tầng lưu trữ 100
26.2. Kiến trúc tầng runtime 103
26.3. Giao diện chương trình 104
26.4. Chức năng của Server 106
27. CHI TIẾT CÁC LỚP ĐỐI TƯỢNG TẦNG STORAGE 107
27.1. PERCArbitraryCtx 108
27.1.1. Thuộc tính 108

27.1.2. Phương thức 109
27.2. PERCAttributeValue 109
27.2.1. Thuộc tính 109
27.2.2. Phương thức 109
27.3. PERCClassAttribute 109
27.3.1. Thuộc tính 109
27.3.2. Phương thức 110
27.4. PERCClassDerivedGroupCtx 110
27.4.1. Thuộc tính 110
27.5. PERCClassObject 110




KHOA CNTT – H KHTN







27.5.1. Thuộc tính 110
27.5.2. Phương thức 111
27.6. PERCContextSummary 111
27.6.1. Thuộc tính 111
27.6.2. Phương thức 111
27.7. PERCDatabase 112
27.7.1. Thuộc tính 112
27.7.2. Phương thức 112

27.8. PERCLinkDerivedGrpCtx 112
27.8.1. Thuộc tính 112
27.8.2. Phương thức 113
27.9. PERCNavigationClass 113
27.9.1. Thuộc tính 113
27.9.2. Phương thức 113
27.10. PERCNavigationContext 114
27.10.1. Thuộc tính 114
27.10.2. Phương thức 114
27.11. PERCSimpleClassDerivedCtx 114
27.11.1. Thuộc tính 114
27.11.2. Phương thức 115
27.12. PERCSimpleLinkDerivedCtx 115
27.12.1. Thuộc tính 115
27.12.2. Phương thức 115
27.13. FillDB 116
27.13.1. Thuộc tính 116
27.13.2. Phương thức 116
27.14. OOHDMCtl 117
27.14.1. Thuộc tính 117
27.14.2. Phương thức 117
28. CHI TIẾT CÁC LỚP ĐỐI TƯỢNG TẦNG RUNTIME 120
28.1. Client 121
28.1.1. Thuộc tính 121
28.1.2. Phương thức 121




KHOA CNTT – H KHTN








28.2. Server 122
28.2.1. Thuộc tính 122
28.2.2. Phương thức 122
28.3. ClientHandler 122
28.3.1. Thuộc tính 122
28.3.2. Phương thức 123
28.4. ServerHandler 125
28.4.1. Thuộc tính 125
28.4.2. Phương thức 125
28.5. HDBServerEngine 126
28.5.1. Thuộc tính 126
28.5.2. Phương thức 126
28.6. HDBSession 127
28.6.1. Thuộc tính 127
28.6.2. Phương thức 127
28.7. HDBSessionClient 129
28.7.1. Thuộc tính 129
28.7.2. Phương thức 130
28.8. HDBSessionServer 130
28.8.1. Thuộc tính 130
28.8.2. Phương thức 130
CHƯƠNG 5:HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG 132
29. DẪN NHẬP OODBMS 132

30. VERSANT 133
30.1. Giới thiệu sản phẩm 133
30.2. Cài ñặt 134
30.3. Tìm hiểu 134
30.3.1. Các công cụ hỗ trợ phát triển ứng dụng của Versant 134
30.3.2. Các trình hỗ trợ ứng dụng 136
30.3.3. Biên dịch project MSVC++6.0/MSVC++7.0 137
30.3.4. Tạo database trong Versant 139
30.3.5. Xây dựng file schema (imp) ñể compile chương trình 143
30.4. Nhận xét 144




KHOA CNTT – H KHTN







31. FASTOBJECTS 145
31.1. Giới thiệu sản phẩm 145
31.2. Cài ñặt 146
31.3. Tìm hiểu 147
31.3.1. Compile một project MSVC++6.0/MSVC++7.0 147
31.3.2. Tạo database trong FastObject 148
31.3.3. Xây dựng file schema (ptxx) ñể compile chương trình 149
31.3.4. Một số lưu ý 149

32. FASTOBJECTS – FASTOBJECTS.NET COMPONENT 150
32.1. Giới thiệu – Nét chính 150
32.1.1. Lưu ñối tượng một cách trực tiếp, dễ dàng hơn với FastObject.NET 151
32.1.2. Khả năng trong suốt 151
32.1.3. Chi phí về source code cho việc lưu trữ một ñối tượng 152
32.1.4. Khả năng truy vấn như thế nào? 154
32.1.5. Database như là một bộ nhớ mở rộng 156
32.2. Khả năng tích hợp với Visual Studio 157
32.3. Hỗ trợ - Cài ñặt 159
32.4. Giới thiệu FastObject.NET – phiên bản cho Microsoft .NET Framework.160
32.4.1. Giới thiệu 160
32.4.2. Kiến trúc 161
32.4.3. Thông tin kĩ thuật 163
32.5. Một số lưu ý 164
32.5.1. Vấn ñề phiên bản 164
32.5.2. Vấn ñề cài ñặt 165
32.5.3. Vấn ñề runtime 165
33. ỨNG DỤNG 166
34. LỜI KẾT 166
CHƯƠNG 6:TỔNG KẾT 168
35. KẾT QUẢ ĐẠT ĐƯỢC 168
36. HƯỚNG PHÁT TRIỂN 169
TÀI LIỆU THAM KHẢO 170
PHỤ LỤC:CÁC KHÁI NIỆM VỀ
CÁC HỆ QUẢN TRỊ CSDL 172




KHOA CNTT – H KHTN








37. GIỚI THIỆU 172
38. QUÁ TRÌNH QUẢN LÝ DỮ LIỆU 172
38.1. Giai ñoạn ñầu 172
38.2. Xử lý tập tin 173
39. TIẾP CẬN CSDL VÀ HỆ CSDL 175
39.1. Các cách nhìn về dữ liệu 176
39.2. Lịch sử phát triển các Mô hình dữ liệu 177
39.2.1. Khái niệm: 177
39.2.2. Lịch sử phát triển các Mô hình dữ liệu 177















KHOA CNTT – H KHTN




LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG


Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 12
TÓM TẮT LUẬN VĂN
1. VẤN ĐỀ NGHIÊN CỨU
Luận văn "Xây dựng hệ quản trị hypermedia hướng ñối tượng" tập trung
tìm hiểu các lý thuyết cũng như sản phẩm phần mềm liên quan, nhằm xây
dựng hệ quản trị hypermedia hướng ñối tượng lưu trữ dữ liệu trên hệ quản trị
hướng ñối tượng.
Đồng thời, luận văn cũng thiết kế một ứng dụng sử dụng hệ hypermedia ñã
xây dựng ñể minh hoạ.
2. HƯỚNG TIẾP CẬN – CÁCH GIẢI QUYẾT VẤN ĐỀ
- Phương pháp thiết kế hypermedia hướng ñối tượng OOHDM ñược
nghiên cứu và là hướng tiếp cận chính ñể xây dựng hệ hypermedia.
- Để giải quyết phần lưu trữ dữ liệu cho hệ hypermedia, luận văn chọn biện
pháp sử dụng một hệ quản trị khác phù hợp, ñó là hệ cơ sở dữ liệu hướng
ñối tượng. Do ñó, ñi tìm một hệ quản trị hướng ñối tượng ñáp ứng yêu
cầu, tìm hiểu và sử dụng nó cũng là một công việc cần làm.
- Đối với ứng dụng minh hoạ, luận văn mong muốn xây dựng một ứng
dụng hay, gắn liền với kiến thức lý thuyết. Vì vậy mà bộ công cụ hỗ trợ
phương pháp OOHDM ñược lựa chọn.
3. KẾT QUẢ ĐẠT ĐƯỢC
Những công việc luận văn ñã làm:
- Tìm hiểu và vận dụng phương pháp OOHDM

- Tìm hiểu hệ quản trị hướng ñối tượng Versant, FastObjects và sử dụng
FastObjects ñể cài ñặt
- Cài ñặt hệ hypermedia hướng ñối tượng theo phương pháp OOHDM
- Xây dựng bộ công cụ hỗ trợ phương pháp OOHDM.




KHOA CNTT – H KHTN




LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG


Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 13
PHẦN MỞ ĐẦU
Xuất hiện cách ñây khá lâu, khái niệm hypermedia ñã tạo nên một bước ngoặt trong
lĩnh vực soạn thảo. Nó cho ra ñời các tài liệu ñiện tử sinh ñộng, hấp dẫn và dễ dàng
tham chiếu. Người ñọc không còn phải vất vả với những tài liệu văn bản tổ chức
tuyến tính thành từng trang rời rạc, phải tìm kiếm bằng thao tác thủ công.
Nhiều ñề tài luận văn trước ñây ñã có sự nghiên cứu sâu sắc về lý thuyết
hypermedia cũng như xây dựng mô hình hệ quản trị cơ sở dữ liệu hypermedia,
chương trình soạn thảo các tài liệu ñiện tử
Chọn ñề tài "Xây dựng hệ cơ sở dữ liệu hypermedia hướng ñối tượng", luận văn này
mong muốn tiếp nối và phát triển các ñề tài trước, với mục tiêu, ñối tượng và phạm
vi nghiên cứu như sau:
4. MỤC TIÊU
- Tìm tòi, nghiên cứu một hướng lý thuyết mới, hay và có nhiều sáng tạo,

cải tiến ñem lại lợi ích trong lĩnh vực hypermedia.
- Xây dựng mô hình và cài ñặt hệ quản trị cơ sở dữ liệu hypermedia theo
hướng ñối tượng.
- Tìm hiểu các hệ cơ sở dữ liệu hướng ñối tượng và chọn ra một hệ thích
hợp nhất ñể sử dụng cho việc quản lý dữ liệu của hệ quản trị hypermedia.
- Xây dựng và cài ñặt ứng dụng minh hoạ. Trong luận văn này, ứng dụng
minh hoạ có vai trò quan trọng vì nó gắn liền với phương pháp lý thuyết.
Có thể nói nó thể hiện và ñưa ý tưởng của phương pháp lý thuyết vào
thực tiễn.
5. ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU
- Tìm hiểu phương pháp thiết kế hypermedia hướng ñối tượng OOHDM.
Đây là phương pháp ñược ñưa ra ñể phục vụ cho việc thiết kế các ứng




KHOA CNTT – H KHTN




LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG


Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 14
d ng hypermedia v i c thù riêng: d li u là các node và link. Phương
pháp này do Daniel Schwabe và Gustavo Rossi, Rita de Almeida Pontes,
Isabela Moura giới thiệu vào khoảng năm 1998 và phát triển dần.
- Xây dựng mô hình và cài ñặt hệ quản trị hypermedia hướng ñối tượng
dựa trên phương pháp OOHDM.

- Tìm hiểu hệ quản trị cơ sở dữ liệu hướng ñối tượng Versant và
FastObjects, sử dụng FastObjects phục vụ cho việc cài ñặt chương trình.
- Xây dựng ứng dụng minh hoạ: gồm 3 phần:
o Chương trình cho phép thiết kế lớp, tạo cơ sở dữ liệu theo phương
pháp OOHDM.
o Chương trình cho phép soạn thảo template (khuôn mẫu) theo
phương pháp OOHDM. Chương trình này cũng s xây dựng và
ñưa ra một bộ hàm ñể soạn thảo.
o Chương trình Browser với bộ phân tích template, từ ñó tạo ra các
trang htm và trình bày.

 fl 

Trên ñây là phần mở ñầu sơ lược về lý do chọn ñề tài cũng như mục ñích, ñối tượng
và phạm vi nghiên cứu, với mong muốn giúp người ñọc có cái nhìn bao quát về ñề
tài. Chi tiết nội dung ñề tài sẽ ñược thể hiện qua các chương tiếp theo.







KHOA CNTT – H KHTN




LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG



Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 15
CHƯƠNG 1:
TỔNG QUAN
Chương này xin ñiểm qua một số nét làm nền tảng, xuất phát ñiểm cho các vấn ñề
sẽ trình bày chi tiết ở các chương sau.
6. THẾ HỆ THỨ BA CỦA CÁC HỆ THỐNG HYPERMEDIA
Nhắc lại, theo ñề tài luận văn cử nhân khoá 1998 "Tìm hiểu các mô hình
hypermedia – Xây dựng mô hình hypermedia ứng dụng trong việc soạn thảo
các tài liệu ñiện tử" (Trần Ngọc Minh Công - Nguyễn Ngọc Đức, GVHD:
Thạc sĩ Nguyễn Thị Bích):
§ Khái niệm hypertext do Vannevar Bush ñưa ra vào năm 1945.
§ Hai mươi năm sau, thế hệ thứ nhất của hypermedia ra ñời, hỗ trợ văn bản
thuần tuý, cho nhiều người dùng chia sẻ.
§ Thế hệ thứ hai ra ñời vào những năm 80, hỗ trợ thêm giao diện ñồ hoạ và
các ñoạn phim, cho một người hay một nhóm nhỏ người sử dụng.
§ Hiện nay, nhiều nghiên cứu nỗ lực xây dựng thế hệ hypermedia thứ ba
theo các hướng khác nhau:
• Các hệ thống ứng dụng mô hình HAM. HAM do Brad Campell và
Joseph M.Goodman ñưa ra năm 1988, là server quản lý giao dịch lưu
trữ tập trung các node, link
• Các hệ thống ứng dụng mô hình Dexter: Devise, Amsterdam Mô
hình Dexter do Frank Halasz và Mayer Schwartz ñề xuất vào năm
1990, ñược rất nhiều hệ thống hypermedia sử dụng bởi nó có một nền
tảng cấu trúc bền vững của các tầng, tính mở cao dễ dàng cho các hệ




KHOA CNTT – H KHTN





LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG


Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 16
thống khác phát triển, cho phép link nhiều ñầu, cho phép chia sẻ dữ
liệu
• Các hệ thống thiết kế theo mô hình hướng ñối tượng: Harmony
• World Wide Web: hệ hypermedia ñược phát triển trở thành kho tri
thức chung rộng lớn, không thể thiếu của nhân loại.
7. HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG DỰA
TRÊN PHƯƠNG PHÁP LUẬN CỦA OOHDM
7.1. Vì sao lựa chọn hệ quản trị hypermedia hướng ñối
tượng?
So sánh các ñiểm tương ñồng trong phạm trù hypermedia với thế giới
phân tích, thiết kế, lập trình hướng ñối tượng:
§ Các simple node tương ñương với các atomic object ñóng vai trò
loại dữ liệu nguyên thuỷ như số nguyên, ký tự, chuỗi, video frame
hay ảnh bitmap.
§ Đối tượng hay node ñều ñược truy cập ñến bằng ñịnh danh
(identifier).
§ Một link có thể ñược mô tả bằng một tập ít nhất hai ñịnh danh ñối
tượng. Bản thân link cũng là một ñối tượng với ñịnh danh của
chính nó, ñược sử dụng ñể trích ra thông tin chỉ mục (index) từ nội
dung tài liệu.
§ Một composite object (tạo bởi mạng các node và link) ñược xem
như một aggregation của các simple object.

§ Các khái niệm dữ liệu trừu tượng (data abstraction) hay tính ñóng
gói (encapsulation) có thể ñược áp dụng qua việc ñịnh nghĩa các
phương thức tạo, xoá, sửa, thao tác trên node, link, duyệt link
cũng như phát ñộng (trigger) sự kiện.




KHOA CNTT – H KHTN




LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG


Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 17
§ Node và link có th ñược gom nhóm thành các lớp khác nhau dựa
trên ngữ nghĩa cấu trúc và hành vi. Việc tổ chức node và link theo
ngữ nghĩa có tác dụng giúp quản trị mạng tốt hơn, loại bỏ tính mơ
hồ, phân biệt rõ ràng mục ñích của những ñối tượng này.
§ Node và link của một lớp nào ñó cũng có thể kế thừa từ thuộc tính
của lớp khác.
§ Còn những khái niệm hướng ñối tượng khác thích hợp với
hypertext bao gồm: kiểm soát ñồng bộ, quản lý phiên bản và
persistent.
Do ngữ nghĩa mang tính hướng ñối tượng như vậy, nên hệ
hypermedia phát triển theo hướng ñối tượng là tự nhiên và phù hợp
nhất, bao gồm cả hai khía cạnh lưu trữ và thiết kế.
7.2. OOHDM và hệ quản trị hypermedia hướng ñối tượng

Phương pháp thiết kế hypermedia hướng ñối tượng OOHDM do
Daniel Schwabe và Gustavo Rossi, Rita de Almeida Pontes, Isabela
Moura giới thiệu vào khoảng năm 1998, phục vụ cho việc thiết kế
các ứng dụng hypermedia.
Phương pháp thiết kế này sẽ phát huy tác dụng hơn nếu nó ñược
chương trình hoá thành một công cụ hỗ trợ người dùng thay vì chỉ là
lý thuyết.
Muốn vậy, hệ quản trị hypermedia cũng phải ñược xây dựng tương
ứng với các khái niệm của OOHDM. Chương 2 của luận văn sẽ trình
bày lý thuyết OOHDM và qua các chương 3, 4, mô hình hệ
hypermedia hướng ñối tượng dựa trên OOHDM sẽ ñược xây dựng.




KHOA CNTT – H KHTN




LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG


Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 18
8. GIẢI QUYẾT VẤN ĐỀ LƯU TRỮ DỮ LIỆU
Như nhận xét ở trên, hệ hypermedia lưu trữ dữ liệu trên hệ quản trị hướng
ñối tượng là sự lựa chọn tự nhiên nhất. Điều này ñược khẳng ñịnh cụ thể và
rõ ràng hơn qua một số nghiên cứu của các trường Đại học:

Filesystem KnowledgeBase


RDBMS OODBMS
Tính mở Một phần Không Có Có
Chia sẻ Một phần Không Một phần Có
Tính toàn vẹn Không Có Có Có
Multimedia Không Không Không Có
Truy vấn Một phần Có Có Một phần
Phiên bản Một phần Không Không Một phần
Tính mở rộng Không Có Có Có
Bảng 1. 1 - Kết quả ñánh giá tại Đại học Tokyo
[Lange, 1993].

RDBMS OODBMS
Ra ñời khoảng 30 năm Tương ñối mới
Dễ dàng thực hiện do các khái niệm ñã
ñược biết rõ
Kỹ thuật còn mới, và do ñó khó thực
hiện
Thích hợp cho dữ liệu ñơn giản, “flat
data”
Tốt cho dữ liệu phức tạp
Cấu trúc ñược chuyển ñổi sang quan hệ Cấu trúc ñược mô tả như bản thân nó
Đối tượng nhận ñược thông qua truy vấn Thao tác (operation) trên ñối tượng ñược
lưu trong DB




KHOA CNTT – H KHTN





LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG


Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 19
S d ng nhi u câu truy v n l y ra 1
ñối tượng
Thông ñiệp (message) gửi ñến ñối tượng
và ñối tượng này lại có thể gửi thông
ñiệp ñến các ñối tượng khác
Kết quả truy vấn ñược chứa trong cấu
trúc dữ liệu của ứng dụng
Thông ñiệp có thể thao tác trực tiếp dữ
liệu trong DB và trả về con trỏ
Chỉ kiểm tra toàn vẹn khi commit Kiểm tra toàn vẹn trong suốt run-time
Mỗi record trong 1 quan hệ (relation)
trong cấu trúc (hierachy) có thể bị khoá
(lock)
Toàn bộ cấu trúc có thể bị khoá trong 1
thao tác (single operation)
Dữ liệu phức ñược "flatten" có thể dẫn
ñến mất ñi tính trừu tượng, tính ñóng gói
Có cơ chế quản lý dữ liệu phức
Không hỗ trợ tốt lắm cho làm việc hợp
tác như quản lý phiên bản, kiểm soát
ñồng bộ
Xử lý giao tác uyển chuyển, có nhiều
chính sách locking.

Hiệu suất kém ngay cả với quá trình
duyệt link ñơn giản
Mô hình duyệt của cơ sở dữ liệu có thể
ñược khai thác trực tiếp
Định danh ñối tượng và các ñối tượng
composite ñược mô hình hoá trực tiếp
trong mô hình hypertext chứ không phải
trong cơ sở dữ liệu
Tính tương ñồng giữa cơ sở dữ liệu và
mô hình hypertext làm cho việc thực thi
trực tiếp cấu trúc và hành vi của dữ liệu
ñược dễ dàng hơn
Bảng 1. 2 - Sự khác biệt giữa RDBMS và OODBMS, theo kết quả ñánh giá của
Dại học Brown [Smith & Zdonik, 1987], và [Lange, 1993]
Những nghiên cứu trên cho thấy hệ quản trị hướng ñối tượng là thích hợp
hơn cho cơ chế lưu trữ của hệ hypermedia. Bằng cách tích hợp mô hình dữ
liệu với hypertext, cách thức thu nhận thông tin sẽ ñược phát triển, bằng cách
chuyển các chức năng từ mức ñộ người dùng thành mức ñộ cơ sở dữ liệu, sử
dụng hệ quản trị hướng ñối tượng.




KHOA CNTT – H KHTN




LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG



Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 20
Tuy nhiên, qua các tài liệu mà chúng tôi tham khảo ñến thời ñiểm này, thì tư
tưởng trên vẫn chỉ ở mức ñang ñược phát triển, chủ yếu là do sự chưa phổ
biến của các hệ quản trị cơ sở dữ liệu hướng ñối tượng.
Trong quá trình tìm kiếm, chúng tôi có ñiều kiện tiếp xúc, tìm hiểu và sử
dụng một số hệ quản trị hướng ñối tượng nổi tiếng, phát triển như Versant và
FastObjects. Sau khi nghiên cứu và so sánh cả hai, chúng tôi quyết ñịnh chọn
FastObjects cho công việc của mình.
Kết quả tìm hiểu cả hai hệ cũng như lý giải sự lựa chọn trên sẽ ñược chúng
tôi nêu ra trong Chương 5 – Các hệ quản trị CSDL hướng ñối tượng.
9. OOHDM - TỪ PHƯƠNG PHÁP LUẬN ĐẾN THỰC TIỄN
Như trên ñã nói, OOHDM vốn là một phương pháp thiết kế, và nó sẽ hiệu
quả hơn nếu ñược chương trình hoá thành một công cụ hỗ trợ người dùng. Ý
tưởng này cũng ñược cha ñẻ của OOHDM, những người có công ñề ra hệ
phương pháp luận này, nghĩ ñến, qua công cụ thiết kế, soạn thảo trang Web
ñộng OOHDM-Web.
Được mô tả chi tiết trong Chương 3 – Xây dựng bộ công cụ hỗ trợ
phương pháp OOHDM, ứng dụng minh hoạ trong luận văn chúng tôi cũng
ñi theo hướng này, với mong muốn thể hiện ñược cụ thể, rõ nét ý nghĩa cũng
như tác dụng của phương pháp OOHDM. Phát triển trên ý tưởng ñó, nhưng
ứng dụng của chúng tôi có nhiều khác biệt:
o Công cụ thiết kế lớp, tạo cơ sở dữ liệu OOHDM Definition: cho phép
thiết kế và tạo các lớp dữ liệu một cách tự nhiên, vì dữ liệu ñược lưu trữ
bằng hệ quản trị hướng ñối tượng (OOHDM-Web sử dụng cơ sở dữ liệu
quan hệ ñể lưu trữ, và theo tài liệu chúng tôi tham khảo thì công cụ này
vẫn chỉ ở mức ñang ñược phát triển).
o Công cụ thiết kế template OOHDM Template Designer: hỗ trợ người
dùng soạn thảo template một cách trực quan. Trong khi với OOHDM-
Web, template ñược soạn thảo trên trình soạn thảo html bất kỳ, do ñó sự





KHOA CNTT – H KHTN




LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG


Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 21
h tr người dùng cho các tính năng OOHDM bị hạn chế. Ngoài ra,
chúng tôi cũng cải tiến hệ thống hàm cho ñơn giản, gần gũi với người
dùng, ñồng thời bổ sung các hàm ngoài phạm trù OOHDM, phục vụ cho
việc soạn thảo trang html ñược hoàn thiện hơn.
o Công cụ phát sinh trang htm ñộng OOHDM Browser: phát sinh trang
Web ñộng lúc duyệt từ các template thiết kế sẵn là một ý tưởng ñộc ñáo,
giúp tiết kiệm không gian lưu trữ, và công sức của người thiết kế Web.
Đối với những trang Web có cấu trúc giống nhau, họ chỉ cần soạn thảo
duy nhất một template (quá trình soạn thảo cũng như tập tin kết quả
template ñều rất ñơn giản). Trình duyệt với bộ phân tích cú pháp sẽ tự
phân tích template và phát sinh trang htm ñộng. Công cụ này có ý nghĩa
quan trọng vì nó cho ra thành quả cuối cùng, quyết ñịnh sự thành công
của ứng dụng.

 fl 

Trên ñây là cái nhìn tổng quan về những vấn ñề ñược ñặt ra và giải quyết trong luận

văn này. Cụ thể từng vấn ñề sẽ ñược ñào sâu trong từng chương sau.




KHOA CNTT – H KHTN




LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG


Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 22
CHƯƠNG 2:
OOHDM
10. GIỚI THIỆU
Phương pháp thiết kế hypermedia hướng ñối tượng OOHDM (Object-
Oriented Hypermedia Design Method) do Daniel Schwabe và Gustavo
Rossi, Rita de Almeida Pontes, Isabela Moura giới thiệu vào khoảng năm
1998.
Phương pháp này cung cấp một hệ thống các khái niệm trừu tượng phục vụ
cho việc thiết kế ứng dụng hypermedia cũng như làm cho các tác vụ của ứng
dụng trở nên dễ dàng hơn.
Thông qua k
thuật hướng ñối tượng, phương pháp OOHDM giúp nhà thiết
kế xây dựng ñược một kiến trúc duyệt tốt, ñây là một trong những chìa khoá
ñưa ñến thành công cho ứng dụng hypermedia.
11. PHƯƠNG PHÁP THIẾT KẾ HYPERMEDIA HƯỚNG ĐỐI
TƯỢNG

Cơ sở của hướng tiếp cận OOHDM:
- Các ñối tượng duyệt ñược xem là khung nhìn (view - từ dùng trong cơ
sở dữ liệu) của các ñối tượng mức quan niệm.
- Hình thành các khái niệm trừu tượng thích hợp ñể tổ chức không gian
duyệt, và giới thiệu khái niệm ngữ cảnh duyệt.
- Tách các vấn ñề giao diện ra khỏi vấn ñề duyệt.
- Nhận thức rõ rằng có những quyết ñịnh thiết kế cần ñược ñưa ra trong và
chỉ trong giai ñoạn thực thi mà thôi.




KHOA CNTT – H KHTN




LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG


Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 23
N n t ng c a hướng tiếp cận OOHDM là tách quá trình thiết kế ứng dụng
hypermedia thành bốn pha riêng biệt: Thiết kế mức quan niệm (Conceptual
design), Thiết kế duyệt (Navigation design), Thiết kế giao diện trừu tượng
(Abstract interface design) và Thực thi (Implementation).
11.1. Pha Thiết kế mức quan niệm:
Giai ñoạn mô tả lĩnh vực (domain) của ứng dụng, không quan tâm
ñến người sử dụng (user profile) hay tác vụ. Có hai loại ñối tượng
ñược mô tả gồm:
o Những ñối tượng cuối cùng sẽ trở thành các node trong mô hình

duyệt (entity object)
o Những ñối tượng hỗ trợ tính toán cho ứng dụng, ñóng gói hành vi
như thuật toán, truy cập cơ sở dữ liệu, v.v
Kết quả, giai ñoạn này xây dựng nên mô hình cho lĩnh vực của ứng
dụng. Mô hình này có thể phục vụ cơ bản cho những ứng dụng khác
trong cùng lĩnh vực, và không chứa bất cứ thông tin cụ thể nào liên
quan ñến việc duyệt.
11.2. Pha Thiết kế duyệt:
Thông tin về những loại người sử dụng và các tác vụ tương ứng ñược
sử dụng ñể rút ra các ñối tượng duyệt (node, link, kiến trúc truy xuất)
và cách chúng ñược cấu trúc.
Ở giai ñoạn này, nhà thiết kế sẽ thu thập các ñối tượng của không
gian duyệt thành một tập hợp có nghĩa gọi là ngữ cảnh duyệt
(navigation context). Mỗi ngữ cảnh ñịnh nghĩa cách thức mà quá trình
duyệt diễn tiến, bằng cách chỉ ra sự biến ñổi trong không gian duyệt,
nghĩa là, tập hợp các ñối tượng duyệt có thể truy cập vào một thời
ñiểm nhất ñịnh.




KHOA CNTT – H KHTN




LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG


Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 24

11.3. Pha Thiết kế giao diện trừu tượng:
Các ñối tượng duyệt ñược ánh xạ vào bản vẽ giao diện (interface
construct).
Công việc của giai ñoạn này là chỉ ra các ñối tượng giao diện
(interface object) làm trung gian cho tương tác của người dùng với
các ñối tượng duyệt. Kết quả, mô hình giao diện (interface model) chỉ
ra: ñối tượng giao diện nào người sử dụng có thể thấy, ñối tượng giao
diện nào sẽ hoạt hoá quá trình duyệt, các ñối tượng giao diện
multimedia sẽ ñược ñồng bộ hoá như thế nào, và sự biến ñổi giao
diện sẽ xảy ra thế nào.
11.4. Pha Thực thi:
Mang trách nhiệm thi hành bản vẽ giao diện, giai ñoạn này ánh xạ các
ñối tượng quan niệm, duyệt và giao diện vào một môi trường run-
time ñích, có thể bao gồm việc ñịnh nghĩa các trang HTML, script,
truy vấn dữ liệu v.v… Qua ñó nhà soạn thảo sẽ có ñược ứng dụng
hypermedia thật sự ñể chạy.

Việc phân chia thiết kế quan niệm, duyệt và giao diện thành các hoạt ñộng
riêng biệt cho phép ta tập trung vào một công việc trong một thời ñiểm. Kết
quả, ta có những ñơn vị thiết kế có thể tái sử dụng.
Mặt khác, thiết kế nguyên thuỷ cũng có thể ánh xạ vào môi trường hay ngôn
ngữ thực thi phi ñối tượng.
12. PHA THIẾT KẾ MỨC QUAN NIỆM
Sản phẩm của bước này là lược ñồ lớp bao gồm các hệ thống con (sub-
system), lớp và quan hệ.




KHOA CNTT – H KHTN





LUẬN VĂN: XÂY DỰNG HỆ QUẢN TRỊ HYPERMEDIA HƯỚNG ĐỐI TƯỢNG


Sinh viên thực hiện: Cao Thị Thuỳ Liên - Nguyễn Thế Vũ Trang 25
OOHDM dùng hệ ký hiệu tương tự như UML, nhưng khác biệt ở chỗ sử
dụng các thuộc tính ña trị, và việc phân biệt hướng rõ ràng trong các quan
hệ.
Để minh hoạ, ta xem xét ví dụ sau, một lược ñồ ñơn giản cho tạp chí trực
tuyến:

Hình 2. 1 – Mô hình mức quan niệm cho một tạp chí trực tuyến
Trong mô hình này, Story có thể là Essay, Translation hay Interview. Một
Interview là một aggregation của Q&A (question & answer). Mỗi Story có
một Author, và một Interview có quan hệ với Person liên quan nó.
Không có lớp Magazine trong lược ñồ này, mà nó sẽ tồn tại trong giai ñoạn
Thiết kế duyệt.
Thuộc tính lớp ñược phân loại, mỗi loại ñược gọi là một perspective. Ví dụ
trong hình trên, thuộc tính Illustration của Essay có thể là Photo hay Video,
ký hiệu [p1, p2], dấu + có thể thêm vào một perspective ñể cho biết nó là giá
trị mặc ñịnh.

×