Πληροφοριακά Συστήματα Διοίκησης Ενότητα 5: Διαγράμματα Κλάσης (1ο Μέρος)

Σχετικά έγγραφα
Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Παραδείγματα διαγραμμάτων της UML (1ο Μέρος)

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

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

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 6: Διαγράμματα Κλάσης (2ο Μέρος)

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 4: Μοντελοποίηση Περιπτώσεων Χρήσης (2ο Μέρος)

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Διαχείριση Έργων. Ενότητα 4: Διάγραμμα Gannt

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 3: Εφαρμογές Δικτυωτής Ανάλυσης (2 ο Μέρος)

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 10: Διαχείριση Έργων (2ο Μέρος)

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

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 6: Συμπίεση Έργου

Διοίκηση Ολικής Ποιότητας & Επιχειρηματική Αριστεία Ενότητα 1.3.2: Παραδοσιακή VS νέα προσέγγιση της ΔΟΠ

Θεωρία Λήψης Αποφάσεων

Διοίκηση Ολικής Ποιότητας & Επιχειρηματική Αριστεία Ενότητα 1.3.3: Μεθοδολογία εφαρμογής προγράμματος Ολικής Ποιότητας

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

Ενδεικτικές λύσεις ασκήσεων

Ενδεικτικές λύσεις ασκήσεων διαγραμμάτων περίπτωσης χρήσης (1ο Μέρος)

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

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 5: Διαχείριση Έργων υπό συνθήκες αβεβαιότητας

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

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

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 2: Εφαρμογές Δικτυωτής Ανάλυσης (1 ο Μέρος)

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Επιχειρησιακή Έρευνα

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

Επιχειρησιακή Έρευνα

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Διαχείριση Έργων. Ενότητα 10: Χρονοπρογραμματισμός έργων (υπό συνθήκες αβεβαιότητας)

Διαφήμιση και Δημόσιες Σχέσεις Ενότητα 9: Σχέσεις διαφημιστή-διαφημιζόμενου

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Ενδεικτικές λύσεις ασκήσεων

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

Εισαγωγή στους Αλγορίθμους

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Επιχειρησιακή Έρευνα

Μάρκετινγκ. Ενότητα 2: Αξία για τους Πελάτες

Ενδεικτικές λύσεις ασκήσεων διαγραμμάτων περίπτωσης χρήσης (2ο Μέρος)

Κβαντική Επεξεργασία Πληροφορίας

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

Εισαγωγή στους Αλγορίθμους

Επιχειρησιακή Έρευνα

Διοίκηση Ολικής Ποιότητας & Επιχειρηματική Αριστεία Ενότητα 1.6.1: Το οργανόγραμμα της ποιότητας

Επιχειρησιακή Έρευνα

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 1: Δικτυωτή Ανάλυση (Θεωρία Γράφων)

Οργάνωση και Διοίκηση Πωλήσεων Ενότητα 4η: Καθορισμός Περιοχής Πώλησης (sales territory)

Επιχειρησιακή Έρευνα

Επιχειρησιακή Έρευνα

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Κβαντική Επεξεργασία Πληροφορίας

Θέματα υπολογισμού στον πολιτισμό

Ενδεικτικές λύσεις ασκήσεων

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Γ. Ολοκληρωτικός Λογισμός

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

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Διοίκηση Ολικής Ποιότητας & Επιχειρηματική Αριστεία Ενότητα 1.4: ISO 9004:2009

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Εφαρμογές των Τεχνολογιών της Πληροφορίας και των Επικοινωνιών στη διδασκαλία και τη μάθηση

Κβαντική Επεξεργασία Πληροφορίας

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 8: Παίγνια πλήρους και ελλιπούς πληροφόρησης

Μηχανολογικό Σχέδιο Ι

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Εισαγωγή στους Αλγορίθμους

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 9: Διαχείριση Έργων (1ο Μέρος)

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

Τεχνολογία Λογισμικού

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Έλεγχος και Διασφάλιση Ποιότητας Ενότητα 4: Μελέτη ISO Κουππάρης Μιχαήλ Τμήμα Χημείας Εργαστήριο Αναλυτικής Χημείας

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

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

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Διοικητική Λογιστική

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

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

Επιχειρησιακή Έρευνα

Ψηφιακή Επεξεργασία και Ανάλυση Εικόνας Ενότητα 10 η : Ανάλυση Εικόνας. Καθ. Κωνσταντίνος Μπερμπερίδης Πολυτεχνική Σχολή Μηχανικών Η/Υ & Πληροφορικής

