Μοντέλο δεδομένων μιας αντικειμενοστραφής βάσης δεδομένων. Αντικειμενοστραφή μοντέλο δεδομένων. Λιγότερη ανάγκη για συνδέσεις

Αντικειμενοστραφή μοντέλο δεδομένων

Το αντικειμενοστραφή μοντέλο δεδομένων είναι μια επέκταση των διατάξεων του αντικειμενοστρεφούς προγραμματισμού (ενώ το σχεσιακό μοντέλο προέκυψε με βάση τη θεωρία συνόλων, ακριβώς ως μοντέλο δεδομένων). Το Object Database Management Group ανέπτυξε το πρότυπο ODMG-93 (Object Database Management Group). Αυτό το πρότυπο δεν έχει ακόμη εφαρμοστεί πλήρως.

Η δομή μιας αντικειμενοστραφής βάσης δεδομένων αναπαρίσταται γραφικά ως δέντρο, οι κόμβοι του οποίου είναι αντικείμενα. Η ορατή δομή ενός αντικειμένου καθορίζεται από τις ιδιότητες της κλάσης του. Τάξηπεριλαμβάνει αντικείμενα, ενώ η δομή και η συμπεριφορά των αντικειμένων της ίδιας κλάσης είναι ίδια. Κάθε αντικείμενο, δηλαδή ένα στιγμιότυπο μιας κλάσης, θεωρείται απόγονος του αντικειμένου στο οποίο ορίζεται ως ιδιότητα. Ιδιότητες αντικειμένου- είτε ένας τυπικός τύπος, όπως συμβολοσειρά, είτε ένας τύπος κλάσης κατασκευασμένος από τον χρήστη. Η συμπεριφορά των αντικειμένων καθορίζεται χρησιμοποιώντας μεθόδους. Μέθοδοςείναι μια συγκεκριμένη λειτουργία που μπορεί να εφαρμοστεί σε ένα αντικείμενο.

Ως παράδειγμα, λάβετε υπόψη τη βάση δεδομένων «ΒΙΒΛΙΟΘΗΚΗ» (Εικ. 4.4). Για κάθε αντικείμενο ορίζονται οι ιδιότητες, οι τύποι και οι τιμές τους. Στη βάση δεδομένων:

"ΒΙΒΛΙΟΘΗΚΗ" - γονέας (πρόγονος) για "ΣΥΝΔΡΟΜΗ", "ΚΑΤΑΛΟΓΟΣ", "ΕΚΔΟΣΗ";

Ο «ΚΑΤΑΛΟΓΟΣ» είναι ο μητρικός του «ΒΙΒΛΙΟΥ».


«ΒΙΒΛΙΟ» – διαφορετικά αντικείμενα μπορεί να έχουν τους ίδιους ή διαφορετικούς γονείς. Εάν είναι ο ίδιος γονέας (ίδιος συγγραφέας), τότε οι αριθμοί πρόσβασης είναι διαφορετικοί, αλλά το isbn, το UDC, ο τίτλος και ο συγγραφέας είναι τα ίδια.

Η λογική δομή μιας αντικειμενοστραφής βάσης δεδομένων είναι παρόμοια με μια ιεραρχική, η κύρια διαφορά είναι στις μεθόδους χειρισμού δεδομένων. Μπορείτε να εκτελέσετε ενέργειες στη βάση δεδομένων, όπως λογικές πράξεις, ενισχυμένες με αντικειμενοστρεφείς μεθόδους ενθυλάκωσης, κληρονομικότητας και πολυμορφισμού.

Ενθυλάκωσηπεριορίζει το εύρος ενός ονόματος ιδιοκτησίας στα όρια του αντικειμένου στο οποίο ορίζεται. Έτσι, εάν το ακίνητο προστεθεί στον «ΚΑΤΑΛΟΓΟ» τηλέφωνοσυγγραφέας του βιβλίου, στη συνέχεια αποκτώνται ομοίως στις «ΣΥΝΔΡΟΜΗ» και «ΚΑΤΑΛΟΓΟΣ». Η έννοια μιας ιδιότητας θα καθοριστεί από το αντικείμενο στο οποίο είναι ενθυλακωμένη.

Κληρονομία, αντίστροφα, επεκτείνει το πεδίο εφαρμογής του ακινήτου σε όλα τα παιδιά του αντικειμένου. Έτσι, σε όλα τα αντικείμενα του τύπου "BOOK" που είναι απόγονοι του "DIRECTORY" μπορούν να εκχωρηθούν οι ιδιότητες του γονικού isbn, UDC, τίτλος και συγγραφέας.

Πολυφορμισμόςσημαίνει την ικανότητα του ίδιου κώδικα προγράμματος να λειτουργεί με διαφορετικούς τύπους δεδομένων. Με άλλα λόγια, σημαίνει ότι επιτρέπεται για αντικείμενα διαφορετικών τύπων να έχουν μεθόδους - διαδικασίες και συναρτήσεις - με τα ίδια ονόματα. Κατά την εκτέλεση ενός προγράμματος αντικειμένων, οι ίδιες μέθοδοι λειτουργούν σε διαφορετικά αντικείμενα ανάλογα με τον τύπο του ορίσματος. Για τη βάση δεδομένων "LIBRARY", αυτό σημαίνει ότι τα αντικείμενα της κλάσης "BOOK" που έχουν διαφορετικούς γονείς από την κλάση "DIRECTORY" μπορούν να έχουν διαφορετικό σύνολο ιδιοτήτων, π.χ. προγράμματα για εργασία με αντικείμενο της κλάσης BOOK μπορεί να περιέχουν πολυμορφικό κώδικα. Σε μια κλάση, μια μέθοδος δεν έχει σώμα, δηλαδή δεν ορίζεται ποιες συγκεκριμένες ενέργειες πρέπει να εκτελεί. Κάθε υποκατηγορία εκτελεί τις απαιτούμενες λειτουργίες. Η ενθυλάκωση κρύβει λεπτομέρειες υλοποίησης από όλα τα αντικείμενα έξω από μια δεδομένη ιεραρχία.

Τα πλεονεκτήματα ενός αντικειμενοστρεφούς μοντέλου σε σύγκριση με ένα σχεσιακό είναι η ικανότητα εμφάνισης πληροφοριών σχετικά με πολύπλοκες σχέσεις μεταξύ αντικειμένων και η απουσία περιορισμών στις δομές αποθήκευσης δεδομένων. Μια αντικειμενοστραφής βάση δεδομένων μπορεί να αποθηκεύσει όχι μόνο τη δομή, αλλά και τις πτυχές συμπεριφοράς των δεδομένων. Χρησιμοποιώντας μια αντικειμενοστραφή προσέγγιση, μπορούν να δημιουργηθούν βάσεις δεδομένων με μεγάλους όγκους σημασιολογικών πληροφοριών, όπως πολυμέσα και εξειδικευμένες για συγκεκριμένες θεματικές περιοχές (γεωγραφικές, σχεδιαστικές κ.λπ.).

Τα μειονεκτήματα αυτής της προσέγγισης περιλαμβάνουν την υψηλή εννοιολογική πολυπλοκότητα, την ταλαιπωρία της επεξεργασίας δεδομένων και τη χαμηλή ταχύτητα εκτέλεσης ερωτημάτων.

Στη δεκαετία του '90, δημιουργήθηκαν πρωτότυπα λειτουργικών αντικειμενοστρεφών βάσεων δεδομένων. Πρόκειται για τους POET (POET Software), JASMINE (COMPUTER ASSOCIATES), IRIS, ORION, POSTGRES.

Θέμα 5

Σχεσιακή προσέγγιση για την οικοδόμηση ενός πληροφοριακού-λογικού μοντέλου: βασικές έννοιες

Μοντέλο σχεσιακών δεδομένων. ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

Όπως σημειώθηκε στην ενότητα της προηγούμενης διάλεξης, το σχεσιακό μοντέλο είναι σήμερα ένα από τα πιο κοινά μοντέλα στην αγορά των βάσεων δεδομένων. Η βάση αυτού του μοντέλου είναι ένα σύνολο διασυνδεδεμένων πινάκων (σχέσεις).

Οι κύριες θεωρητικές ιδέες του σχεσιακού μοντέλου σκιαγραφήθηκαν σε έργα για τη θεωρία των σχέσεων από τον Αμερικανό λογικό Charles Souders Peirce (1839-1914) και τον Γερμανό λογικό Ernst Schroeder (1841-1902), καθώς και τον Αμερικανό μαθηματικό Edgar Codd.

Στα έργα των Pierce και Schroeder, αποδείχθηκε ότι το σύνολο των σχέσεων είναι κλειστό κάτω από ορισμένες ειδικές πράξεις που μαζί σχηματίζουν μια αφηρημένη άλγεβρα. Αυτή η βασική ιδιότητα των σχέσεων χρησιμοποιήθηκε στο σχεσιακό μοντέλο για την ανάπτυξη μιας γλώσσας χειρισμού δεδομένων.

Το 1970, εμφανίστηκε η εργασία του E. Codd σχετικά με την παρουσίαση δεδομένων οργανωμένων σε δισδιάστατους πίνακες που ονομάζονται σχέσεις. Ο Codd ήταν ο πρώτος που εισήγαγε τις βασικές έννοιες και τους περιορισμούς του σχεσιακού μοντέλου ως βάση για την αποθήκευση δεδομένων και έδειξε τη δυνατότητα επεξεργασίας δεδομένων χρησιμοποιώντας παραδοσιακές πράξεις σε σύνολα και ειδικές εισαγόμενες σχεσιακές πράξεις.

Οι βασικές έννοιες του σχεσιακού μοντέλου δίνονται στον Πίνακα. 3.1.

Τα αντικείμενα του σχεσιακού μοντέλου είναι κυρίως πίνακες (σχέσεις). Η ακεραιότητα των δεδομένων διασφαλίζεται από ξένα και πρωτεύοντα κλειδιά (βλ. παράγραφο «Ακεραιότητα σχεσιακών δεδομένων»).

Οι τελεστές στο σχεσιακό μοντέλο είναι ένα σύνολο εντολών που παρέχουν επιλογή και χειρισμό δεδομένων.

Πίνακας 5.1. Στοιχεία του σχεσιακού μοντέλου

