1. Các mô hình dữ liệu: CSDL hướng đối tượng
(CSDLHĐT)
2. Các hệ quản trị CSDLHĐT
3. Một số kết quả nghiên cứu về CSDLHĐT
51 trang |
Chia sẻ: NamTDH | Lượt xem: 1661 | Lượt tải: 0
Bạn đang xem trước 20 trang nội dung tài liệu Bài giảng Cơ sở dữ liệu hướng đối tượng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
c đồ dữ liệu đối tượng và
đã chỉ ra rằng
Quan hệ kế thừa sẽ tạo ra một thứ tự bộ phận
Phép hội kiểu của τ1 ↓ τ2 nếu nó xác định thì kết quả là kiểu con chung lớn
nhất của τ1 và τ2
Một lược đồ đối tượng có thể xảy ra sự xung đột về kiểu khi có ít nhất một
cặp kiểu cha của một kiểu con (được kế thừa bội) và không tương thích với
nhau, nghĩa là phép hội của các kiểu cha không xác định.
Lược đồ đối tượng có thể biểu diễn dưới dạng s-đồ thị (đồ thị đặc trưng cho
quan hệ kế thừa kiểu của lược đồ) đối tượng. Trên cơ sở nghiên cứu các
tính chất đường đi trong s-đồ thị chúng khẳng định phụ thuộc dữ liệu trong
CSDL ĐT là loại phụ đối tượng theo đường dẫn.
S-đồ thị có xung đột kiểu (có mâu thuẫn dữ liệu) khi và chỉ khi có ít nhất 2
đường đi tựa tương đẳng cùng bắt đầu từ một đỉnh và dẫn đến 2 đỉnh đích
là 2 kiểu không tương thích với nhau (phép hội kiểu không xác định) .
Đoàn Văn Ban OODB
CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG 43
(ii) Chuyển đổi tương đương giữa các mô hình dữ liệu
Thực tế luôn tồn tại nhiều hệ thống dữ liệu với nhiều mô
hình khác nhau. Vấn đề đặt ra là làm thế nào để khai
thác được dữ liệu của chúng, tích hợp vào một ứng
dụng của chúng ta?
Một trong các phương pháp thực hiện đáp ứng được
những yêu cầu trên là liệu có thể biến đổi từ mô hình
quan hệ (mô hình thực thể liên kết) sang mô hình đối
tượng và ngược lại được không?
Trong các bài báo: “Chuyển đổi mô hình thực thể liên kết thành
mô hình hướng đối tượng “ (TC TH & ĐKH, T. 17, s. 4, 2001) và
“Mô hình hóa hệ thống phần mềm hướng đối tượng” ( TC TH &
ĐKH, T. 18, s. 4, 2002), chúng tôi đã giới thiệu những thuật toán
chuyển đổi giữa các mô hình dữ liệu:
CSDL QH và CSDL ĐT;
Biểu đồ lớp UML và biểu đồ thực thể-liên kết (ERD);
Đoàn Văn Ban OODB
CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG 44
(ii) Chuyển đổi tương đương giữa các mô hình dữ liệu
Trong các bài báo: “Chuyển đổi các biểu thức đại số quan
hệ thành các câu truy vấn trong mô hình dữ liệu hướng đối
tượng “ (TC KH & CN, T. 40, s.ĐB, 2002) và “Sự tương
đương trong biểu diễn giữa ngôn ngữ truy vấn OQL và đại
số đối tượng” (TC TH & ĐKH, T. 20, s. 3, 2004); “Phương
pháp ước lượng các truy vấn lồng trong CSDL hướng đối
tượng bằng siêu đồ thị kết nối “ (TC Bưu chính VT &
CNTT, s. 14, 4-2005), chúng tôi trình bày những qui tắc
chuyển đổi các phép toán quan hệ thành các biểu thức đại
số đối tượng tương đương và phương pháp biểu diễn các
câu truy vấn đối tượng OQL (mở rộng trên siêu đồ thị kết
nối) và một số thuật toán tối ưu hóa truy vấn đối tượng.
Đoàn Văn Ban OODB
CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG 45
(iii) Mẫu thiết kế dựa trên mã nguồn mở
Bên cạnh là một hoạt động mang tính nghiên cứu, sáng
tạo, sản xuất phần mềm còn là một ngành công nghiệp và
vì vậy người ta tìm mọi cách để rút ngắn quá trình sản
xuất và nâng cao năng suất lao động.
Một trong những cách được áp dụng rộng rãi nhất là sử
dụng các khuôn mẫu có sẵn (Framework), thư viện lập
trình và các thành phần (Component) như là các mẫu thiết
kế (Design Pattern).
Các Framework thường chỉ bao gồm các cấu trúc cơ bản
như kiến trúc hệ thống, các mẫu thiết tối ưu hay các giải
pháp mang tính lý thuyết còn thư viện thường bao gồm 1
tập hợp các giải pháp cụ thể (giải thuật, cấu trúc dữ liệu,
mã nguồn) cho một vấn đề cụ thể (ví dụ tìm giá trị cực
tiểu của một hàm bất kỳ).
Đoàn Văn Ban OODB
CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG 46
(iii) Mẫu thiết kế dựa trên mã nguồn mở
Các mẫu thiết được xem là những giải pháp cụ thể nhưng
cho phép người thiết kế tùy biến chức năng qua việc xác
định các tham số hoạt động (properties) và ghép nối
chúng lại với nhau (lập trình) thành một giải pháp hoàn
chỉnh.
Do khả năng tùy biến cao nên một mẫu thiết có thể “chỉ”
là một giải pháp hiển thị kết quả dưới dạng đồ thị nhưng
cũng có thể bao gồm toàn bộ chức năng phức tạp của một
chương trình soạn thảo văn bản như Word©.
Như vậy với thành phần, một mẫu thiết kế và công cụ
thích hợp người ta có thể nhanh chóng bổ sung tính năng
cho một phần mềm mà nếu tự phát triển sẽ phải mất hàng
tháng trời nếu không phải là hàng năm!
Đoàn Văn Ban OODB
CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG 47
(iii) Mẫu thiết kế dựa trên mã nguồn mở
Mặt khác, phần mềm nguồn mở (Open Source) và phần mềm tự do
(Free Software) là hai khái niệm khác nhau về quyền và mức độ tự do
đối với người sử dụng. Đó là hai cách tiếp cận và triết lý hướng tới
phần mềm tự do. Phần mềm nguồn mở và phần mềm tự do, cả hai là
phần mềm hướng tới giải phóng những phiền hà do giới hạn về bản
quyền.
Nó có thể được sử dụng, sao chép, nghiên cứu, thay đối và phân phối
lại mà không gặp phải hạn chế nào. Phần mềm tự do (Free software)
không phải hoàn toàn giống như freeware, phần mềm cung cấp với giá
bằng 0 (software available at zero price).
Có những trường hợp, những phần mềm là tự do nhưng không phải là
phần mềm nguồn mở và ngược lại. “Phần mềm tự do” được định nghĩa
là phần mềm được cho tự do. Nó phản ánh xu hướng chuyển dịch tự do
của phần mềm (free software movement).
Đoàn Văn Ban OODB
CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG 48
(iii) Mẫu thiết kế dựa trên mã nguồn mở
Phần mềm nguồn mở (open-source software) hiểu theo nghĩa rộng là
một khái niệm chung được sử dụng cho tất cả các phần mềm mà mã
nguồn của nó được công bố rộng rãi công khai và cho phép mọi người
tiếp tục phát triển phần mềm đó, đặc biệt phù hợp để thiết kế các mẫu
ứng dụng.
Mã nguồn mở được công bố dưới rất nhiều điều kiện khác nhau
(license), một số trong đó cho phép phát triển, sử dụng và bán tùy ý
miễn là giữ nguyên các dòng về nguồn gốc sản phẩm (BSDL), một số
bắt buộc tất các sản phẩm làm ra từ đó cũng phải là open-source (GPL),
một số khác đòi hỏi phải công bố trọn vẹn mã nguồn (Mozilla), một số
khác không cho phép sử dụng vào mục đích thương mại (Sun Solaris
Source Code License), một số khác lại không có ràng buộc gì đáng kể
(public domain, MIT X11 license) v.v.
Đoàn Văn Ban OODB
CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG 49
(iii) Mẫu thiết kế dựa trên mã nguồn mở
Mẫu phần mềm trở nên thông dụng kể từ khi xuất hiện cuốn
sách thường được tham chiếu là GoF (của Bè lũ 4 tên):
Design Patterns: Elements of Reusable Object-
Oriented Software by Erich Gamma, Richard Helm,
Ralph Johnson, and John Vlissides (frequently referred
to as the Gang of Four or just GoF).
Mẫu được sử dụng trong nhiều lĩnh vực khác nhau từ
các tổ chức và các quá trình cho đến kiến trúc hệ thống,
nhất là trong lĩnh vực đào tạo, nghiên cứu phát triển ứng
dụng phần mềm.
Hiện nay cộng đồng phát triển phần mềm sử dụng rất
phổ biến các mẫu thiết kế cho kiến trúc phần mềm và
các mẫu cho quá trình phát triển phần mềm và cho tổ
chức thực hiện các dự án phần mềm.
Đoàn Văn Ban OODB
CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG 50
(iii) Mẫu thiết kế dựa trên mã nguồn mở
Hướng đối tượng hỗ trợ để tạo ra các mẫu thiết kế cho các thiết kế phần
mềm, nhất là các mẫu thiết kế theo mã nguồn mở. Mẫu thiết kế hướng đối
tượng mô tả tường minh các mối quan hệ và sự tương tác giữa các lớp đối
tượng mà không cần phải xác định những ứng dụng cụ thể.
Mẫu thiết kế giúp ta giải quyết bài toán nhanh gọn, có khả năng tái sử dụng
và tránh khả năng phải thiết kế lại. Mẫu thiết kế dựa trên nguyên lý thiết kế
hướng đối tượng và nó được xem như là công cụ để phát hiện và mô tả bài
toán ở mức trừu tượng cao mà vẫn bao hàm đầy đủ ngữ nghĩa của bài toán
ứng dụng.
Trên cơ sở nghiên cứu các mẫu thiết kế của Erich Gamma, báo cáo “Ứng
dụng mô hình mẫu thiết kế khung cho tầng truy cập dữ liệu” (Báo cáo tại
HT CNTT nhân dịp 30 năm thành lập Viện CNTT) đề xuất phương pháp
thiết kế khung (Framework) ứng dụng theo mô hình ba tầng, áp dụng công
nghệ đối tượng ADO.Net và cài đặt khung cho tầng truy cập dữ liệu.
Đoàn Văn Ban OODB
CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG 51
Tài liệu tham khảo
[1] David W. Embley, Object Database Development: Concepts and Principles, Addison Wesley Longman,
http:// osm7.cs.byu.edu, 1998.
[2] David Maier, Object-Oriented Database Theory: An Introduction & indexing in OODBS, Database Hall of
Fame, 2001.
[3] Đoàn Văn Ban, Tính đúng của lược đồ CSDL hướng đối tượng, TC TH & ĐKH, T. 16, S.3, 2000.
[4] Đoàn Văn Ban, Phân tích, thiết kế hướng đối tượng bằng UML, giáo trình Khoa CNTT, 2003.
[5] Đoàn Văn Ban, Lập trình hướng đối tượng với Java, NXB Khoa học Kỹ thuật, 2003.
[6] Đoàn Văn Ban, Lập trình hướng đối tượng với C++, Giáo trình Khoa CNTT, 2003.
[7] Erichgam, Richard Helm, Ralph Johnson, John Vlissdes, Design Pattern, elements of Reusable Oject-
Oriented Software, 1, Addison-Wesley Pub Co, 1995.
[8] James W. Cooper, C# Design Patterns, Addison Wesley, 2002, 416.
[9] Mario Piattini, Oscar Díaz, Advanced Data Technology and Design, Artech House, 2000, http://
www.artechhouse.com
[10] Michael B., William P., Object – Oriented Modeling and Design for Database Applications, Prentice Hall,
New Jersey 1998.
[11] Object Design, ObjectStore C++ Release 4.0.2 Documentation, Burlington, Massachusetts, 1996.
[12] OMG, “The OMG Unified Modeling Language Specification”, http:// www.omg.org/uml 1999.
[13] Quatrani T., Visual Modeling With Rational Rose and UML, Addison-Wesley, http:// www.rational.com,
2000.
[14] Ying Liang, From use cases to classes: a way of building object model with UML, Information and
Software Technology, 45 (2003) 83-93,
[15] Zhiming Liu, Object-Oriented Software Development Using UML, UNU /IIST, Macau 2001.
Các file đính kèm theo tài liệu này:
- csdl_oo_1207.pdf