Διαχείριση Έργων. Ενότητα 5: Χρονοδιάγραμμα προμηθειών, προγραμματισμός πόρων

Θέματα υπολογισμού στον πολιτισμό

Αρχιτεκτονική και Οπτική Επικοινωνία 1 - Αναπαραστάσεις

Ενδεικτικές λύσεις ασκήσεων διαγραμμάτων κλάσης (1ο Μέρος)

Τίτλος Μαθήματος. Ενότητα 1η: Εισαγωγή. Δημήτριος Σκούρας Σχολή Διοίκησης Επιχειρήσεων Τμήμα Οικονομικών Επιστημών

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

Εισαγωγή στους Υπολογιστές

Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Προσχολική Παιδαγωγική Ενότητα 2: Οργάνωση χρόνου και χώρου στα νηπιαγωγεία

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

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 4: Διαχείριση Έργων

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 7: Διαγράμματα Καταστάσεων

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Διαχείριση Έργων. Ενότητα 7: Εκτέλεση, παρακολούθηση και έλεγχος έργου

Transcript:

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 5: Διαγράμματα Κλάσης (1ο Μέρος) Γρηγόριος Μπεληγιάννης Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης Επιχειρήσεων Αγροτικών Προϊόντων και Τροφίμων

Σκοποί ενότητας Να κατανοήσουν οι φοιτητές τις βασικές έννοιες της μοντελοποίησης κλάσεων μέσω UML Να κατανοήσουν οι φοιτητές τα βήματα για δημιουργία διαγραμμάτων κλάσης Να μάθουν οι φοιτητές να αναγνωρίζουν και να ελέγχουν τις κλάσεις σε ένα πληροφοριακό σύστημα 2

Περιεχόμενα ενότητας Κλάσεις και αντικείμενα Διαγράμματα κλάσεων Διαγράμματα αντικειμένων Ερωτήματα εύρεσης κλάσεων Χαρακτηριστικά κλάσεων Μέθοδοι / λειτουργίες κλάσεων Είδη σχέσεων Είδη συσχετίσεων 3

Διαγράμματα κλάσης 1 ο Μέρος

Εισαγωγή (1/2) Οι κλάσεις, τα αντικείμενα και οι μεταξύ τους συσχετίσεις είναι τα πρωταρχικά στοιχεία μοντελοποίησης στην αντικειμενοστραφή ανάλυση και σχεδίαση Οι κλάσεις και τα αντικείμενα περιγράφουν τι υπάρχει μέσα στο σύστημα που αναλύεται 5

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

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

Κλάσεις (1/2) Μια κλάση είναι μια περιγραφή ενός τύπου αντικειμένου περιγράφει τα χαρακτηριστικά και τη συμπεριφορά του συγκεκριμένου τύπου αντικειμένου 8

Κλάσεις (2/2) Όλα τα αντικείμενα είναι στιγμιότυπα μιας κλάσης Η σχέση ενός αντικειμένου με μια κλάση είναι παρόμοια με τη σχέση μιας μεταβλητής με τον τύπο της μεταβλητής σε μια γλώσσα προγραμματισμού 9

Μοντελοποίηση συστημάτων (1/2) Χρήση εννοιών και αντικειμένων από τον πραγματικό κόσμο Ένα σύστημα για μια τράπεζα, πρέπει να χρησιμοποιεί αντικείμενα όπως: πελάτης, λογαριασμός, δάνειο, κλπ. Ένα σύστημα για ένα πανεπιστημιακό τμήμα πρέπει να χρησιμοποιεί αντικείμενα όπως: φοιτητής, καθηγητής, μαθήματα, κλπ. 10

Μοντελοποίηση συστημάτων (2/2) Η μοντελοποίηση πρέπει να βασίζεται στα κύρια αντικείμενα του συστήματος για να μπορεί εύκολα να αλλάζει Τα μοντέλα πρέπει να είναι κατανοήσιμα εύκολα να επικυρωθούν εύκολα να συντηρηθούν 11

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

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

Κλάση αντικειμένων (1/4) Μια κλάση είναι μια περιγραφή ενός τύπου αντικειμένου περιγράφει τα χαρακτηριστικά και τη συμπεριφορά του συγκεκριμένου τύπου αντικειμένου Όλα τα αντικείμενα είναι στιγμιότυπα μιας κλάσης 14

