YOMEDIA
ADSENSE
Bài giảng Chương 4: ORM và UML
84
lượt xem 6
download
lượt xem 6
download
Download
Vui lòng tải xuống để xem tài liệu đầy đủ
Bài giảng Chương 4: ORM và UML được biên soạn nhằm trang bị cho các bạn những kiến thức về vai trò của UML; so sánh UML và ORM; lược đồ class của UML và ORM; thuộc tính trong UML và ORM; thuộc tính đa trị; miền giá trị (domain); sơ đồ ORM tương ứng và một số nội dung khác.
AMBIENT/
Chủ đề:
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Chương 4: ORM và UML
- Bai giang BM HTTT - Khoa CNTT - HUI 1
- • Các phương pháp ngữ nghĩa đê mô hi ̉ ̀nh hóa hê thô ̣ ́ng thông tin xuất hiên nga ̣ ̀y càng nhiều • Hình anh "Yama" (Yet Another Modeling ̉ Approach) theo nghĩa tiếng Nhât la ̣ ̀ "Mountain". Bai giang BM HTTT - Khoa CNTT - HUI 2
- Gần đây, UML được xem như 1 phương pháp thích hợp đê mô hi ̉ ̀nh hóa CTUD. Đã có đề xuất "the modeling wars are over UML has won". Bai giang BM HTTT - Khoa CNTT - HUI 3
- UML được ứng dung chu yê ̣ ̉ ́u trong thiết kế mã chương trình hướng đối tượng. Hiên nay UML cu ̣ ̃ng được dùng trong thiết kế database nhưng chưa thay thế được phương pháp ER. Tuy nhiên trong tương lai khi phát triên ̉ HT theo hướng đối tượng thì UML là 1 ngôn ngữ quan trong đê thiê ̣ ̉ ́t kế database. Bai giang BM HTTT - Khoa CNTT - HUI 4
- Tương tự ER, UML sử dung attributes, tuy sô ̣ ́ lượng attribute có thê qua ̉ ́ lớn nhưng dùng attribute thì dễ mô hình được mối quan hê ̣ giữa các thực thê, ỉ ́t bi anh h ̣ ̉ ưởng khi thực thê ̉ thay đôi. ̉ Cách tốt nhất đê pha ̉ ́t triên mô hi ̉ ̀nh dữ liêu ̣ bằng UML là “first do an ORM model and then map it to UML”. Bai giang BM HTTT - Khoa CNTT - HUI 5
- No language is perfect, ORM cũng không ngoai ̣ lê.̣ ◦UML cung cấp 1 loat ca ̣ ́c ký hiêu đê mô hi ̣ ̉ ̀nh hóa ca ̉ dữ liêu va ̣ ̀ qui trình (process) ◦ORM hiên chi tâp trung va ̣ ̉ ̣ ̀o viêc mô hi ̣ ̀nh hóa dữ liêu. ̣ Bai giang BM HTTT - Khoa CNTT - HUI 6
- Ví du cua 1 l ̣ ̉ ược đố class UML Bai giang BM HTTT - Khoa CNTT - HUI 7
- Lược đồ class mô ta ca ̉ ́c lớp Employee và Car và mối kết hợp giữa chúng. Tương ứng với quan hê ORM ̣ Employee drives Car Bai giang BM HTTT - Khoa CNTT - HUI 8
- Role "driver" phía bên trái mối kết hợp làm rõ ngữ nghĩa Mũi tên ở bên phai mổ ́i kết hợp đê chi ră ̉ ̉ ̀ng môt ̣ điên hi ̉ ̀nh cua employee co ̉ ́ thê truy xuâ ̉ ́t đến 1 điên hỉ ̀nh car cua no ̉ ́. Mối kết hợp này chi liên ̉ quan đến viêc tḥ ực thi và không chi ra ỷ ́ niêm ̣ cua mô hi ̉ ̀nh nghiêp vu. ̣ ̣ Bai giang BM HTTT - Khoa CNTT - HUI 9
- Bằng cách bo qua chi tiê ̉ ́t, lược đồ class có thê đ ̉ ược dùng đê phân ti ̉ ́ch ý niêm. Khi du ̣ ̀ng theo cách này thì lược đồ class rất giống với mô hình ER. Nhưng có 1 sự khác biêt đa ̣ ́ng kế nếu xét theo hướng OO Khác biêt gi ̣ ̀?? Bai giang BM HTTT - Khoa CNTT - HUI 10
- Không có sơ đồ xác đinh (identification ̣ schemas) trong class. Với lâp tri ̣ ̀nh OO, các đối tượng có thê đ ̉ ược nhân biê ̣ ́t thông qua đia chi ̣ ̉ bô nh ̣ ớ, vì vây UML không câ ̣ ̀n đến sơ đồ này. Nhưng nếu dùng đê phân ti ̉ ́ch ý niêm thi ̣ ̀ cần phai co ̉ ́ sơ đồ tham chiếu hướng người dùng. Bai giang BM HTTT - Khoa CNTT - HUI 11
- UML cho phép thêm 1 số thuôc ti ̣ ́nh với các ký hiêu không theo tiêu chuân đê khai ba ̣ ̉ ̉ ́o cách nhân biê ̣ ́t và ràng buôc cua class ̣ ̉ ◦“{P}” đê chi tham chiê ̉ ̉ ́u hay dùng (preferred reference ) ◦ "{ Un }" đê chi ti ̉ ̉ ́nh duy nhất (n > 0), với n là số trường hợp có cùng nghĩa khi cùng ràng buôc U ̣ được áp dung cho 1 tô h ̣ ̉ ợp các thuôc ti ̣ ́nh. Bai giang BM HTTT - Khoa CNTT - HUI 12
- Lược đồ class với các ký hiêu không theo tiêu ̣ chuân đê chi kho ̉ ̉ ̉ ́a Primary key và ràng buôc ̣ duy nhất Bai giang BM HTTT - Khoa CNTT - HUI 13
- • ORM chia object thành 2 loai: entities (non ̣ lexical objects) và values (lexical objects) và bắt buôc mô ̣ ̃i entity phai đ ̉ ược xác đinh ḅ ởi môt ̣ sơ đồ tham chiếu (reference scheme ). ORM sử dung "object", "entity", va ̣ ̀ "value" đê chi "object ̉ ̉ instance", "entity instance“và "value instance“. • Các entities có thê đ̉ ược tham chiếu theo nhiều cách, và có thê thay đôi trang tha ̉ ̉ ̣ ́i (state) theo thời gian Bai giang BM HTTT - Khoa CNTT - HUI 14
- • UML chia các instances thành objects và data values. • Các UML objects tương ứng với các ORM entities. Các UML data values tương ứng với các ORM values, chúng đều là hằng số. • Các loai entity trong UML đ ̣ ược goi la ̣ ̀ classes và các loai value thi ̣ ̀ được goi la ̣ ̀ data types. • "object" có nghĩa là 1 "object instance", chứ không phai la ̉ ̀ "object type". • Mối điên hi ̉ ̀nh quan hê (relationship instance) trong ̣ UML được goi la ̣ ̀ 1 link, và loai quan hê đ ̣ ̣ ược goi la ̣ ̀ môt association. ̣ Bai giang BM HTTT - Khoa CNTT - HUI 15
- Bai giang BM HTTT - Khoa CNTT - HUI 16
- • Trong UML, măc đinh ca ̣ ̣ ́c thuôc ti ̣ ́nh (attribute) là bắt buôc (mandatory) va ̣ ̀ có giá tri đ ̣ ơn. • Trong ORM, predicate 1 ngôi "smokes" là tùy chon (optional). UML không hô ̣ ̃ trợ quan hê 1 ̣ ngôi, mà chi dủ ̀ng thuôc ti ̣ ́nh Boolean "isSmoker“. • Trong UML, domain cua mô ̉ ̃i thuôc ti ̣ ́nh có thê ̉ được hiên thi ngay sau tên thuôc ti ̉ ̣ ̣ ́nh, ngăn cách bởi dấu : . Bai giang BM HTTT - Khoa CNTT - HUI 17
- • Attribute multiplicity constraint – Trong mô hình ORM, birth country, social security number, hay passport number đều là tùy chon. Trong UML tu ̣ ̀y chon na ̣ ̀y được thê hiên thông qua viêc thêm multiplicity [0..1] ̉ ̣ ̣ vào mỗi thuôc ti ̣ ́nh tương ứng. • Uniqueness constraints (UC): – Trong ORM, các UC dùng đê chi mô ̉ ̉ ̃i employee number, social security number, và passport number chi tham ̉ chiếu duy nhất đến 1 employee mà thôi. – UML không có ký hiêu chuân đê chi "attribute uniqueness ̣ ̉ ̉ ̉ constraints", vì vây no ̣ ́ được bô sung b ̉ ởi ký hiêu do ta t ̣ ự quy đinh lâ ̣ ́y, chăng han {P} va ̉ ̣ ̀ {Un } Bai giang BM HTTT - Khoa CNTT - HUI 18
- UML cũng không có ký hiêu đê chi ra ̣ ̉ ̉ ̀ng buôc ̣ loai tr ̣ ừ (inclusiveor constraint), ràng buôc na ̣ ̀y có thê diê ̉ ̃n ta bă ̉ ̀ng note đính kèm, hay đăt ̣ ràng buôc va ̣ ̀o {}. Bai giang BM HTTT - Khoa CNTT - HUI 19
- Loai quan hê ORM ̣ ̣ Employee was born in Country được mô hình như thuôc ti ̣ ́nh birthcountry trong lược đồ class UML. Nếu sau này khi cần lưu trữ lai phân bô ̣ ́ cua ̉ country thì cần phai đ̉ ưa vào lớp Country và đê ̉ làm rõ kết nối giữa birthcountry và Country có thê câ ̉ ̀n phai biê ̉ ́n đôi thuôc ti ̉ ̣ ́nh birthcountry thành mối kết hợp giữa 2 class Employee và Country. ORM tránh được sự bất ôn ng ̉ ữ nghĩa này vì nó luôn sử dung quan hê thay vi ̣ ̣ ̀ dùng thuôc ̣ tính. Bai giang BM HTTT - Khoa CNTT - HUI 20
ADSENSE
CÓ THỂ BẠN MUỐN DOWNLOAD
Thêm tài liệu vào bộ sưu tập có sẵn:
Báo xấu
LAVA
AANETWORK
TRỢ GIÚP
HỖ TRỢ KHÁCH HÀNG
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn