Εισαγωγή-Ορισµοί Ε ΟΜΕΝΑ (DATA) Γνωστά γεγονότα / περιστατικά που καταγράφονται και έχουν νόηµα ΒΑΣΗ Ε ΟΜΕΝΩΝ (DATABASE) Μία ΟΛΟΚΛΗΡΩΜΕΝΗ συλλογή εδοµ

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

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

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

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

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

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

Αντικείµενο: Θεµελιώδες πρόβληµα της επιστήµης µας εδοµένα

Αυτοματοποιημένη χαρτογραφία

Εισαγωγή στα Συστήµατα Βάσεων Δεδοµένων

Βάσεις Δεδομένων. Βασίλειος Βεσκούκης 2006 Ρ.Κορακίτης, Β.Βεσκούκης, Θ.Καραλόπουλος, Γ.Πανόπουλος

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

Διαχείριση Δεδομένων

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

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

Εισαγωγή στα Συστήματα Βάσεων εδομένων

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

Εισαγωγή. Καλή Ακαδημαϊκή Χρονιά! Τι θα δούμε σήμερα: Τα βασικά Την ιστορία (μέλλον) Μια γρήγορη ματιά στο τι θα δούμε στο μάθημα

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

Information Technology for Business

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

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

ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ

Εισαγωγή στα Συστήµατα Βάσεων Δεδοµένων

Εισαγωγή. Τι είναι µια βάση δεδοµένων;

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων. Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων

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

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

Εισαγωγή. web σελίδα Βάσεις εδοµένων Αντικείµενο: Θεµελιώδες πρόβληµα της επιστήµης µας εδοµένα

Πληροφορική ΙΙ Εισαγωγή στις Βάσεις Δεδομένων. Τμήμα Λογιστικής

Εργαστήριο Βάσεων εδοµένων. Άσκηση 2. Η βάση βιβλιοθήκη περιλαµβάνει πληροφορίες για τα βιβλία, τους συγγραφείς και τους εκδοτικούς οίκους.

Περιεχόµενα. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής. Π.Σ. ιαχείρισης Πράξεων. Π.Σ. ιοίκησης. Κατηγορίες Π.Σ. Ο κύκλος ζωής Π.Σ.

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

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

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

Διαχείριση Πολιτισμικών Δεδομένων

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

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

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

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

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 1: Ορισμοί βασικών εννοιών: Μια πρώτη μοντελοποίηση. Ευαγγελίδης Γεώργιος Τμήμα Εφαρμοσμένης Πληροφορικής

10 η Διάλεξη. Ενδεικτικές λύσεις ασκήσεων

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

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

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

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Δεδομένα και Πληροφορίες

Ενότητα 3: Διαχείριση πληροφοριακών πόρων με τη χρήση βάσεων δεδομένων

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ

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

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

Αριστοµένης Μακρής Εργαστήρια Η/Υ

ΕΡΓΑΣΙΑ. (στο µάθηµα: Τεχνολογίες Εφαρµογών ιαδικτύου του Η εξαµήνου σπουδών του Τµήµατος Πληροφορικής & Τηλ/νιών)

Μετασχηµατισµός διαγράµµατος ER σε σχεσιακό σχήµα Β

Βάσεις δεδομένων και Microsoft Access

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

Συγκριτικά Πλεονεκτήµατα Γραµµατείας 2003 έναντι Γραµµατείας 2.5

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

Εισαγωγή στα Πληροφοριακά Συστήματα

Βάσεις δεδομένων. Π. Φιτσιλής

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

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

Πληροφοριακού Συστήματος Ενημέρωσης Καιρικών Συνθηκών

Η Διαδικασία Σχεδιασμού Συστημάτων

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΙΟΙΚΗΣΗΣ. Ανάπτυξη Πληροφοριακών Συστηµάτων Επισκόπηση Π.Σ. & τεχνικές για Ανάλυση και Ανάπτυξη. πληροφοριακών συστηµάτων

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

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

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

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

Βάσεις Δεδομένων. Μιχάλης Μαλιάππης

ΜΕΡΟΣ Ι: ΓΕΩΓΡΑΦΙΚΑ Ε ΟΜΕΝΑ ΚΑΙ ΣΥΣΤΗΜΑΤΑ ΓΕΩΓΡΑΦΙΚΩΝ ΠΛΗΡΟΦΟΡΙΩΝ Η ΦΥΣΗ ΤΩΝ ΓΕΩΓΡΑΦΙΚΩΝ Ε ΟΜΕΝΩΝ...

Γιάννης Θεοδωρίδης. Εργαστήριο Πληροφοριακών Συστηµάτων.

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

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

Εισαγωγή στην Επιστήμη των Υπολογιστών

Ελληνικό Ανοικτό Πανεπιστήµιο. Η Ανάλυση και ο Σχεδιασµός στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής

Διαδικτυακές Εφαρμογές Ενότητα 1: JPA

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού

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

Πληροφοριακά Συστήµατα & Επιχειρήσεις

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΙΣΑΓΩΓΗ

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

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

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) Ενότητα Advanced Βάσεις Δεδομένων, Προχωρημένο Επίπεδο. Copyright 2013 ECDL Foundation Ref: SL_AM3_Syl2.

Α. Ερωτήσεις Ανάπτυξης

Θέματα ανακεφαλαίωσης

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

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

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

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

Πληροφοριακά Συστήµατα

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

Γλώσσες υψηλού επιπέδου Περιέχουν περισσότερες εντολές για την εκτέλεση πολύπλοκων εργασιών Τα προγράµµατα µεταφράζονται σε γλώσσα µηχανής είτε από το

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Επιβλέπων: ΠΟΤΗΡΑΚΗΣ ΑΝΤΩΝΙΟΣ

Η ΕΝΝΟΙΑ ΤΟΥ Ε ΟΜΕΝΟΥ ΚΑΙ ΤΟΥ ΤΥΠΟΥ Ε ΟΜΕΝΩΝ

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά

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

ΠΛΗΡΟΦΟΡΙΑΚΑ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

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

Transcript:

ΤΕΙ ΑΘΗΝΩΝ ΣΧΟΛΗ Σ Ο ΤΜΗΜΑ ΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2009-2010 Η/Υ ΙΙΙ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ (Θεωρία) ΜΑΘΗΜΑ 1ο Εισαγωγή στις βάσεις δεδοµένων Αθανασίου Ειρήνη, MSc 1

Εισαγωγή-Ορισµοί Ε ΟΜΕΝΑ (DATA) Γνωστά γεγονότα / περιστατικά που καταγράφονται και έχουν νόηµα ΒΑΣΗ Ε ΟΜΕΝΩΝ (DATABASE) Μία ΟΛΟΚΛΗΡΩΜΕΝΗ συλλογή εδοµένων που συσχετίζονται, η οποία αποθηκεύεται σε δευτερεύουσα Μνήµη ΣΥΣΤΗΜΑ ΙΟΙΚΗΣΗΣ / ΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ (DATABASE MANAGEMENT SYSTEM - DBMS) Μια αυτοτελής συλλογή από τµήµατα λογισµικού (προγράµµατα) για την δηµιουργία, επεξεργασία και την συντήρηση βάσεων δεδοµένων ΣΥΣΤΗΜΑ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ (DATABASE SYSTEM) Το λογισµικό (DBMS) µαζί µε τη Βάση εδοµένων 2

Μια Βάση εδοµένων... Αναπαριστά µια άποψη του πραγµατικού κόσµου Είναι δοµηµένη σε οντότητες και γνωρίσµατα ή χαρακτηριστικά Σχεδιάζεται έτσι ώστε να παρέχει ευκολότερη πρόσβαση στα δεδοµένα Ο σχεδιασµός πρέπει να λαµβάνει υπόψη τις ανάγκες των τελικών χρηστών καθώς και τις λειτουργίες που θα πρέπει να επιτελούνται 3