Κλάση αντικειμένων (2/4) Η σχέση ενός αντικειμένου με μια κλάση είναι παρόμοια με τη σχέση μιας μεταβλητής με τον τύπο της μεταβλητής σε μια γλώσσα προγραμματισμού Οι κλάσεις χρησιμοποιούνται για τη μοντελοποίηση και περιγραφή συστημάτων Η τεχνική της δημιουργίας ιεραρχίας υπάρχει και στην αντικειμενοστραφή μοντελοποίηση 15

Κλάση αντικειμένων (3/4) Μια κλάση μπορεί να περιγράφει αντικείμενα οποιουδήποτε συστήματος πληροφοριακό σύστημα επιχειρησιακό σύστημα τεχνικό σύστημα κατανεμημένο σύστημα λογισμικό, κλπ. 16

Κλάση αντικειμένων (4/4) Παραδείγματα κλάσεων σε πληροφοριακά ή επιχειρησιακά συστήματα είναι πελάτης παραγγελία τιμολόγιο δελτίο αποστολής, κλπ. 17

Ερωτήματα για εύρεση κλάσεων 1. Υπάρχει πληροφορία που θα πρέπει να περιγραφεί, αναλυθεί ή αποθηκευτεί; 2. Υπάρχουν εξωτερικά συστήματα τα οποία αλληλεπιδρούν με το σύστημά μας; 3. Υπάρχουν πρότυπα, βιβλιοθήκες κλάσεων ή άλλα συστατικά από προηγούμενες μελέτες; 4. Υπάρχουν περιφερειακά που πρέπει να διαχειριστεί το σύστημα; 5. Ποιος είναι ο ρόλος των διαφόρων χρηστών στο σύστημα; 18

Αναπαράσταση κλάσης με UML Όνομα Χαρακτηριστικά Μέθοδοι 19

Παράδειγμα κλάσης και αντικειμένου Αυτοκίνητο αριθμ.πινακίδας μοντέλο ταχύτητα κατεύθυνση Ξεκίνα Επιτάχυνε Φρέναρε Το αυτοκίνητο του Κώστα: Αυτοκίνητο ΑΙΑ 2345 Toyota Corolla 100 km Ανατολική Όνομα Χαρακτηριστικά Μέθοδοι 20

