Διάλεξη 05: Εννοιολογική Σχεδίαση Βάσης Δεδομένων III (Entity Relationship Modelling) Διδάσκων: Παναγιώτης Ανδρέου

Σχετικά έγγραφα
Εννοιολογικός Σχεδιασμός Βάσεων Δεδομένων & ER-Μοντέλο. ER-Μοντέλο ER-Διαγράμματα (1 & 2) ER- Συσχετίσεις Υψηλότερου Βαθμού EER Μοντέλο & Διαγράμματα

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 6: ER III. ER Model + Enhanced ER Model

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 6: ER III. ER Model + Enhanced ER Model

Διάλεξη 08: Αντιστοίχηση Εννοιολογικού σε Σχεσιακό Μοντέλο (ER/EER to Relational) Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 04: Εννοιολογική Σχεδίαση Βάσης Δεδομένων II (Entity Relationship Modelling) Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις Δεδομένων (Databases)

Διάλεξη 03: Εννοιολογική Σχεδίαση Βάσης Δεδομένων I (Entity Relationship Modelling) Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις Δεδομένων Ι. 4 ο Φροντιστήριο. Πέρδικα Πολίνα [perdika]


Διάγραμμα Οντοτήτων - Συσχετίσεων

Μοντέλο Οντοτήτων-Συσχετίσεων. Η ανάγκη Διαγράμματα ΟΣ Σύνολα Οντοτήτων-Συσχετίσεων Απεικονίσεις Επεκτάσεις

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 5: ER II. Data Modeling Using the ER Model

Βάσεις Δεδομένων (Databases)