Παραδείγµατα Χρήσης Β Τράπεζες: Βάση δεδοµένων που διαχειρίζεται συναλλαγές και λογαριασµούς Αερογραµµές: Κρατήσεις, πρόγραµµα πτήσεων Πανεπιστήµια: Εγγραφές, αρχεία φοιτητών, βαθµοί Πωλήσεις: Πελάτες, προϊόντα, αγορές, κατάσταση αποθήκης Βιοµηχανία: Παραγωγή, στοκ, παραγγελίες, αλυσίδα παραγωγής Ανθρώπινοι πόροι: στοιχεία εργαζοµένων, ασφάλιση, φορολογία, µισθοί 4

Ιστορική Αναδροµή (1/4) 1950s (Πρώτη Γενεά - Αρχεία σε Ταινίες) batch processing, κάρτες και ταινίες (σειριακή επεξεργασία) 1960s ( εύτερη Γενεά - Αρχεία σε ίσκους) Εκτεταµένη χρήση των ίσκων»επιστηµονικό Πεδίο Βάσεων εδοµένων Πρώτα Συστήµατα Αρχείων Γενικευµένα Πακέτα Ταξινόµησης εδοµένων ειλή παρουσία Γενικευµένων Λογισµικών Πακέτων Ορισµός των εδοµένων σε Γλώσσα Προγραµµατισµού»COBOL Ανάπτυξη Συστηµάτων Β για Ιδιωτική Χρήση 5

Ιστορική Αναδροµή (2/4) 1970s Τρίτη Γενεά - Προ-Σχεσιακή (Pre-Relational) Τάση για Πρότυπα µε την CODASYL αναφορές προτύπων 1969, 73, 78, 81, 85..,»DBTG (Data Base Task Group) ΑΠΟΘΗΚΕΥΣΗ δεδοµένων ΚΑΙ ΤΩΝ ΟΡΙΣΜΩΝ τους Εµφύτευση προγραµµάτων προσπέλασης γενικής χρήσης σε HOST γλώσσα (COBOL) Συστήµατα ικτύου (NETWORK) και Ιεραρχικά (HIERARCHICAL) Θεωρητικός Ορισµός του Σχεσιακού Μοντέλου (από τον CODD) Ενδιαφέρον από την Ακαδηµαϊκή / Ερευνητική Κοινότητα (Computer Science) Καθαρός ιαχωρισµός µεταξύ «φυσικής» και «λογικής» οργάνωσης Β Θεωρητικές προσεγγίσεις σε Πρακτικά Θέµατα Λειτουργίας Τα πρώτα πιλοτικά Σχεσιακά Συστήµατα (SYSTEM-R, INGRESS) Αναγνώριση του ρόλου της Μοντελοποίησης. Χαρακτηριστικά Συστηµάτων Επεξεργασία Β σε ΧΑΜΗΛΟ επίπεδο (κακό στην παραγωγικότητα, λάθη, κλπ.) 6

Ιστορική Αναδροµή (3/4) 1980-1990s (Τετάρτη Γενεά Σχεσιακό Μοντέλο και Συστήµατα) Relational Database Systems ΥΨΗΛΟΥ επιπέδου, ισχυρότατες Γλώσσες Επεξεργασίας Αναγνώριση της Θεωρίας Βάσεων εδοµένων Αρχιτεκτονικές 3 επιπέδων To DBMS ενσωµατωµένο σε µεγάλα Συστήµατα οσοληψιών (Transactional Systems) π.χ. σε ίκτυα, Τραπεζικά συστήµατα. SQL (Structured Query Language) γλώσσα επεξεργασίας δεδοµένων Εµφάνιση των Αντικειµενοστραφών Συστηµάτων, Ευφυών Συστηµάτων, κλπ. 7

Ιστορική Αναδροµή (4/4) 1990-2000s (Πέµπτη Γενεά Μετά-Σχεσιακή Εποχή) Η εποχή των ΣΥΝΘΕΤΩΝ ΟΝΤΟΤΗΤΩΝ σε Βάσεις εδοµένων (π.χ. πολυµέσα - multimedia) Object-Relational Database Systems Εξυπηρετητές / πελάτες Κατανεµηµένες (Multidatabases) Συστήµατα σε Προσωπικούς Υπολογιστές Συστήµατα στο Internet (Web-based), Java, XML, Αποθήκες εδοµένων (Data Warehouse) 8