Όρος σχεσιακού μοντέλου Περιγραφή
Βάση δεδομένων (DB) Ένα σύνολο πινάκων και άλλων αντικειμένων που είναι απαραίτητα για μια αφηρημένη αναπαράσταση της επιλεγμένης θεματικής περιοχής
Σχήμα DB Ένα σύνολο κεφαλίδων πίνακα αλληλένδετων μεταξύ τους
Στάση Ένας πίνακας είναι μια συλλογή αντικειμένων του πραγματικού κόσμου που χαρακτηρίζονται από κοινές ιδιότητες και χαρακτηριστικά (πεδία πίνακα)
Κεφαλίδα σχέσης Τίτλος πίνακα – ονόματα πεδίων (στήλων) του πίνακα
Σχέση σώματος Το σώμα του πίνακα είναι ένα σύνολο τιμών για όλα τα αντικείμενα του πραγματικού κόσμου, τα οποία μπορούν να αναπαρασταθούν με τη μορφή εγγραφών πίνακα (σειρές πίνακα)
Διάγραμμα σχέσεων Σειρά κεφαλίδας στήλης πίνακα (κεφαλίδα πίνακα)
Ιδιότητα σχέσης Όνομα στήλης πίνακα (πεδίο πίνακα)
Σχέση πλειάδα Σειρά πίνακα (εγγραφή) – μια σαφής αναπαράσταση ενός πραγματικού αντικειμένου που δημιουργήθηκε χρησιμοποιώντας τιμές πεδίων πίνακα
Τομέα Σύνολο έγκυρων τιμών χαρακτηριστικών
Τιμή χαρακτηριστικού Τιμή πεδίου σε εγγραφή (διπλό)
Πρωτεύων κλειδί Ένα ή περισσότερα (στην περίπτωση ενός σύνθετου κλειδιού) χαρακτηριστικά που ορίζουν μοναδικά την τιμή της πλειάδας (τιμή γραμμής πίνακα)
Εξωτερικό κλειδί Ένα χαρακτηριστικό πίνακα του οποίου οι τιμές αντιστοιχούν στις τιμές του πρωτεύοντος κλειδιού σε έναν άλλο σχετικό (γονικό, κύριο) πίνακα. Ένα ξένο κλειδί μπορεί να αποτελείται από ένα ή περισσότερα χαρακτηριστικά (σύνθετο ξένο κλειδί). Εάν ο αριθμός των χαρακτηριστικών ενός ξένου κλειδιού είναι μικρότερος από τον αριθμό των χαρακτηριστικών του αντίστοιχου πρωτεύοντος κλειδιού, τότε ονομάζεται περικομμένο (μερικό) ξένο κλειδί
Βαθμός (arity) της σχέσης Αριθμός στηλών πίνακα
Αναλογία ισχύος Αριθμός σειρών (πλειάδες) του πίνακα
Περίπτωση Σχέσεων Ένα σύνολο εγγραφών (πλειάδες) για έναν δεδομένο πίνακα (σχέση). Το παράδειγμα μπορεί να αλλάξει με την πάροδο του χρόνου. Εφόσον μια κανονική βάση δεδομένων λειτουργεί επί του παρόντος μόνο με μία έκδοση μιας σχέσης, μια τέτοια περίπτωση της σχέσης ονομάζεται τρέχουσα
Τύπος δεδομένων Τύπος τιμής στοιχείου πίνακα
Βασική στάση Μια σχέση που περιέχει μία ή περισσότερες στήλες που χαρακτηρίζουν τις ιδιότητες ενός αντικειμένου, καθώς και ένα πρωτεύον κλειδί
Παράγωγη σχέση Δεν είναι μια βασική σχέση, δηλ. δεν χαρακτηρίζει τις ιδιότητες ενός αντικειμένου και χρησιμοποιείται για την παροχή σχέσεων μεταξύ άλλων πινάκων μπορεί να μην περιέχει πρωτεύον κλειδί. Εάν έχει καθοριστεί ένα πρωτεύον κλειδί, αυτό αποτελείται από τα ξένα κλειδιά που σχετίζονται με τα πρωτεύοντα κλειδιά της υποκείμενης σχέσης
Σύνδεση Καθιερώνει μια σχέση μεταξύ τιμών αντιστοίχισης σε πεδία κλειδιών - το πρωτεύον κλειδί ενός πίνακα και το ξένο κλειδί ενός άλλου
Επικοινωνία ένας προς έναν (1:1) Όταν χρησιμοποιείτε αυτόν τον τύπο σχέσης, μια εγγραφή σε έναν πίνακα μπορεί να έχει το πολύ μια σχετική εγγραφή σε έναν άλλο πίνακα. Και στους δύο πίνακες, τα βασικά πεδία πρέπει να είναι κύρια. Χρησιμοποιείται για το διαχωρισμό πινάκων με πολλά πεδία ή όπως απαιτείται από την προστασία δεδομένων
Επικοινωνία ένα προς πολλά (1:M). Όταν χρησιμοποιείτε αυτόν τον τύπο σχέσης, κάθε εγγραφή ενός πίνακα μπορεί να αντιστοιχεί σε πολλές εγγραφές του δεύτερου πίνακα, αλλά κάθε εγγραφή του δεύτερου πίνακα αντιστοιχεί μόνο σε μία εγγραφή του πρώτου πίνακα. Ο πρώτος πίνακας πρέπει να έχει πρωτεύον κλειδί, ο δεύτερος πρέπει να έχει ξένο κλειδί.
Σχέση πολλά-προς-πολλά (Ν:Μ). Με αυτόν τον τύπο σχέσης, μία εγγραφή στον πρώτο πίνακα μπορεί να αντιστοιχεί σε πολλές εγγραφές του δεύτερου πίνακα, αλλά μία εγγραφή του δεύτερου πίνακα μπορεί να αντιστοιχεί σε πολλές εγγραφές του πρώτου. Η μοναδικότητα των κλειδιών για τέτοιους πίνακες δεν απαιτείται. Κατά τη διαδικασία σχεδιασμού ενός σχήματος βάσης δεδομένων, τέτοιες συνδέσεις μετασχηματίζονται. Για να γίνει αυτό, είναι απαραίτητο να εισαγάγετε μια βοηθητική σχέση που σας επιτρέπει να αντικαταστήσετε τη σχέση «πολλά προς πολλά» με δύο σχέσεις «ένα προς πολλά».


Η δομή δεδομένων του σχεσιακού μοντέλου περιλαμβάνει την αναπαράσταση της θεματικής περιοχής της εργασίας που εξετάζεται ως ένα σύνολο διασυνδεδεμένων σχέσεων.

Σε κάθε σύνδεση, η μία σχέση μπορεί να λειτουργήσει ως η κύρια (βασική, γονέας) και η άλλη ως υποδεέστερη (προερχόμενη, παιδί). Για να διατηρηθούν αυτές οι σχέσεις, και οι δύο σχέσεις πρέπει να περιέχουν ένα σύνολο χαρακτηριστικών με τα οποία σχετίζονται: στην κύρια σχέση, αυτό είναι το πρωτεύον κλειδί της σχέσης (προσδιορίζει μοναδικά την πλειάδα της κύριας σχέσης). η δευτερεύουσα σχέση πρέπει να έχει ένα σύνολο χαρακτηριστικών που αντιστοιχούν στο πρωτεύον κλειδί της κύριας σχέσης. Εδώ αυτό το σύνολο χαρακτηριστικών είναι ήδη δευτερεύον κλειδί ή ξένο κλειδί, π.χ. ορίζει ένα σύνολο πλειάδων μιας παράγωγης σχέσης που σχετίζεται με μια μεμονωμένη πλειάδα της κύριας σχέσης.

Σχηματίζονται πολλοί διασυνδεδεμένοι πίνακες σχήμα βάσης δεδομένων.

Η στάση λοιπόν Rείναι ένας δισδιάστατος πίνακας που περιέχει ορισμένα δεδομένα.

Μαθηματικά Ν-αριακή σχέση Rείναι το καρτεσιανό σετ προϊόντων D 1 ×D 2 ×…×D nσύνολα (τομείς) D 1 , D 2 ,…,D n(n≥1), όχι απαραίτητα διαφορετικό:

R D 1 ×D 2 ×…×D n,

Οπου D 1 ×D 2 ×…×D n– πλήρες καρτεσιανό προϊόν, δηλ. ένα σύνολο όλων των δυνατών συνδυασμών n στοιχείων το καθένα, όπου κάθε στοιχείο λαμβάνεται από το δικό του πεδίο.

Τομέαείναι μια σημασιολογική έννοια που μπορεί να θεωρηθεί ως ένα υποσύνολο τιμών κάποιου τύπου δεδομένων που έχουν συγκεκριμένη σημασία.

Ιδιότητες τομέα:

Ο τομέας έχει ένα μοναδικό όνομα (εντός της βάσης δεδομένων),

Καθορίζεται σε κάποιον απλό τύπο δεδομένων ή σε άλλο τομέα,

Μπορεί να έχει κάποια λογική συνθήκη που σας επιτρέπει να περιγράψετε ένα υποσύνολο δεδομένων που ισχύει για αυτόν τον τομέα,

Φέρει ένα ορισμένο σημασιολογικό φορτίο.

Η κύρια σημασία των τομέων είναι ότι περιορίζουν τις συγκρίσεις: δεν μπορείτε να συγκρίνετε τιμές από διαφορετικούς τομείς, ακόμα κι αν έχουν τον ίδιο τύπο δεδομένων.

Χαρακτηριστικόη σχέση είναι ένα ζευγάρι της μορφής

<Имя_атрибута: Имя_домена>(ή<ΕΝΑ Δ>).

Τα ονόματα χαρακτηριστικών είναι μοναδικά μέσα σε μια σχέση. Συχνά τα ονόματα χαρακτηριστικών είναι ίδια με τα αντίστοιχα ονόματα τομέα.

Μια σχέση R που ορίζεται σε ένα σύνολο τομέων περιέχει δύο μέρη: μια κεφαλίδα και ένα σώμα.

Κεφαλίδα σχέσης– ένας σταθερός αριθμός ιδιοτήτων σχέσης, που περιγράφουν το καρτεσιανό γινόμενο των τομέων στους οποίους προσδιορίζεται η σχέση:

(<Α 1: Δ 1>, <Α 2: Δ 2 >, …, <A n: D n>).

Η κεφαλίδα είναι στατική: δεν αλλάζει κατά τη διάρκεια της εργασίας με τη βάση δεδομένων. Ακόμα κι αν το όνομα έχει αποθηκευτεί.

ΣώμαΗ σχέση περιέχει ένα σύνολο πλειάδων σχέσεων.

Κάθε παράλαση αυτοκινήτωναντιπροσωπεύει ένα σύνολο ζευγών της μορφής:

<Имя_атрибута: Значение атрибута>:

R(<A 1: Val 1>, <A 2: Val 2 >, …, <A n: Val n>).

Τέτοια που η αξία ValiΧαρακτηριστικό A iανήκει στον τομέα D i.

Το σώμα μιας σχέσης είναι ένα σύνολο πλειάδων, δηλαδή ένα υποσύνολο του καρτεσιανού γινόμενου τομέων. Έτσι, το σώμα μιας σχέσης είναι στην πραγματικότητα μια σχέση με τη μαθηματική έννοια της λέξης. Το σώμα της σχέσης μπορεί να αλλάξει κατά την εργασία με τη βάση δεδομένων, επειδή οι πλειάδες μπορούν να αλλάξουν, να προστεθούν και να διαγραφούν με την πάροδο του χρόνου.

Η σχέση συνήθως γράφεται ως:

R(<Α 1: Δ 1>, <Α 2: Δ 2 >, …, <A n: D n>),

