Bài giảng Phân tích thiết kế hệ thống thông tin - Chương V: Mô hình thực thể kết hợp - Trịnh Long

pdf 29 trang hapham 140
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Phân tích thiết kế hệ thống thông tin - Chương V: Mô hình thực thể kết hợp - Trịnh Long", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_phan_tich_thiet_ke_he_thong_thong_tin_chuong_v_mo.pdf

Nội dung text: Bài giảng Phân tích thiết kế hệ thống thông tin - Chương V: Mô hình thực thể kết hợp - Trịnh Long

  1. 9/14/2008 Phân tích Thi ết kế Hệ th ống thơng ttiinn TP.H ồ Chí Minh SepSep 0808 Biên sọan : Tr ịnh Long 9/14/2008 1 Ch ươ ng V MƠ HÌNH TH ỰC TH Ể K ẾT H ỢP 9/14/2008 2 1
  2. 9/14/2008 TThhựực th ểể (Entity(Entity))  Th ể hi ện th ực th ể là ng ườ i, vị tr í, đố i tượ ng, sự ki ện, kh ái ni ệm mà dữ li ệu đượ c thu th ập và lưu tr ữ (th ườ ng tươ ng ứng với một hàng của bảng).  Ki ểu th ực th ể: là một tập hợp các th ực th ể cùng mơ tả một đố i tượ ng nào đĩ trong hệ th ống, nĩi cách kh ác, ki ểu th ực th ể là đị nh ngh ĩa về một lo ại th ơng tin nào đĩ.  Th ực th ể nên là ◦ Đố i tượ ng cĩ nhi ều th ể hi ện trong CSDL. ◦ Đố i tượ ng cĩ nhi ều thu ộc tính. ◦ Đố i tượ ng cần đượ c mơ hình hĩa.  Th ực th ể kh ơng nên là ◦ NSD của hệ CSDL. ◦ Kết xu ất của hệ CSDL (v í dụ bản báo cáo). 9/14/2008 3 TThhựực th ểể  Đặ c điểm của th ực th ể là tính ph ân bi ệt (distinctness): cĩ th ể ph ân bi ệt gi ữa th ực th ể này với th ực th ể kh ác  Th ực th ể là kh ái ni ệm dùng để bi ểu di ễn các đố i tượ ng qu ản lý trong 1 ứng dụng tin học.  Mỗi th ực th ể ph ải cĩ ít nh ất một thu ộc tính mơ tả và ph ải cĩ thu ộc tính nh ận di ện để ph ân bi ệt th ực th ể này với th ực th ể kia trong th ực th ể.  Đượ c bi ểu di ễn bằng hình ch ữ nh ật, bên trong ch ứa các thu ộc tính, trong đĩ thu ộc tính kh ĩa đượ c gạch dướ i.  Ví dụ : KHACHHANG ◦ Cơng ty TNHH Mỹ Á, UBND qu ận 1, Makh ◦ Hĩa đơ n bán lẻ số : 023145/H Đ Tenkh Diachi ◦ Phi ếu chi ti ền số : 874982/PC. Sodt 9/14/2008 4 2
  3. 9/14/2008 KKỹỹ tthhuuậậtt xxáác địđị nh th ựực th ểể  Th ơng tin li ên quan tới các giao dịch ch ính của hệ th ống (vd: đơ n hàng, phi ếu xu ất, phi ếu nh ập, phi ếu đă ng ký nh ập học).  Th ơng tin li ên quan tới tài nguy ên của hệ th ống (vd: mặt hàng, nh à cung cấp, kh ách hàng, nh ân sự, mơn, ph ịng học).  Th ơng tin li ên quan tới th ống kê, kế ho ạch (vd: ng ân sách hàng năm, bảng lươ ng th áng, lịch cơng tác tu ần, ).  Để xác đị nh ki ểu th ực th ể kh ác kh ơng dễ dàng nh ìn th ấy ngay trong HT, cần xem xét tới sự cần thi ết của nh ững th ơng tin đang đượ c ph ân tích đố i với hệ th ống và kh ả năng hình th ành một bảng để lưu tr ữ trong nhi ều tr ườ ng hợp ph ức tạp nh ư vậy, cần ph ải xem xét dựa vào câu hỏi: ◦ Th ơng tin này cĩ cần cho hệ th ống kh ơng? ◦ Cĩ th ể tổ ch ức lưu tr ữ các th ơng tin này để ph ục vụ cho các nhu cầu khai th ác th ơng tin sau này kh ơng ? 9/14/2008 5 KKỹỹ tthhuuậậtt xxáác địđị nh th ựực th ểể  Xác đị nh c ác lo ại ch ính c ủa th ơng tin: ◦ Nếu c ĩ gi á tr ị, ki ểm tra c ác m ơ hình x ử lý cho c ác lu ồng dữ li ệu. ◦ Kho d ữ li ệu, c ác th ực th ể ngo ài v à các lu ồng d ữ li ệu. ◦ Ki ểm tra c ác đầ u v ào v à đầ u ra ch ủ yếu t ừ các ca s ử dụng.  Xác minh r ằng c ĩ nhi ều h ơn m ột tr ườ ng h ợp c ủa c ác th ực th ể mà xảy ra trong h ệ th ống, nh ững th ực th ể cĩ cùng l ọai/ nh ĩm c ác thu ộc t ính c ĩ th ể nh ĩm l ại th ành l ọai th ực th ể. 9/14/2008 6 3
  4. 9/14/2008 Thu ộộc ttc íính ( attribute)  Là một đặ c tr ưng của th ực th ể, th ể hi ện một kh ía cạnh nào đĩ của th ực th ể cĩ li ên quan tới hệ th ống. Mỗi th ực th ể cĩ một tập hợp các thu ộc tính. Mơ tả một th ực th ể ch ính là mơ tả các thu ộc tính của nĩ (th ườ ng tươ ng ứng với một vùng trong một bảng), là danh từ.  Ví dụ Cơng ty TNHHMai Linh cĩ các thu ộc tính là: ◦ Mã số: 01237865 ◦ Tên : Cơng ty TNHH Mai Linh. ◦ Đị a ch ỉ : 234 Tr ần Hưng Đạ o, Q5, TP.HCM  Mỗi lo ại thu ộc tính đượ c đặ c tr ưng bởi: tên(name), ki ểu dữ li ệu (data type) và bản số (cardinal). ◦ Tên của thu ộc tính nên đặ t sao cĩ ý ngh ĩa, gợi nh ớ. ◦ Kh ái ni ệm ki ểu DL gi ống kh ái ni ệm DL của bi ến lập tr ình. ◦ Bản số cho bi ết số lượ ng các gi á tr ị mà thu ộc tính cĩ th ể ch ứa tại 1 th ời điểm 9/14/2008 7 Thu ộộc ttc íínnhh Ki ểu Mơ tả Char Các ký tự Date Ng ày th áng n ăm Numeric Ki ểu s ố Boolean Ki ểu lu ận lý Bản s ố Mơ tả (t ại 1 th ời điểm) [1-1] Thu ộc t ính lu ơn ch ứa 1 v à ch ỉ 1 gi á tr ị (kh ơng cho ph ép Null) [1-n] Thu ộc t ính cĩ th ể ch ứa 1 ho ặc nhi ều gi á tr ị (đa tr ị) nh ưng kh ơng cho ph ép Null [0-1] Thu ộc t ính cĩ th ể ch ứa gi á tr ị Null ho ặc ch ỉ ch ứa 1 gi á tr ị. [0-n] Thu ộc t ính cĩ th ể ch ứa gi á tr ị Null ho ặc ch ứa 1 gi á tr ị ho ặc 1 t ập h ợp nhi ều gi á tr ị. 9/14/2008 8 4
  5. 9/14/2008 Thu ộộc ttc íínnhh Tên Ki ểu Bản Mơ tả DL số Ng ày sinh Date [1-1] Mỗi ng ườ i ch ỉ cĩ 1 v à ch ỉ 1 ng ày sinh. Đị a ch ỉ Char [1-n] Lúc nào c ũng ph ải c ĩ và cĩ th ể cĩ nhi ều ĐC li ên l ạc. Tên Char [0-1] Cĩ th ể kh ơng c ĩ vợ/ch ồng nh ưng n ếu c ĩ vợ/ch ồng th ì ch ỉ ph ép c ĩ một. Số con Num [1-1] Số con c ái >=0. Ng ọai ng ữ Char [0-n] Các ng ọai ng ữ cĩ th ể sử dụng. 9/14/2008 9 Thu ộộc ttc íínnhh  Các lo ại thu ộc t ính: ◦ Thu ộc t ính b ắt bu ộc v à thu ộc t ính t ùy ch ọn. ◦ Thu ộc t ính đơ n v à thu ộc t ính ph ức h ợp. ◦ Thu ộc t ính đơ n tr ị và thu ộc t ính đa tr ị. ◦ Thu ộc t ính ch ứa v à thu ộc t ính d ẫn xu ất. ◦ Thu ộc t ính kh ĩa v à thu ộc t ính kh ơng kh ĩa. ◦ Thu ộc t ính đơ n v à thu ộc t ính ph ức h ợp  Thu ộc t ính đơ n (simple attribute) l à thu ộc t ính kh ơng bị ph ân r ã th ành nhi ều thu ộc t ính kh ác.  Thu ộc t ính ph ức h ợp (composite attribute) l à thu ộc tính b ị ph ân r ã th ành nhi ều thu ộc t ính kh ác. 9/14/2008 10 5
  6. 9/14/2008 Thu ộc t ính đơ n v à thu ộc t ính ph ức h ợp Thuộc tính đơn Thuộc tính ph ức hợp 9/14/2008 11 TThhuuộộc ttc íính  Thu ộc t ính đơ n tr ị và thu ộc t ính đa tr ị: ◦ Thu ộc t ính đơ n tr ị (single-valued attribute) l à thu ộc t ính ch ỉ ch ứa m ột gi á tr ị. ◦ Thu ộc t ính đa tr ị (multivalued attribute) l à thu ộc t ính ch ứa nhi ều gi á tr ị kh ác nhau thu ộc m ột mi ền tr ị.(h ình bầu d ục n ét đơi)  Thu ộc t ính ch ứa v à thu ộc t ính d ẫn xu ất: ◦ Thu ộc t ính ch ứa (stored attribute) l à thu ộc t ính m à gi á tr ị của n ĩ kh ơng đượ c suy d ẫn t ừ các thu ộc t ính kh ác. ◦ Thu ộc t ính d ẫn xu ất (derived attribute) l à thu ộc t ính m à gi á tr ị của n ĩ đượ c suy d ẫn t ừ các thu ộc t ính kh ác.(h ình bầu d ục n ét đứ t) 9/14/2008 12 6
  7. 9/14/2008 Thu ộộc ttc íínnhh Thu ộc tính đ ơn tr ị Thu ộc tính d ẫn xu ất Thu ộc tính đa tr ị Thu ộc tính ch ứa 9/14/2008 13 KKhhĩĩaa vvàà tthhuuộộc tc t íính x áác địđị nh ((key / identifier ))  Kh ĩa là một thu ộc tính ho ặc tổ hợp các thu ộc tính dùng để xác đị nh duy nh ất một th ể hi ện của một ki ểu th ực th ể.  Thu ộc tính kh ĩa và thu ộc tính kh ơng kh ĩa: ◦ Thu ộc tính kh ĩa là thu ộc tính ở trong kh ĩa. Thu ộc tính kh ĩa đượ c gạch dướ i. ◦ Thu ộc tính kh ơng kh ĩa (non-key attribute) là thu ộc tính kh ơng ở trong kh ĩa. Thu ộc tính kh ơng kh ĩa cịn đượ c gọi là thu ộc tính mơ tả (descriptor).  Kh ĩa đơ n và kh ĩa ph ức hợp: ◦ Kh ĩa đơ n (simple key) là kh ĩa ch ỉ cĩ một thu ộc tính. ◦ Kh ĩa ph ức hợp (composite key) là kh ĩa cĩ nhi ều hơn một thu ộc tính. 9/14/2008 14 7
  8. 9/14/2008 KKhhĩĩaa ddựự ttuuyyểểnn  Kh ĩa dự tuy ển (candidate key) ◦ Kh ĩa dự tuy ển l à kh ĩa c ủa m ột ki ểu th ực th ể. ◦ Một ki ểu th ực th ể cĩ ít nh ất m ột kh ĩa d ự tuy ển.  Kh ĩa ch ính (primary key) ◦ Kh ĩa ch ính l à một kh ĩa ti êu bi ểu trong c ác kh ĩa d ự tuy ển c ủa m ột ki ểu th ực th ể. ◦ Một ki ểu th ực th ể ch ỉ cĩ một kh ĩa ch ính. ◦ Kh ĩa ch ính d ùng để li ên k ết gi ữa c ác th ực th ể. 9/14/2008 15 Khĩa Khĩa đ ơn Thu ộc tính khơng khĩa Khĩa ph ức h ợp 9/14/2008 16 8
  9. 9/14/2008 MMốốii kkếếtt hhợợp (Relationship)  Là một li ên kết lu ận lý gi ữa các th ực th ể dựa vào vi ệc ch úng tươ ng tác với nhau nh ư th ế nào.  Mối kết hợp cĩ th ể cĩ nhi ều thu ộc tính dùng để mơ tả các đặ c tính của sự li ên kết gi ữa các th ực th ể.  Hai th ực th ể cĩ th ể cĩ nhi ều ki ểu mối kết hợp gi ữa ch úng.  Đượ c bi ểu di ễn bằng hình thoi.  Các ph ươ ng ph áp xác đị nh : ◦ Bắt đầ u với một th ực th ể và xác đị nh tất cả các th ực th ể với cái mà nĩ chia sẻ các mối quan hệ. ◦ Mơ tả quan hệ với cụm độ ng từ th ích hợp ◦ Xác đị nh các yếu tố trong một tập hợp và các ph ươ ng th ức bằng vi ệc th ảo lu ận các quy tắc th ươ ng mại với sự hi ểu bi ết của ng ườ i dùng. 9/14/2008 17 MMốốii kkếếtt hhợợp Hai th ựccc thtthhể cccĩ nhi ềuuu mmm ối kkkếttt hhhợp MMMối kkkếttt hhhợp cccĩ tthhuuthu ộc tc t ínnhhnh 9/14/2008 18 9
  10. 9/14/2008 MMốốii kkếếtt hhợợp  Bậc / ng ơi c ủa m ối k ết h ợp (degree / arity of relationship) ◦ Bậc c ủa m ối k ết h ợp l à số lượ ng ki ểu th ực th ể tham gia đồ ng th ời v ào m ối k ết h ợp n ày.  Các lo ại m ối k ết h ợp: ◦ Mối li ên k ết 1-ng ơi (unary relationship) ◦ Mối li ên k ết 2-ng ơi (binary relationship) ◦ Mối li ên k ết 3-ng ơi (ternary relationship): 3 ki ểu th ực th ể đồ ng th ời tham gia v ào m ối k ết h ợp . ◦ Mối k ết h ợp c ĩ ch ứa thu ộc t ính. ◦ Nhi ều m ối k ết h ợp đị nh ngh ĩa tr ên 2 l ọai th ực th ể. ◦ Chuy ên bi ệt h ĩa – Tổng qu át h ĩa. 9/14/2008 19 MMốốii kkếếtt hhợợpp Entities of two different types related to each other One entity related to another of the Entities of three same entity type different types related to each other 9/14/2008 20 10
  11. 9/14/2008 MMốốii lliiêênn ếếkkt 1 ng ơơii 9/14/2008 21 MMốốii lliiêênn ếếkkt 2 ng ơơii 9/14/2008 22 11
  12. 9/14/2008 MMốốii lliiêênn ếếkkt 3 ng ơơii 9/14/2008 23 MMốốii kkếếtt hhợợpp ĐƠNĐ ẶTHÀNG HÀNGHĨA Ặ SốĐH Đ THÀNG MãHàng ố ượ ặ NgàyĐ ặt 1-n S L ngĐ t 0-n TênHàng ơ ặ Ngàygiao Đ nGiáĐ t ĐơnV ịTính ThànhTi ền Thu ộc t ính c ủa l ọai m ối k ết h ợp LỘTRÌNH Bắt đ ầu THÀNHPH Ố MãL ộTrình MãThànhPh ố ĐộDài TênThànhPh ố Kết thúc Hai l ọai m ối k ết h ợp đị nh ngh ĩa tr ên hai lo ại th ực th ể 9/14/2008 24 12
  13. 9/14/2008 MMốốii kkếếtt hhợợpp NHÂNVIÊN MãNV TênNV NV_TH ỜIV Ụ NV_BIÊNCH Ế NV_H ỢPĐ ỒNG Lươ ngNgày NgàyBiênCh ế NgàyKýH ợpĐ ồng Lươ ngTháng Th ờiH ạn Lươ ngTháng Chuy ên bi ệt h ĩa – Tổng qu át h ĩa 9/14/2008 25 LLưượợng s ốố ccủủaa mmốốii kkếếtt hhợợp Lượ ng số của mối kết hợp là số lượ ng th ể hi ện th ực th ể tham gia vào mối kết hợp này. Cĩ các lo ại lượ ng số sau : ◦ một - một (one-to-one): một th ực th ể a kết hợp với một th ực th ể b; một th ực th ể b kết hợp với một th ực th ể a. (M ột bi ển số xe gán cho một xe). ◦ một - nhi ều (one-to-many): một th ực th ể a kết hợp với nhi ều th ực th ể b; một th ực th ể b kết hợp với một th ực th ể a. (M ột ph ịng cĩ nhi ều nh ân vi ên) ◦ nhi ều - nhi ều (many-to-many): một th ực th ể a kết hợp với nhi ều th ực th ể b; một th ực th ể b kết hợp với nhi ều th ực th ể a. (M ột sinh vi ên đă ng ký học một ho ặc nhi ều lớp, mỗi lớp cĩ một ho ặc nhi ều sinh vi ên đă ng ký. 9/14/2008 26 13
  14. 9/14/2008 LLưượợng s ốố ccủủaa mmốốii kkếếtt hhợợp  Ràng bu ộc l ượ ng s ố (cardinality constraint) ◦ Là số lượ ng th ể hi ện c ủa th ực th ể này c ĩ th ể ho ặc ph ải k ết h ợp v ới m ột th ể hi ện c ủa th ực th ể kh ác. ◦ Lượ ng s ố nh ỏ nh ất  Nếu 0 l à tùy ch ọn (optional).  Nếu m ột ho ặc nhi ều l à bắt bu ộc (mandatory). ◦ Lượ ng s ố lớn nh ất: s ố lượ ng l ớn nh ất. 9/14/2008 27 LLưượợng s ốố ccủủaa mmốốii kkếếtt hhợợp 9/14/2008 28 14
  15. 9/14/2008 MMốốii kkếếtt hhợợp Mối li ên k ết 1-ng ơi m ột-một c ĩ lượ ng s ố tùy ch ọn Mối li ên k ết 2-ng ơi m ột-nhi ều c ĩ lượ ng s ố bắt bu ộc 9/14/2008 29 MMốốii kkếếtt hhợợpp Lượ ng s ố lớn nh ất Mối li ên k ết c ĩ lượ ng s ố tối đa x ác đị nh 9/14/2008 30 15
  16. 9/14/2008 ERD Entity-EntityEntity RelationshipRelationship Diagram  ERD l à một s ơ đồ đồ họa cho th ấy c ác m ối li ên k ết gi ữa c ác th ực th ể của h ệ th ống.  Mỗi th ực th ể là một h ình ch ữ nh ật, c ĩ nh ãn l à một danh t ừ.  Mỗi m ối li ên k ết l à một h ình thoi, c ĩ nh ãn l à một độ ng t ừ.  Các lo ại m ối li ên k ết: ◦ Một –một (1:1) ◦ Một –nhi ều (1:M) ◦ Nhi ều –nhi ều (M:N)  Một ERD đầ y đủ cho th ấy t ất c ả các m ối li ên k ết trong h ệ th ống. 9/14/2008 31 LLậậpp ơơđđồồss quan ni ệệm d ữữ lili ệệuu BBBƯỚ CCC 111 Xác đị nh danh s ách các l ọai th ực th ể (thu ộc t ính, b ản s ố, kh ĩa) BBBƯỚ CCC 222 Xác đị nh c ác l ọai m ối KH gi ữa c ác th ực th ể và ph ác th ảo s ơ đồ quan ni ệm DL BBBƯỚ CCC 333 Hịan ch ỉnh s ơ đồ quan ni ệm d ữ li ệu 9/14/2008 32 16
  17. 9/14/2008 Bướ c 1  Xác đị nh các lọai th ực th ể (cùng các thu ộc tính của chúng). ◦ Lo ại th ực th ể đặ c tr ưng cho nh ững th ực th ể tồn tại khách quan trong th ực tế :  Tác nhân: khách hàng, nhân viên, sinh viên,  Đố i tựợ ng qu ản lý: vật tư, hàng hĩa, tài sản cố đị nh,  Ch ứng từ, ph ươ ng ti ện qu ản lý: đơ n đặ t hàng, phi ếu thu/ chi ti ền mặt, phi ếu nh ập/ xu ất,  Đị a điểm: thành ph ố, cảng,  ◦ Lọai th ực th ể đặ c tr ưng cho sự tr ừu tượ ng hĩa nh ư: cơng nợ của khách hàng, lớp học, mơn học, th ời khĩa bi ểu, phịng ban, kế ho ạch, 9/14/2008 33 Bướ c 1  Vi ệc xác đị nh các lọai th ực th ể cũng cĩ th ể đượ c th ực hi ện theo cách ti ếp cận từ kết xu ất, đây là cách ti ếp cận đơ n gi ản, dễ th ực hi ện và mang tính tr ực quan cao.  Cũng từ các kết xu ất, chúng ta cĩ th ể xác đị nh đượ c các thu ộc tính của mỗi lọai th ực th ể. VD: th ực th ể HÀNGHĨA cĩ các thu ộc tính MãHàng,TênHàng, Đơ nV ịTính.  Cách ti ếp cận theo các quy trình qu ản lý cũng cĩ th ể đượ c vận dụng trong bướ c này, trong đĩ các lọai th ực th ể cĩ th ể đượ c nh ận di ện từ các tác nhân hay đố i tượ ng liên quan đế n các quy trình qu ản lý. 9/14/2008 34 17
  18. 9/14/2008 Bướ c 2  Xác đị nh các lọai mối kết hợp gi ữa các lọai th ực th ể để phác th ảo sơ đồ quan ni ệm dữ li ệu.  Cá chuyên viên tin học sẽ lần lượ t xét duy ệt (vét cạn) từng cặp lọai th ực th ể để xác đị nh cĩ hay khơng mối liên hệ ng ữ ngh ĩa (l ọai mối kết hợp) gi ữa chúng với nhau. Vi ệc xác đị nh lọai mối kết hợp gi ữa hai lo ại th ực th ể bao gồm luơn cả vi ệc xác đị nh thu ộc tính nếu cĩ, và bản số của mỗi nhánh thu ộc lo ại mối kết hợp. 9/14/2008 35 Bướ c 3  Hồn ch ỉnh sơ đồ quan ni ệm dữ li ệu, bổ xung các thu ộc tính, các lọai th ực th ể và các lọai mối kết hợp nếu cần, để làm tăng tính rõ ràng của sơ đồ quan ni ệm dữ li ệu (ch ấp nh ận trùng lắp, dư th ừa). KHÁCHHÀNG ĐƠNĐ ẶTHÀNG HÀNGHĨA 1-n MãKH SốĐH MãHàng Đặ t TênKhách NgàyĐ ặt TênHàng ĐịaCh ỉ Ngàygiao 1-1 ĐơnV ịTính Đi ệnTho ại 1-n CT_Đ ẶTHÀNG 1-n 1-1 SốTT_ĐH Chi ti ết đặ t SốLượ ngĐ ặt 1-1 Mã hàng đặ t ĐơnGiáĐ ặt ThànhTi ền 9/14/2008 36 18
  19. 9/14/2008 SSơơđđồồ quan ni ệệm d ữữ lili ệệuu  Vi ệc hịan ch ỉnh sơ đồ quan ni ệm dữ li ệu cĩ th ể đượ c th ực hi ện theo 2 hướ ng ti ếp cận sau: ◦ Sơ đồ quan ni ệm dữ li ệu đã th ể hi ện đầ y đủ tất cả các đố i tượ ng qu ản lý quan tr ọng và các tác nhân qu ản lý của ứng dụng tin học? ◦ Sơ đồ quan ni ệm dữ li ệu đã th ể hi ện đầ y đủ tất cả các quy trình nghi ệp vụ của ứng dụng tin học? 9/14/2008 37 CCáác quy t ắắc ki ểểm tra  Trong mơ hinh E-R kh ơng cĩ kh ái ni ệm kh ĩa ngo ại và nĩ đượ c thay bằng lọai mối kết hợp.  Các kho d ữ li ệu c ủa DFD ph ải ph ù hợp v ới c ác th ực th ể.  Duy nh ất bao g ồm c ác th ực th ể với nhi ều h ơn m ột tr ườ ng hợp c ủa th ơng tin.  Kh ơng bao g ồm c ác th ực th ể li ên k ết v ới s ự thi h ành c ủa h ệ th ống (ch úng s ẽ đượ c đư a v ào sau).  Tất c ả các ho ạt độ ng ph ân t ích c ĩ quan h ệ với nhau.  Các m ơ hình x ử lý ch ứa 2 th ành ph ần d ữ li ệu: C ác lu ồng d ữ li ệu v à các kho d ữ li ệu. 9/14/2008 38 19
  20. 9/14/2008 CCáác quy t ắắc ki ểểm tra  Các th ành ph ần d ữ li ệu DFD c ần ph ải c ân b ằng v ới c ác kho dữ li ệu c ủa ERD (c ác th ực th ể) v à các y ếu t ố dữ li ệu (c ác thu ộc t ính).  Nhi ều c ơng c ụ CASE cung c ấp c ác đặ c tr ưng để ki ểm tra s ự thi ếu c ân b ằng.  Ki ểm tra t ất c ả các kho d ữ li ệu v à các y ếu t ố tươ ng ứng gi ữa các m ơ hình.  Dữ li ệu m à kh ơng đượ c s ử dụng l à kh ơng c ần thi ết.  Dữ li ệu m à cĩ bỏ sĩt k ết qu ả trong h ệ th ống l à kh ơng đầ y đủ . 9/14/2008 39 CCáácc ààrrng bu ộộc tc t ịịan v ẹẹn (RBTV)  Sự dụng kh ái ni ệm r àng bu ộc t ịan v ẹn để bổ xung kh ả năng di ễn đạ t ng ữ ngh ĩa c ủa m ơ hình ER.  RBTV th ực ch ất l à nh ững quy t ắc ki ểm tra d ữ li ệu nh ằm b ảo đả m t ính đúng đắ n cho d ữ li ệu khi th ực hi ện c ác thao t ác c ập nh ật d ữ li ệu. RBTV c ĩ th ể đượ c ph át bi ểu b ằng ng ơn ng ữ tự nhi ên, h ình th ức (t ĩan h ọc)ho ặc thu ật gi ải.  Trong qu á tr ình ph ân t ích th ành ph ần d ữ li ệu c ủa ƯDTH ch úng ta c ần ph ải ph át hi ện t ất c ả các r àng bu ộc t ịan v ẹn. 9/14/2008 40 20
  21. 9/14/2008 CCáácc ààrrng bu ộộc ttc ịịan v ẹẹnn  Ràng bu ộc t ịan v ẹn v ề gi á tr ị của thu ộc t ính: l à nh ững điều ki ện thu h ẹp mi ền gi á tr ị của c ác thu ộc t ính, c ác thu ộc t ính này th ườ ng c ĩ dữ li ệu ki ểu s ố, ng ày đơi khi c ả ki ểu chu ỗi. ◦ VD: CT_ ĐƠ NH ÀNG.S ốLượ ng>0  Ràng bu ộc t ịan v ẹn li ên thu ộc t ính: m ơ tả mối quan h ệ gi ữa các thu ộc t ính c ủa c ùng m ột l ọai th ực th ể/ lo ại m ối k ết h ợp.  VD: ĐƠ NH ÀNG.Ng àyĐặ t<= ĐƠ NH ÀNG.Ng àyGiaoD ựKi ến  Ho ặc trong tr ườ ng h ợp n ếu gi á tr ị của thu ộc t ính A đượ c tính t ĩan t ừ gi á tr ị của c ác thu ộc t ính kh ác trong c ùng th ực th ể th ì cơng th ức t ính t ĩan cho thu ộc t ính A c ũng 1 RBTV li ên thu ộc t ính.  VD: CT_ ĐẶ TH ÀNG.Th ànhTi ền = CT_ ĐẶ TH ÀNG.S ốLượ ng * CT_ ĐẶ TH ÀNG. Đơ nGi á 9/14/2008 41 CCáácc ààrrng bu ộộc ttc ịịan v ẹẹnn  Ràng bu ộc t ịan v ẹn gi ữa c ác th ực th ể trong m ột l ọai th ực th ể / l ọai m ối k ết h ợp: trong th ực t ế lọai RBTV n ày r ất hay gặp , v í dụ: s ố lượ ng h ọc ph ần m ỗi SV ph ải đă ng k ý tối thi ểu l à 15. M ỗi m ỗi th ực th ể thu ộc l ọai th ực th ể ĐĂ NGK Ý sẽ tươ ng ứng v ới 1 m ơn đă ng k ý của sinh vi ên, nh ư vậy đố i với m ỗi SV th ì số lượ ng th ực th ể tươ ng ứng ph ải c ĩ ít nh ất là 15. ◦ Một d ạng đặ c bi ệt c ủa RBTV l ọai n ày l à ràng bu ộc v ề kh ĩa.  Ràng bu ộc t ịan v ẹn gi ữa c ác th ực th ể cu ả nhiu ều l ọai th ực th ể / l ọai m ối k ết h ợp : v í dụ : m ỗi chi ti ết đặ t h àng (m ột th ực th ể thu ộc CT_ Đặ tH àng) ch ỉ đượ c giao t ối đa m ột l ần (t ươ ng ứng v ới t ối đa m ột th ực th ể trong CT_GiaoH àng). 9/14/2008 42 21
  22. 9/14/2008 CCáácc ààrrng bu ộộc ttc ịịan v ẹẹnn  Ràng bu ộc t ịan v ẹn gi ữa c ác thu ộc t ính c ủa nhi ều l ọai th ực th ể / l ọai m ối k ết h ợp: ch ỉ giao nh ững m ặt h àng m à kh ách đã đặ t v à số lượ ng kh ơng v ượ t qu á số lượ ng đặ t. 9/14/2008 43 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR  Tổng c ơng ty XYZ mu ốn thi ết l ập m ột c ơ sở dữ li ệu v ề các cửa h àng c ủa c ơng ty. Nh ững c ơng ty n ày c ĩ các c ửa h àng ở nhi ều th ành ph ố kh ác nhau. V ấn đề đượ c đặ t ra l à: Ta c ĩ nên m ơ hình kh ái ni ệm th ành ph ố (n ơi c ác c ửa h àng đang kinh doanh) nh ư một thu ộc t ính c ủa th ực th ể CỬA H ÀNG hay t ạo ch úng th ành m ột th ực th ể TH ÀNH PH Ố CỬA HÀNG CỬA HÀNG Mã c ửa hàng THÀNH PH Ố Mã c ửa hàng Tên c ửa hàng Mã thành ph ố ho ặc Tên c ửa hàng Địa ch ỉ Tên thành ph ố Địa ch ỉ Tên thành ph ố Nh ững nguy ên t ắc sau gi úp ta c ĩ ch ọn l ựa th ích h ợp: Nếu kh ái ni ệm th ành ph ố cĩ thu ộc t ính m à ta quan t âm đế n trong c ơng t ác qu ản l ý th ì ch úng ta m ơ hình n ĩ nh ư một th ực th ể. 9/14/2008 44 22
  23. 9/14/2008 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR ◦ Nếu c ửa h àng c ĩ kh ả năng n ằm tr ên nhi ều th ành ph ố th ì ch úng ta m ơ hình th ành ph ố th ành th ực th ể ri êng. ◦ Nếu kh ái ni ệm th ành ph ố cĩ quan h ệ với m ột v ài t ập th ực th ể kh ác th ì ta ph ải m ơ hình ch úng th ành th ực th ể ri êng. V ì ch ỉ cĩ th ực th ể mới c ĩ quan h ệ với th ực th ể kh ác. ◦ Nếu ch úng ta c ĩ nhu c ầu l ưu tr ữ tất c ả các th ành ph ố mặc d ù các c ửa h àng ch ưa hi ện di ện ở tất c ả th ành ph ố th ì ch úng ta ph ải m ơ hình th ành ph ố th ành th ực th ể. ◦ Nếu b ốn nguy ên t ắc tr ên kh ơng c ĩ nguy ên t ắc n ào áp d ụng đượ c th ì ta m ơ hình th ành ph ố nh ư một thu ộc t ính c ủa th ực th ể CỬA H ÀNG. 9/14/2008 45 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR  Mơ hình E-R: ◦ Mỗi H ỌC VI ÊN ghi danh nhi ều 1 hay nhi ều M ƠN H ỌC. ◦ Mỗi M ƠN H ỌC đượ c ghi danh b ởi 1 hay nhi ều H ỌC VI ÊN. HỌC VIÊN MƠN H ỌC Mã h ọc viên Ghi danh vào Mã mơn h ọc Họ tên Tên mơn h ọc Địa ch ỉ Ghi danh b ởi Số tín ch ỉ Ngày sinh Ngày nh ập h ọc  Mơ hình tr ên g ặp ph ải khuy ết điểm là NNggNg ày nh ậppp hhh ọccc là thu ộc t ính g ắn li ền v ới th ực th ể HỌC VI ÊN s ẽ kh ơng h ợp l ý vì kh ơng di ễn t ả đượ c tr ườ ng h ợp h ọc vi ên h ọc c ùng l úc nhi ều m ơn h ọc. Cịn n ếu nnggng ày nh ậppp hhh ọccc là thu ộc t ính c ủa MƠN H ỌC th ì kh ơng di ễn t ả đượ c t ình tr ạng c ùng mơn h ọc nh ưng h ọc vi ên c ĩ các ng ày nh ập h ọc kh ác nhau. 9/14/2008 46 23
  24. 9/14/2008 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR  Để gi ải quy ết v ấn đề này ta ph ải đư a v ào: ◦ Tạo 1 th ực th ể làm trung gian gi ữa H ỌC VI ÊN v à MƠN HỌC g ọi l à tập k ết h ợp GHI DANH(tập th ực th ể yếu). ◦ Thu ộc t ính nh ận di ện c ủa t ập k ết h ợp l à sự kết h ợp gi ữa thu ộc t ính nh ận di ện c ủa th ực th ể HỌC VI ÊN v à MƠN HỌC. ◦ Thu ộc t ính m ơ tả của t ập k ết h ợp l à ng ày nh ập h ọc ◦ Bản s ố kết n ối c ủa t ập k ết h ợp v ới th ực th ể là một-nhi ều  Nội dung c ủa m ối k ết h ợp gi ữa c ác t ập th ực th ể là: ◦ Mỗi H ỌC VI ÊN c ĩ một hay nhi ều GHI DANH ◦ Mỗi GHI DANH thu ộc v ề một H ỌC VI ÊN 9/14/2008 47 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR ◦ Mỗi GHI DANH ghi nh ận đào t ạo v ề một M ƠN H ỌC ◦ Mỗi M ƠN H ỌC đượ c ghi nh ận đào t ạo b ởi m ột hay nhi ều GHI DANH  Các qui t ắc ph ải tu ân th ủ khi th êm t ập k ết h ợp l àm trung gian để lo ại b ỏ bản s ố kết n ối nhi ều nhi ều:  Ph ải nh ận di ện đượ c thu ộc t ính m ơ tả của t ập k ết h ợp.  Nếu c ĩ thu ộc t ính m ơ tả th ì tạo t ập k ết h ợp l àm trung gian gi ữa hai t ập th ực th ể.  Nếu kh ơng c ĩ thu ộc t ính m ơ tả th ì vẫn gi ữ nguy ên m ơ hình nh ư ban đầ u. 9/14/2008 48 24
  25. 9/14/2008 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR HỌC VIÊN MƠN H ỌC Mã h ọc viên Mã mơn h ọc Họ tên Tên mơn h ọc Địa ch ỉ Số tín ch ỉ Ngày sinh GHI DANH Mã h ọc viên Mã mơn h ọc Ngày nh ập h ọc 9/14/2008 49 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR  Một c ơng ty mong mu ốn l ưu tr ữ lý lịch c á nh ân v ề nh ân vi ên c ủa m ình nh ư sau: ◦ Cĩ hai lo ại nh ân vi ên nh ân vi ên to àn th ời gian v à nh ân vi ên b án th ời gian. Chi ti ết l ưu tr ữ về nh ân vi ên bao g ồm mã nh ân vi ên, t ên nh ân vi ên, đị a ch ỉ, ng ày sinh, ng ày v ào làm, ch ức v ụ. ◦ Đố i v ới nh ân vi ên to àn th ời gian, ch úng ta c ần l ưu tr ữ về lươ ng n ăm, th ưở ng n ăm ◦ Cịn nh ân vi ên b án th ời gian, ch úng ta l ại c ần l ưu tr ữ về đơ n gi á gi ờ cơng, đơ n gi á gi ờ làm th êm ◦ Mơ hình ER cho v ấn đề nh ân vi ên nh ư sau: 9/14/2008 50 25
  26. 9/14/2008 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR NHÂN VIÊN •Hình ch ữ nh ật của th ực th ể cha NH ÂN VI ÊN sẽ Mã nhân viên ch ứa tất cả tập th ực th ể con TO ÀN TH ỜI GIAN Tên nhân viên Địa ch ỉ và BÁN TH ỜI GIAN. Ngày sinh •Nh ững thu ộc tính chung nh ư tên nh ân vi ên, đị a Ngày vào làm ch ỉ, ng ày sinh, ng ày vào làm, ch ức vụ là thu ộc Ch ức v ụ tính của th ực th ể cha NH ÂN VI ÊN. Nh ững thu ộc TỊAN TH ỜI GIAN Mã nhân viên tính này đượ c hi ểu cho tất cả các th ực th ể con. Lươ ng năm Thu ộc tính của th ực th ể con là thu ộc tính ri êng Th ưở ng năm ch ỉ đượ c hi ểu trong th ực th ể con đĩ. • BÁN TH ỜI GIAN Mơ hình th ực th ể cha/con nh ằm di ễn tả ch ính Mã nhân viên xác hơn qui tắc qu ản lý cĩ li ên quan đế n cái tổng Đơn giá gi ờ cơng qu át và cái chuy ên bi ệt. Đơn giá gi ờ làm thêm •Cái tổng th ể và cái th ành ph ần 9/14/2008 51 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR  Sơ đồ tr ên di ễn tả cái tổng th ể và cái th ành ph ần về bản ch ất ch úng ho àn to àn kh ác với cái tổng qu át và cái chuy ên bi ệt. Khi gặp sơ đồ này ch úng ta kh ơng mơ hình ch úng th ành th ực th ể cha/con.  Từ vấn đề ta suy ra các thu ộc tính của các th ực th ể là nh ư sau:  TO ÀN TH ỜI GIAN: mã nh ân vi ên, tên nh ân vi ên, đị a ch ỉ, ng ày sinh, ng ày vào làm, ch ức danh, lươ ng năm, th ưở ng năm.  BÁN TH ỜI GIAN: mã nh ân vi ên, tên nh ân vi ên, đị a ch ỉ, ng ày sinh, ng ày vào làm, ch ức danh, đơ n gi á gi ờ cơng, đơ n gi á làm th êm. 9/14/2008 52 26
  27. 9/14/2008 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR  Trong nhi ều tr ườ ng h ợp, t ập con c ĩ th ể kh ơng c ĩ thu ộc t ính ri êng nh ưng v ẫn ph ải m ơ hình ch úng l à th ực th ể vì: ◦ Ch úng di ễn t ả qui t ắc qu ản l ý ch ính x ác h ơn ◦ Thu ộc t ính s ẽ bộc l ộ khi ch úng ta t ìm hi ểu v ấn đề kỹ hơn  Gi ả sử nh ân vi ên chia th ành t ừng lo ại. Kh ái ni ệm lo ại nh ân vi ên đượ c m ơ hình th ành th ực th ể với l ý do: ◦ Danh s ách đầ y đủ lo ại nh ân vi ên đượ c khai th ác th ướ ng xuy ên. ◦ Một lo ại m ới c ĩ th ể đượ c ghi nh ận nh ưng ch ưa c ĩ th ực th ể nào thu ộc lo ại n ày.  Bi ến đổ i th ực th ể cha/con th ành quan h ệ cĩ ba c ách bi ến đổ i sau: 9/14/2008 53 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR  1.Bi ến th ực th ể cha th ành m ột quan h ệ cĩ tất c ả thu ộc t ính chung v à bi ến m ỗi th ực th ể con th ành m ột quan h ệ cĩ các thu ộc t ính ri êng. ◦ NH ÂN VI ÊN (mã nh ân vi ên, t ên nh ân vi ên, đị a ch ỉ, ng ày sinh, ng ày v ào l àm, ch ức danh) ◦ TO ÀN TH ỜI GIAN (mã nh ân vi ên, l ươ ng n ăm, ti ền th ưở ng năm) ◦ BÁN TH ỜI GIAN (mã nh ân vi ên, đơ n gi á gi ờ cơng, đơ n gi á gi ờ làm th êm) ◦ Mơ hình quan h ệ kh ơng di ễn t ả đượ c qui t ắc qu ản l ý là một nh ân vi ên ho ặc l à to àn th ời gian ho ặc l à bán th ời gian. V ậy khi c ài đặ t v ào m ột h ệ QTCSDL ta ph ải t ạo c ác x ử lý về ràng bu ộc n ày. 9/14/2008 54 27
  28. 9/14/2008 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR  2. Bi ến m ỗi th ực th ể con th ành m ột quan h ệ cĩ thu ộc t ính chung v à thu ộc t ính ri êng c ủa th ực th ể con. Kh ơng bi ến th ực th ể cha th ành quan h ệ. ◦ NH ÂN VI ÊN TO ÀN TH ỜI GIAN (mã nh ân vi ên, , ch ức danh, l ươ ng n ăm, ti ền th ưở ng n ăm) ◦ NH ÂN VI ÊN B ÁN TH ỜI GIAN (mã nh ân vi ên, , ch ức danh, đơ n gi á gi ờ cơng, đơ n gi á gi ờ làm th êm) ◦ Mơ hình quan h ệ tạo kh ả năng nh ập m ột nh ân vi ên v ừa l à nh ân vi ên to àn th ời gian v ừa l à nh ân vi ên b án th ời gian. Vậy khi c ài đặ t v ào m ột h ệ QTCSDL ta ph ải t ạo c ác x ử lý về ràng bu ộc n ày 9/14/2008 55 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR  3. Tạo một quan hệ cĩ các thu ộc tính của th ực th ể cha và tất cả các thu ộc tính ri êng của tất cả th ực th ể con. ◦ NH ÂN VI ÊN (mã nh ân vi ên, , ch ức danh, lo ại nh ân vi ên, lươ ng năm, ti ền th ưở ng năm, đơ n gi á gi ờ cơng, đơ n gi á gi ờ làm th êm) ◦ Khi cài đặ t vào HQTCSDL ta ph ải xử lý ràng bu ộc để tr ống lươ ng năm, ti ền th ưở ng năm ho ặc để tr ống đơ n gi á gi ờ cơng, đơ n gi á gi ờ làm th êm. 9/14/2008 56 28
  29. 9/14/2008 MMộột sst ốố chch úúýý khi thi ếếtt kkếế mmơơ hhìình EE RR  Nh ững kh ía c ạnh sau gi úp ta c ĩ quy ết đị nh th ích h ợp trong vi ệc ch ọn l ựa m ột trong ba m ơ hình quan h ệ: ◦ Dữ li ệu n ào đượ c khai th ác th ườ ng xuy ên. ◦ Th ời gian đáp ứng c ủa h ệ th ống. ◦ Kh ả năng l ưu tr ữ của h ệ th ống ◦ Số lượ ng thu ộc t ính ri êng c ủa t ập th ực th ể con ◦ Kh ả năng thay đổ i c ấu tr úc c ủa CSDL. ◦ Trong th ực t ế, c ách 1 hay đượ c ch ọn 9/14/2008 57 29