Διάλεξη 07: Σχεσιακό Μοντέλο II (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις Δεδομένων Ενότητα 4

Βάσεις Δεδομένων 1 Δημήτριος Τσουμάκος

Διάλεξη 06: Σχεσιακό Μοντέλο I (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

Σχεδίαση Σχεσιακών ΒΔ

Μοντέλα Οντοτήτων Συσχετίσεων 2

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 8: RM II. Relational Model. (Chapter )

Βάσεις Δεδομένων. Σταύρος Βαλσαμίδης Βάσεις Δεδομένων Διάγραμμα Ο-Σ 1

ΜΟΝΤΕΛΟΠΟΙΗΣΗ Ε ΟΜΕΝΩΝ: το E-R µοντέλο. Κωνσταντίνος Ταραµπάνης Καθηγητής γρ

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 4: ER I. Data Modeling Using the ER Model

Βάσεις Δεδομένων (Databases)

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό

Σχεδιασμός Βάσεων Δεδομένων

Η εταιρεία είναι οργανωµένη σε τµήµατα Κάθε ΤΜΗΜΑένα όνοµα, κωδικό και έναν εργαζόµενο που διευθύνει το τµήµα. Αποθηκεύεται η ηµεροµηνία που ανέλαβε

Βάσεις Δεδομένων (Databases)


Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1


Τα στοιχεία των ΠΣ στο πλαίσιο της ΔΔ Μοντέλο Δεδομένων Data Model

2. Εννοιολογική Μοντελοποίηση Δεδομένων

Μοντέλο Οντοτήτων Σχέσεων (Entity-Relationship Model)

Μετατροπή Σχήµατος Ο/Σ σε Σχεσιακό

ER Diagram Συσχετίσεις Ασθενείς Οντότητες Παράδειγμα ER.. Εργαστήριο Βάσεων Δεδομένων. Entity-Relationship Diagram (ER)

Μετατροπή Σχήματος Ο/Σ σεσχεσιακό

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ.

Απεικόνιση Διαγράμματος Οντοτήτων-Συσχετίσεων σε Σχεσιακό Μοντέλο Δεδομένων

Μοντέλο Οντοτήτων-Συσχετίσεων

Διάλεξη 02: Βάσεις Δεδομένων Εισαγωγή. Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις Δεδομένων (Databases)

Βάσεις Δεδομένων Ι. 2 ο Φροντιστήριο. Πέρδικα Πολίνα [perdika]

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Αρχεία και Βάσεις Δεδομένων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Κανόνες μετατροπής Διαγράμματος Οντοτήτων-Συσχετίσεων σε Σχεσιακό Σχήμα. Δρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ,

Βάσεις Δεδομένων Εισαγωγή

Μοντελοποίηση Πεδίου

Περιεχόμενο του μαθήματος

Μάθημα: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Διδάσκων: Καθ. Ιωάννης Βασιλείου ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ ΚΑΙ ΣΧΟΛΙΑ ΣΤΗΝ ΠΡΩΤΗ ΑΣΚΗΣΗ

Βάσεις δεδομένων. (4 ο μάθημα) Ηρακλής Βαρλάμης

Σχεσιακό Μοντέλο Περιορισμοί Μετατροπή ER σε Σχεσιακό Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Relational Model

Διδάσκων: Παναγιώτης Ανδρέου

Copyright 2007 Ramez Elmasri and Shamkant B. NavatheΕλληνικήΈκδοση ίαυλος. ιαφάνεια 4-1

1.1. Βάσεις δεδομένων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

ΕΝΝΟΙΟΛΟΓΙΚΗ ΣΧΕΔΙΑΣΗ ΔΕΔΟΜΕΝΩΝ (6)

Μετατροπή Σχήματος Ο/Σ σεσχεσιακό

Μοντέλο Οντοτήτων-Συσχετίσεων

Διδάσκων: Παναγιώτης Ανδρέου

Lecture 21: Functional Dependencies and Normalization

ΜοντέλοΟντοτήτωνΣυσχετίσεων & ΔιάγραμμαΟντοτήτων Συσχετίσεων. Μοντέλο Οντοτήτων Συσχετίσεων

Εργαστήριο Βάσεων Δεδομένων. Entity-Relationship Diagram (ER)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Μοντέλο Οντοτήτων Συσχετίσεων. Σχεδιασμός Βάσεων Δεδομένων Μαρία Χαλκίδη

Μοντέλο Οντοτήτων-Συσχετίσεων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 2: Μοντελο Συσχετίσεων Οντοτήτων, Μελέτη Περίπτωσης: Η βάση δεδομένων των CD

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

ΔΙΑΓΡΑΜΜΑ ΟΝΤΟΤΗΤΩΝ - ΣΥΣΧΕΤΙΣΕΩΝ

Σχεδίαση Βάσεων Δεδομένων

Μετατροπή Σχήµατος Ο/Σ σε Σχεσιακό

Αρχιτεκτονική Συστημάτων Βάσεων Δεδομένων. Κατηγορίες χρηστών ΣΔΒΔ Αρχιτεκτονική ANSI/SPARC Γλώσσες ερωτημάτων Μοντέλα δεδομένων Λειτουργίες ΣΔΒΔ

Βάσεις Δεδομένων ΙΙ. Διάλεξη 5 η XML και ΒΔ στο Διαδίκτυο

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Συστήματα Διαχείρισης Βάσεων Δεδομένων

Οντοκεντρικός Προγραμματισμός

Μοντέλο Οντοτήτων-Συσχετίσεων

Μάθημα: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Διδάσκων: Καθ. Ιωάννης Βασιλείου ΕΝΔΕΙΚΤΙΚΗ ΛΥΣΗ ΚΑΙ ΣΧΟΛΙΑ ΣΤΗΝ ΠΡΩΤΗ ΑΣΚΗΣΗ

Δόμηση Απαιτήσεων: Εννοιολογική Μοντελοποίηση Δεδομένων

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

Βάσεις Δεδομένων 2η εργαστηριακή άσκηση

Διάγραμμα Οντοτήτων Συσχετίσεων (ΔΟΣ) Entity Relationship Diagram (ERD)

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΣΙΑ ΠΑΝΕΠΙΣΗΜΙΟ ΚΡΗΣΗ

2. Εισαγωγή Δεδομένων σε Σχεσιακή Βάση Δεδομένων

Μοντέλο Οντοτήτων-Συσχετίσεων

ΑΡΦΕ ΑΝΣΙΚΕΙΜΕΝΟΣΡΕΥΟΤ ΠΡΟΓΡΑΜΜΑΣΙΜΟΤ. Ιωάννης Φατζηλυγερούδης Αναπληρωτής Καθηγητής Τμήμα Μηχ/κών Η/Υ και Πληροφορικής Πανεπιστήμιο Πατρών

Απεικόνιση Διαγράμματος Οντοτήτων-Συσχετίσεων σε Σχεσιακό Μοντέλο Δεδομένων

Το Σχεσιακό Μοντέλο. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εργαστήριο Βάσεων Δεδομένων. Relational Model Σχεσιακό Μοντέλο

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Διαγράμματα UML στην Ανάλυση. Μέρος Β Διαγράμματα Κλάσεων Διαγράμματα Αντικειμένων

Βάσεις Δεδομένων 1 Δημήτριος Τσουμάκος

Βάσεις δεδομένων. (2 ο μάθημα) Ηρακλής Βαρλάμης

Σχεδιασµός µιας Β. Εισαγωγή. Μετατροπή σε σχεσιακό -> είσοδο σε ένα Σ Β. Εισαγωγή. Ιδέες Ο/Σ Σχέσεις Σχεσιακό Σ Β

06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός

Στόχοι και αντικείμενο ενότητας

Entity-Relationship Model (Chen) Οντολογικό Σχεσιακό Μοντέλο

Transcript:

Διάλεξη 05: Εννοιολογική Σχεδίαση Βάσης Δεδομένων III (Entity Relationship Modelling) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Συσχετίσεις Υψηλότερου Βαθμού UML Σημειογραφία για ER Επεκταμένο Μοντέλο ΕR (EER) Διδάσκων: Παναγιώτης Ανδρέου EPL342: Databases Demetris Zeinalipour (University of Cyprus) 1

Συσχετίσεις Υψηλότερου Βαθμού Τύποι συσχετίσεων βαθμού Ν 2 οντότητες δυαδική (binary) συσχέτιση 3 οντότητες τριαδική (ternary) συσχέτιση N οντότητες Ν αδική (n ary) συσχέτιση Η συσχέτιση SUPPLY ορίζει τι PARTs προμηθεύει ένας SUPPLIER σε ένα PROJECT (και σε τι ποσότητες) Π.χ., (Supplier, Part, Project, Qty) (Lenovo, Thinkpad Τ60, SensorNet,1) (Lenovo, Thinkpad T60, Mobileware,1) (IBM, Thinkpad T60, SensorNet,2) EPL342: Databases Demetris Zeinalipour (University of Cyprus) 2

Συσχετίσεις Υψηλότερου Βαθμού (συν.) Άλλα Παραδείγματα (3 αδική) Μάθημα: Student, Subject, Room (1111, ΕΠΛ342, ΧΩΔ109) (1112, ΕΠΛ342, ΧΩΔ109). (4 αδική) Παιχνίδι: Team1, Team2, Referee, Stadium (ΑΠΟΕΛ, ΟΜΟΝΟΙΑ, Ιωάννου, ΓΣΠ) (ΑΝΟΡΘΩΣΗ, ΑΠΟΛΛΩΝΑΣ, Χρίστου, ΓΣΖ). (5 αδική) Παιχνίδι: Team1,Team2, Referee, Stadium, Aγωνιστική (ΑΠΟΕΛ, ΟΜΟΝΟΙΑ, Ιωάννου, ΓΣΠ, 7 η ) (ΑΝΟΡΘΩΣΗ, ΑΠΟΛΛΩΝΑΣ, Χρίστου, ΓΣΠ,8 η ). EPL342: Databases Demetris Zeinalipour (University of Cyprus) 3

Συσχετίσεις Υψηλότερου Βαθμού (συν.) Για την διατύπωση δομικών περιορισμών μιας n αδικής συσχέτισης προτρέπεται η χρήση του (min,max). Παράδειγμα (1,N): «Κάθε SUPPLIER συμμετέχει στη σχέση SUPPLY από 1 μέχρι Ν φορές», π.χ., (Lenovo, Thinkpad Τ60, SensorNet,1) (Lenovo, Thinkpad T60, Mobileware,1) (1,N) EPL342: Databases Demetris Zeinalipour (University of Cyprus) 4

Συσχετίσεις Υψηλότερου Βαθμού (συν.) Μετατροπή σε Πολλαπλές Δυαδικές Συσχετίσεις Πολλά εργαλεία μοντελοποίησης επιτρέπουν μόνο δυαδικές συσχετίσεις A. Για να είναι ευκολότερο να εκφραστούν οι δομικοί περιορισμοί (δηλ., λόγοι Πληθυκότητας, περιορισμοί συμμετοχής) B. Διότι δεν υπάρχει κάποιος προτυποποιημένος τρόπος μετάφρασης μιας n αδικής συσχέτισης σε σχεσιακό σχήμα Κάτι τέτοιο όμως θέλει προσοχή διότι το αποτέλεσμα μπορεί να ΜΗΝ είναι λογικά ισοδύναμο π.χ., δες επόμενο παράδειγμα EPL342: Databases Demetris Zeinalipour (University of Cyprus) 5

Μετατροπή n αδικών σε 2 αδικές σχέσεις Προσπάθεια 1 Διάσπαση των n αδικών σχέσεων σε ατομικές 2 αδικές σχέσεις Ερώτηση: Είναι ισοδύναμες αναπαραστάσεις; Απάντηση: ΌΧΙ. Παράδειγμα: Ύπαρξη (supplier, part) στο διαμορφωμένο μοντέλο δεν σημαίνει ότι υπάρχει (supplier, part, project) ενώ στο αρχικό μοντέλο είναι ρητό. EPL342: Databases Demetris Zeinalipour (University of Cyprus) 6

Μετατροπή n αδικών σε 2 αδικές σχέσεις Προσπάθεια 2 Μετατροπή n αδικών σχέσεων σε ασθενείς οντότητες Ερώτηση: Είναι ισοδύναμες αναπαραστάσεις; Απάντηση: ΝΑΙ Γιατί; Λόγω των προσδιορίζων σχέσεων, το κλειδί της SUPPLY αποτελείται από τα κλειδιά όλων των οντοτήτων που συμμετέχουν στην σχέση EPL342: Databases Demetris Zeinalipour (University of Cyprus) 7

Μετατροπή n αδικών σε 2 αδικές σχέσεις (συν.) Σημειώστε ότι είναι δυνατό να υπάρχουν και ασθενείς τύποι οντοτήτων (π.χ., Interview) οι οποίες να συμμετέχουν σε συσχετίσεις βαθμού > 2 * To Interview χαρακτηρίζεται από το Candidate.Name, Company.Cname και Interview.Dept_date EPL342: Databases Demetris Zeinalipour (University of Cyprus) 8

Μετατροπή n αδικών σε 2 αδικές σχέσεις (συν.) Σημειώστε ότι εάν μια δυαδική συσχέτιση απορρέει από μια υψηλότερου βαθμού σχέση για όλες τις περιπτώσεις τότε η δυαδική αυτή σχέση είναι περιττή και μπορεί να αφαιρεθεί π.χ., η δυαδική σχέση TAUGHT_DURING απορρέει απευθείας από την τριαδική συσχέτιση OFFERS X OFFERS TAUGHT_ DURING ιάγραμμα Venn: Συνολοκεντρική Απεικόνιση EPL342: Databases Demetris Zeinalipour (University of Cyprus) 9

Εργαλεία Μοντελοποίησης Δεδομένων Υπάρχει ένας μεγάλος αριθμός εργαλείων που χρησιμοποιούνται για την εννοιολογική σχεδίαση και για την μετατροπή του σχεδίου στο σχεσιακό σχήμα. ΘΕΤΙΚΑ: Επιταχύνουν την διαδικασία ανάπτυξης μέσω γραφικών περιβαλλόντων ανάπτυξης. Επιτρέπουν την αυτόματη ανάπτυξη του τελικού σχεσιακού σχήματος (forward engineering) Επιτρέπουν την αυτόματη ανάπτυξη του εννοιολογικού σχήματος από το σχεσιακό σχήμα (backward ή reverse engineering) ΑΡΝΗΤΙΚΑ: Δεν υπάρχει κοινή σημειογραφία ανάμεσα στα εργαλεία με αποτέλεσμα να απαιτείται χρόνος εξοικείωσης. Τα περισσότερα εργαλεία αξιοποιούν μια σχεσιακή αναπαράσταση της πληροφορίας αντί της πιο αφαιρετικής ER προσέγγισης. EPL342: Databases Demetris Zeinalipour (University of Cyprus) 10

Εργαλεία για Εννοιολογική Σχεδίαση COMPANY TOOL FUNCTIONALITY Database Design Studio (DDS) Embarcadero Technologies Oracle Popkin Software Microsoft ER Studio DB Artisan Developer 2000/Designer 2000 System Architect 2001 SQL Server Management Studio Database Modeling in ER and IDEF1X Database administration, space and security management Database modeling, application development Data modeling, object modeling, process modeling, structured analysis/design Database Modeling, Development, Maintenance Persistence Inc. Pwertier Mapping from O O to relational model SQL Server Management Studio Rational (IBM) Rational Rose UML Modeling & application generation in C++/JAVA Chillisource Sybase Database Design Studio (DDS) Enterprise Application Suite Modeling, forward engineering and Backward Engineering of relational db Supports: Chen Entity Relationship Diagram Data modeling, business logic modeling Visio Visio Enterprise Data modeling, design/reengineering Visual Basic/C++ EPL342: Databases Demetris Zeinalipour (University of Cyprus) 11

Διάγραμμα Κλάσης UML Διαγράμματα Κλάσης UML χρησιμοποιούνται σε Αντικειμενοστρεφή Σχεδίαση * Γνωρίσματα * Συσχέτιση * Λειτουργίες Σημείωση: Οι περιορισμοί min..max διαβάζονται αντίστροφα απ ότι στο διάγραμμα ER * Γνώρισμα Συσχέτισης EPL342: Databases Demetris Zeinalipour (University of Cyprus) 12

Το Επεκταμένο (Enhanced) ER (EER) To Διάγραμμα ER στην αρχική του μορφή δεν υποστήριζε την έννοια της εξειδίκευσης (specialization) και την έννοια της γενίκευσης (generalization) π.χ., Εξειδικεύσεις CS Student, Math Student, της Student To Επεκταμένο ER (ΕΕR Enhanced ER ή Extended ER) παρέχει επεκτάσεις για πληρέστερη μοντελοποίηση των απαιτήσεων Το EER συμπεριλαμβάνει αντικειμενοστρεφείς έννοιες όπως αυτή της κληρονομικότητας Ένας τύπος οντότητας μπορεί να έχει διάφορες υποκατηγοριοποιήσεις, π.χ., o EMPLOYEE μπορεί να χωριστεί σε: Βασισμένο στον τύπο εργασίας ενός EMPLOYEE π.χ., SECRETARY, ENGINEER, TECHNICIAN, Βασισμένο στον τρόπο πληρωμής ενός EMPLOYEE π.χ., SALARIED_EMPLOYEE, HOURLY_EMPLOYEE Βασισμένο σε άλλα χαρακτηριστικά Π.χ., MANAGER EPL342: Databases Demetris Zeinalipour (University of Cyprus) 13

Το Επεκταμένο (Enhanced) ER (EER) (συν.) Τα διαγράμματα παρέχουν επεκτάσεις για να αναπαραστήσουν αυτές τις υπό ομαδοποιήσεις οι οποίες ονομάζονται υποκλάσεις (subclasses) ή υποτύποι (subtypes) Υποκλάσεις της Οντότητας EMPLOYEE d (disjoint): Ανεξάρτητα Σύνολα, δηλ., (Secretary Technician = ) EPL342: Databases Demetris Zeinalipour (University of Cyprus) 14

Το Επεκταμένο (Enhanced) ER (EER) (συν.) Συσχετίσεις Υπερκλάσης / Υποκλάσης EMPLOYEE/SECRETARY EMPLOYEE/TECHNICIAN EMPLOYEE/ENGINEER Οι πιο πάνω συσχετίσεις μεταξύ υπερκλάσης / υποκλάσης ονομάζονται συχνά και συσχετίσεις IS A (relationships) Π.χ., SECRETARY IS A EMPLOYEE, TECHNICIAN IS A EMPLOYEE,. Σημειώστε ότι μια οντότητα ΔΕΝ μπορεί να υπάρχει στη βάση δεδομένων απλά ως μέλος της υποκλάσης. Μια οντότητα ΠΡΕΠΕΙ να είναι και μέλος της υπερκλάσης (δηλαδή η υποκλάση κληρονομεί όλα τα γνωρίσματα της υπερκλάσης). EPL342: Databases Demetris Zeinalipour (University of Cyprus) 15

Περιορισμοί Συμμετοχής σε EER Μια οντότητα δεν είναι υποχρεωτικό να ανήκει σε ΟΛΕΣ τις υποκλάσεις Τι σημαίνει η ΜΕΡΙΚΗ συμμετοχή; Ένας EMPLOYEE μπορεί να είναι SECRETARY είτε TECHNICIAN είτε ENGINEER ή/και MANAGER Τι σημαίνει η ΟΛΙΚΗ συμμετοχή; Κάθε EMPLOYEE πληρώνεται με την ώρα ή με τον μήνα EPL342: Databases Demetris Zeinalipour (University of Cyprus) 16

Εξειδίκευση σε EER Εξειδίκευση: η δήλωση του συνόλου υποκλάσεων μιας υπερκλάσης βάσει κάποιου αναγνωριστικού χαρακτηριστικού π.χ., Εξειδίκευση του EMPLOYEE βάσει του job type. Γνώρισμα που ορίζει την εξειδίκευση (εάν είχε μόνο ένα παιδί θα ήταν συνθήκη, π.χ., Job_type= Engineer ) EPL342: Databases Demetris Zeinalipour (University of Cyprus) 17

Γενίκευση σε EER Γενίκευση (Generalization): η αντίστροφη διεργασία της εξειδίκευσης (δηλ., δήλωση υπερκλάσης από υποκλάσεις) γενίκευση EPL342: Databases Demetris Zeinalipour (University of Cyprus) 18

Περιορισμοί με Γενικεύσεις/Εξειδικεύσεις Οντότητες, Εξειδικεύσεις και Γενικεύσεις ονομάζονται Κλάσεις (Classes) Υπάρχουν δυο είδη περιορισμών που εφαρμόζονται σε εξειδικεύσεις/γενικεύσεις: Περιορισμός Μη Επικάλυψης (Disjointness Constraint): d (disjoint): Μη Επικάλυψης ( Υποκλάσεων = ) ή o (overlap): Επικάλυψης (( Υποκλάσεων <> ) ) Περιορισμός Πληρότητας ή Συμμετοχής (Completeness Constraint): Ολική Συμμετοχή (Total) Υπερκλάσης ή Μερική Συμμετοχή (Partial) Υπερκλάσης Σημειώστε ότι το αντίστροφο ισχύει εξ ορισμού: κάθε Υποκλάση έχει ολική συμμετοχή στην συσχέτιση με την υπερκλάση. EPL342: Databases Demetris Zeinalipour (University of Cyprus) 19

Περιορισμός Μη Επικάλυψης (Disjointness) EPL342: Databases Demetris Zeinalipour (University of Cyprus) 20

Περιορισμός Επικάλυψης (Overlap) Επιπλέον υπάρχει περιορισμός ολικής συμμετοχής (κάθε PART ανήκει σε 1 ή περισσότερες υποκατηγορίες Συνεπώς, υπάρχουν τέσσερεις συνδυασμοί εξειδίκευσης/γενίκευσης: Disjoint, total (d + διπλή γραμμή) Disjoint, partial (d + μονή γραμμή) Overlapping, total (ο + διπλή γραμμή) Overlapping, partial (ο + μονή γραμμή) EPL342: Databases Demetris Zeinalipour (University of Cyprus) 21

Ιεραρχίες και Πλέγματα Μια υποκλάση μπορεί να εξειδικεύεται περαιτέρω δημιουργώντας μια Iεραρχία (hierarchy) ή Πλέγμα (lattice) Ιεραρχία (Hierarchy): Κάθε κόμβος (κλάση) έχει ένα γονέα (δηλαδή μια δενδρική ιεραρχία) Μονή Κληρονομικότητα (single inheritance); Πλέγμα (Lattice): Κάθε κόμβος (κλάση) μπορεί να έχει πολλαπλούς γονείς (δηλαδή ένας γράφος) Πολλαπλή Κληρονομικότητα (multiple inheritance) EPL342: Databases Demetris Zeinalipour (University of Cyprus) 22

Παράδειγμα Πλέγματος I Ένας Engineering Manager κληρονομεί γνωρίσματα από τον Engineer, Manager και Salaried_Employee. Πλέγμα/Lattice Μηεπικαλυψη Μηεπικάλυψη, ολική ιαμοιραζόμενη Υποκλάση (Shared Subclass) (γνωρίσματα κληρονομούνται μόνο 1 φορά) EPL342: Databases Demetris Zeinalipour (University of Cyprus) 23

Παράδειγμα Πλέγματος II Επικάλυψη Μη-Επικάλυψη Μη-Επικάλυψη Πολλαπλή Κληρονομικότητα (shared subclass) Μη-Επικάλυψη EPL342: Databases Demetris Zeinalipour (University of Cyprus) 24