ή συντομογραφία: R(Α'1, Α2, …, A n) ή R.

Διάγραμμα σχέσεωνείναι ένα σύνολο κεφαλίδων σχέσεων που περιλαμβάνονται στη βάση δεδομένων, δηλαδή μια λίστα ονομάτων χαρακτηριστικών μιας δεδομένης σχέσης που υποδεικνύει τον τομέα στον οποίο ανήκουν:

S R =(Α'1, Α2, …, A n), A i D i, Εγώ = 1,..., n.

Εάν τα χαρακτηριστικά παίρνουν τιμές από τον ίδιο τομέα, τότε ονομάζονται θ-συγκρίσιμα, όπου θ είναι το σύνολο των έγκυρων πράξεων σύγκρισης που καθορίζονται για έναν δεδομένο τομέα.

Για παράδειγμα, εάν ένας τομέας περιέχει αριθμητικά δεδομένα, τότε όλες οι πράξεις σύγκρισης ισχύουν για αυτόν: θ == (=,<>,>=,<=,<,>). Ωστόσο, για τομείς που περιέχουν δεδομένα χαρακτήρων, δεν μπορούν να καθοριστούν μόνο πράξεις σύγκρισης για ισότητα και ανισότητα τιμών. Εάν ένας δεδομένος τομέας έχει λεξικογραφική σειρά, τότε έχει επίσης ένα πλήρες σύνολο πράξεων σύγκρισης.

Τα σχήματα δύο σχέσεων ονομάζονται ισοδύναμος, εάν έχουν τον ίδιο βαθμό και είναι δυνατό να ταξινομηθούν τα ονόματα των χαρακτηριστικών στα σχήματα με τέτοιο τρόπο ώστε συγκρίσιμα χαρακτηριστικά, δηλαδή χαρακτηριστικά που λαμβάνουν τιμές από τον ίδιο τομέα, να βρίσκονται στα ίδια σημεία.

Έτσι, για ισοδύναμες σχέσεις πληρούνται οι ακόλουθες προϋποθέσεις:

Έχοντας τον ίδιο αριθμό χαρακτηριστικών.

Η παρουσία χαρακτηριστικών με τα ίδια ονόματα.

Η παρουσία πανομοιότυπων σειρών σε σχέσεις, λαμβάνοντας υπόψη ότι η σειρά των χαρακτηριστικών μπορεί να ποικίλλει.

Σχέσεις αυτού του είδους είναι διαφορετικές εικόνες της ίδιας σχέσης.

Ιδιότητες των σχέσεωνακολουθούν απευθείας από τον προηγουμένως δοθέντα ορισμό της σχέσης. Αυτές οι ιδιότητες είναι οι κύριες διαφορές μεταξύ των σχέσεων του μοντέλου σχεσιακών δεδομένων και των απλών πινάκων:

Μοναδικότητα του ονόματος της σχέσης. Το όνομα μιας σχέσης πρέπει να είναι διαφορετικό από τα ονόματα άλλων σχέσεων.

Μοναδικότητα των πλειάδων. Δεν υπάρχουν πανομοιότυπες πλειάδες σε μια σχέση. Πράγματι, το σώμα μιας σχέσης είναι ένα σύνολο πλειάδων και, όπως κάθε σύνολο, δεν μπορεί να περιέχει δυσδιάκριτα στοιχεία. Οι πίνακες, σε αντίθεση με τις σχέσεις, μπορούν να περιέχουν πανομοιότυπες σειρές. Κάθε κελί σχέσης περιέχει μόνο μια ατομική (αδιαίρετη) τιμή.

Η διαταραχή των πλειάδων. Οι πλειάδες δεν είναι ταξινομημένες (από πάνω προς τα κάτω), επειδή το σώμα της σχέσης είναι ένα σύνολο και το σύνολο δεν είναι ταξινομημένο (για σύγκριση, οι σειρές στους πίνακες είναι ταξινομημένες). Η ίδια σχέση μπορεί να αναπαρασταθεί από διαφορετικούς πίνακες στους οποίους οι σειρές έχουν διαφορετική σειρά.

Διαταραχή ιδιοτήτων. Τα χαρακτηριστικά δεν είναι ταξινομημένα (από αριστερά προς τα δεξιά).

Η μοναδικότητα του ονόματος χαρακτηριστικού μέσα στη σχέση. Κάθε χαρακτηριστικό έχει ένα μοναδικό όνομα μέσα στη σχέση, που σημαίνει ότι η σειρά των χαρακτηριστικών δεν έχει σημασία (σε σύγκριση, οι στήλες στον πίνακα είναι ταξινομημένες). Αυτή η ιδιότητα διακρίνει κάπως μια σχέση από τον μαθηματικό ορισμό μιας σχέσης. Η ίδια σχέση μπορεί να αναπαρασταθεί από διαφορετικούς πίνακες στους οποίους οι στήλες είναι σε διαφορετική σειρά.

Ατομικότητα τιμών χαρακτηριστικών. Όλες οι τιμές χαρακτηριστικών είναι ατομικές. Αυτό προκύπτει από το γεγονός ότι τα υποκείμενα χαρακτηριστικά έχουν ατομικές τιμές, δηλαδή, κάθε χαρακτηριστικό έχει έναν τομέα τιμών (έναν ξεχωριστό βασικό τύπο) που σχετίζεται με αυτό και οι τιμές των χαρακτηριστικών λαμβάνονται από τον ίδιο τομέα. Το σχήμα και οι πλειάδες μιας σχέσης είναι σύνολα, όχι λίστες, επομένως η σειρά με την οποία παρουσιάζονται δεν έχει σημασία. Για σύγκριση, μπορείτε να τοποθετήσετε διάφορες πληροφορίες σε κελιά πίνακα: πίνακες, δομές, άλλους πίνακες κ.λπ.

Σχόλιο:

Από τις ιδιότητες της σχέσης προκύπτει ότι όχι όλοιένας πίνακας μπορεί να είναι μια σχέση. Προκειμένου ένας πίνακας να ορίσει μια σχέση, ο πίνακας πρέπει να έχει μια απλή δομή (να περιέχει μόνο γραμμές και στήλες και κάθε σειρά πρέπει να έχει τον ίδιο αριθμό πεδίων), ο πίνακας δεν πρέπει να έχει ίδιες γραμμές, οποιαδήποτε στήλη στον πίνακα πρέπει περιέχουν μόνο έναν τύπο δεδομένων, όλοι οι τύποι δεδομένων που χρησιμοποιούνται πρέπει να είναι απλοί.

Θα πρέπει να σημειωθεί ότι το σχεσιακό μοντέλο αντιπροσωπεύει μια βάση δεδομένων με τη μορφή ενός συνόλου διασυνδεδεμένων σχέσεων, οι οποίες ονομάζονται σχήμα σχεσιακής βάσης δεδομένων.

Αντικειμενοστρεφές μοντέλο

Σε ένα αντικειμενοστραφή μοντέλο, κατά την παρουσίαση δεδομένων, είναι δυνατός ο εντοπισμός μεμονωμένων εγγραφών βάσης δεδομένων. Δημιουργούνται σχέσεις μεταξύ των εγγραφών βάσης δεδομένων και των λειτουργιών επεξεργασίας τους χρησιμοποιώντας μηχανισμούς παρόμοιους με τις αντίστοιχες εγκαταστάσεις σε αντικειμενοστρεφείς γλώσσες προγραμματισμού.

Το τυποποιημένο αντικειμενοστραφή μοντέλο περιγράφεται στις συστάσεις του προτύπου ODMG-93 (Object Database Management Group). Δεν έχει καταστεί ακόμη δυνατή η πλήρης εφαρμογή των συστάσεων του ODMG-93. Για να επεξηγήσετε τις βασικές ιδέες, εξετάστε ένα ελαφρώς απλοποιημένο μοντέλο μιας αντικειμενοστραφής βάσης δεδομένων.

Η δομή μιας αντικειμενοστραφής βάσης δεδομένων (για παράδειγμα, Versant Object Database, Object Store, κ.λπ.) αναπαρίσταται γραφικά ως δέντρο, οι κόμβοι του οποίου είναι αντικείμενα. Οι ιδιότητες των αντικειμένων περιγράφονται από κάποιο τυπικό τύπο (για παράδειγμα, συμβολοσειρά) ή έναν τύπο κατασκευασμένο από τον χρήστη (που ορίζεται ως κλάση).

Η τιμή μιας ιδιότητας τύπου string είναι μια συμβολοσειρά χαρακτήρων. Η τιμή μιας ιδιότητας κατηγορίας τύπου είναι ένα αντικείμενο που είναι μια παρουσία της αντίστοιχης κλάσης. Κάθε αντικείμενο - ένα στιγμιότυπο μιας κλάσης θεωρείται απόγονος του αντικειμένου στο οποίο ορίζεται ως ιδιότητα. Ένα αντικείμενο είναι μια παρουσία μιας κλάσης που ανήκει στην κλάση της και έχει έναν γονέα. Οι γενικές σχέσεις στη βάση δεδομένων σχηματίζουν μια συνεκτική ιεραρχία αντικειμένων.

Η λογική δομή μιας αντικειμενοστραφής βάσης δεδομένων είναι επιφανειακά παρόμοια με τη δομή μιας ιεραρχικής βάσης δεδομένων. Η κύρια διαφορά μεταξύ τους είναι οι μέθοδοι χειρισμού δεδομένων.

Για την εκτέλεση ενεργειών σε δεδομένα στο υπό εξέταση μοντέλο βάσης δεδομένων, χρησιμοποιούνται λογικές πράξεις, που ενισχύονται από αντικειμενοστρεφείς μηχανισμούς ενθυλάκωσης, κληρονομικότητας και πολυμορφισμού.

Λειτουργίες παρόμοιες με τις εντολές SQL μπορούν να χρησιμοποιηθούν σε περιορισμένο βαθμό (για παράδειγμα, για τη δημιουργία βάσης δεδομένων).

Η δημιουργία και η τροποποίηση μιας βάσης δεδομένων συνοδεύεται από τον αυτόματο σχηματισμό και μετέπειτα προσαρμογή ευρετηρίων (πίνακες ευρετηρίων) που περιέχουν πληροφορίες για γρήγορη ανάκτηση δεδομένων.

Ας εξετάσουμε εν συντομία τις έννοιες της ενθυλάκωσης, της κληρονομικότητας και του πολυμορφισμού σε σχέση με το αντικειμενοστραφή μοντέλο βάσης δεδομένων.

Η ενθυλάκωση περιορίζει το εύρος ενός ονόματος ιδιοκτησίας στα όρια του αντικειμένου στο οποίο ορίζεται.

Η κληρονομιά, αντίθετα, επεκτείνει το πεδίο εφαρμογής μιας ιδιότητας σε όλους τους απογόνους του αντικειμένου.

Ο πολυμορφισμός στις αντικειμενοστρεφείς γλώσσες προγραμματισμού σημαίνει την ικανότητα του ίδιου κώδικα προγράμματος να λειτουργεί με διαφορετικούς τύπους δεδομένων. Με άλλα λόγια, σημαίνει ότι επιτρέπεται για αντικείμενα διαφορετικών τύπων να έχουν μεθόδους (διαδικασίες ή συναρτήσεις) με τα ίδια ονόματα. Κατά την εκτέλεση ενός προγράμματος αντικειμένων, οι ίδιες μέθοδοι λειτουργούν σε διαφορετικά αντικείμενα ανάλογα με τον τύπο του ορίσματος. Η αναζήτηση σε μια αντικειμενοστραφή βάση δεδομένων περιλαμβάνει την εύρεση ομοιοτήτων μεταξύ ενός αντικειμένου που καθορίζεται από τον χρήστη και των αντικειμένων που είναι αποθηκευμένα στη βάση δεδομένων. Ένα αντικείμενο που ορίζεται από το χρήστη, που ονομάζεται αντικείμενο στόχου (η ιδιότητα του αντικειμένου είναι τύπου στόχος), μπορεί γενικά να είναι ένα υποσύνολο ολόκληρης της ιεραρχίας των αντικειμένων που είναι αποθηκευμένα στη βάση δεδομένων. Το αντικείμενο προορισμού, καθώς και το αποτέλεσμα του ερωτήματος, μπορούν να αποθηκευτούν στην ίδια τη βάση δεδομένων.

Το κύριο πλεονέκτημα ενός αντικειμενοστρεφούς μοντέλου δεδομένων σε σύγκριση με ένα σχεσιακό είναι η δυνατότητα εμφάνισης πληροφοριών σχετικά με πολύπλοκες σχέσεις μεταξύ αντικειμένων. Ένα αντικειμενοστραφή μοντέλο δεδομένων σάς επιτρέπει να αναγνωρίζετε μεμονωμένες εγγραφές βάσης δεδομένων και να ορίζετε συναρτήσεις για την επεξεργασία τους.

Τα μειονεκτήματα του αντικειμενοστρεφούς μοντέλου είναι η υψηλή εννοιολογική πολυπλοκότητα, η άβολη επεξεργασία δεδομένων και η χαμηλή ταχύτητα αναζήτησης.

Τύποι δεδομένων

Αρχικά, τα DBMS χρησιμοποιήθηκαν κυρίως για την επίλυση χρηματοοικονομικών και οικονομικών προβλημάτων. Σε αυτήν την περίπτωση, ανεξάρτητα από το μοντέλο παρουσίασης, χρησιμοποιήθηκαν οι ακόλουθοι κύριοι τύποι δεδομένων σε βάσεις δεδομένων:

  • αριθμητικός. Παραδείγματα τιμών δεδομένων: 0,43; 328; 2E+5;
  • συμβολικός (αλφαριθμητικός). Παραδείγματα τιμών δεδομένων: "Παρασκευή", "string", "προγραμματιστής";
  • ημερομηνίες, που καθορίζονται χρησιμοποιώντας τον ειδικό τύπο ημερομηνίας ή ως δεδομένα κανονικών χαρακτήρων. Παραδείγματα τιμών δεδομένων: 12/1/97, 23/2/1999.

Σε διαφορετικά DBMS, αυτοί οι τύποι ενδέχεται να διαφέρουν ελαφρώς μεταξύ τους ως προς το όνομα, το εύρος τιμών και τον τύπο αναπαράστασης. Στη συνέχεια, εξειδικευμένα συστήματα επεξεργασίας δεδομένων άρχισαν να εμφανίζονται σε νέους τομείς εφαρμογής, όπως συστήματα γεωπληροφοριών, επεξεργασία εικόνας βίντεο κ.λπ. Από αυτή την άποψη, οι προγραμματιστές άρχισαν να εισάγουν νέους τύπους δεδομένων στα παραδοσιακά DBMS. Οι σχετικά νέοι τύποι δεδομένων περιλαμβάνουν τα ακόλουθα:

  • προσωρινή και ημερομηνία-χρονική, σχεδιασμένη να αποθηκεύει πληροφορίες σχετικά με την ώρα και (ή την ημερομηνία). Παραδείγματα τιμών δεδομένων: 01/31/85 (ημερομηνία), 9:10:03 (ώρα), 03/6/1960 12:00 (ημερομηνία και ώρα);
  • χαρακτήρες μεταβλητού μήκους σχεδιασμένοι για την αποθήκευση πληροφοριών κειμένου μεγάλου μήκους, όπως ένα έγγραφο.
  • δυαδικό, σχεδιασμένο για την αποθήκευση γραφικών αντικειμένων, πληροφοριών ήχου και βίντεο, χωρικών, χρονολογικών και άλλων ειδικών πληροφοριών. Για παράδειγμα, στο MS Access αυτός ο τύπος είναι ο τύπος δεδομένων "OLE Object Field", ο οποίος σας επιτρέπει να αποθηκεύετε δεδομένα γραφικών σε μορφή BMP (Bitmap) στη βάση δεδομένων και να τα εμφανίζετε αυτόματα όταν εργάζεστε με τη βάση δεδομένων.
  • υπερσύνδεσμοι που έχουν σχεδιαστεί για να αποθηκεύουν συνδέσμους σε διάφορους πόρους (κόμβους, αρχεία, έγγραφα κ.λπ.) που βρίσκονται εκτός της βάσης δεδομένων, για παράδειγμα στο Διαδίκτυο, σε ένα εταιρικό intranet ή στον σκληρό δίσκο ενός υπολογιστή.

Στα σύγχρονα DBMS με διάφορα μοντέλα δεδομένων, μπορούν να χρησιμοποιηθούν όλοι οι αναφερόμενοι τύποι δεδομένων.

Σε ένα αντικειμενοστραφή μοντέλο (OOM), κατά την παρουσίαση δεδομένων, είναι δυνατός ο εντοπισμός μεμονωμένων εγγραφών βάσης δεδομένων. Δημιουργούνται σχέσεις μεταξύ των εγγραφών βάσης δεδομένων και των λειτουργιών επεξεργασίας τους χρησιμοποιώντας μηχανισμούς παρόμοιους με τις αντίστοιχες εγκαταστάσεις σε αντικειμενοστρεφείς γλώσσες προγραμματισμού.

Το Standard OOM περιγράφεται στις συστάσεις του προτύπου ODMG-93 (Object Database Management Group - αντικειμενοστραφής ομάδα διαχείρισης βάσεων δεδομένων). Δεν έχει καταστεί ακόμη δυνατή η πλήρης εφαρμογή των συστάσεων του ODMG-93. Για να επεξηγήσετε τις βασικές ιδέες, εξετάστε ένα κάπως απλοποιημένο μοντέλο μιας αντικειμενοστραφής βάσης δεδομένων.

Η δομή μιας αντικειμενοστραφής βάσης δεδομένων μπορεί να αναπαρασταθεί γραφικά ως δέντρο, οι κόμβοι του οποίου είναι αντικείμενα. Οι ιδιότητες των αντικειμένων περιγράφονται από κάποιο τυπικό τύπο (για παράδειγμα, συμβολοσειρά) ή έναν τύπο κατασκευασμένο από το χρήστη (που ορίζεται ως κλάση).

Η τιμή μιας ιδιότητας τύπου string είναι μια συμβολοσειρά χαρακτήρων. Η τιμή μιας ιδιότητας κατηγορίας τύπου είναι ένα αντικείμενο που είναι μια παρουσία της αντίστοιχης κλάσης. Κάθε αντικείμενο παρουσίας μιας κλάσης θεωρείται θυγατρικό του αντικειμένου στο οποίο ορίζεται ως ιδιότητα. Ένα αντικείμενο παρουσίας μιας κλάσης ανήκει στην κλάση της και έχει έναν γονέα. Οι γενικές σχέσεις στη βάση δεδομένων σχηματίζουν μια συνδεδεμένη ιεραρχία αντικειμένων.

Ένα παράδειγμα της λογικής δομής μιας βάσης δεδομένων OO βιβλιοθηκονομίας φαίνεται στο Σχ. 3.14. Εδώ, ένα αντικείμενο του τύπου ΒΙΒΛΙΟΘΗΚΗ είναι το γονικό αντικείμενο των στιγμιοτύπων των κλάσεων SUBSCRIBER, DIRECTORY και ISSUE. Διαφορετικά αντικείμενα τύπου BOOK που έχουν τον ίδιο γονέα πρέπει να διαφέρουν τουλάχιστον ως προς τον αριθμό πρόσβασης (μοναδικός για κάθε παρουσία του βιβλίου), αλλά έχουν τις ίδιες τιμές ιδιοτήτων isbn, udk, τίτλοςΚαι συγγραφέας.


Εικ.3.14.Λογική δομή μιας βάσης δεδομένων επιστήμης της βιβλιοθήκης

Η λογική δομή μιας αντικειμενοστραφής βάσης δεδομένων είναι επιφανειακά παρόμοια με τη δομή μιας ιεραρχικής βάσης δεδομένων. Η κύρια διαφορά μεταξύ τους είναι οι μέθοδοι χειρισμού δεδομένων. Για την εκτέλεση ενεργειών σε δεδομένα σε μια βάση δεδομένων OOM, χρησιμοποιούνται λογικές πράξεις, που ενισχύονται από αντικειμενοστρεφείς μηχανισμούς ενθυλάκωσης, κληρονομικότητας και πολυμορφισμού. Λειτουργίες παρόμοιες με τις εντολές SQL μπορούν να χρησιμοποιηθούν σε περιορισμένο βαθμό (για παράδειγμα, για τη δημιουργία βάσης δεδομένων).

Η δημιουργία και η τροποποίηση μιας βάσης δεδομένων συνοδεύεται από τον αυτόματο σχηματισμό και μετέπειτα προσαρμογή ευρετηρίων (πίνακες ευρετηρίων) που περιέχουν πληροφορίες για γρήγορη ανάκτηση δεδομένων.

Ας εξετάσουμε εν συντομία τις έννοιες της ενθυλάκωσης, της κληρονομικότητας και του πολυμορφισμού σε σχέση με τις βάσεις δεδομένων OOM.

Ενθυλάκωσηπεριορίζει το εύρος ενός ονόματος ιδιοκτησίας στα όρια του αντικειμένου στο οποίο ορίζεται. Έτσι, εάν προσθέσετε μια ιδιότητα σε ένα αντικείμενο τύπου DIRECTORY που καθορίζει τον αριθμό τηλεφώνου του συγγραφέα του βιβλίου και έχει το όνομα τηλέφωνο,τότε θα πάρουμε ιδιότητες με το ίδιο όνομα για τα αντικείμενα SUBSCRIBER και DIRECTORY. Η έννοια μιας τέτοιας ιδιότητας θα καθοριστεί από το αντικείμενο στο οποίο είναι ενθυλακωμένη.

Κληρονομία,αντίθετα επεκτείνει το εύρος του ακινήτου σε όλους τους απογόνους του αντικειμένου. Έτσι, σε όλα τα αντικείμενα του τύπου BOOK που είναι απόγονοι ενός αντικειμένου του τύπου DIRECTORY μπορούν να εκχωρηθούν οι ιδιότητες του γονικού αντικειμένου: isbn, udk, τίτλοςΚαι συγγραφέας.Εάν είναι απαραίτητο να επεκταθεί ο μηχανισμός κληρονομικότητας σε αντικείμενα που δεν είναι άμεσοι συγγενείς (για παράδειγμα, μεταξύ δύο παιδιών του ίδιου γονέα), τότε ορίζεται μια αφηρημένη ιδιότητα τύπου abs στον κοινό τους πρόγονο. Έτσι, ο ορισμός των αφηρημένων ιδιοτήτων εισιτήριοΚαι αριθμόςστο αντικείμενο ΒΙΒΛΙΟΘΗΚΗ κάνει αυτές τις ιδιότητες να κληρονομηθούν από όλα τα θυγατρικά αντικείμενα SUBSCRIBER, BOOK και ISSUE. Δεν είναι τυχαίο ότι το ακίνητο έχει αξία εισιτήριοΟι κατηγορίες ΣΥΓΓΡΑΦΕΑΣ και ΕΚΔΟΣΗ που εμφανίζονται στο σχήμα θα είναι οι ίδιες - 00015.

Πολυμορφισμόςστις αντικειμενοστρεφείς γλώσσες προγραμματισμού σημαίνει την ικανότητα του ίδιου κώδικα προγράμματος να λειτουργεί με διαφορετικούς τύπους δεδομένων. Με άλλα λόγια, σημαίνει ότι επιτρέπεται για αντικείμενα διαφορετικών τύπων να έχουν μεθόδους (διαδικασίες ή συναρτήσεις) με τα ίδια ονόματα. Κατά την εκτέλεση ενός προγράμματος αντικειμένων, οι ίδιες μέθοδοι λειτουργούν σε διαφορετικά αντικείμενα ανάλογα με τον τύπο του ορίσματος. Σε σχέση με την αντικειμενοστραφή βάση δεδομένων μας, ο πολυμορφισμός σημαίνει ότι τα αντικείμενα της κλάσης BOOK που έχουν διαφορετικούς γονείς από την κλάση DIRECTORY μπορούν να έχουν διαφορετικό σύνολο ιδιοτήτων. Κατά συνέπεια, τα προγράμματα για εργασία με αντικείμενα της κλάσης BOOK μπορούν να περιέχουν πολυμορφικό κώδικα.

Η αναζήτηση σε μια αντικειμενοστραφή βάση δεδομένων συνίσταται στην εύρεση των ομοιοτήτων μεταξύ ενός αντικειμένου που καθορίζεται από τον χρήστη και των αντικειμένων που είναι αποθηκευμένα στη βάση δεδομένων. Ένα αντικείμενο που ορίζεται από το χρήστη, που ονομάζεται αντικείμενο στόχου (η ιδιότητα του αντικειμένου είναι τύπου στόχος), μπορεί γενικά να είναι ένα υποσύνολο ολόκληρης της ιεραρχίας των αντικειμένων που είναι αποθηκευμένα στη βάση δεδομένων. Το αντικείμενο προορισμού, καθώς και το αποτέλεσμα του ερωτήματος, μπορούν να αποθηκευτούν στην ίδια τη βάση δεδομένων. Ένα παράδειγμα αιτήματος για αριθμούς καρτών βιβλιοθήκης και ονόματα συνδρομητών που έλαβαν τουλάχιστον ένα βιβλίο από τη βιβλιοθήκη φαίνεται στο Σχ. 3.15.

Κύριος αξιοπρέπειαΤο OOM δεδομένων σε σύγκριση με τα σχεσιακά είναι η ικανότητα εμφάνισης πληροφοριών σχετικά με πολύπλοκες σχέσεις μεταξύ αντικειμένων. Το OOM δεδομένων σάς επιτρέπει να προσδιορίσετε μια μεμονωμένη εγγραφή βάσης δεδομένων και να προσδιορίσετε τις λειτουργίες για την επεξεργασία τους.

ΜειονέκτημαΤα OOM χαρακτηρίζονται από υψηλή εννοιολογική πολυπλοκότητα, ταλαιπωρία στην επεξεργασία δεδομένων και χαμηλή ταχύτητα εκτέλεσης ερωτημάτων.



Εικ.3.15.Τμήμα βάσης δεδομένων με αντικείμενο στόχο

Ας στραφούμε ξανά στην εργασία Παραγγελίες, που παρουσιάζεται με τη μορφή ενός μοντέλου σχεσιακών δεδομένων στο Σχ. 3.8 και θεωρήστε το ως μια αντικειμενοστραφή βάση δεδομένων. Υπάρχουν τρεις κατηγορίες στο παράδειγμα: Πελάτες», « Παραγγελίες" Και " Εμπορεύματα" Αντικείμενα της τάξης " Πελάτες» είναι συγκεκριμένοι πελάτες. ιδιότητες κλάσης - αριθμός πελάτη, όνομα πελάτη Πόλη, Κατάσταση κ.λπ. Μέθοδοι τάξης - " Δημιουργήστε μια παραγγελία», « Πληρώνω το λογαριασμό" και ούτω καθεξής. Μια μέθοδος είναι κάποια λειτουργία που μπορεί να εφαρμοστεί σε ένα αντικείμενο. μια μέθοδος είναι αυτό που πρέπει να κάνει ένα αντικείμενο. Τάξη που αντιστοιχεί στον πίνακα " Λεπτομέρειες Παραγγελίας", δεν απαιτείται. Τα δεδομένα πίνακα μπορούν να είναι μέρος της τάξης " Παραγγελίες" Διαθεσιμότητα στην τάξη " Πελάτες» μέθοδος « Δημιουργήστε μια παραγγελία"οδηγεί σε αλληλεπίδραση με αντικείμενα κλάσης" Παραγγελίες" Και " Εμπορεύματα" Σε αυτήν την περίπτωση, ο χρήστης δεν χρειάζεται να γνωρίζει αυτή την αλληλεπίδραση αντικειμένων. Ο χρήστης έχει πρόσβαση μόνο στο αντικείμενο " Παραγγελίες"και χρησιμοποιεί τη μέθοδο" Δημιουργήστε μια παραγγελία" Το γεγονός του αντίκτυπου σε άλλες βάσεις δεδομένων μπορεί να είναι κρυφό από τον χρήστη. Εάν η μέθοδος " Δημιουργήστε μια παραγγελία", με τη σειρά του, καλεί τη μέθοδο " Ελέγξτε την πιστοληπτική ικανότητα του πελάτη", τότε αυτό το γεγονός μπορεί επίσης να κρυφτεί από τον χρήστη. Οι σχεσιακές βάσεις δεδομένων απαιτούν να γράφονται διαδικασίες σε Visual Basic for Application (VBA) για να εκτελούν τις ίδιες λειτουργίες.

Στη δεκαετία του '90, υπήρχαν πειραματικά πρωτότυπα συστημάτων διαχείρισης βάσεων δεδομένων OO. Επί του παρόντος, τέτοια συστήματα είναι ευρέως διαδεδομένα. Συγκεκριμένα, αυτά περιλαμβάνουν τα ακόλουθα DBMS: POET (POET Software), Jasmine (Computer Associates), Versant (Versant Technologies), O2 (Ardent Software), ODB-Jupiter (Inteltek Plus Research and Production Center), καθώς και Iris , Orion και Postgres.

Σε ένα αντικειμενοστραφή μοντέλο, κατά την παρουσίαση δεδομένων, είναι δυνατός ο εντοπισμός μεμονωμένων εγγραφών βάσης δεδομένων. Δημιουργούνται σχέσεις μεταξύ των εγγραφών και των συναρτήσεων επεξεργασίας τους χρησιμοποιώντας μηχανισμούς παρόμοιους με τα αντίστοιχα εργαλεία στις αντικειμενοστρεφείς γλώσσες προγραμματισμού.

Ας εξετάσουμε ένα απλοποιημένο μοντέλο μιας αντικειμενοστραφής βάσης δεδομένων. Η δομή μιας αντικειμενοστραφής βάσης δεδομένων αναπαρίσταται γραφικά ως δέντρο, οι κόμβοι του οποίου είναι αντικείμενα. Οι ιδιότητες των αντικειμένων περιγράφονται από κάποιο τυπικό τύπο ή έναν τύπο κατασκευασμένο από τον χρήστη (που ορίζεται ως κλάση). Η τιμή μιας ιδιότητας κατηγορίας τύπου είναι ένα αντικείμενο που είναι μια παρουσία της αντίστοιχης κλάσης. Κάθε αντικείμενο παρουσίας μιας κλάσης θεωρείται θυγατρικό του αντικειμένου στο οποίο ορίζεται ως ιδιότητα. Ένα αντικείμενο παρουσίας μιας κλάσης ανήκει στην κλάση της και έχει έναν γονέα. Οι γενικές σχέσεις στη βάση δεδομένων σχηματίζουν μια συνεκτική ιεραρχία αντικειμένων. Ένα παράδειγμα της λογικής δομής μιας αντικειμενοστραφής βάσης δεδομένων επιστήμης της βιβλιοθήκης φαίνεται στο Σχήμα. 2.9. Εδώ, ένα αντικείμενο του τύπου Βιβλιοθήκη είναι το γονικό αντικείμενο των στιγμιοτύπων των κλάσεων Συνδρομητής, Κατάλογος και Ζήτημα. Διαφορετικά αντικείμενα του τύπου Βιβλία μπορεί να έχουν τους ίδιους ή διαφορετικούς γονείς. Τα αντικείμενα τύπου Βιβλίο που έχουν τον ίδιο γονέα πρέπει να διαφέρουν τουλάχιστον ως προς τον αριθμό πρόσβασης (μοναδικός για κάθε παρουσία του βιβλίου), αλλά έχουν τις ίδιες τιμές για τις ιδιότητες isbn, udc, τίτλου και συγγραφέα.

Η λογική δομή μιας αντικειμενοστραφής βάσης δεδομένων είναι επιφανειακά παρόμοια με τη δομή μιας ιεραρχικής βάσης δεδομένων. Η κύρια διαφορά μεταξύ τους είναι οι μέθοδοι χειρισμού δεδομένων.

Για την εκτέλεση ενεργειών σε δεδομένα στο υπό εξέταση μοντέλο βάσης δεδομένων, χρησιμοποιούνται λογικές πράξεις, που ενισχύονται από αντικειμενοστρεφείς μηχανισμούς ενθυλάκωσης, κληρονομικότητας και πολυμορφισμού.

Ενθυλάκωσηπεριορίζει το εύρος ενός ονόματος ιδιοκτησίας στα όρια του αντικειμένου στο οποίο ορίζεται. Κληρονομία, αντίθετα, επεκτείνει το εύρος του ακινήτου σε όλους τους απογόνους του αντικειμένου.

Πολυμορφισμόςστις αντικειμενοστρεφείς γλώσσες προγραμματισμού σημαίνει την ικανότητα του ίδιου κώδικα προγράμματος να λειτουργεί με διαφορετικούς τύπους δεδομένων. Με άλλα λόγια, σημαίνει ότι επιτρέπεται για αντικείμενα διαφορετικών τύπων να έχουν μεθόδους (διαδικασίες ή συναρτήσεις) με τα ίδια ονόματα. Η αναζήτηση σε μια αντικειμενοστραφή βάση δεδομένων περιλαμβάνει την εύρεση ομοιοτήτων μεταξύ ενός αντικειμένου που καθορίζεται από τον χρήστη και των αντικειμένων που είναι αποθηκευμένα στη βάση δεδομένων.

Το κύριο πλεονέκτημα ενός αντικειμενοστρεφούς μοντέλου δεδομένων σε σύγκριση με ένα σχεσιακό είναι η δυνατότητα εμφάνισης πληροφοριών σχετικά με πολύπλοκες σχέσεις μεταξύ αντικειμένων. Ένα αντικειμενοστραφή μοντέλο δεδομένων σάς επιτρέπει να αναγνωρίζετε μεμονωμένες εγγραφές βάσης δεδομένων και να ορίζετε συναρτήσεις για την επεξεργασία τους.

Τα μειονεκτήματα του αντικειμενοστρεφούς μοντέλου είναι η υψηλή εννοιολογική πολυπλοκότητα, η άβολη επεξεργασία δεδομένων και η χαμηλή ταχύτητα αναζήτησης.

Τα αντικειμενοστραφή DBMS περιλαμβάνουν τα POET, Jasmine, Versant, O 2, ODB - Jupiter, Iris, Orion, Postgres.

Οι τεχνολογίες βάσεων δεδομένων που βασίζονται στο MD που περιγράφηκε παραπάνω βασίζονται σε μια στατική έννοια αποθήκευσης πληροφοριών, εστιασμένη στη μοντελοποίηση δεδομένων. Ωστόσο, νέοι τομείς εφαρμογής της τεχνολογίας με πολύπλοκα, διασυνδεδεμένα αντικείμενα βάσης δεδομένων, όπως:

Σχεδιασμός με τη βοήθεια υπολογιστή;

Αυτοματοποιημένη παραγωγή;

Αυτοματοποιημένη ανάπτυξη λογισμικού.

Συστήματα πληροφοριών γραφείου;

Συστήματα πολυμέσων;

Γεωγραφικά συστήματα πληροφοριών;

Τα συστήματα δημοσίευσης και άλλα έχουν δείξει τις περιορισμένες δυνατότητες της στατικής ιδέας όσον αφορά τη μοντελοποίηση αντικειμένων του πραγματικού κόσμου.

Για νέους τύπους πολύπλοκων εξειδικευμένων εφαρμογών βάσεων δεδομένων, είναι αποτελεσματική μια δυναμική έννοια αποθήκευσης πληροφοριών, η οποία επιτρέπει την παράλληλη μοντελοποίηση των δεδομένων και των διαδικασιών που ενεργούν σε αυτά τα δεδομένα. Αυτό σας επιτρέπει να λαμβάνετε υπόψη τη σημασιολογία της θεματικής περιοχής και επομένως να περιγράφετε επαρκέστερα αυτές τις εφαρμογές. Αυτή η ιδέα βασίζεται στην αντικειμενοστραφή προσέγγιση, η οποία χρησιμοποιείται ευρέως στη δημιουργία λογισμικού. Το MD, το οποίο υλοποιεί αυτήν την ιδέα και βασίζεται στο αντικειμενοστραφή παράδειγμα (OOP), ονομάζεται αντικειμενοστραφή μοντέλο δεδομένων (OODM).

Η κατασκευή του OOMD βασίζεται στην υπόθεση ότι η θεματική περιοχή μπορεί να περιγραφεί από ένα σύνολο αντικειμένων. Κάθε αντικείμενο είναι μια μοναδικά αναγνωρίσιμη οντότητα που περιέχει χαρακτηριστικά που περιγράφουν την κατάσταση των αντικειμένων του «πραγματικού κόσμου» και τις ενέργειες που σχετίζονται με αυτά. Η τρέχουσα κατάσταση ενός αντικειμένου περιγράφεται από ένα ή περισσότερα χαρακτηριστικά, τα οποία μπορεί να είναι απλά ή σύνθετα. Ένα απλό χαρακτηριστικό μπορεί να είναι πρωτόγονου τύπου (για παράδειγμα, ακέραιος, συμβολοσειρά, κ.λπ.) και να έχει κυριολεκτική τιμή. Ένα σύνθετο χαρακτηριστικό μπορεί να περιέχει συλλογές ή/και αναφορές. Ένα χαρακτηριστικό αναφοράς αντιπροσωπεύει μια σχέση μεταξύ αντικειμένων.

Η βασική ιδιότητα ενός αντικειμένου είναι η μοναδικότητα της αναγνώρισής του. Επομένως, κάθε αντικείμενο σε ένα αντικειμενοστραφή σύστημα πρέπει να έχει το δικό του αναγνωριστικό.

Το Αναγνωριστικό Αντικειμένου (OID) είναι ένας εσωτερικός τρόπος επισήμανσης μεμονωμένων αντικειμένων στη βάση δεδομένων. Οι χρήστες που εργάζονται με ένα ερώτημα ή προβολή πληροφοριών που βασίζεται σε διάλογο συνήθως δεν βλέπουν αυτά τα αναγνωριστικά. Εκχωρούνται και χρησιμοποιούνται από το ίδιο το DBMS. Η σημασιολογία του αναγνωριστικού είναι διαφορετική σε κάθε DBMS. Μπορεί να είναι είτε τυχαία τιμή είτε να περιέχει πληροφορίες απαραίτητες για την εύρεση ενός αντικειμένου σε ένα αρχείο βάσης δεδομένων, για παράδειγμα, τον αριθμό σελίδας στο αρχείο και τη μετατόπιση του αντικειμένου από την αρχή του. Είναι το αναγνωριστικό που πρέπει να χρησιμοποιηθεί για την οργάνωση αναφορών στο αντικείμενο.

Όλα τα αντικείμενα είναι ενθυλακωμένα, που σημαίνει ότι η αναπαράσταση ή η εσωτερική δομή του αντικειμένου παραμένει κρυφή από τον χρήστη. Αντίθετα, ο χρήστης γνωρίζει μόνο ότι το αντικείμενο μπορεί να εκτελέσει ορισμένες λειτουργίες. Έτσι, για ένα αντικείμενο WAREHOUSE, μπορούν να χρησιμοποιηθούν μέθοδοι όπως RECEIVE_GOOD, ISSUE_TOBAP, κ.λπ. Το πλεονέκτημα της ενθυλάκωσης είναι ότι σας επιτρέπει να αλλάξετε την εσωτερική αναπαράσταση των αντικειμένων χωρίς να επεξεργαστείτε ξανά τις εφαρμογές στις οποίες χρησιμοποιούνται αυτά τα αντικείμενα. Με άλλα λόγια, η ενθυλάκωση συνεπάγεται ανεξαρτησία δεδομένων.

Ένα αντικείμενο ενσωματώνει δεδομένα και συναρτήσεις (μέθοδοι, σύμφωνα με το OOP). Οι μέθοδοι ορίζουν τη συμπεριφορά ενός αντικειμένου. Μπορούν να χρησιμοποιηθούν για την αλλαγή της κατάστασης ενός αντικειμένου αλλάζοντας τις τιμές των χαρακτηριστικών του ή για να ρωτήσετε τις τιμές των επιλεγμένων χαρακτηριστικών. Για παράδειγμα, μπορεί να υπάρχουν μέθοδοι για την προσθήκη πληροφοριών σχετικά με ένα νέο ενοικιαζόμενο ακίνητο, την ενημέρωση των στοιχείων μισθού ενός υπαλλήλου ή την εκτύπωση πληροφοριών σχετικά με ένα συγκεκριμένο προϊόν.

Τα αντικείμενα που έχουν το ίδιο σύνολο χαρακτηριστικών και απαντούν στα ίδια μηνύματα μπορούν να ομαδοποιηθούν Τάξη(στη βιβλιογραφία, οι όροι «τάξη» και «τύπος» χρησιμοποιούνται συχνά εναλλακτικά). Κάθε τέτοια κλάση έχει τον δικό της αντιπρόσωπο - ένα αντικείμενο, το οποίο είναι ένα στοιχείο δεδομένων. Τα αντικείμενα μιας συγκεκριμένης κλάσης ονομάζονται αυτό αντίγραφα.

Σε ορισμένα αντικειμενοστραφή συστήματα, μια κλάση είναι επίσης ένα αντικείμενο και έχει τα δικά της χαρακτηριστικά και μεθόδους που ονομάζονται ιδιότητες κλάσης και μεθόδους κλάσης.

Σημαντικές έννοιες του OOP είναι ιεραρχία κλάσης και ιεραρχία κοντέινερ.

Ταξική Ιεραρχίαυπονοεί τη δυνατότητα κάθε κλάσης, που ονομάζεται στην περίπτωση αυτή υπερκλάση, να έχει τη δική της υποκλάση. Ως παράδειγμα, μπορούμε να δώσουμε την ακόλουθη αλυσίδα: όλοι οι προγραμματιστές οποιασδήποτε επιχείρησης είναι υπάλληλοι της, επομένως, κάθε προγραμματιστής που, στο πλαίσιο του OOMD, είναι αντικείμενο της κλάσης ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΙ, είναι επίσης υπάλληλος, ο οποίος με τη σειρά του, είναι αντικείμενο της κλάσης EMPLOYEES. Έτσι, οι ΠΡΟΓΡΑΜΜΑΤΙΣΤΕΣ θα είναι μια υποκατηγορία, οι ΕΡΓΑΖΟΜΕΝΟΙ θα είναι μια υπερτάξη. Αλλά οι προγραμματιστές μπορούν επίσης να χωριστούν σε προγραμματιστές συστημάτων και εφαρμογών. Επομένως, οι PROGRAMMERS θα είναι μια υπερκλάση για τις υποκλάσεις SIS_PROGRAMMERS και APPLICATION_PROGRAMERS. Συνεχίζοντας περαιτέρω αυτήν την αλυσίδα, παίρνουμε μια ιεραρχία κλάσεων στην οποία κάθε αντικείμενο μιας υποκλάσης κληρονομεί στιγμιότυπα μεταβλητών και μεθόδους της αντίστοιχης υπερκλάσης.

Υπάρχουν διάφοροι τύποι κληρονομικότητας - απλή, πολλαπλή και επιλεκτική. Η απλή κληρονομικότητα είναι μια περίπτωση όπου οι υποκλάσεις κληρονομούν το πολύ από μία υπερκλάση. Η πολλαπλή κληρονομικότητα είναι κληρονομιά από περισσότερες από μία υπερτάξεις. Η επιλεκτική κληρονομικότητα επιτρέπει σε μια υποκλάση να κληρονομήσει έναν περιορισμένο αριθμό ιδιοτήτων από την υπερκλάση της.

Η κληρονομικότητα των μεταβλητών στιγμιοτύπων ονομάζεται δομική κληρονομιά, κληρονομικότητα μεθόδου - συμπεριφορική κληρονομικότητακαι η δυνατότητα χρήσης της ίδιας μεθόδου για διαφορετικές κλάσεις ή μάλλον χρήσης διαφορετικών μεθόδων με το ίδιο όνομα για διαφορετικές κλάσεις ονομάζεται πολυμορφισμός.

Η αντικειμενοστραφή αρχιτεκτονική έχει επίσης έναν άλλο τύπο ιεραρχίας - ιεραρχία κοντέινερ. Είναι ότι ορισμένα αντικείμενα μπορούν εννοιολογικά να περιέχονται μέσα σε άλλα. Έτσι, ένα αντικείμενο της κλάσης DEPARTMENT πρέπει να περιέχει τη δημόσια μεταβλητή HEAD, η οποία είναι ένας σύνδεσμος προς το αντικείμενο κλάσης EMPLOYEE που αντιστοιχεί στον επικεφαλής του τμήματος, και πρέπει επίσης να περιέχει έναν σύνδεσμο προς ένα σύνολο συνδέσμων προς αντικείμενα που αντιστοιχούν στους εργαζόμενους που εργάζονται σε αυτό το τμήμα.

Σε ορισμένα αντικειμενοστραφή συστήματα, μια κλάση είναι επίσης ένα αντικείμενο και έχει τις δικές της ιδιότητες και μεθόδους. Τα γενικά χαρακτηριστικά μιας κλάσης περιγράφονται από τα χαρακτηριστικά της. Οι μέθοδοι κλάσης αντικειμένων είναι ένα είδος αναλόγου των ιδιοτήτων των αντικειμένων του πραγματικού κόσμου. Κάθε αντικείμενο που ανήκει σε μια συγκεκριμένη κλάση έχει αυτές τις ιδιότητες. Επομένως, κατά τη δημιουργία ενός αντικειμένου, είναι απαραίτητο να δηλωθεί η κλάση στην οποία ανήκει, ώστε να οριστούν έτσι οι εγγενείς ιδιότητές του.

Ο χρήστης και το αντικείμενο αλληλεπιδρούν μέσω μηνυμάτων. Σε απόκριση σε κάθε μήνυμα, το σύστημα εκτελεί την αντίστοιχη μέθοδο.

Όλες οι σχέσεις στο μοντέλο αντικειμένου γίνονται χρησιμοποιώντας χαρακτηριστικά αναφοράς, τα οποία συνήθως υλοποιούνται ως OID.

Οι σχέσεις σε μια σχεσιακή βάση δεδομένων αντιπροσωπεύονται από μια σύγκριση πρωτεύοντος και ξένου κλειδιού. Στην ίδια τη βάση δεδομένων δεν υπάρχουν δομές για το σχηματισμό συσχετίσεων μεταξύ πινάκων που χρησιμοποιούνται όπως απαιτείται κατά τη σύνδεση πινάκων. Αντίθετα, οι σχέσεις αποτελούν τη βάση μιας αντικειμενοστραφής βάσης δεδομένων, επειδή κάθε αντικείμενο περιλαμβάνει τα αναγνωριστικά των αντικειμένων με τα οποία σχετίζεται.

Στο OOMD δεν μπορούν να υλοποιηθούν μόνο παραδοσιακές συνδέσεις, αλλά και συνδέσεις λόγω κληρονομικότητας.

Επικοινωνία ένας προς έναν (1:1)μεταξύ των αντικειμένων Α και Β υλοποιείται προσθέτοντας ένα χαρακτηριστικό αναφοράς στο αντικείμενο Β στο αντικείμενο Α και (για να διατηρηθεί η αναφορική ακεραιότητα) ένα χαρακτηριστικό αναφοράς στο αντικείμενο Α στο αντικείμενο Β.

Σχέση ένα προς πολλά (1:M).μεταξύ των αντικειμένων Α και Β υλοποιείται προσθέτοντας στο αντικείμενο Α ένα χαρακτηριστικό αναφοράς στο αντικείμενο Β και ένα χαρακτηριστικό που περιέχει ένα σύνολο αναφορών στο αντικείμενο Α στο αντικείμενο Β (για παράδειγμα, προστίθεται ένα χαρακτηριστικό αναφοράς B(OID2, OID3...) στο αντικείμενο Α και σε περιπτώσεις του αντικειμένου Β με OID2, OID3,... προστίθεται το χαρακτηριστικό αναφοράς Α: OID1.

Σχέση πολλά-προς-πολλά (Μ:Ν).μεταξύ των αντικειμένων Α και Β υλοποιείται προσθέτοντας σε κάθε αντικείμενο ένα χαρακτηριστικό που περιέχει ένα σύνολο συνδέσμων.

Στο OOMD, μπορείτε να χρησιμοποιήσετε μια σχέση "ολόκληρου μέρους", η οποία περιγράφει ότι ένα αντικείμενο μιας κλάσης περιέχει αντικείμενα άλλων κλάσεων ως μέρη του. Στην περίπτωση μιας βάσης δεδομένων παραγωγής, θα υπάρχει μια σχέση ολόκληρου μέρους μεταξύ της κατηγορίας PRODUCT και των κλάσεων PART και ASSEMBLY. Αυτή η σχέση είναι μια παραλλαγή της σχέσης πολλά προς πολλά, που έχει ιδιαίτερη σημασιολογία. Μια σχέση ολόκληρου μέρους υλοποιείται όπως κάθε άλλη σχέση πολλά-προς-πολλά, χρησιμοποιώντας ένα σύνολο σχετικών αναγνωριστικών αντικειμένων. Ωστόσο, σε αντίθεση με τη συνηθισμένη σχέση πολλά-προς-πολλά, έχει διαφορετική σημασιολογική σημασία.

Δεδομένου ότι το αντικειμενοστρεφές παράδειγμα υποστηρίζει κληρονομικότητα, το OOMD μπορεί να χρησιμοποιήσει σχέσεις τύπου «είναι» και σχέσεις τύπου «εκτείνεται». Η σχέση «είναι», που ονομάζεται επίσης σχέση γενίκευσης-εξειδίκευσης, δημιουργεί μια ιεραρχία κληρονομικότητας στην οποία οι υποκλάσεις είναι ειδικές περιπτώσεις υπερκλάσεων. Αυτό καθιστά δυνατό να μην περιγραφούν εκ νέου κληρονομικά χαρακτηριστικά. Όταν χρησιμοποιείται η σχέση "extend", η υποκλάση επεκτείνει τη λειτουργικότητα της υπερκλάσης αντί να περιορίζεται σε μια ειδική περίπτωση αυτής.

Ας δούμε πώς υλοποιούνται στοιχεία όπως οι περιορισμοί ακεραιότητας και οι λειτουργίες δεδομένων στο OOMD.

Τα χαρακτηριστικά αυτών των εξαρτημάτων καθορίζονται από τις ιδιαιτερότητες του μοντέλου. Αυτή η ιδιαιτερότητα στο OOMD υπαγορεύεται κυρίως από εσωτερικές έννοιες όπως η ενθυλάκωση αντικειμένων, δηλαδή η κρυφή εσωτερική δομή, η πρόσβαση σε δεδομένα μόνο μέσω προκαθορισμένων μεθόδων, η ιεραρχία κλάσεων και η ιεραρχία κοντέινερ.

Οι ιδιαιτερότητες του OOMD υπαγορεύονται από τις ιδιαιτερότητες του αντικειμένου. Εκδηλώνεται στην ανάγκη ομαδοποίησης αντικειμένων σε κλάσεις. Κάθε αντικείμενο περιλαμβάνεται σε μια ή την άλλη κλάση ανάλογα με την εργασία και ένα αντικείμενο μπορεί να ανήκει σε πολλές κλάσεις ταυτόχρονα (για παράδειγμα, οι οικογένειες ΠΡΟΓΡΑΜΜΑΤΙΣΤΕΣ και ΥΨΗΛΑ ΠΛΗΡΩΜΕΝΕΣ). Ένα άλλο ειδικό χαρακτηριστικό ενός αντικειμένου είναι ότι μπορεί να «μετακινηθεί» από τη μια κλάση (υποκλάση) στην άλλη. Έτσι, ένας ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ SYSTEMS μπορεί να γίνει ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ ΕΦΑΡΜΟΓΩΝ με την πάροδο του χρόνου. Έτσι, μια ιεραρχία κλάσης δεν είναι ανάλογο ενός ιεραρχικού μοντέλου, όπως μπορεί να φαίνεται προηγουμένως, αλλά απαιτεί από το σύστημα να μπορεί να αλλάξει τη θέση κάθε αντικειμένου εντός της ιεραρχίας κλάσης, για παράδειγμα, να μετακινηθεί "πάνω" ή "κάτω". μέσα σε μια δεδομένη ιεραρχία. Αλλά μια πιο περίπλοκη διαδικασία είναι επίσης δυνατή - το σύστημα πρέπει να παρέχει τη δυνατότητα για ένα αντικείμενο να προσαρτάται (αποσπάται) σε μια αυθαίρετη κορυφή της ιεραρχίας ανά πάσα στιγμή.

Οι περιορισμοί στην ακεραιότητα των συνδέσεων παίζουν σημαντικό ρόλο στο OOMD. Για να λειτουργήσουν οι σύνδεσμοι σε ένα αντικειμενοστραφή MD, τα αναγνωριστικά αντικειμένων και στις δύο πλευρές του συνδέσμου πρέπει να ταιριάζουν μεταξύ τους. Για παράδειγμα, εάν υπάρχει σχέση μεταξύ των ΕΡΓΑΖΟΜΕΝΩΝ και των ΠΑΙΔΩΝ τους, τότε πρέπει να υπάρχει κάποια εγγύηση ότι όταν ένα αντικείμενο που περιγράφει ένα παιδί εισάγεται σε ένα αντικείμενο που αντιπροσωπεύει τον εργαζόμενο, το αναγνωριστικό του τελευταίου προστίθεται στο αντίστοιχο αντικείμενο. Αυτός ο τύπος σχεσιακής ακεραιότητας, κάπως ανάλογος με την αναφορική ακεραιότητα στο μοντέλο σχεσιακών δεδομένων, καθιερώνεται χρησιμοποιώντας συνδέσμους ανάδρασης. Για να εξασφαλιστεί η ακεραιότητα των σχέσεων, παρέχεται στον σχεδιαστή μια ειδική συντακτική κατασκευή που είναι απαραίτητη για τον καθορισμό της θέσης του αναγνωριστικού αντίστροφου αντικειμένου. Η ευθύνη για τον καθορισμό περιορισμών στην ακεραιότητα των σχέσεων (καθώς και την ακεραιότητα αναφοράς σε μια σχεσιακή βάση δεδομένων) ανήκει στον σχεδιαστή.

Στο OOMD, τόσο η περιγραφή δεδομένων όσο και ο χειρισμός πραγματοποιούνται χρησιμοποιώντας την ίδια αντικειμενοστραφή διαδικαστική γλώσσα.

Η ομάδα ODMG (Object Database Management Group) ασχολείται με τα προβλήματα τυποποίησης της τεχνολογίας της βάσης δεδομένων αντικειμένων. Ανέπτυξε ένα μοντέλο αντικειμένου (το ODMG 2.0 υιοθετήθηκε τον Σεπτέμβριο του 1997) που ορίζει ένα τυπικό μοντέλο για τη σημασιολογία των αντικειμένων της βάσης δεδομένων. Αυτό το μοντέλο είναι σημαντικό γιατί ορίζει ενσωματωμένη σημασιολογία που ένα αντικειμενοστραφή DBMS (OODBMS) κατανοεί και μπορεί να εφαρμόσει. Η δομή των βιβλιοθηκών και των εφαρμογών που χρησιμοποιούν αυτές τις σημασιολογίες πρέπει να είναι φορητή μεταξύ διαφορετικών OODBMS που υποστηρίζουν αυτό το αντικείμενο MD. Τα κύρια στοιχεία της αρχιτεκτονικής ODMG είναι: το μοντέλο αντικειμένου (OM), η γλώσσα ορισμού αντικειμένου (ODL), η γλώσσα ερωτήματος αντικειμένου (OQL) και η δυνατότητα σύνδεσης σε C++, Java και Smalltalk.

Το μοντέλο δεδομένων αντικειμένου σύμφωνα με το πρότυπο ODMG 2.0 χαρακτηρίζεται από τις ακόλουθες ιδιότητες:

Τα βασικά δομικά στοιχεία είναι αντικείμενα και κυριολεκτικά. Κάθε αντικείμενο έχει ένα μοναδικό αναγνωριστικό. Ένα κυριολεκτικό δεν έχει δικό του αναγνωριστικό και δεν μπορεί να υπάρχει ξεχωριστά ως αντικείμενο. Τα κυριολεκτικά είναι πάντα ενσωματωμένα σε αντικείμενα και δεν μπορούν να αναφέρονται ξεχωριστά.

Τα αντικείμενα και τα κυριολεκτικά διακρίνονται ανά τύπο. Κάθε τύπος έχει τον δικό του τομέα, τον οποίο μοιράζονται όλα τα αντικείμενα και τα κυριολεκτικά αυτού του τύπου. Οι τύποι μπορούν επίσης να έχουν συμπεριφορά. Εάν ένας τύπος έχει κάποια συμπεριφορά, τότε όλα τα αντικείμενα αυτού του τύπου έχουν την ίδια συμπεριφορά. Στην πράξη, ο τύπος μπορεί να είναι η κλάση από την οποία δημιουργείται το αντικείμενο, μια διεπαφή ή ένας απλός τύπος δεδομένων (όπως ένας ακέραιος). Ένα αντικείμενο μπορεί να θεωρηθεί ως ένα παράδειγμα ενός τύπου.

Η κατάσταση ενός αντικειμένου καθορίζεται από ένα σύνολο τρεχουσών τιμών που πραγματοποιούνται από ένα σύνολο ιδιοτήτων. Αυτές οι ιδιότητες μπορεί να είναι χαρακτηριστικά ενός αντικειμένου ή σχέσεις μεταξύ ενός αντικειμένου και ενός ή περισσότερων άλλων αντικειμένων.

Η συμπεριφορά ενός αντικειμένου ορίζεται από ένα σύνολο πράξεων που μπορούν να εκτελεστούν στο αντικείμενο ή στο ίδιο το αντικείμενο. Οι λειτουργίες μπορούν να έχουν μια λίστα παραμέτρων εισόδου και εξόδου, καθεμία αυστηρά καθορισμένου τύπου. Κάθε λειτουργία μπορεί επίσης να επιστρέψει ένα πληκτρολογημένο αποτέλεσμα.

Ο ορισμός της βάσης δεδομένων αποθηκεύεται σε ένα σχήμα γραμμένο στη γλώσσα ορισμού αντικειμένου (ODL). Η βάση δεδομένων αποθηκεύει αντικείμενα, επιτρέποντάς τους να μοιράζονται μεταξύ διαφορετικών χρηστών και εφαρμογών.

Τα DBMS που βασίζονται σε OODS ονομάζονται αντικειμενοστραφή DBMS (OODBMS). Αυτά τα DBMS ταξινομούνται ως DBMS τρίτης γενιάς* (* Η ιστορία της ανάπτυξης των μοντέλων αποθήκευσης δεδομένων συχνά χωρίζεται σε τρία στάδια (γενιές): η πρώτη γενιά (τέλη 1960 - αρχές δεκαετίας 70) - ιεραρχικά και δικτυακά μοντέλα· δεύτερη γενιά (περίπου 1970-1980) - σχεσιακό μοντέλο· τρίτη γενιά (δεκαετία 1980 - αρχές δεκαετίας 2000) - αντικειμενοστραφή μοντέλα.).

Σήμερα, οι αντικειμενοστρεφείς βάσεις δεδομένων χρησιμοποιούνται σε διάφορους οργανισμούς για να λύσουν ένα ευρύ φάσμα προβλημάτων. Η ανάλυση και η γενίκευση της συσσωρευμένης εμπειρίας στον τομέα των δεδομένων τεχνολογίας πληροφοριών κατέστησαν δυνατό τον εντοπισμό εφαρμογών στις οποίες δικαιολογείται η χρήση αντικειμενοστρεφών βάσεων δεδομένων:

Η εφαρμογή αποτελείται από μεγάλο αριθμό αλληλεπιδρώντων τμημάτων. Κάθε ένα από αυτά έχει τη δική του συμπεριφορά, η οποία εξαρτάται από τη συμπεριφορά των άλλων.

Το σύστημα πρέπει να επεξεργάζεται μεγάλους όγκους μη δομημένων ή πολύπλοκων δεδομένων.

Η εφαρμογή θα έχει πρόσβαση στα δεδομένα προβλέψιμα, επομένως η φύση πλοήγησης των αντικειμενοστρεφών βάσεων δεδομένων δεν θα είναι σημαντικό μειονέκτημα.

Η ανάγκη για απρογραμμάτιστα αιτήματα είναι περιορισμένη.

Η δομή των αποθηκευμένων δεδομένων είναι ιεραρχικής ή παρόμοιας φύσης.

Επί του παρόντος, υπάρχουν πολλά αντικειμενοστραφή DBMS στην αγορά λογισμικού. Στον πίνακα Το 10.6 παρουσιάζει μερικά από τα εμπορικά συστήματα αυτής της κατηγορίας.

Πίνακας 10.6

Σύγχρονο εμπορικό OODBMS,

τους κατασκευαστές και τους τομείς εφαρμογής τους

Μία από τις θεμελιώδεις διαφορές μεταξύ των βάσεων δεδομένων αντικειμένων και των σχεσιακών είναι η δυνατότητα δημιουργίας και χρήσης νέων τύπων δεδομένων. Ένα σημαντικό χαρακτηριστικό του OODBMS είναι ότι η δημιουργία ενός νέου τύπου δεν απαιτεί τροποποίηση του πυρήνα της βάσης δεδομένων και βασίζεται στις αρχές του αντικειμενοστρεφούς προγραμματισμού.

Ο πυρήνας OODBMS είναι βελτιστοποιημένος για λειτουργίες με αντικείμενα. Οι φυσικές λειτουργίες για αυτό είναι η προσωρινή αποθήκευση αντικειμένων, η διατήρηση εκδόσεων αντικειμένων και ο διαχωρισμός των δικαιωμάτων πρόσβασης σε συγκεκριμένα αντικείμενα. Το OODBMS χαρακτηρίζεται από υψηλότερη απόδοση σε λειτουργίες που απαιτούν πρόσβαση και ανάκτηση δεδομένων συσκευασμένων σε αντικείμενα, σε σύγκριση με τα σχεσιακά DBMS, για τα οποία η ανάγκη ανάκτησης σχετικών δεδομένων οδηγεί στην εκτέλεση πρόσθετων εσωτερικών λειτουργιών.

Σημαντική σημασία για ένα OODBMS είναι η δυνατότητα μετακίνησης αντικειμένων από τη μια βάση δεδομένων στην άλλη.

Όταν δημιουργείτε διάφορες εφαρμογές που βασίζονται σε ένα OODBMS, η ενσωματωμένη δομή κλάσης ενός συγκεκριμένου DBMS είναι σημαντική. Η βιβλιοθήκη κλάσεων, κατά κανόνα, υποστηρίζει όχι μόνο όλους τους τυπικούς τύπους δεδομένων, αλλά και ένα διευρυμένο σύνολο πολυμέσων και άλλων πολύπλοκων τύπων δεδομένων, όπως βίντεο, ήχος και μια ακολουθία καρέ κινούμενων σχεδίων. Ορισμένα OODBMS έχουν δημιουργήσει βιβλιοθήκες κλάσεων που καθιστούν δυνατή την αποθήκευση και την αναζήτηση πλήρους κειμένου πληροφοριών εγγράφων (για παράδειγμα, Jasmine, ODB-Jupiter). Ένα παράδειγμα της βασικής δομής κλάσης φαίνεται στο Σχ. 10.17.

Η κύρια θέση σε αυτό καταλαμβάνεται από την κλάση TOdbObject, η οποία περιέχει όλες τις απαραίτητες ιδιότητες και μεθόδους για τον έλεγχο της πρόσβασης στη βάση δεδομένων και την εκτέλεση ευρετηρίασης. Όλες οι άλλες κλάσεις παρακάμπτουν τις μεθόδους του, προσθέτοντας έναν έλεγχο τύπου για την ορθότητα του τύπου που εφαρμόζουν και έναν συγκεκριμένο δείκτη.

Όπως φαίνεται από το Σχ. 10.17, στη δομή υπάρχουν διάφορες κλάσεις που επικεντρώνονται στην επεξεργασία πληροφοριών τεκμηρίωσης - TOdbText, TOdbDocument, TODBTextDocument, κ.λπ. Κάθε έγγραφο αντιπροσωπεύεται από ένα ξεχωριστό αντικείμενο. Αυτό διασφαλίζει τη φυσική αποθήκευση των εγγράφων. Μία από τις πιο σημαντικές λειτουργίες είναι η αναζήτηση εγγράφων κατόπιν αιτήματος. Για τις περισσότερες κλάσεις, εφαρμόζεται η δυνατότητα αναζήτησης αντικειμένων με βάση την τιμή ενός συγκεκριμένου κλειδιού. Για την κλάση TOdbText, έχει εφαρμοστεί η δυνατότητα δημιουργίας ερωτήματος αναζήτησης με βάση μια φράση γραμμένη σε φυσική γλώσσα.

Η κλάση TOdbDocument είναι ειδική, ικανή να περιέχει διαφορετικούς τύπους αντικειμένων. Αποτελείται από πεδία, καθένα από τα οποία έχει ένα όνομα και σχετίζεται με ένα αντικείμενο συγκεκριμένου τύπου. Η παρουσία αυτής της κλάσης δίνει στον χρήστη την ευκαιρία να επεκτείνει το σύνολο των τύπων. Τροποποιώντας ένα αντικείμενο κοντέινερ (έγγραφο), μπορείτε να ορίσετε ένα συγκεκριμένο σύνολο πεδίων και να αποκτήσετε έναν νέο τύπο εγγράφου.

Με βάση το ODB-Jupiter, οι προγραμματιστές του OODBMS δημιούργησαν ένα πλήρως λειτουργικό σύστημα ανάκτησης πληροφοριών ODB-Text, το οποίο έχει μια καθολική δομή αποθηκευμένων δεδομένων και μια ισχυρή μηχανή αναζήτησης. Το σύστημα ODB-Text είναι ένα εργαλείο συλλογικής επεξεργασίας εγγράφων και διατήρησης εταιρικού αρχείου. Πιθανές εφαρμογές περιλαμβάνουν αυτοματοποίηση λογιστικής ροής εγγράφων σε σύγχρονο γραφείο, κατασκευή συστημάτων αναφοράς και πληροφοριών (παρόμοια με τις γνωστές νομικές βάσεις δεδομένων), συντήρηση βάσεων δεδομένων δικτύου, αρχεία προσωπικού, βιβλιογραφία κ.λπ.

41. Χαρακτηριστικά της εφαρμοσμένης σχεδίασης IC. Φάσεις ανάπτυξης IP. (Θέμα 11, σελ. 100-103).

11.1.3. Χαρακτηριστικά σχεδιασμού συστήματος εφαρμοζόμενων IC

Κατά την κατασκευή (επιλογή, προσαρμογή) ενός πληροφοριακού συστήματος, μπορείτε να χρησιμοποιήσετε δύο κύριες έννοιες, δύο κύριες προσεγγίσεις (η τρίτη έννοια είναι ένας συνδυασμός τους):

1. εστίαση σε προβλήματα που πρέπει να επιλυθούν χρησιμοποιώντας αυτό το πληροφοριακό σύστημα, π.χ. προσανατολισμένη στο πρόβλημα προσέγγιση (ή επαγωγική προσέγγιση).

2. προσανατολισμός προς την τεχνολογία που είναι διαθέσιμη (ενημερωμένη) σε ένα δεδομένο σύστημα ή περιβάλλον, π.χ. προσέγγιση προσανατολισμένη στην τεχνολογία (ή απαγωγική προσέγγιση).

Η επιλογή της έννοιας εξαρτάται από στρατηγικά (τακτικά) ή/και μακροπρόθεσμα (βραχυπρόθεσμα) κριτήρια, προβλήματα, πόρους.

Εάν πρώτα μελετηθούν οι δυνατότητες της υπάρχουσας τεχνολογίας και στη συνέχεια εντοπιστούν τρέχοντα προβλήματα που μπορούν να επιλυθούν με τη βοήθειά τους, τότε είναι απαραίτητο να βασιστούμε σε μια προσέγγιση προσανατολισμένη στην τεχνολογία.

Εάν πρώτα εντοπιστούν τα τρέχοντα προβλήματα και στη συνέχεια εισαχθεί τεχνολογία που είναι επαρκής για την επίλυση αυτών των προβλημάτων, τότε είναι απαραίτητο να βασιστείτε σε μια προσέγγιση προσανατολισμένη στο πρόβλημα.

Ταυτόχρονα, και οι δύο έννοιες της οικοδόμησης ενός πληροφοριακού συστήματος εξαρτώνται η μία από την άλλη: η εισαγωγή νέων τεχνολογιών αλλάζει τα προβλήματα που επιλύονται και η αλλαγή των προβλημάτων που επιλύονται οδηγεί στην ανάγκη εισαγωγής νέων τεχνολογιών. και τα δύο επηρεάζουν τις αποφάσεις που λαμβάνονται.

Ο σχεδιασμός (ανάπτυξη) συστήματος και η χρήση οποιουδήποτε εφαρμοσμένου (εταιρικού) πληροφοριακού συστήματος πρέπει να διέρχεται από τον ακόλουθο κύκλο ζωής του πληροφοριακού συστήματος:

– ανάλυση προσχεδιασμού (πείρα στη δημιουργία άλλων παρόμοιων συστημάτων, πρωτοτύπων, διαφορές και χαρακτηριστικά του συστήματος που αναπτύσσεται κ.λπ.), ανάλυση των εξωτερικών εκδηλώσεων του συστήματος.

– ανάλυση εντός του συστήματος, εσωτερική ανάλυση (ανάλυση υποσυστημάτων συστήματος).

– συστημική (μορφολογική) περιγραφή (αναπαράσταση) του συστήματος (περιγραφή του στόχου του συστήματος, σχέσεις και συνδέσεις του συστήματος με το περιβάλλον, άλλα συστήματα και πόρους του συστήματος - υλικό, ενέργεια, πληροφορίες, οργανωτικές, ανθρώπινες, χωρικές και χρονικές).

– καθορισμός κριτηρίων επάρκειας, αποτελεσματικότητας και βιωσιμότητας (αξιοπιστία).

– λειτουργική περιγραφή των υποσυστημάτων του συστήματος (περιγραφή μοντέλων, αλγόριθμοι για τη λειτουργία των υποσυστημάτων).

– πρωτοτυποποίηση (περιγραφή διάταξης) του συστήματος, αξιολόγηση της αλληλεπίδρασης υποσυστημάτων συστήματος (ανάπτυξη διάταξης – υλοποίηση υποσυστημάτων με απλουστευμένες λειτουργικές περιγραφές, διαδικασίες και δοκιμή της αλληλεπίδρασης αυτών των διατάξεων για την ικανοποίηση του στόχου του συστήματος), ενώ είναι δυνατή η χρήση «διατάξεων» κριτηρίων για επάρκεια, σταθερότητα, αποτελεσματικότητα.

– «συναρμολόγηση» και δοκιμή του συστήματος - υλοποίηση πλήρους λειτουργικών υποσυστημάτων και κριτηρίων, αξιολόγηση του μοντέλου σύμφωνα με τα διατυπωμένα κριτήρια.

– λειτουργία συστήματος·

– καθορισμός στόχων για περαιτέρω ανάπτυξη του συστήματος και των εφαρμογών του.

– συντήρηση του συστήματος - αποσαφήνιση, τροποποίηση, διεύρυνση των δυνατοτήτων του συστήματος στον τρόπο λειτουργίας του (με σκοπό την εξέλιξή του).

Αυτά τα στάδια είναι τα κύρια για τον ανασχεδιασμό πληροφοριών συστημάτων.

Η ανάπτυξη ενός εταιρικού συστήματος πληροφοριών, κατά κανόνα, πραγματοποιείται για μια πολύ συγκεκριμένη επιχείρηση. Τα χαρακτηριστικά της θεματικής δραστηριότητας της επιχείρησης σίγουρα θα επηρεάσουν τη δομή του πληροφοριακού συστήματος. Αλλά ταυτόχρονα, οι δομές διαφορετικών επιχειρήσεων είναι γενικά παρόμοιες μεταξύ τους. Κάθε οργανισμός, ανεξάρτητα από το είδος της δραστηριότητάς του, αποτελείται από έναν αριθμό τμημάτων που ασκούν άμεσα τον ένα ή τον άλλο τύπο εταιρικής δραστηριότητας. Και αυτή η κατάσταση ισχύει για όλους σχεδόν τους οργανισμούς, ανεξάρτητα από το είδος της δραστηριότητας που ασκούν.

Έτσι, κάθε οργανισμός μπορεί να θεωρηθεί ως ένα σύνολο αλληλεπιδρώντων στοιχείων (τμημάτων), καθένα από τα οποία μπορεί να έχει τη δική του, μάλλον περίπλοκη, δομή. Οι σχέσεις μεταξύ των τμημάτων είναι επίσης αρκετά περίπλοκες. Γενικά, μπορούν να διακριθούν τρεις τύποι συνδέσεων μεταξύ τμημάτων μιας επιχείρησης:

Λειτουργικές συνδέσεις - κάθε τμήμα εκτελεί ορισμένους τύπους εργασιών σε μια ενιαία επιχειρηματική διαδικασία.

Επικοινωνία πληροφοριών - τα τμήματα ανταλλάσσουν πληροφορίες (έγγραφα, φαξ, γραπτές και προφορικές εντολές κ.λπ.).

Εξωτερικές επικοινωνίες - ορισμένα τμήματα αλληλεπιδρούν με εξωτερικά συστήματα και η αλληλεπίδρασή τους μπορεί επίσης να είναι τόσο ενημερωτική όσο και λειτουργική.

Η κοινότητα της δομής των διαφορετικών επιχειρήσεων μας επιτρέπει να διαμορφώσουμε κάποιες κοινές αρχές για την κατασκευή εταιρικών πληροφοριακών συστημάτων.

Γενικά, η διαδικασία ανάπτυξης ενός πληροφοριακού συστήματος μπορεί να εξεταστεί από δύο οπτικές γωνίες:

Με βάση το χρόνο ή τα στάδια του κύκλου ζωής του συστήματος που αναπτύσσεται. Σε αυτή την περίπτωση, εξετάζουμε τη δυναμική οργάνωση της διαδικασίας ανάπτυξης, που περιγράφεται με όρους κύκλων, σταδίων, επαναλήψεων και σταδίων.

Ένα επιχειρησιακό πληροφοριακό σύστημα αναπτύσσεται ως έργο. Πολλά χαρακτηριστικά της διαχείρισης του έργου και της φάσης ανάπτυξης του έργου (φάσεις κύκλου ζωής) είναι κοινά, ανεξάρτητα όχι μόνο από τη θεματική περιοχή, αλλά και από τη φύση του έργου (δεν έχει σημασία αν πρόκειται για μηχανικό ή οικονομικό έργο). Επομένως, είναι λογικό να εξετάσουμε πρώτα μια σειρά από γενικά ζητήματα διαχείρισης έργου.

Ένα έργο είναι μια χρονικά περιορισμένη, σκόπιμη αλλαγή σε ένα ξεχωριστό σύστημα με αρχικά σαφώς καθορισμένους στόχους, η επίτευξη του οποίου καθορίζει την ολοκλήρωση του έργου, καθώς και με καθορισμένες απαιτήσεις για το χρονοδιάγραμμα, τα αποτελέσματα, τον κίνδυνο, το πλαίσιο για τη δαπάνη κεφαλαίων και πόρων. και για την οργανωτική δομή.

Συνήθως, για μια σύνθετη έννοια (όπως, συγκεκριμένα, η έννοια ενός έργου) είναι δύσκολο να δοθεί μια σαφής διατύπωση που να καλύπτει πλήρως όλα τα χαρακτηριστικά της εισαγόμενης έννοιας. Επομένως, ο δεδομένος ορισμός δεν ισχυρίζεται ότι είναι μοναδικός και πλήρης.

Μπορούν να αναγνωριστούν τα ακόλουθα κύρια διακριτικά χαρακτηριστικά του έργου ως αντικειμένου διαχείρισης:

Η μεταβλητότητα είναι μια σκόπιμη μεταφορά ενός συστήματος από ένα υπάρχον σε κάποιο

την επιθυμητή κατάσταση, που περιγράφεται από την άποψη των στόχων του έργου·

Περιορισμός του τελικού στόχου.

Περιορισμένη διάρκεια.

Περιορισμοί προϋπολογισμού;

Απαιτούνται περιορισμένοι πόροι.

Καινοτομία για την επιχείρηση για την οποία υλοποιείται το έργο.

Πολυπλοκότητα - η παρουσία ενός μεγάλου αριθμού παραγόντων που επηρεάζουν άμεσα ή έμμεσα την πρόοδο και τα αποτελέσματα του έργου.

Νομική και οργανωτική υποστήριξη - δημιουργία συγκεκριμένης οργανωτικής δομής για τη διάρκεια του έργου.

Η αποτελεσματικότητα της εργασίας επιτυγχάνεται μέσω της διαχείρισης της διαδικασίας υλοποίησης του έργου, η οποία διασφαλίζει την κατανομή των πόρων, τον συντονισμό της σειράς των εργασιών που εκτελούνται και την αντιστάθμιση των εσωτερικών και εξωτερικών ενοχλητικών επιρροών.

Από τη σκοπιά της θεωρίας των συστημάτων ελέγχου, ένα έργο ως αντικείμενο ελέγχου πρέπει να είναι παρατηρήσιμο και ελεγχόμενο, δηλαδή να προσδιορίζονται ορισμένα χαρακτηριστικά με τα οποία μπορεί να παρακολουθείται συνεχώς η πρόοδος του έργου (ιδιότητα παρατηρησιμότητας). Επιπλέον, χρειάζονται μηχανισμοί για την έγκαιρη επιρροή στην πρόοδο του έργου (ιδιότητα ελέγχου).

Η ιδιότητα ελέγχου είναι ιδιαίτερα σημαντική σε συνθήκες αβεβαιότητας και μεταβλητότητας της θεματικής περιοχής, που συχνά συνοδεύουν έργα ανάπτυξης πληροφοριακών συστημάτων.

Κάθε έργο, ανεξάρτητα από την πολυπλοκότητα και τον όγκο της εργασίας που απαιτείται για την υλοποίησή του, περνάει από ορισμένες καταστάσεις στην ανάπτυξή του: από την κατάσταση όταν «το έργο δεν υπάρχει ακόμη» έως την κατάσταση όταν «το έργο δεν υπάρχει πλέον». Το σύνολο των σταδίων ανάπτυξης από την εμφάνιση μιας ιδέας έως την πλήρη ολοκλήρωση ενός έργου χωρίζεται συνήθως σε φάσεις (στάδια, στάδια).

Υπάρχουν ορισμένες διαφορές στον προσδιορισμό του αριθμού των φάσεων και του περιεχομένου τους, καθώς αυτά τα χαρακτηριστικά εξαρτώνται σε μεγάλο βαθμό από τις συνθήκες του συγκεκριμένου έργου και την εμπειρία των κύριων συμμετεχόντων. Ωστόσο, η λογική και το βασικό περιεχόμενο της διαδικασίας ανάπτυξης του πληροφοριακού συστήματος είναι κοινά σχεδόν σε όλες τις περιπτώσεις.

Διακρίνονται οι ακόλουθες φάσεις ανάπτυξης του πληροφοριακού συστήματος:

Διαμόρφωση της έννοιας;

Ανάπτυξη τεχνικών προδιαγραφών.

Σχέδιο;

Βιομηχανοποίηση;

Θέση του συστήματος σε λειτουργία.

Ας δούμε το καθένα από αυτά με περισσότερες λεπτομέρειες. Η δεύτερη και εν μέρει τρίτη φάση ονομάζονται συνήθως φάσεις σχεδιασμού συστήματος και οι δύο τελευταίες (μερικές φορές η φάση σχεδιασμού περιλαμβάνεται και εδώ) είναι φάσεις υλοποίησης.

Εννοιολογική φάση

Σχηματισμός ιδεών, καθορισμός στόχων.

Σχηματισμός βασικής ομάδας έργου.

Μελέτη των κινήτρων και των απαιτήσεων του πελάτη και άλλων συμμετεχόντων.

Συλλογή αρχικών δεδομένων και ανάλυση της υπάρχουσας κατάστασης.

Προσδιορισμός βασικών απαιτήσεων και περιορισμών, απαιτούμενων υλικών, οικονομικών και εργατικών πόρων.

Συγκριτική αξιολόγηση εναλλακτικών επιλογών.

Υποβολή προτάσεων, εξέταση και έγκρισή τους.

Ανάπτυξη τεχνικής πρότασης

Ανάπτυξη του κύριου περιεχομένου του έργου, η βασική δομή του έργου.

Ανάπτυξη και έγκριση τεχνικών προδιαγραφών.

Σχεδιασμός, αποσύνθεση του βασικού δομικού μοντέλου του έργου.

Εκπόνηση εκτιμήσεων και προϋπολογισμού για το έργο, καθορισμός απαιτήσεων πόρων.

Ανάπτυξη ημερολογιακών σχεδίων και διευρυμένων προγραμμάτων εργασίας.

Υπογραφή σύμβασης με τον πελάτη.

Θέση σε λειτουργία μέσων επικοινωνίας μεταξύ των συμμετεχόντων στο έργο και παρακολούθηση της προόδου των εργασιών.

Σχέδιο

Σε αυτή τη φάση, καθορίζονται τα υποσυστήματα και οι σχέσεις τους και επιλέγονται οι πιο αποτελεσματικοί τρόποι υλοποίησης του έργου και χρήσης πόρων. Τυπική εργασία αυτής της φάσης:

Εκτέλεση βασικών εργασιών σχεδιασμού.

Ανάπτυξη ιδιωτικών τεχνικών προδιαγραφών.

Εκτέλεση εννοιολογικού σχεδιασμού;

Σύνταξη τεχνικών προδιαγραφών και οδηγιών.

Παρουσίαση σχεδιασμού ανάπτυξης, εξέτασης και έγκρισης.

Ανάπτυξη

Σε αυτή τη φάση πραγματοποιείται ο συντονισμός και ο λειτουργικός έλεγχος των εργασιών του έργου, τα υποσυστήματα κατασκευάζονται, ενσωματώνονται και δοκιμάζονται. Κυρίως περιεχόμενο:

Εκτέλεση εργασιών ανάπτυξης λογισμικού.

Προετοιμασία για την υλοποίηση του συστήματος.

Παρακολούθηση και ρύθμιση βασικών δεικτών έργων.

Θέση σε λειτουργία του συστήματος

Σε αυτή τη φάση γίνονται δοκιμές, δοκιμαστική λειτουργία του συστήματος σε πραγματικές συνθήκες, γίνονται διαπραγματεύσεις για τα αποτελέσματα του έργου και για πιθανές νέες συμβάσεις. Κύριοι τύποι εργασίας:

Ολοκληρωμένες δοκιμές.

42. Η έννοια του κύκλου ζωής IP. (Θέμα 11, σελ. 103-105).



Έχετε ερωτήσεις;

Αναφέρετε ένα τυπογραφικό λάθος

Κείμενο που θα σταλεί στους συντάκτες μας: