Κεφάλαιο 2 MONTEΛΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.40

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

Κεφάλαιο 2 MONTEΛΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.50

Κεφάλαιο 2 MONTEΛΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ A ΜΕΡΟΣ. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1

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

Κ Κ ε ε φ φ ά ά λ λ α α ιιο ο 2 2 MONTEΛΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.58

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

Κεφάλαιο 2 MONTEΛΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ Β ΜΕΡΟΣ. Ανάπτυξη Β και το Μοντέλο E-R 1

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

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

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

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

Κλειδιά (keys) Λογικά, σκεφτόµαστε για «κλειδιά» σαν τα δεδοµένα (τα πεδία) εκείνα τα οποία µας επιτρέπουν να ξεχωρίσουµε τις διάφορες εγγραφές

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Database System Concepts and Architecture (Αρχιτεκτονική, οµές, και Μοντέλα)

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


Το σχεσιακό μοντέλο βάσεων δεδομένων

Πολιτισμική Πληροφορική: Οργάνωση και διαχείριση Πληροφοριών

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

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

Σχεσιακό Μοντέλο. Εισαγωγή. Βάσεις εδοµένων : Σχεσιακό Μοντέλο 1

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

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

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

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Θεωρία Κανονικοποίησης

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

Εισαγωγή στην πληροφορική

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

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων

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

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

Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα

E-R MODEL. lect#3. Μάθηµα 7

Σχεσιακή δοµή δεδοµένων

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Βάσεις εδοµένων. Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης. Το µοντέλο Οντοτήτων Συσχετίσεων Το Σχεσιακό Μοντέλο εδοµένων

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

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

ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ. Πετρογεωργάκης Μανούσος Σπυρόπουλος Σταύρος

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

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

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Relational Model. SQL Μαθ. #11

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Διαδικασία Ανάπτυξης ΣΔΒΔ

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

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

Επισκόπηση Σχεδίασης Σχεσιακών Βάσεων Δεδομένων

Lecture 23: Functional Dependencies and Normalization

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

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ (Relational Model) Μαθ. #10

Επισκόπηση Μαθήµατος

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

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

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

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

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

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

Εισαγωγή στο DBMS Σχεσιακό Μοντέλο Διαγράµµατα ER. Θεσσαλονίκη, Μάρτιος 2010

Σχεδιασμός μιας εφαρμογής ΒΔ: Βήματα. 1. Συλλογή και Ανάλυση Απαιτήσεων(requirement analysis)

Το εσωτερικό ενός Σ Β

Βάσεις εδοµένων. Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης ΜΟΝΤΕΛΟΠΟΙΗΣΗ Ε ΟΜΕΝΩΝ, ΚΛΑΣΙΚΑ ΜΟΝΤΕΛΑ Ε ΟΜΕΝΩΝ

Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language)

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples Ξένου Ρουμπίνη


Ασκήσεις -Επανάληψη. Βάσεις Δεδομένων

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

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

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

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

Βάσεις Δεδομένων Η γλώσσα SQL (Structured Query Language) Εισαγωγή στην SQL (2) Ιστορικά Στοιχεία. SQL - Structured Query Language (1)

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

ΠΕΛΑΤΗΣ ΠΑΡΑΓΓΕΛΙΑ ΠΡΟΪΟΝ

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

Κεφάλαιο 3 Σχεσιακό Μοντέλο

Σχεδιασµός µιας Β. Ένας απλός τρόπος αναπαράστασης δεδοµένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσµατα

Βάσεις εδοµένων. Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης ΣΥΣΤΗΜΑΤΑ ΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ

ΚΑΤΑΝΕΜΗΜΕΝΕΣ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ

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

ΙΚΤΥΩΤΟ ΜΟΝΤΕΛΟ (Network Model) Μαθ. # 15

Κανονικοποίηση. Άτυπες Οδηγίες. Παράδειγµα. Αξιολόγηση Σχεσιακών Σχηµάτων Β. Περιττές Τιµές και Ανωµαλίες Ενηµέρωσης

Εισαγωγή. Γενική Εικόνα του Μαθήµατος. Το εσωτερικό ενός Σ Β. Εισαγωγή. Εισαγωγή Σ Β Σ Β. Αρχεία ευρετηρίου Κατάλογος συστήµατος Αρχεία δεδοµένων

Κανονικοποίηση. Σημασιολογία Γνωρισμάτων. Άτυπες Οδηγίες. Παράδειγμα. Αξιολόγηση Σχεσιακών Σχημάτων ΒΔ. Περιττές Τιμές και Ανωμαλίες Ενημέρωσης

ΕΝ ΕΙΚΤΙΚΗ ΛΥΣΗ ΚΑΙ ΣΧΟΛΙΑ ΣΤΗΝ ΠΡΩΤΗ ΑΣΚΗΣΗ ΣΧΕ ΙΑΣΜΟΙ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ

Transcript:

Κεφάλαιο 2 MONTEΛΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.40

ΜΟΝΤΕΛΑ Εισαγωγικά για Μοντελοποίηση - ΤΥΠΙΚΟ ΜΟΝΤΕΛΟ - ΜΟΝΤΕΛΟ ΠΡΑΓΜΑΤΙΚΟΥ ΚΟΣΜΟΥ - ιαισθητικό Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.41