Το Σενάριο Επεξεργασίας µε DBMS (Σ Β ) 9

Λειτουργίες Σ Β Ορισµός µιας βάσης δεδοµένων: προδιαγραφή των τύπων, των δοµών και των περιορισµών των δεδοµένων που θα αποθηκευτούν στη Β Κατασκευή µια βάσης δεδοµένων: αποθήκευση των ίδιων των δεδοµένων Χειρισµός (manipulation) µιας βάσης δεδοµένων: υποβολή ερωτήσεων για την ανάκτηση δεδοµένων, ενηµέρωση (νέες εισαγωγές, διαγραφές ή τροποποιήσεις) Άλλες λειτουργίες: ιαµοιρασµός, προστασία από αστοχίες υλικού και λογισµικού, ασφάλεια 10

Γιατί Σ Β ; Παροχή µόνιµης αποθήκευσης Ακεραιότητα εδοµένων και Ασφάλεια Ανεξαρτησία εδοµένων Αποδοτική Προσπέλαση εδοµένων ιαχείριση εδοµένων Ταυτόχρονη προσπέλαση και «ανάρρωση» από σφάλµατα 11

Χαρακτηριστικά και Ιδιότητες των Σ Β εν θα πρέπει να περιλαµβάνει περιττά δεδοµένα (redundant data). Η βάση θα πρέπει να είναι σχεδιασµένη έτσι ώστε τα δεδοµένα που περιλαµβάνει να ανακτώνται εύκολα και γρήγορα. Η βάση θα πρέπει να χαρακτηρίζεται από σύστηµα ασφάλειας (security system) που να απαγορεύει την πρόσβαση στα δεδοµένα µη εξουσιοδοτηµένων ατόµων (προβλήµατα ασφαλείας, ποιος έχει πρόσβαση σε ποιο αρχείο). Η βάση θα πρέπει να µπορεί να διαχειρίζεται ταυτόχρονες προσπελάσεις πάνω στα ίδια δεδοµένα (concurrency control). (Όταν δεν υπάρχει έλεγχος στην ταυτόχρονη χρήση φτάνουµε σε λάθη, π.χ. δύο χρήστες διαβάζουν το υπόλοιπο του λογαριασµού και το αλλάζουν ταυτόχρονα η συνδιαλλαγή πρέπει να γίνεται πλήρως ή καθόλου) Η βάση θα πρέπει να διαθέτει σύστηµα δηµιουργίας αντιγράφων ασφαλείας των δεδοµένων που είναι καταχωρηµένα σε αυτή (backups). 12

Οι χρήστες των Σ Β ιαχειριστές (Database Administrators) Υπεύθυνοι για την διαχείριση της Βάσης (βοηθούν χρήστες να ορίζουν όψεις, επιλέγουν εναλλακτικές δοµές µνήµης και µεθόδους πρόσβασης, επίσης είναι υπεύθυνοι για την ασφάλεια και την ακεραιότητα της Βάσης, για την απόδοση του Συστήµατος, κλπ.) Σχεδιαστές (Database Designers) Υπεύθυνοι για τον Σχεδιασµό και Ανάπτυξη της Βάσης Αναλυτές Συστηµάτων και Προγραµµατιστές (Application Programmers / Systems Analysts) Αναπτύσσουν τις Εφαρµογές Τελικοί Χρήστες (End-Users) Κάνουν χρήσεις των εφαρµογών, κάνουν ερωταποκρίσεις, κλπ. Περιστασιακοί (CASUAL USERS), Παραµετρικοί (PARAMETRIC) (π.χ., ταµίας τραπέζης προκαθορισµένοι από την εφαρµογή) και Εξειδικευµένοι (SOPHISTICATED) 13

Παραδείγµατα Σ Β 14

Πλήρης ιαδικασία Ανάπτυξης Β 15