Χαρακτηριστικά κλάσεων H γενική περιγραφή ενός χαρακτηριστικού είναι: ορατότητα όνομα : τύπος=αρχική τιμή {λίστα τιμών} π.χ. +κατάσταση: Κατάσταση = νέος {νέος, παλαιός} Μόνο το όνομα και ο τύπος είναι υποχρεωτικά Τύπος: Μπορεί να είναι βασικός τύπος, όπως ακέραιος, πραγματικός, δυαδικός, κ.λπ., αλλά μπορεί να είναι και μια κλάση αντικειμένων Ορατότητα: Περιγράφει αν το χαρακτηριστικό είναι ορατό και αν μπορούν να το χρησιμοποιήσουν και άλλες κλάσεις, εκτός από αυτή στην οποία ορίζεται (- + #) 21

Παράδειγμα κλάσης (1/2) Παραγγελία + ποσό: Πραγματικός αριθμός + ημερομηνία: Ημερομηνία = Τρέχουσα + πελάτης: Συμβολοσειρά - πωλητής: Συμβολοσειρά 22

Παράδειγμα κλάσης (2/2) Το σύμβολο μείον (-) σημαίνει ότι το χαρακτηριστικό είναι ιδιωτικό, δηλαδή δεν μπορεί να χρησιμοποιηθεί και δεν είναι ορατό από άλλες κλάσεις. Το αντίθετο υποδηλώνει το σύμβολο συν (+) το οποίο προσδιορίζει δημόσιο χαρακτηριστικό. Το σύμβολο # δηλώνει ότι το χαρακτηριστικό είναι προστατευόμενο 23

Μέθοδοι /Λειτουργίες (1/2) Οι μέθοδοι χρησιμοποιούνται για τη διαχείριση των χαρακτηριστικών ή την εκτέλεση συγκεκριμένων ενεργειών Η γενική περιγραφή μιας μεθόδου είναι ορατότητα όνομα (λίστα παραμέτρων): τύπος επιστροφής Οι μέθοδοι περιγράφουν τι υπηρεσίες προσφέρει η κάθε κλάση και κάποιες από αυτές παρέχουν την κατάλληλη διασύνδεση με άλλες κλάσεις 24

Μέθοδοι /Λειτουργίες (2/2) Οι μέθοδοι μπορούν: Να παίρνουν πληροφορίες από χαρακτηριστικά (τις τιμές τους) Να ενημερώνουν τιμές χαρακτηριστικών (να τις αλλάζουν) Να καλούν άλλα αντικείμενα για εκτέλεση λειτουργιών 25

Παράδειγμα κλάσης με μεθόδους (1/2) Αυτοκίνητο + αρ.πινακίδας: Συμβολοσειρά - δεδομένα: Δεδομένα_Αυτοκινήτου + ταχύτητα: Ακέραιος αριθμός + κατεύθυνση: Κατεύθυνση + οδήγησε(ταχύτητα: ακέραιος, κατεύθυνση: Κατεύθυνση) + πάρε_δεδομένα( ): Δεδομένα_Αυτοκινήτου 26

Παράδειγμα κλάσης με μεθόδους (2/2) Η μέθοδος οδήγησε δέχεται δύο παραμέτρους ταχύτητα κατεύθυνση Η μέθοδος πάρε_δεδομένα έχει έναν τύπο επιστροφής Δεδομένα_Αυτοκινήτου 27

Είδη σχέσεων (1/2) Συσχέτιση είναι μια σημασιολογική σχέση μεταξύ των αντικειμένων δύο ή περισσότερων κλάσεων Γενίκευση είναι η σχέση ανάμεσα σ ένα πιο γενικό και σ ένα πιο εξειδικευμένο στοιχείο Το ειδικό στοιχείο θα πρέπει να περιέχει μόνο επιπρόσθετες πληροφορίες 28

Είδη σχέσεων (2/2) Εξάρτηση σχέση ανάμεσα σε ανεξάρτητο κι εξαρτημένο στοιχείο Μια ενδεχόμενη αλλαγή στο ανεξάρτητο στοιχείο θα επηρεάσει το εξαρτημένο στοιχείο 29

Είδη συσχετίσεων (1/2) 1. Κανονική Συσχέτιση 2. Αναδρομική Συσχέτιση 3. Συσχέτιση Διάζευξης 4. Ταξινομημένη Συσχέτιση 30

Είδη συσχετίσεων (2/2) 1. Tριαδική ή Ν-αδική Συσχέτιση 2. Kλάση συσχέτισης 3. Συναθροίσεις Kανονική Συνάθροιση Διαμοιραζόμενη ή Ασθενής Συνάθροιση Συνάθροιση Σύνθεσης 31

Κανονική συσχέτιση (1/2) Άνθρωπός 1..* κατέχει 0..* κατέχεται από Αυτοκίνητο 32

Κανονική συσχέτιση (2/2) Ένα άτομο κατέχει πολλά (από μηδέν έως πολλά) αυτοκίνητα Ένα αυτοκίνητο ανήκει σε πολλά (ένα ή πολλά) άτομα Χαρακτηριστικό σε μια κανονική συσχέτιση αποτελεί η πολλαπλότητα, δηλαδή ο αριθμός που δηλώνει το πλήθος των αντικειμένων κάθε κλάσης που συνδέονται με τα αντικείμενα της άλλης 33

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

Συσχετίσεις μεταξύ αντικειμένων αναπαριστούν ένα στιγμιότυπο της συσχέτισης 35

Πολλαπλότητα συσχετίσεων (1/2) Ένας οποιοσδήποτε αριθμός * Ένα εύρος που καθορίζεται από το.. Πιθανοί αριθμοί διαχωρίζονται με κόμμα Αν δεν υπάρχει πολλαπλότητα εννοείται το 1 36

Πολλαπλότητα συσχετίσεων (2/2) Ακριβώς Ένα: 1 0: * ή (0..*) 0 1: 0..1 σταθερός αριθμός (π.χ. 4): 4 εύρος (π.χ. 5 ή περισσότερα): 5..* εύρος (π.χ. 2 έως και 7): 2..7 απαρίθμηση (π.χ. 2,5,9,10,11,12): 2,5,9..12 37

Παράδειγμα διαγράμματος κλάσεων 1..* Πολιτική ασφάλισης 0..1 έχει Ασφαλιστική εταιρεία Αναφέρεται σε 1 εκφράζει 1 1 έχει 0..* Συμβόλαιο 0..* έχει 1..* Αναφέρεται ασφάλισης Αναφέρεται σε σε Πελάτης 38

Διάγραμμα κλάσεων VS διάγραμμα αντικειμένων Ιδιοκτήτης Όνομα: συμβολοσειρά Ηλικία: ακέραιος χρησιμοποιεί 0..* 1..* Υπολογιστής Όνομα: συμβολοσειρά Μνήμη: ακέραιος Κώστας: Ιδιοκτήτης Όνομα = Κώστας Ηλικία = 19 Το PC του Κώστα: Υπολογιστής Όνομα = Pentium Μνήμη=4 39

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

Ρόλοι σε συσχέτιση (1/2) Αυτοκίνητο οδηγεί * * Αυτοκίνητο εταιρείας οδηγός Άνθρωπος 41

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

Συσχέτιση διάζευξης (1/2) Η συσχέτιση διάζευξης θέτει περιορισμό σε δύο ή περισσότερες συσχετίσεις εξασφαλίζει ότι μόνο μια από τις συσχετίσεις είναι έγκυρη κάθε φορά 43

Συσχέτιση διάζευξης (2/2) Ασφαλιστική εταιρία 1 0..* Συμβόλαιο ασφάλειας 0..* 0..* {or} 1..* Άνθρωπος 1..* Επιχείρηση 44

Ταξινομημένη συσχέτιση (1/2) Πολλές φορές είναι απαραίτητο να προσδιορισθεί κάποια συγκεκριμένη σειρά ανάμεσα στ αντικείμενα Αυτό απεικονίζεται τοποθετώντας τη λέξη {ταξινομημένο} ανάμεσα στους συνδέσμους, και κοντά στην κλάση του αντικειμένου που ταξινομείται Αν δεν αναφέρεται ισχύει το μη ταξινομημένο 45

Ταξινομημένη συσχέτιση (2/2) Συμβόλαιο Ασφάλειας 0..* {ταξινομημένο κατά αύξουσα σειρά χρόνου} 1..* Πελάτης 46

Κλάση συσχέτισης (1/2) Περίπτωση συσχετίσεων M:N Χρήστης 1..* Συμμετέχει * Συνάντηση Ιδιότητα Περίπτωση συσχετίσεων 1:1 και 1:N Επιχείρηση Όνομα Διεύθυνση ΑΦΜ 1 * Απασχόληση Μισθός Θέση Άνθρωπος Ονοματεπώνυμο ΑΤ Διεύθυνση Μισθός Θέση 47

Κλάση συσχέτισης (2/2) ΚΛΑΣΗ ΑΝΤΙΚΕΙΜΕΝΩΝ ΚΛΑΣΗ ΣΥΣΧΕΤΙΣΗΣ Άτομο 1 1 * * Απασχόληση Προσόντα Ώρες Ημερες_Αποζημίωσης Έργο Άτομο * * Έργο Απασχόληση Προσόντα Ώρες Ημερες_Αποζημίωσης Κάποιος μπορεί να έχει περισσότερες από μία σχέσεις «απασχόληση» για το ίδιο «έργο» 48

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

Συνάθροιση Η συνάθροιση είναι μία ειδική περίπτωση συσχέτισης με τις ακόλουθες ιδιότητες: 1. Μεταβατικότητα Αν τα αντικείμενα της κλάσης Γ είναι μέρη των αντικειμένων της κλάσης Β και η κλάση Β είναι μέρος της κλάσης Α τότε η κλάση Γ είναι μέρος της κλάσης Α 2. Αντι-συμμετρικότητα: Αν η κλάση Β είναι μέρος της κλάσης Α τότε η Α δεν είναι μέρος της κλάσης Β 50

Κανονική συνάθροιση (1/2) H συνάθροιση εκφράζεται με τις λέξεις Περιέχει, Αποτελείται από ή Είναι μέρος του Σμήνος περιέχει * Αεροπλάνα 51

Κανονική συνάθροιση (2/2) 1. Το σμήνος αποτελείται από πολλά αεροπλάνα 2. Ορισμένα αεροπλάνα μπορούν να μετακινηθούν, το σμήνος όμως εξακολουθεί να υφίσταται 3. Το ίδιο συμβαίνει κι αν προσθέσουμε κάποια νέα αεροπλάνα 4. Τα τμήματα (αεροπλάνα) συνθέτουν το σύνολο (σμήνος) 5. Τα τμήματα υπάρχουν, έστω κι αν το σύνολο καταστραφεί 52

Διαμοιραζόμενη συνάθροιση (1/2) Μία συνάθροιση είναι διαμοιραζόμενη, αν η πολλαπλότητα στο μέρος του όλου είναι παραπάνω από 1 Ομάδα * * Αποτελείται από * Άνθρωπος 53

Διαμοιραζόμενη συνάθροιση (2/2) 1. Τα μέρη είναι ανεξάρτητα του όλου και μπορούν να αποτελούν μέρη και άλλων αντικειμένων του ίδιου τύπου 2. Το παραπάνω μοντέλο αποτελεί ένα παράδειγμα διαμοιραζόμενης συνάθροισης, όπου οι άνθρωποι είναι τα διαμοιραζόμενα μέρη 3. Μια ομάδα αποτελείται από διάφορα μέλη 4. Ένας άνθρωπος μπορεί να είναι μέλος πολλών ομάδων 54

Συνάθροιση σύνθεσης Παρουσιάζει ισχυρή ιδιοκτησία των τμημάτων της Τα τμήματα που αποτελούν το σύνολο θα καταστραφούν, όταν καταστραφεί το σύνολο Η πολλαπλότητα στην πλευρά του συνόλου πρέπει να είναι 0..1, ενώ η πολλαπλότητα στην πλευρά τμήματος μπορεί να είναι οποιοδήποτε διάστημα 55

Συνάθροιση σύνθεσης (1 ος τρόπος αναπαράστασης) 1. Ο ρόμβος δείχνει τη συνάθροιση σύνθεσης 2. Το παράθυρο περιέχει πολλά μενού, κουμπιά και κείμενα * Μενού Παράθυρο * Κουμπί * Κείμενο 56

Συνάθροιση σύνθεσης (2 ος τρόπος αναπαράστασης) * Μενού Παράθυρο περιέχει * Κουμπί * Κείμενο 57

Συνάθροιση σύνθεσης (3 ος τρόπος αναπαράστασης) 1. Οι κλάσεις των τμημάτων βρίσκονται μέσα στην κλάση του συνόλου 2. Η πολλαπλότητα των τμημάτων σημειώνεται σε κάθε κλάση στην πάνω δεξιά γωνία Παράθυρο Μενού * * Κουμπί Κείμενο * 58

Γενίκευση / Ειδίκευση Είναι σχέση κατηγοριοποίησης μεταξύ μίας εξειδικευμένης κλάσης (υποκλάση) και μιας περισσότερο γενικευμένης (υπερκλάση) η εξειδικευμένη κλάση κληρονομεί όλες τις ιδιότητες της γενικευμένης μπορούν να προστεθούν επιπλέον ιδιότητες σε κάθε εξειδικευμένη κλάση ένα στιγμιότυπο της υποκλάσης μπορεί να χρησιμοποιηθεί όπου επιτρέπεται η χρήση της υπερκλάσης επιτρέπεται πολλαπλή κληρονομικότητα 59

Γενίκευση (1 ος τρόπος αναπαράστασης) (1/2) 1. Το μέσο μεταφοράς είναι μια γενική κλάση (υπερκλάση) που προέρχεται από εξειδικευμένες κλάσεις (υποκλάσεις) μέσω της κληρονομικότητας (γενίκευσης-ειδίκευσης) 2. Μια κλάση μπορεί να κληρονομήσει από μια κλάση (οπότε είναι υποκλάση σ αυτή), όπως ταυτόχρονα μπορεί να κληρονομηθεί από κάποια άλλη (υπερκλάση σ αυτή) 60

Γενίκευση (1 ος τρόπος αναπαράστασης) (2/2) Μέσο μεταφοράς Αυτοκίνητο Πλοίο Αεροπλάνο 61

Γενίκευση (2 ος τρόπος αναπαράστασης) Η κληρονομικότητα μπορεί να πάρει και τη μορφή ενός δέντρου (με ένα μόνο τρίγωνο) Μέσο μεταφοράς Αυτοκίνητο Πλοίο Αεροπλάνο 62

Γενίκευση με περιορισμό 1. Άδεια για Πολλαπλή Κληρονομικότητα Επικάλυψη (Οverlapping) 2. Απαγόρευση Πολλαπλής Κληρονομικότητας (default) Μη συνένωση (Disjoint) 3. Απαγόρευση περαιτέρω εξειδίκευσης των κλάσεων Ολοκληρωμένη (Complete) 4. Άδεια περαιτέρω εξειδίκευσης των κλάσεων (default) Μη ολοκληρωμένη (Incomplete) 63

Γενίκευση Αναπαράσταση περιορισμών (1/2) Κλάση Α { περιορισμός1, περιορισμός2,... } Κλάση Β Κλάση Γ Κλάση Δ 1 ος τρόπος 64

Γενίκευση Αναπαράσταση περιορισμών (2/2) Κλάση Α {περιορισμός 1, περιορισμός2..} Κλάση Β Κλάση Γ Κλάση Δ 2 ος τρόπος 65

Επικάλυψη και μη συνένωση (1/2) Επικάλυψη (overlapping) σημαίνει ότι οι υποκλάσεις επιτρέπεται να εξειδικευτούν σε μια κοινή υποκλάση (π.χ. Αμφίβιο) Ακριβώς το αντίθετο φανερώνει η μη συνένωση (disjoint) που είναι και το default 66

Επικάλυψη και μη συνένωση (2/2) Ζώο {overlapping} Θηλαστικό Ψάρι Αμφίβιο 67

Ολοκληρωμένη Μη ολοκληρωμένη γενίκευση (1/2) Όταν σε κάποια γενίκευση υπάρχει ο περιορισμός ολοκληρωμένη (Complete), σημαίνει ότι δεν μπορούν να προστεθούν νέες υποκλάσεις To default είναι η μη ολοκληρωμένη (Incomplete) 68

Ολοκληρωμένη Μη ολοκληρωμένη γενίκευση (2/2) Άνθρωπος {ολοκληρωμένη} Άντρας Γυναίκα 69

Σχέση εξάρτησης (1/2) Είναι μία σημαντική συσχέτιση μεταξύ δύο κλάσεων ή πακέτων ή περιπτώσεων χρήσης Mία αλλαγή στο ανεξάρτητο στοιχείο, επηρεάζει το εξαρτημένο Παρότι δεν υπάρχει σαφής συσχέτιση μεταξύ των δύο κλάσεων, υπάρχει εξάρτηση 70

Σχέση εξάρτησης (2/2) Παραδείγματα Μια κλάση παίρνει το αντικείμενο κάποιας άλλης κλάσης σαν παράμετρο Μια κλάση καλεί μία μέθοδο κλάσης μιας άλλης κλάσης Κλάση Α «φίλη» Κλάση Β 71

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στo πλαίσιo του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα Πανεπιστημίου Πατρών» έχει χρηματοδοτήσει μόνο την αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 72

Σημειώματα

Σημείωμα Ιστορικού Εκδόσεων Έργου Το παρόν έργο αποτελεί την έκδοση 1.0. Έχουν προηγηθεί οι κάτωθι εκδόσεις: 74

Σημείωμα Αναφοράς Copyright Πανεπιστήμιο Πατρών, Γρηγόριος Μπεληγιάννης. «Πληροφοριακά Συστήματα Διοίκησης. Διαγράμματα Κλάσης (1ο Μέρος)». Έκδοση: 1.0. Πάτρα 2015. Διαθέσιμο από τη δικτυακή διεύθυνση: https://eclass.upatras.gr/modules/document/document.php?course=deapt1 11. 75

Σημείωμα Αδειοδότησης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά, Μη Εμπορική Χρήση Παρόμοια Διανομή 4.0 [1] ή μεταγενέστερη, Διεθνής Έκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό και τα οποία αναφέρονται μαζί με τους όρους χρήσης τους στο «Σημείωμα Χρήσης Έργων Τρίτων». [1] http://creativecommons.org/licenses/by-nc-sa/4.0/ Ως Μη Εμπορική ορίζεται η χρήση: που δεν περιλαμβάνει άμεσο ή έμμεσο οικονομικό όφελος από την χρήση του έργου, για το διανομέα του έργου και αδειοδόχο που δεν περιλαμβάνει οικονομική συναλλαγή ως προϋπόθεση για τη χρήση ή πρόσβαση στο έργο που δεν προσπορίζει στο διανομέα του έργου και αδειοδόχο έμμεσο οικονομικό όφελος (π.χ. διαφημίσεις) από την προβολή του έργου σε διαδικτυακό τόπο Ο δικαιούχος μπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιμοποιεί το έργο για εμπορική χρήση, εφόσον αυτό του ζητηθεί. 76