Εργαλεία για Μοντελοποίηση ΦΥΣΙΚΗ ΓΛΩΣΣΑ (Ελληνικά, Αγγλικά, Κινέζικα, κλπ.) ΜΑΘΗΜΑΤΙΚΑ (ποσότητα, ΛΟΓΙΚΗ (αιτίαση, επαγωγή, συνεπαγωγή, κλπ.) ΦΥΣΙΚΗ / ΧΗΜΕΙΑ (µοριακή δοµή, ενέργεια, κλπ.) Αιτιολογία: - Καταγραφή Πληροφορίας - Εξήγηση Συµπεριφοράς - Πρόβλεψη Συµπεριφοράς - Προσοµοίωση - Απόκρυψη Λεπτοµερειών / Αφαίρεση Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.42

Εργαλεία Μοντέλων εδοµένων - Από το «περισσότερο» στο «λιγότερο», αφαιρετικά: ΠΡΑΓΜΑΤΙΚΟΣ ΚΟΣΜΟΣ => => Ε ΟΜΕΝΑ => => ΜΟΝΤΕΛΟ - Πέραν της καταγραφής των δεδοµένων, χρειάζεται να: ΟΡΓΑΝΩΣΟΥΜΕ --- ΕΡΜΗΝΕΥΣΟΥΜΕ --- ΙΑΣΥΝ ΕΣΟΥΜΕ τα δεδοµένα Ένα ΜΟΝΤΕΛΟ Ε ΟΜΕΝΩΝ είναι ένα εργαλείο που επιτρέπει αυτή την ΑΦΑΙΡΕΣΗ (ανεξαρτήτως των συγκεκριµένων δεδοµένων) Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.43

Ερωτήσεις κατά την Μοντελοποίηση εδοµένων - Πως πρέπει να µοντελοποιήσουµε αυτό τον µικρόκοσµο? - Ποιες είναι οι βασικές συνιστώσες (components)? - Τι γνωρίζουµε για αυτές? - Πως πρέπει να οργανωθούν? - Πως συσχετίζονται? - Ποιες πληροφορίες έχουν ενδιαφέρον? - Ποιες πληροφορίες είναι άσχετες? - Σε ποιόν? - Για ποιο σκοπό? - Πόσο συχνά? - Κάτω από ποιες συνθήκες?... Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.44

Μοντέλα εδοµένων -- --Οργάνωση - Ένα ΜΟΝΤΕΛΟ Ε ΟΜΕΝΩΝ έχει τρεις βασικές συνιστώσες: ΟΜΕΣ (Structures) ΠΡΑΞΕΙΣ (Operations) ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ (Constraints) Κάθε συνιστώσα εξετάζεται στην συνέχεια µε παραδείγµατα (και) από Μαθηµατικά Μοντέλα Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.45

Οργάνωση Μοντέλου (α) (A) ΟΜΕΣ - Αντικείµενα (αφαιρετικά) - objects - Γενίκευση στα χαρακτηριστικά Παράδειγµα: Μια δοµή στα Μαθηµατικά: ΣΥΝΟΛΑ Picasso S1 Miro το σύνολο των καλλιτεχνών El Greco Gonzales S2 Picasso Thubithareta το σύνολο των Ισπανών Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.46

Οργάνωση Μοντέλου (β) (B) ΠΡΑΞΕΙΣ - χειρισµός των δοµών - δηµιουργία ΝΕΩΝ δοµών από ΠΑΛΑΙΕΣ - αλλαγή του µοντέλου από στατικό σε δυναµικό Παράδειγµα: Πράξη σε ΣΥΝΟΛΑ -- ΤΟΜΗ S1 S2 S3 το σύνολο των Ισπανών καλλιτεχνών Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.47

Οργάνωση Μοντέλου (γ) (C) ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ - Ιδιότητες που οι οµές του Μοντέλου πρέπει να ΙΚΑΝΟΠΟΙΟΥΝ Παραδείγµατα: όλοι οι καλλιτέχνες έχουν ηµεροµηνία θανάτου που ΕΠΕΤΑΙ της ηµεροµηνίας γέννησής των κανένας υπάλληλος στο µουσείο δεν έχει µισθό µεγαλύτερο του ιευθυντή ο ιευθυντής της Τράπεζας πρέπει να είναι τραπεζικός υπάλληλος Υπάρχουν 3 ειδών δοµικοί περιορισµοί: Έµφυτοι (INHERENT), Ρητοί (EXPLICIT), Συνεπαγόµενοι (IMPLICIT). Οι δοµικοί περιορισµοί είναι το εργαλείο που επιτρέπει να εκφράζονται και να παρίστανται στην βάση δεδοµένων οι κανόνες της επιχείρησης Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.48

Χρήση του Μοντέλου για Ανάπτυξη Β Από τον Μικρόκοσµο Real World Στο Μοντέλο εδοµένων Data Model Στην Βάση εδοµένων Database Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.49

Ανάπτυξη Βάσεων εδοµένων Η διαδικασία της ανάπτυξης Β Μια µακρά και επίπονη διαδικασία µετατροπής της ΓΝΩΣΗΣ ενός πραγµατικού µικρόκοσµου σε µια ΒΑΣΗ Ε ΟΜΕΝΩΝ που θα την διαχειρίζεται ένα DBMS Για εννοιολογική διευκόλυνση της όλης διαδικασίας, αυτή διακρίνεται σε συνεχόµενες αυτοτελείς διαδικασίες (ΦΑΣΕΙΣ), κάθε µια των οποίων δηµιουργεί ενδιάµεσες περιγραφές. Συλλογή Απαιτήσεων και Ανάλυση (Requirements Collection and Analysis), Εννοιολογικός Σχεδιασµός Βάσης(Conceptual Database Design), Λογικός Σχεδιασµός Βάσης (Logical Database Design), Φυσικός Σχεδιασµός Βάσης (Physical Database Design) Πλήρωση της Βάσης µε εδοµένα (Database Loading) Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.50

Πλήρης ιαδικασία Ανάπτυξης Β Ανεξάρτητα του DBMS Εξαρτώµενο του επιλεγµένου DBMS. Μικρόκοσµος (π.χ., µε Σχεσιακό Μοντέλο) Λογικό Μοντέλο -- Σχήµατα / Όψεις Απαιτήσεις Β Εννοιολογικό Μοντέλο (Σχήµα) Συλλογή Απαιτήσεων και Ανάλυση Εννοιολογικός Σχεδιασµός Βάσης (π.χ., µε E-R Model) E-R ιάγραµµα Λογικός Σχεδιασµός Βάσης Βάση εδοµένων Φυσικός Σχεδιασµός Βάσης Φυσικό Μοντέλο Εσωτερικό Σχήµα Πλήρωση Βάσης Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.51

ιαδικασία Ανάπτυξης Β (1) Συλλογή Απαιτήσεων και Ανάλυση Η πρώτη φάση ανάπτυξης της Β είναι απαραίτητη για την «εξόρυξη» των απαιτήσεων για την Βάση από περιγραφές του πραγµατικού µικρόκοσµου. Περιγραφές Μικρόκοσµου Απαιτήσεις της Βάσης Η διαδικασία είναι «δύσκολη» (εννοιολογικά) και απαιτεί εµπειρία και επιχειρηµατική γνώση (συνήθως στηρίζεται σε συνεντεύξεις, ασαφείς και ηµιτελείς περιγραφές, κλπ.) Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.52

Ενδεικτικό Παράδειγµα: Β για Εταιρεία (1) Απαιτήσεις της Βάσης για κάποια Εταιρεία Μια εταιρεία οργανώνεται σε Τµήµατα (DEPARTMENTS.) Κάθε τµήµα έχει όνοµα (name), αριθµό (number), και κάποιον υπάλληλο που είναι επικεφαλής (MANAGES) του τµήµατος. Μας ενδιαφέρει η ηµεροµηνία έναρξης της θητείας του µάνατζερ (start date). Ένα τµήµα κατανέµεται σε διάφορες τοποθεσίες (locations). Κάθε τµήµα ελέγχει έναν αριθµό από έργα( PROJECTS), όπου κάθε έργο έχει όνοµα (name), αριθµό (number ) και εκτελείται σε µια προκαθορισµένη τοποθεσία (located). Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.53

Ενδεικτικό Παράδειγµα: Β για Εταιρεία (2) Αναφορικά µε Υπαλλήλους (EMPLOYEE), κρατάµε τον αριθµό κοινωνικής ασφάλισης (social security number), διεύθυνση (address), µισθό (salary), φύλλο (sex) και ηµεροµηνία γέννησης (birth date.) Κάθε Υπάλληλος εργάζεται (WORKS FOR) σε ένα τµήµα, αλλά µπορεί να εργάζεται (WORK ON) για πολλά έργα. Επίσης, κρατάµε τις ώρες / εβδοµάδα (number of hours) που ένας υπάλληλος εργάζεται σε ένα έργο, όπως και τον / την άµεσο προϊστάµενο (direct supervisor.) Κάθε υπάλληλος µπορεί να έχει µια σειρά από εξαρτώµενα άτοµα (DEPENDENTS) Για κάθε έναν, κρατάµε όνοµα (name), ηµεροµηνία γέννησης (birth date), φύλλο (sex) και σχέση (relationship) µε τον υπάλληλο. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.54

ιαδικασία Ανάπτυξης Β (2): Σχεδιασµός Η διαδικασία συνεχίζεται µε τους ΣΧΕ ΙΑΣΜΟΥΣ Σχεδιασµός είναι η διαδικασία δηµιουργίας του ΣΧΗΜΑΤΟΣ (schema) της Βάσης εδοµένων χρησιµοποιώντας ένα επιλεγµένο Μοντέλο (σε κάποιο επίπεδο της όλης διαδικασίας) Υπάρχουν 3 αυτοτελείς σχεδιασµοί που δηµιουργούν Σχήµατα (Περιγραφές) της Βάσης. Εννοιολογικός Σχεδιασµός (Conceptual Data Model) Λογικός Σχεδιασµός Φυσικός Σχεδιασµός (Conceptual and External Schemas - Views) (Internal Schema) Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.55

ΕΝΝΟΙΟΛΟΓΙΚΟΣ ΣΧΕ ΙΑΣΜΟΣ : ηµιουργώντας ένα ιαισθητικό Μοντέλο ΕΝΝΟΙΟΛΟΓΙΚΟΣ ΣΧΕ ΙΑΣΜΟΣ (Conceptual Model) Προσπάθεια για ξεκαθάρισµα των εννοιών Εύρεση και καταγραφή των Οντοτήτων της βάσης, των µεταξύ τους Συσχετίσεων καθώς και των Εννοιολογικών Κανόνων (semantic rules) που πρέπει να ικανοποιούν ΣΤΟΧΟΣ: Μια αφαιρετική, αλλά πλήρης περιγραφή του τµήµατος του µικρόκοσµού που θα αναπαρασταθεί στην βάση δεδοµένων. Αυτή η περιγραφή γίνεται µε τη χρήση µιας ηµι-τυπικής (pseudoformal) σηµειογραφίας / συµβολισµού (notation). Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.56

ΛΟΓΙΚΟΣ ΣΧΕ ΙΑΣΜΟΣ : ηµιουργώντας τα Εξωτερικά και Λογικά (Εννοιολογικά) Σχήµατα ΛΟΓΙΚΟΣ ΣΧΕ ΙΑΣΜΟΣ ΤΗΣ ΒΑΣΗΣ Η διαδικασία µετατροπής ενός εννοιολογικού µοντέλου (διαισθητικής περιγραφής) σε ΤΥΠΙΚΑ ΣΧΗΜΑΤΑ εκφρασµένα στο επιλεγέν (υποστηριζόµενο από το DBMS) µοντέλο δεδοµένο (π.χ., Σχεσιακό Μοντέλο) Τα σχήµατα (εξωτερικά, λογικό) µαζί µε την DML προσδιορίζουν τα προγράµµατα της εφαρµογής. Μερικά Σχήµατα, αν είναι καλά σχεδιασµένα, κάνουν τις ερωταποκρίσεις ευκολότερες. Μερικά Σχήµατα, αν είναι κατάλληλα σχεδιασµένα, αποφεύγουν τους πλεονασµούς,τα προβλήµατα σε αλλαγές των δεδοµένων, κλπ. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.57

ΦΥΣΙΚΟΣ ΣΧΕ ΙΑΣΜΟΣ : ηµιουργώντας το Εσωτερικό // Φυσικό Σχήµα ΦΥΣΙΚΟΣ ΣΧΕ ΙΑΣΜΟΣ ΤΗΣ ΒΑΣΗΣ Η διαδικασία προδιαγραφών των δοµών µνήµης (αρχείων) που υλοποιούν τον λογικό σχεδιασµό και των οργανώσεων αυτών, καθώς και των δοµών ευρετηρίων (access methods) που αποτελούν το εσωτερικό σχήµα. ΣΤΟΧΟΙ: Απόδοση Απόδοση - Απόδοση Υποστήριξη του Βελτιστοποιητή Συστήµατος Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.58

ιαδικασία Ανάπτυξης Β (3): Πλήρωση της Βάσης µε εδοµένα Η τελική φάση είναι η διαδικασία DATABASE LOADING Απλά Αρχεία Φυσικό Σχήµα Βάση εδοµένων Υπάρχουν, κατά κανόνα σε όλα τα µεγάλα DBMS, βοηθητικά προγράµµατα για ΜΑΖΙΚΗ ΠΛΗΡΩΣΗ (BULK LOADING) Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.59

Αυτοµατοποίηση της Όλης ιαδικασίας ΕΡΓΑΛΕΙΑ ΓΙΑ ΑΝΑΠΤΥΞΗ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ Είναι δύσκολη να αυτοµατοποιηθούν οι πρώτες Φάσεις της διαδικασίας ανάπτυξης, αλλά για τις επόµενες φάσεις υπάρχουν πολλά και καλά υπολογιστικά εργαλεία που υποστηρίζουν αποτελεσµατικά τον σχεδιαστή της Β. Για παράδειγµα, εργαλεία που δηµιουργούν Λογικά Σχήµατα (κατά κανόνα στο Σχεσιακό Μοντέλο) από ένα Εννοιολογικό Μοντέλο (κατά κανόνα E-R) π.χ.., AD/VANCE, Blue/60, Colonel, ER-Designer, Lydia, IDEF/Leverage, MastER PLus, RIDL, Silverun, Oracle Designer / Developer, κλπ. Μερικά από αυτά δηµιουργούν και αξιολογούν το αντίστοιχο Φυσικό Σχήµα (π.χ., σε θέµατα πληρότητας και συµβατότητας) ή δηµιουργούν καταλόγους συστήµατος / λεξικά. Υπάρχουν και ΠΛΗΡΗ περιβάλλοντα ανάπτυξης (CASE) π.χ., IEW, IEF, Excelerator, CASE Product, Foundation, κλπ. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.60

Το Το Κλασσικό Μοντέλο Εννοιολογικού Σχεδιασµού: Μοντέλο Οντοτήτων-Συσχετίσεων (Entity-Relationship) Το E-R µοντέλο ήταν ο «νικητής» µεταξύ αρκετών υποψηφίων (την δεκαετία του 80) και έγινε αποδεκτό από τους ερευνητές και την αγορά για την ΑΠΛΟΤΗΤΑ (simplicity), ΣΑΦΗΝΕΙΑ (clarity) και ΓΡΑΦΙΚΟ ΣΥΜΒΟΛΙΣΜΟ (graphical notation.) που έχει. Το E-R µοντέλο είναι ένα µάλλον διαισθητικό µοντέλο που επιδιώκει να προσδιορίσει αφαιρετικά τις πληροφορίες που µια Β αποθηκεύει και οργανώνει. Όλα τα άλλα µοντέλα δεδοµένων µπορούν να κριθούν σε σχέση µε αυτά που προσφέρει το E-R µοντέλο Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.61

E-R Μοντέλο: ΣΥΝΙΣΤΩΣΕΣ ΟΜΕΣ Υπάρχουν δυο εννοιολογικές βασικές έννοιες:» Οντότητες Συγκεκριµένα αντικείµενα που υπάρχουν (ή πιστεύεται ότι υπάρχουν) και µπορούν να αναπαρασταθούν στην Β π.χ., ο ΥΠΑΛΛΗΛΟΣ Μαρία, στο ΤΜΗΜΑ Λογιστήριο,το ΠΡΟΙΟΝ Βίδες, η ΟΜΑ Α Ολυµπιακός,...» Συσχετίσεις Είναι επίσης (ειδικά) αντικείµενα που αντιστοιχούν δύο ή περισσότερες ξεχωριστές οντότητες µε ένα συγκεκριµένο νόηµα (τυπικά, µια Συσχέτιση είναι ένα ταξινοµηµένο σύνολο οντοτήτων) π.χ.,. Η Μαρία είναι ΟΠΑ ΟΣ του Ολυµπιακού, Η Μαρία ΕΡΓΑΖΕΤΑΙ στο Λογιστήριο, κλπ. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.62

E-R Μοντέλο: ΟΜΕΣ (2) Οι Οντότητες και οι Συσχετίσεις µπορούν να έχουν ΓΝΩΡΙΣΜΑΤΑ / ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ (ATTRIBUTES,) που είναι ιδιότητες που τα χαρακτηρίζουν π.χ., µια οντότητα ΥΠΑΛΛΗΛΟΣ έχει γνωρίσµατα όνοµα, ηλικία, διεύθυνση, (ενδεικτικά, Μαρία, 21, Κηφισίας 32,...) επίσης, ηµεροµηνία είναι ένα γνώρισµα της συσχέτισης ΑΝΕΙΖΟΜΑΙ (ενδεικτικά, η Μαρία ΑΝΕΙΣΤΗΚΕ στις 20 Ιουνίου ) το βιβλίο Συνήθως τα Γνωρίσµατα των Συσχετίσεων προσδιορίζουν: - Ποιος έκανε την συσχέτιση - Πότε έγινε αυτή - Πότε παύει να ισχύει, κλπ. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.63

E-R Μοντέλο: ΟΜΕΣ (3) Τα ΠΕ ΙΑ (DOMAINS) είναι σύνολα τιµών για τα γνωρίσµατα π.χ., DOMAIN OF NAMES = το σύνολο των ονοµάτων DOMAIN of WEIGHT = το σύνολο τιµών για βάρη INTEGERS FROM 0 to 220 CHAR STRINGS from 1 to 10 in length, κλπ. ΕΙ Η ΓΝΩΡΙΣΜΑΤΩΝ ΑΠΛΑ: µια οντότητα έχει ατοµική τιµή για αυτό (π.χ., φύλλο) ΣΥΝΘΕΤΑ: το γνώρισµα αποτελείται από περισσότερες τιµές (π.χ., η διεύθυνση = { ρόµος, Αριθµός, Πόλη, Χώρα} ) ΠΛΕΙΟΤΙΜΑ (MULTI-VALUED): το γνώρισµα έχει πολλαπλές τιµές (π.χ., color of a CAR, degrees of a PERSON) Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.64

E-R Μοντέλο: ΟΜΕΣ (4) Οντότητες µε ταυτόσηµα γνωρίσµατα οµαδοποιούνται σε ΤΥΠΟΥΣ ΟΝΤΟΤΗΤΩΝ (ENTITY SETS ήentity TYPES) Ενδεικτικά, all PERSONS, all DEPARTMENTS, κλπ. Συσχετίσεις ιδίου τύπου επίσης οµαδοποιούνται σε ΤΥΠΟΥΣ ΣΥΣΧΕΤΙΣΕΩΝ (RELATIONSHIP SETS ή TYPES) Ενδεικτικά, ο τύπος συσχέτισης WORKS-ON όπου συµµετέχουν οι τύποι οντοτήτων EMPLOYEE και PROJECT. ή. Ο τύπος συσχετίσεων MANAGES όπου συµµετέχουν οι τύποι οντοτήτων EMPLOYEE και DEPARTMENΤ. ή ο τύπος συσχέτισης SALE-ACT όπου συµµετέχουν οι τύποι οντοτήτων PRODUCTS, CUSTOMERS, και SALESPERSONS. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.65

ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ: Συσχετίσεις (1) ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ στο E-R Μοντέλο 1. Ιδιότητες των ΤΥΠΩΝ ΣΥΣΧΕΤΙΣΕΩΝ Περισσότεροι του ενός τύποι συσχετίσεων µπορεί να υπάρχουν µεταξύ των ιδίων τύπων οντοτήτων (multiple relationships) π,χ., WORKS-FOR και MANAGES µεταξύ EMPLOYEE και DEPARTMENT. Μια συσχέτιση µπορεί να συνδέει δύο οντότητες που ανήκουν στον ίδιο τύπο οντοτήτων (αποκαλείται, ένας αναδροµικός τύπος συσχετίσεων - recursive relationship type) π.χ., ο SUPERVISION τύπος συσχετίσεων συνδέει EMPLOYEE (στον ρόλο αυτού που επιβλέπεται) µε κάποιο άλλο EMPLOYEE (στον ρόλο του επιβλέποντα) Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.66

ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ: Συσχετίσεις (2) Ένας τύπος Συσχετίσεων έχει ΒΑΘΜΟ (relationship degree): 2 τύποι οντοτήτων ---> binary relationship 3 τύποι οντοτήτων ---> ternary relationship N τύποι οντοτήτων ---> N-ary relationship Περιορισµός Ύπαρξης (existence dependency) ορίζει αν η συµµετοχή µιας οντότητας στον τύπο συσχέτισης είναι ΟΛΙΚΗ ή ΜΕΡΙΚΗ (total or partial) π.χ., όλοι οι ΥΠΑΛΛΗΛΟΙ συµµετέχουν στην ΕΡΓΑΖΟΝΤΑΙ-ΣΕ (όλοι δουλεύουν σε ένα τµήµα) --- ΟΛΙΚΗ ενώ, Στην συσχέτιση ΙΕΥΘΥΝΩ δεν συµµετέχουν όλοι (υπάρχουν Υπάλληλοι που δεν είναι ιευθυντές) - ΜΕΡΙΚΗ Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.67

ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ: Συσχετίσεις (3) Ο ΛΟΓΟΣ ΠΛΗΘΙΚΟΤΗΤΑΣ (cardinality) ενός τύπου συσχετίσεων ορίζει το πόσες οντότητες από τον πρώτο τύπο οντοτήτων στην συσχέτιση µπορούν να συνδεθούν µε πόσες οντότητες από τον δεύτερο τύπο οντοτήτων Συγκεκριµένα: 1 : 1 PERSON married-to PERSON (συνάρτηση) 1 : N MOTHER having CHILDREN (inverse function) N : 1 N : M STUDENT reports-to ADVISOR (συνάρτηση) EMPLOYEE works-on PROJECT Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.68

ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ: Συσχετίσεις (4). 1 : 1 1 : N e1 e2 e3 e4 r1 r2 r3 r4 r5 d1 d2 d3 e1 e2 e3 e4 r1 r2 r3 r4 r5 d1 d2 d3 PERSON married-to PERSON MOTHER having CHILDREN Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.69

ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ: Συσχετίσεις (5). N : 1 N : M e1 e2 e3 e4 r1 r2 r3 r4 r5 d1 d2 d3 e1 e2 e3 e4 r1 r2 r3 r4 r5 d1 d2 d3 STUDENT reports-to ADVISOR EMPLOYEE works-for PROJECT Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.70

ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ: Γνωρίσµατα (1) 2.- Ιδιότητες των ΓΝΩΡΙΣΜΑΤΩΝ των Τύπων Ένα ΓΝΩΡΙΣΜΑ (ή σύνολο Γνωρισµάτων) ενός Τύπου Οντοτήτων / Συσχετίσεων για το οποίο κάθε οντότητα / συσχέτιση στο σύνολο πρέπει να έχει µοναδική τιµή (unique value(s) είναι ΚΛΕΙ Ι (key) (ή superkey). Ενδεικτικά, ΑΦΜ του ΥΠΑΛΛΗΛΟΥ, ΟΝΟΜΑ και ΙΕΥΘΥΝΣΗ του ΥΠΑΛΛΗΛΟΥ, ΑΦΜ και ΟΝΟΜΑ, κλπ. Ένα ΥΠΟΨΗΦΙΟ ΚΛΕΙ Ι (candidate key) είναι ένα ΕΛΑΧΙΣΤΟ (minimal) ΚΛΕΙ Ι (δηλαδή, κανένα υποσύνολο των γνωρισµάτων του δεν είναι και αυτό κλειδί) Ενδεικτικά, ΑΦΜ είναι Υποψήφιο Κλειδί για τον ΥΠΑΛΛΗΛΟ, αλλά ο συνδυασµός {ΑΦΜ, ΟΝΟΜΑ} δεν είναι. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.71

ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ: Γνωρίσµατα (2) Το ΚΥΡΙΟ ΚΛΕΙ Ι (primary key) είναι ένα από τα υποψήφια κλειδιά που ορίζεται σαν αναγνωριστής (identifier) για τον τύπο οντοτήτων / συσχετίσεων Ενδεικτικά, ΑΦΜ είναι µια καλή επιλογή Κυρίου Κλειδιού στον τύπο οντοτήτων ΥΠΑΛΛΗΛΟΣ. Ένα ΕΞΩΤΕΡΙΚΟ ΚΛΕΙ Ι (foreign key) είναι ένα σύνολο ενός ή περισσοτέρων γνωρισµάτων ενός τύπου οντοτήτων (ή συσχετίσεων) που αντιστοιχεί σε ένα ΚΥΡΙΟ ΚΛΕΙ Ι that για κάποιον άλλο τύπο οντοτήτων (ή συσχετίσεων). Ενδεικτικά, για τον τύπο συσχετίσεων ΕΡΓΑΖΕΤΑΙ, το γνώρισµα ΑΦΜ είναι Εξωτερικό Κλειδί (είναι Κύριο Κλειδί στον ΥΠΑΛΛΗΛΟ).. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.72

Το E-R Μοντέλο: Άλλες Έννοιες Αδύναµοι Τύποι Οντοτήτων (ή Εξαρτώµενοι) Ένας τύπος οντοτήτων ΧΩΡΙΣ Κλειδί Ενδεικτικά, ο τύπος DEPENDENT (έχει µόνο σηµασία σε συσχέτιση µε τον συγγενή του που δουλεύει στην Εταιρεία) Η Συσχέτιση ΓΕΝΙΚΕΥΣΗ (is-a) Η θεώρηση ενός συνόλου τύπων οντοτήτων ως ένα γενικευµένο (generic) τύπο PAINTING is-a ART-OBJECT, DRAWING is-a ART-OBJECT Το βασικό πλεονέκτηµα αυτού είναι η ιδιότητα της ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑΣ (Inheritance) των Γνωρισµάτων Ενδεικτικά, κρατάµε Γνωρίσµατα που είναι κοινά για όλα τα ART- OBJECT και δεν χρειάζεται να τα επαναλάβουµε για τα PAINTINGS και DRAWINGS κληρονοµούνται. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.73

Το E-R Μοντέλο: Γραφικός Συµβολισµός. ENTITY SET WEAK ENTITY SET is_a GENERALIZATION RELATIONSHIP SET E2 R1 E1 Total PARTICIPATION of E1 in R1 ATTRIBUTE E2 1 N R1 E1 PRIMARY KEY Cardinality ratio 1:N for E2:E1 in R1 Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.74

Περιγραφή της ΕΤΑΙΡΕΙΑΣ στο E-R (1). EMPLOYEE N 1 WORKS-FOR DEPARTMENT 1 1 1 MANAGES CONTROLS 1 N SUPERVISION supervisor supervisee 1 Dependents-of N M WORKS-ON N N PROJECT DEPENDENT Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.75

Περιγραφή της ΕΤΑΙΡΕΙΑΣ στο E-R (1) ΓΝΩΡΙΣΜΑΤΑ σε Οντότητες και Συσχετίσεις EMPLOYEE -- SSN, Name, BirthDate, Sex, Address, Salary DEPARTMENT -- Number, Name,Locations, NoOfEmployees PROJECT -- Number, Name, Location DEPENDENT -- Name, Sex, BirthDate, Relationship WORKS-ON -- HoursPerWeek MANAGES -- StartDate Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.76

Επιπλέον ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ Συναρτησιακές Εξαρτήσεις (Functional dependencies): Π.χ., Ένα ΤΜΗΜΑ δεν µπορεί να παραγγείλει δύο διαφορετικά ΠΡΟΙΟΝΤΑ από τον ίδιο ΠΡΟΜΗΘΕΥΤΗ.» εν µπορεί να εκφραστεί απευθείας στο ER µοντέλο. Η Κανονικοποίηση είναι η διαδικασία που το επιτρέπει. Εξαρτήσεις Συµµετοχής: Ειδική περίπτωση: Εξωτερικά Κλειδιά (Εκφράζονται στο ER). Π.χ., Τουλάχιστον 1 υπάλληλος πρέπει να αναφέρεται σε κάθε Προϊστάµενο. Γενικοί οµικοί Περιορισµοί: Π.χ., Ο προϋπολογισµός ενός Προϊσταµένου είναι λιγότερο του 10% του συνολικού Προϋπολογισµού όλων των τµηµάτων που Προΐσταται Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.77

Αδυναµίες του E-R Μοντέλου Έχουν προταθεί πολλά παρόµοια του E-R µοντέλα για να αντιµετωπίσουν τις εκφραστικές αδυναµίες αυτού. Π.χ., για: εν υποστηρίζεται ο ορισµός συσχέτισης µεταξύ συσχετίσεων DATE is a relationship between MONTH, DAY and YEAR EMPLOYMENT is a relationship between employee and employer HIRING is a relationship between DATE and EMPLOYMENT Σε αυτή την περίπτωση χρειάζεται AGGREGATION. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.78

Συσσώρευση (Aggregation) ssn name lot Η Συσσώρευση µας επιτρέπει να χρησιµοποιούµε έναν τύπο συσχετίσεων σαν έναν τύπο οντοτήτων για λόγους συµµετοχής σε άλλες συσχετίσεις. pid Employees Monitors started_on pbudget did until dname budget Projects Sponsors Departments Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.79

ιαδικασία Ανάπτυξης Β : Εννοιολογικό Μοντέλο Ανεξάρτητα του DBMS. Μικρόκοσµος Απαιτήσεις Β Συλλογή Απαιτήσεων και Ανάλυση Εννοιολογικός Σχεδιασµός Βάσης (π.χ., µε E-R Model) -Μετά την χρήση ενός Εννοιολογικού Μοντέλου εδοµένων, όπως το E-R, ερχόµαστε σε ένα σηµείο όπου αρχίζει η εξάρτηση από το επιλεγέν DBMS και πρέπει να γίνει η ΜΕΤΑΤΡΟΠΗ τις «διαισθητικής» περιγραφής σε µια «τυπική», που να µπορεί να εκτελεστεί από το DBMS. Εννοιολογικό Μοντέλο (Σχήµα) E-R ιάγραµµα Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.80

.. Σε αυτό το σηµείο ΕΠΙΛΕΓΟΥΜΕ το Μοντέλο εδοµένων που Υποστηρίζεται από το DBMS. Ο βασικός υποψήφιος είναι το ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ (άλλοι Υποψήφιοι ήταν το Ιεραρχικό, ή το Μοντέλο ικτύου ΛΟΓΙΚΟΣ ΣΧΕ ΙΑΣΜΟΣ Εξάρτηση από το DBMS Σχεσιακό Μοντέλο Λογικό (Εννοιολογικό) Σχήµα και Εξωτερικές Όψεις Λογικός Σχεδιασµός Βάσης εδοµένων Εννοιολογικό Σχήµα E-R διάγραµµα Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.81

Λογικός Σχεδιασµός Βάσης Όλα τα Λογικά Μοντέλα για Σχεδιασµό παριστούν τους Τύπους Οντοτήτων (στο E-R) ως ΑΡΧΕΙΑ ( Relations) Entity Set File (relation) Entity Record (Tuple) Attribute Field (attribute) Οι διαφοροποιήσεις µεταξύ λογικών µοντέλων είναι στο τρόπο παράστασης των Τύπων Συσχετίσεων Μερικά Μοντέλα (π.χ. Ιεραρχικό) επιτρέπουν µόνο συναρτησιακές συσχετίσεις (κάτι που δυσκολεύει την παράσταση N:M συσχετίσεων δύσκολη µόνο έµµεσα είναι δυνατή) ΒΑΣΙΚΕΣ ΤΕΧΝΙΚΕΣ: - Παράσταση συσχετίσεων µε ΣΧΕΣΕΙΣ (π.χ., Σχεσιακό Μοντέλο) - Παράστασή των µε ΣΥΝ ΕΣΜΟΥΣ µεταξύ αρχείων (π.χ., Μοντέλα ικτύου και Ιεραρχικό) Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.82

Παράδειγµα: Μικρό υποσύνολο της Βάσης εδοµένων µιας Εταιρείας. EMPLOYEE N WORKS-ON M PROJECT SSN Address HoursPerWeek Number Location Name Salary Name Στο E-R Μοντέλο: Μια N:M ολική συσχέτιση (WORKS-ON) µεταξύ των τύπων οντοτήτων EMPLOYEE και PROJECT Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.83

Παράδειγµα: (2) Θεωρήστε τις παρακάτω 5 πράξεις Q1: Ποιος Υπάλληλος εργάζεται στο έργο P1? Q2: Που εργάζεται ο Υπάλληλος E1? INS: Εισαγωγή πληροφοριών για ένα νέο έργο DEL: ιαγραφή του γεγονότος ότι ο Υπάλληλος E3 εργάζεται στο έργο P4 MOD: Το έργο P2 µεταφέρθηκε από την Αθήνα στην Πάτρα Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.84

ΙΕΡΑΡΧΙΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (1) ΟΜΕΣ: ΕΝΤΡΑ (TREES) Κόµβοι-Σύνδεσµοι ΠΡΑΞΕΙΣ: ΣΑΡΩΣΗ ΕΝΤΡΩΝ (προδιατεταγµένη) ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ: ελάχιστοι, οι περισσότεροι έµφυτοι από την δοµική µορφή Αντιστοιχίες µε το E-R Μοντέλο Τύπος Οντοτήτων <-> Τύπος Εγγραφής (Record Type) Οντότητα <-> Εγγραφή (Record -Segment) Γνώρισµα <-> Πεδίο (Field) Συσχέτιση <-> Γονέας Παιδί (Parent-to-child) Οι Συσχετίσεις Γονέα-Παιδιού είναι ΜΟΝΟ 1:N Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.85

ΙΕΡΑΡΧΙΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (2) ΙΕΡΑΡΧΙΚΟ ΣΧΗΜΑ EMPLOYEE SSN Name Address Salary PROJECT Number Name Location HoursPW -- Ένα Ιεραρχικό Σχήµα είναι ένα έντρο όπου κάθε κόµβος είναι ένας Τύπος Εγγραφής -Οι Σύνδεσµοι στο έντρο Παριστούν Συσχετίσεις (µόνο 1:N) -Η Σχετική τοποθέτηση των κόµβων στο έντρο υποδηλώνει και την κατεύθυνση /βαθµό της Συσχέτισης (Γονέα-Παιδιού) - Προσέξτε ότι το Γνώρισµα HoursPW της Συσχέτισης WORKS-ON έχει µεταφερθεί στο PROJECT Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.86

ΙΕΡΑΡΧΙΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (3) Παράδειγµα Β : Ένα ΑΣΟΣ από δέντρα e3 mary patras 450000... e1 john athens 300000... p2 rty athens 15 p1 xyz crete 10... p5 ytu crete 30 p4 hju patras 20 p2 rty athens 25 -οι εγγραφές είναι και αυτές έντρα (χιλιάδες) - Η M:N Συσχέτιση αντιµετωπίζεται µε Επανάληψη (Duplication) Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.87

ΙΕΡΑΡΧΙΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (4) ΠΡΑΞΕΙΣ: ιάσχιση / Σάρωση έντρων get next tree (δεδοµένου τύπου) get next child (µιας δεδοµένης εγγραφής) προδιατεταγµένη διάσχιση (pre-order tree-traversal) Πρόσβαση RECORD-AT-A-TIME Τα παραδείγµατα Q1 και Q2 (ερωταποκρίσεις), που είναι πλήρως ΣΥΜΜΕΤΡΙΚΑ εκτελούνται στο Μοντέλο (DML) µε έναν εντελώς ΑΣΥΜΜΕΤΡΙΚΟ τρόπο Αυτό έχει να κάνει µε την επιλογή του EMPLOYEE ως Γονέα και του Project ως Παιδιού (θα µπορούσε να ήταν αντίστροφα) Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.88

ΙΕΡΑΡΧΙΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (5). Q1: Employees of P1 Q2: Projects for E1 do while there are still more employees get next EMPLOYEE get next PROJECT child where Number = P1 if found then print EMPLOYEE.Name end get next EMPLOYEE where SSN = E1 do while there are still more project children of employee get next PROJECT child print PROJECT.Name end P1 E? P? E1 Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.89

ΙΕΡΑΡΧΙΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (6) ΤΡΟΠΟΠΟΙΗΣΕΙΣ INS: Εισαγωγή πληροφοριών για ένα νέο έργο - δεν είναι δυνατόν να εισαχθούν πληροφορίες για ένα νέο έργο, αν δεν υπάρχει κάποιος Υπάλληλος ήδη εργαζόµενος σε αυτό (δεν υφίσταται Παιδί χωρίς Γονέα). DEL: MOD: ιαγραφή του γεγονότος ότι ο Υπάλληλος E3 εργάζεται στο έργο P4 - Βρες το έντρο µε τον E3 στην κορυφή και διέγραψε το παιδί P4 - ΠΡΟΒΛΗΜΑ: τι γίνεται αν είναι ο τελευταίος υπάλληλος στο P4? Το έργο P2 µεταφέρθηκε από την Αθήνα στην Πάτρα - Βρες ΚΑΘΕ P2 εγγραφή και άλλαξε την τιµή της Πόλης Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.90

Μοντέλο ικτύου (DBTG-Network) (1) ΟΜΕΣ: Περιορισµένο Γράφοι (GRAPHS) µε Εγγραφές Και Συνδέσµους ΠΡΑΞΕΙΣ: Τυχαία Σάρωση Γράφων (GRAPH-TRAVERSAL ) ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ: αρκετά πολλοί, µερικοί έµφυτοι αλλά και πολλοί ρητοί. Αντιστοιχίες µε το E-R Μοντέλο Τύπος Οντοτήτων <-> Τύπος Εγγραφής (Record Type) Οντότητα <-> Εγγραφή (Record) Γνώρισµα <-> Πεδίο (Data Item) Συσχέτιση <-> Τύπος Συνόλων (DBTG-set type) συσχετίσεις Ιδιοκτήτη-Μέλους (1:N) Εγγραφές-Σύνδεσµοι χρησιµοποιούνται για N:M συσχετίσεις Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.91

Μοντέλο ικτύου (DBTG-Network) (2) DBTG-Network (CODASYL) Σχήµα EMPLOYEE WORKS ON PROJECT SSN Name Address Salary ESSN PNumber HoursPW Emp_Works-On Proj_Works-On Number Name Location -- Το Σχήµα στο Μοντέλο Είναι είναι ίκτυο, όπου κάθε Κόµβος είναι Τύπος Εγγραφής -Σύνδεσµοι παριστούν Συσχετίσεις (µόνο 1:N) και έχουν Όνοµα και Κατεύθυνση (OWNER - MEMBER) -Ειδικό Τύποι Εγγραφών είναι -Απαραίτητοι για Σχέσεις N:M (Connectors) Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.92

Μοντέλο ικτύου (DBTG-Network) (3) Παράδειγµα: Β ικτύου (Σπαγγέτι) e1 john athens 300000 e3 mary patras 450000... e4 jack athens 145000 e1 p1 10 e1 p2 15 e1 p5 30 e3 p4 20 e3 p2 25 e4 p4 40... p1 xyz crete p2 rty athens p4 hju patras p5 ytu crete... Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.93

Μοντέλο ικτύου (DBTG-Network) (4) Πράξεις: GRAPH Traversal (Navigation) find next record where... find next record within set type... Τυπική ταξινοµηµένη ιάσχιση (first, next, previous, last, κλπ.) Χρήση ΠΟΛΛΩΝ εικτών Πρόσβαση RECORD-AT-A-TIME Τα παραδείγµατα Q1 και Q2 (ερωταποκρίσεις), που είναι πλήρως ΣΥΜΜΕΤΡΙΚΑ εκτελούνται στο Μοντέλο (DML) µε έναν εντελώς ΣΥΜΜΕΤΡΙΚΟ τρόπο Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.94

Μοντέλο ικτύου (DBTG-Network) (5). Q1: Employees of P1 Q2: Projects for E1 find next PROJECT record where Number = P1 do while there are still more connector records under project find next WORKS-ON record in Proj_Works-On set find (owner) EMPLOYEE record in Emp_Works-On set print EMPLOYEE.Name end find next EMPLOYEE record where SSN = E1 do while there are still more connector records under employee find next WORKS-ON record in Emp_Works-On set find (owner) PROJECT record in Proj_Works-On set print PROJECT.Name end Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.95

Μοντέλο ικτύου (DBTG-Network) (6) ΤΡΟΠΟΠΟΙΗΣΕΙΣ INS: DEL: Εισαγωγή πληροφοριών για ένα νέο έργο - ηµιούργησε µια νέα εµφάνιση του PROJECT - στην αρχή, δεν υπάρχουν σύνδεσµοι, (Οι Ιδιοκτήτες υπάρχουν χωρίς Μέλη,) ιαγραφή του γεγονότος ότι ο Υπάλληλος E3 εργάζεται στο έργο P4 - διέγραψε την εγγραφή-σύνδεσµο (Works-On) για µε τις κατάλληλες τροποποιήσεις εικτών MOD: Το έργο P2 µεταφέρθηκε από την Αθήνα στην Πάτρα - Βρες τη µοναδική εγγραφή P2 και άλλαξε την τιµή Πόλης Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.96

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (1) ΟΜΕΣ: RELATIONS (ΣΧΕΣΕΙΣ) µία µόνο οµή ΠΡΑΞΕΙΣ: Επεξεργασία των Σχέσεων (Πινάκων) ΟΜΙΚΟΙ ΠΕΡΙΟΡΙΣΜΟΙ: λίγοι έµφυτοι (π.χ, σύνολα), πολλοί ρητοί Αντιστοιχίες µε το E-R Μοντέλο Τύπος Οντοτήτων <-> Τύπος Σχέσης (Relation) Οντότητα <-> n-πλειάδα (Tuple) Γνώρισµα <-> Γνώρισµα (Attribute) Συσχέτιση <-> Τύπος Σχέσης (Relation) Ένα ΑΠΛΟ µοντέλο µε ΙΣΧΥΡΕΣ (τυπικές) Ρίζες Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.97

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (2) Σχεσιακό Σχήµα EMPLOYEE SSN NAME ADDRESS SALARY WORKS-ON PROJECT ESSN PNUMB HRSPW NUMBER NAME LOCATION -- Ένα Σχεσιακό Σχήµα είναι ένα Σύνολο Σχέσεων, ή Πινάκων (µε όνοµα) - Τα ονόµατα των στηλών είναι τα ονόµατα των Γνωρισµάτων Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.98

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (3) Παράδειγµα Β : Σύνολο Στιγµιότυπων EMPLOYEE PROJECT SSN NAME ADDRESS SALARY e1 john athens 300000 e3 mary patras 450000 e4 jack athens 145000 NUMBER NAME LOCATION p1 xyz crete p2 rty athens p4 hju patras p5 ytu crete WORKS-ON ESSN PNUMB HRSPW e1 p1 10 e1 p2 15 e1 p5 30 e3 p4 20 e4 p4 40 e3 p2 25 Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.99

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (4) Operations: Set-Theoretic Simple Operations select records from RELATION(s) where... Το where-clause µπορεί να είναι Σύνθετο, µε πολλούς τελεστές εν υπάρχει σειρά (order) στην πρόσβαση σε δεδοµένα Πρόσβαση SET-AT-A-TIME στις εγγραφές Τα παραδείγµατα Q1 και Q2 (ερωταποκρίσεις), που είναι πλήρως ΣΥΜΜΕΤΡΙΚΑ εκτελούνται στο Μοντέλο (DML) µε έναν εντελώς ΣΥΜΜΕΤΡΙΚΟ τρόπο Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.100

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (5). Q1: Employees of P1 Q2: Projects for E1 select from EMPLOYEE, WORKS-ON relations where (WORKS-ON.Pnumb = P1 ) and (WORKS-ON.ESSN = EMPLOYEE.SSN) print EMPLOYEE.Name select from PROJECT, WORKS-ON relations where (WORKS-ON.ESSN= E1 ) and (WORKS-ON.Pnumb = PROJECT.Number) print PROJECT.Name Οι πράξεις στο Σχεσιακό Μοντέλο είναι ΚΛΕΙΣΤΕΣ (CLOSED) ηλαδή, παίρνουν ΣΧΕΣΕΙΣ και παράγουν πάλι ΣΧΕΣΕΙΣ Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.101

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ: Εισαγωγή (6) ΤΡΟΠΟΠΟΙΗΣΕΙΣ INS: DEL: MOD: Εισαγωγή πληροφοριών για ένα νέο έργο - Εισαγωγή µιας n-πλειάδας στη Σχέση PROJECT ιαγραφή του γεγονότος ότι ο Υπάλληλος E3 εργάζεται στο έργο P4 - ιαγραφή της n-πλειάδας (e2, p4, 20) από την Σχέση WORKS-ON Το έργο P2 µεταφέρθηκε από την Αθήνα στην Πάτρα - Επέλεξε την n-πλειάδα (p2, rty, athens) από το PROJECT, και άλλαξε την τιµή athens σε patras Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.102

Συγκρίσεις Μεταξύ Μοντέλων Η βασική διαφοροποίηση µεταξύ των τριών βασικών µοντέλων είναι το ΠΩΣ ΠΑΡΙΣΤΑΝΤΑΙ ΟΙ ΣΥΣΧΕΤΙΣΕΙΣ ΣΧΕΣΙΑΚΟ: Ρητά µε τις ΣΧΕΣΕΙΣ (εφόσον η συσχέτιση είναι Ν:Μ) ή / και µε έµµεσες συνδέσεις µεταξύ Σχέσεων που παρίστανται µε τα Εξωτερικά Κλειδιά (foreign keys. ) ΙΚΤΥΟΥ: Ρητές συνδέσεις µε ΣΥΝ ΕΣΜΟΥΣ (links) και εγγραφές σύνδεσης. ΣΧΟΛΙΟ: Εκφραστικότητα αλλά και εγγενής πολυπλοκότητα ΙΕΡΑΡΧΙΚΟ (ειδική περίπτωση ικτύου): Ρητές συνδέσεις µε ΣΥΝ ΕΣΜΟΥΣ. Η περίπτωση των N:M συσχετίσεων γίνεται µε διπλασιασµό εγγραφών. ΣΧΟΛΙΟ: σηµαντικές και σοβαρές αδυναµίες στην έκφραση µη-ιεραρχικών δοµών. Ι.Β. Ανάπτυξη Β και το Μοντέλο E-R Σελίδα 1.103