Ανάλυση Απαιτήσεων Η φάση κατά την οποία συγκεντρώνονται οι απαραίτητες πληροφορίες για: το σχεδιασµό της Βάσης εδοµένων τον καθορισµό των προδιαγραφών της εφαρµογής Οι προδιαγραφές πρέπει να καθοριστούν όσο το δυνατόν σαφέστερα και πληρέστερα, διότι: αλλαγές στις προδιαγραφές κατά τη διάρκεια της υλοποίησης καταναλώνουν χρόνο και πόρους 16

Ορισµός Βάσης εδοµένων Ορίζονται: Οι Οντότητες Τα Χαρακτηριστικά Οι µεταξύ τους Συσχετίσεις Τα Ερωτήµατα που θα θέσουµε στην βάση 17

Βήµα 1ο: Οι Οντότητες Οντότητα είναι ένα αντικείµενο που αναπαριστάται στην Β και µπορεί να διαχωριστεί πλήρως από τα υπόλοιπα δεδοµένα Αντιπροσωπεύει ένα αντικείµενο ή µια έννοια του πραγµατικού κόσµου Μια οντότητα αντιπροσωπεύει πολλά πράγµατα τα οποία µοιράζονται κοινά χαρακτηριστικά. Πχ δύο διαφορετικοί φοιτητές είναι δύο στιγµιότυπα της οντότητας Φοιτητής 18

Βήµα 2ο: Γνωρίσµατα Ένα γνώρισµα περιγράφει µία ιδιότητα κάποιας οντότητας Κατά την καταγραφή των γνωρισµάτων µιας οντότητας πρέπει να ληφθούν υπόψη όλες οι πληροφορίες που θα χρειαστεί να αποθηκευτούν για κάθε οντότητα, έτσι ώστε να επιτελούνται οι λειτουργίες που απαιτούνται από τους τελικούς χρήστες 19

Βήµα 3ο: Συσχετίσεις µεταξύ Οντοτήτων (1/2) Μια συσχέτιση µεταξύ οντοτήτων αντιπροσωπεύει µια αλληλεπίδραση µεταξύ τους. Για παράδειγµα η σχέση «σπουδάζει σε» αποτελεί µια συσχέτιση µεταξύ των οντοτήτων Σχολή και Φοιτητής Τυπικά µια συσχέτιση αντιπροσωπεύει αυτό που στον πραγµατικό κόσµο εκφράζεται µε ρήµα 20

Βήµα 3ο: Συσχετίσεις µεταξύ Οντοτήτων (2/2) Αν η συσχέτιση είναι υποχρεωτική εκφράζεται µε το ρήµα πρέπει. Πχ κάθε φοιτητής πρέπει να σπουδάζει σε µια σχολή. Αυτό είναι υποχρεωτική συσχέτιση των οντοτήτων φοιτητής και σχολή Αν η συσχέτιση δεν είναι υποχρεωτική εκφράζεται µε το ρήµα µπορεί. Πχ κάποιος φοιτητής µπορεί να έχει δανειστεί ένα βιβλίο. Αυτό είναι συσχέτιση µη υποχρεωτική µεταξύ των οντοτήτων φοιτητής και βιβλίο 21

Βήµα 4ο: Καταγραφή Πιθανών Ερωτηµάτων Η διαδικασία καταγραφής των ερωτηµάτων που απαιτούνται εξαρτάται από τις λειτουργίες που θα χρειάζεται να εκτελούνται από τη βάση Καθορίζονται από τις απαιτήσεις των τελικών χρηστών 22

Αναγνώριση Οντοτήτων και Συσχετίσεων Ο χαρακτηρισµός ενός αντικειµένου ως οντότητα ή γνώρισµα µπορεί να αποδειχτεί δύσκολος. Εξαρτάται πάντα από τις απαιτήσεις των τελικών εφαρµογών. Γενικά: Οι οντότητες περιέχουν περιγραφική πληροφορία για ένα φυσικό αντικείµενο Τα γνωρίσµατα είτε περιγράφουν, είτε ταυτοποιούν µια οντότητα Οι σχέσεις αποτελούν συσχετισµούς οντοτήτων 23

Παράδειγµα 1 (Περιγραφή 1/2) Θεωρείστε το παρακάτω σύνολο απαιτήσεων για τη βάση δεδοµένων ενός Συνεργείου Αυτοκινήτων. Το συνεργείο απασχολεί ένα σύνολο από υπαλλήλους. Για τους υπαλλήλους µας ενδιαφέρει να κρατάµε το ονοµατεπώνυµο, τη διεύθυνση, το τηλέφωνο, την ειδικότητα και το µισθό. Οι πελάτες κλείνουν ραντεβού µε το συνεργείο για την επισκευή του αυτοκινήτου τους. Για κάθε πελάτη θέλουµε να ξέρουµε: ονοµατεπώνυµο, διεύθυνση και τηλέφωνο. Για το ραντεβού κρατάµε πληροφορία για: την ηµεροµηνία, την ώρα, µια µικρή περιγραφή του προβλήµατος. Για το αυτοκίνητο θέλουµε να ξέρουµε: τη µάρκα, το µοντέλο, τη χρονολογία κατασκευής, τον αριθµό κυκλοφορίας και τον αριθµό πλαισίου του. Κάθε πελάτης µπορεί να φέρει περισσότερα από ένα αυτοκίνητα για επισκευή. 24

Παράδειγµα 1 (Περιγραφή 2/2) Σε κάθε αυτοκίνητο γίνεται µία επισκευή, για την οποία κρατάµε τα εξής στοιχεία: ηµεροµηνία έναρξης επισκευής, ηµεροµηνία λήξης επισκευής και περιγραφή. Η επισκευή γίνεται από κάποιον υπάλληλο. Το συνεργείο διαθέτει ανταλλακτικά τα οποία χρησιµοποιούνται στις επισκευές των αυτοκινήτων. Για το κάθε ανταλλακτικό κρατάµε στοιχεία για: τον τύπο, τον κωδικό, το κόστος και την ποσότητα των αποθεµάτων. Μας ενδιαφέρει να ξέρουµε ποια και πόσα ανταλλακτικά χρησιµοποιήθηκαν σε κάθε επισκευή. Κάθε επισκευή έχει ένα συνολικό κόστος που προκύπτει από το άθροισµα του κόστους των ανταλλακτικών και του κόστους εργασίας. Μας ενδιαφέρει να διατηρούµε στοιχεία για τις οφειλές κάθε πελάτη 25

Παράδειγµα 1 : Οντότητες Υπάλληλος Πελάτης Αυτοκίνητο Επισκευή Ανταλλακτικό Οφειλή 26

Παράδειγµα 1 : Χαρακτηριστικά Υπάλληλος Όνοµα Επώνυµο ιεύθυνση Τηλέφωνο Ειδικότητα Μισθό Πελάτης ΑΦΜ Τηλέφωνο Πόλη ιεύθυνση Όνοµα Επώνυµο Επισκευή Ηµ/νία έναρξης Ηµ/νία λήξης Περιγραφή Υπάλληλος Αυτοκίνητο Συνολικό κόστος 27

Παράδειγµα 1 : Συσχετίσεις Ο πελάτης Έχει οφειλές Έχει αυτοκίνητο Κλείνει ραντεβού Κατά την διάρκεια συγκεκριµένης επισκευής Επισκευάζεται αυτοκίνητο Χρησιµοποιούνται ανταλλακτικά Απασχολούνται υπάλληλοι 28

Παράδειγµα 1 : Πιθανά Ερωτήµατα Ποια ραντεβού κλείστηκαν σε συγκεκριµένη ηµεροµηνία και ποια τα χαρακτηριστικά του πελάτη που τα έκλεισε Ποια ηµεροµηνία έγινε η εισαγωγή στο συνεργείο αυτοκινήτου µε συγκεκριµένο αριθµό κυκλοφορίας Ποια ανταλλακτικά χρησιµοποιήθηκαν σε συγκεκριµένη επισκευή Ποια αυτοκίνητα έχει συγκεκριµένος πελάτης 29

Παράδειγµα 2 (Περιγραφή 1/2) Καλείστε να µηχανογραφήσετε ένα ραδιοφωνικό σταθµό. Καταγραφή όλου του προσωπικού που εργάζεται στο ραδιοφωνικό σταθµό. Για τον κάθε εργαζόµενο θα πρέπει να διατηρούνται τα προσωπικά του στοιχεία (ΑΦΜ, αριθµός ταυτότητας, ονοµατεπώνυµο, ταχυδροµική ή/και ηλεκτρονική διεύθυνση, τηλέφωνα), η θέση του στο σταθµό, η εκποµπή που πιθανό να παρουσιάζει κτλ. Καταγραφή όλων των δίσκων και των τραγουδιών που υπάρχουν στο σταθµό και σύνδεση µεταξύ τραγουδιών, δίσκων και τραγουδιστών. Επίσης, θα πρέπει να φαίνεται σε ποια ζώνη (εκποµπή και παραγωγό) αντιστοιχεί το κάθε είδος δισκογραφίας. 30

Παράδειγµα 2 (Περιγραφή 2/2)... Καταγραφή όλων των τηλεφώνων του σταθµού. Τα τηλέφωνα αυτά µπορεί να είναι των εργαζοµένων στο σταθµό, των πελατών, των δηµόσιων ή ιδιωτικών φορέων ή οποιουδήποτε άλλου σχετίζεται µε το σταθµό. Για κάθε τηλέφωνο θα πρέπει να διατηρούνται όλα τα στοιχεία που αφορούν τον κάτοχό του: ονοµατεπώνυµο, αριθµός ταυτότητας, ΑΦΜ, ταχυδροµική και ηλεκτρονική διεύθυνση, σχέση του µε την εταιρία και άλλα που θα σκεφτείτε εσείς. Καταγραφή όλων των χορηγών της κάθε εκποµπής (ένας χορηγός συνδέεται πάντα µε την εκποµπή και τον παραγωγό και προφανώς έχει ένα τηλέφωνο). Κάθε εκποµπή µπορεί να έχει από έναν µέχρι πέντε χορηγούς 31

Βάση εδοµένων Ραδιοφωνικού Σταθµού Καταγραφή όλου του προσωπικού που εργάζεται στο ραδιοφωνικό σταθµό. Για τον κάθε εργαζόµενο θα πρέπει να διατηρούνται τα προσωπικά του στοιχεία (ΑΦΜ, αριθµός ταυτότητας, ονοµατεπώνυµο, ταχυδροµική ή/και ηλεκτρονική διεύθυνση, τηλέφωνα), η θέση του στο σταθµό, η εκποµπή που πιθανό να παρουσιάζει κτλ. Καταγραφή όλων των δίσκων και των τραγουδιών που υπάρχουν στο σταθµό και σύνδεση µεταξύ τραγουδιών, δίσκων και τραγουδιστών. Επίσης, θα πρέπει να φαίνεται σε ποια ζώνη (εκποµπή και παραγωγό) αντιστοιχεί το κάθε είδος δισκογραφίας. Καταγραφή όλων των τηλεφώνων του σταθµού. Τα τηλέφωνα αυτά µπορεί να είναι των εργαζοµένων στο σταθµό, των πελατών, των δηµόσιων ή ιδιωτικών φορέων ή οποιουδήποτε άλλου σχετίζεται µε το σταθµό. Για κάθε τηλέφωνο θα πρέπει να διατηρούνται όλα τα στοιχεία που αφορούν τον κάτοχό του: ονοµατεπώνυµο, αριθµός ταυτότητας, ΑΦΜ, ταχυδροµική και ηλεκτρονική διεύθυνση, σχέση του µε την εταιρία και άλλα που θα σκεφτείτε εσείς. Καταγραφή όλων των χορηγών της κάθε εκποµπής (ένας χορηγός συνδέεται πάντα µε την εκποµπή και τον παραγωγό και προφανώς έχει ένα τηλέφωνο). Κάθε εκποµπή µπορεί να έχει από έναν µέχρι πέντε χορηγούς Εντοπίστε τις οντότητες, τα χαρακτηριστικά, τις συσχετίσεις και τα πιθανά ερωτήµατα του προβλήµατος. 32

Παράδειγµα 2 : Οντότητες Τεχνικός Υπάλληλος Γραφείου Ραδιοφωνικός Παραγωγός Χορηγός Εκποµπή Τραγούδι Καλλιτέχνης ίσκος Τηλεφωνικός Κατάλογος 33

Παράδειγµα 2 : Χαρακτηριστικά Τραγούδι Είδος µουσικής ίσκος Τραγουδιστής Τίτλος Ηµ/νια Κυκλοφορίας Ραδιοφωνικός Παραγωγός Όνοµα Επώνυµο ΑΦΜ ΑΤ Εκποµπή Χορηγός Επωνυµία ιεύθυνση Τηλέφωνο Ονοµ/µο υπευθύνο υ 34

Παράδειγµα 2 : Συσχετίσεις Ένας ή περισσότεροι χορηγοί χορηγούν µία εκποµπή Ένας ραδιοφωνικός παραγωγός τουλάχιστον παρουσιάζει µία ή περισσότερες εκποµπές Ένα τραγούδι παίζει σε κάποια εκποµπή Ένα τραγούδι ανήκει σε έναν ή περισσότερους δίσκους Ένας καλλιτέχνης έχει πολλά τραγούδια Ένας τεχνικός υποστηρίζει πολλές εκποµπές 35

Παράδειγµα 2 : Πιθανά Ερωτήµατα Σε ποιες εκποµπές παίζει ένα συγκεκριµένο τραγούδι Ποιες εκποµπές έχουν παραπάνω από έναν ραδιοφωνικό παραγωγό Ποιοι είναι οι ραδιοφωνικοί παραγωγοί στις εκποµπές που χορηγεί ένας συγκεκριµένος χορηγός Ποια είναι τα δηµοφιλέστερα τραγούδια των εκποµπών Ποιες εκποµπές υποστηρίζονται από συγκεκριµένο τεχνικό Ποια τραγούδια ακούστηκαν σε συγκεκριµένη εκποµπή 36

Παράδειγµα 3 Θέλουµε να υλοποιήσουµε µια βάση για µία βιβλιοθήκη. Θα αποθηκεύουµε πληροφορία για τα βιβλία τους συγγραφείς και τις κατηγορίες βιβλίων 37

Παράδειγµα 3 : Οντότητες Βιβλίο: Η οντότητα βιβλίο καταγράφει τα στοιχεία των βιβλίων και τα γνωρίσµατά της είναι πχ τίτλος, περίληψη, έκδοση, εξώφυλλο κλπ Συγγραφέας: Η οντότητα περιγράφει τον συγγραφέα και περιέχει τα ατοµικά στοιχεία, όπως πχ όνοµα, επώνυµο, έτος γέννησης-θανάτου, βιογραφικό, web site, κλπ Κατηγορία: Περιγράφει τις κατηγορίες στις οποίες έχουν διαχωριστεί τα βιβλία και περιέχει στοιχεία όπως όνοµα, περιγραφή κατηγορίας, (γονική κατηγορία) κλπ. 38

Παράδειγµα 3 : Χαρακτηριστικά Βιβλίο Τίτλος ISBN Έκδοση Περίληψη Εξώφυλλο Συγγραφέας Κατηγορία Ονοµασία Περιγραφή Γονική κατηγορία Συγγραφέας Όνοµα Επώνυµο Έτος γέννησης Έτος θανάτου Βιογραφικό Web site 39

Παράδειγµα 3 : Συσχέτιση Οντοτήτων Κάθε βιβλίο ανήκει σε µία κατηγορία Κάθε συγγραφέας έχει γράψει τουλάχιστον ένα βιβλίο 40

Παράδειγµα 3 : Πιθανά Ερωτήµατα Τα βιβλία που ανήκουν σε µία κατηγορία Η βιβλιογραφία ενός συγγραφέα Ο συγγραφέας ενός βιβλίου Οι υποκατηγορίες µιας κατηγορίας Οι συγγραφείς που είναι «εν ζωή» Τα βιβλία που έχουν ξεπεράσει την 10η έκδοση Τα βιβλία που περιέχουν στην περίληψή τους τις λέξεις «βάση δεδοµένων» 41