Σχέσεις UML με ΠΑΡΑΔΕΙΓΜΑ: Εξάρτηση, Γενίκευση, Πραγματοποίηση

Πίνακας περιεχομένων:

Anonim

Τι είναι η σχέση UML;

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

Ας τα μελετήσουμε λεπτομερώς

  • Σχέση

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

  • Εξάρτηση

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

  • Γενίκευση

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

  • Πραγματοποίηση

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

Σε αυτό το σεμινάριο UML, θα μάθετε:

  • Σχέση
  • Εξάρτηση
  • Γενίκευση
  • Πραγματοποίηση
  • Σύνθεση
  • Συσσωμάτωση

Σχέση

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

  • {implicit} - Οι έμμεσοι περιορισμοί καθορίζουν ότι η σχέση δεν είναι εμφανής. βασίζεται σε μια ιδέα.
  • {order} - Τακτοποιημένοι περιορισμοί καθορίζουν ότι το σύνολο των αντικειμένων στο ένα άκρο μιας συσχέτισης είναι με συγκεκριμένο τρόπο.
  • {changeable} - Ο μεταβλητός περιορισμός καθορίζει ότι η σύνδεση μεταξύ διαφόρων αντικειμένων στο σύστημα μπορεί να προστεθεί, να αφαιρεθεί και να τροποποιηθεί σύμφωνα με τις απαιτήσεις.
  • {addOnly} - Καθορίζει ότι οι νέες συνδέσεις μπορούν να προστεθούν από ένα αντικείμενο που βρίσκεται στο άλλο άκρο μια συσχέτιση.
  • {κατεψυγμένο} - Καθορίζει ότι όταν ένας σύνδεσμος προστίθεται μεταξύ δύο αντικειμένων, τότε δεν μπορεί να τροποποιηθεί ενώ ο δεσμευμένος περιορισμός είναι ενεργός στον δεδομένο σύνδεσμο ή μια σύνδεση.

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

Ανακλαστική σύνδεση

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

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

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

Σκηνοθεσία

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

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

Συμβολίζεται με μια σταθερή γραμμή με ένα βέλος.

Παράδειγμα:

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

Εξάρτηση

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

Στερεότυπα

  • « Bind » - Το Bind είναι ένας περιορισμός που καθορίζει ότι η πηγή μπορεί να προετοιμάσει το πρότυπο σε μια τοποθεσία προορισμού, χρησιμοποιώντας τις παρεχόμενες παραμέτρους ή τιμές.
  • «Derive» - Αντιπροσωπεύει ότι η θέση ενός αντικειμένου προέλευσης μπορεί να υπολογιστεί από το αντικείμενο προορισμού.
  • «Φίλος» - Καθορίζει ότι η πηγή έχει μοναδική ορατότητα στο αντικείμενο προορισμού.
  • «InstanceOf» - Καθορίζει ότι η παρουσία ενός ταξινομητή προορισμού είναι το αντικείμενο προέλευσης.
  • «Instantiate» - Καθορίζει ότι το αντικείμενο προέλευσης μπορεί να δημιουργήσει παρουσίες ενός αντικειμένου στόχου.
  • «Βελτίωση» - Καθορίζει ότι το αντικείμενο προέλευσης έχει εξαιρετική αφαίρεση από αυτό του αντικειμένου στόχου.
  • «Use» - Χρησιμοποιείται όταν δημιουργούνται πακέτα στο UML. Το στερεότυπο χρήσης περιγράφει ότι τα στοιχεία ενός πακέτου προέλευσης μπορούν να υπάρχουν και εντός του πακέτου στόχου. Περιγράφει ότι το πακέτο προέλευσης χρησιμοποιεί ορισμένα στοιχεία ενός πακέτου στόχου.
  • «Υποκατάστατο» - καθορίζει ότι ο πελάτης μπορεί να αντικαταστήσει τον προμηθευτή κατά το χρόνο εκτέλεσης.
  • «Πρόσβαση» - Καθορίζει ότι το πακέτο προέλευσης έχει πρόσβαση στα στοιχεία του πακέτου προορισμού, το οποίο καλείται επίσης ως ιδιωτική συγχώνευση.
  • «Εισαγωγή» - Καθορίζει ότι ο στόχος μπορεί να εισαγάγει το στοιχείο ενός πακέτου προέλευσης, όπως ορίζονται εντός του στόχου, το οποίο καλείται επίσης ως δημόσια συγχώνευση.
  • «Άδεια» - καθορίζει ότι το στοιχείο προέλευσης έχει πρόσβαση στο στοιχείο προμηθευτή ανεξάρτητα από τη δηλωμένη ορατότητα του προμηθευτή.
  • «Επέκταση» - Σας βοηθά να προσδιορίσετε ότι ο στόχος μπορεί να επεκτείνει τη συμπεριφορά του στοιχείου προέλευσης.
  • «Include» - Σας επιτρέπει να καθορίσετε το στοιχείο προέλευσης που μπορεί να συμπεριλάβει τη συμπεριφορά ενός άλλου στοιχείου σε μια καθορισμένη τοποθεσία. (όπως μια συνάρτηση κλήσης σε c / c ++)
  • «Γίνει» - Καθορίζει ότι ο στόχος είναι παρόμοιος με την πηγή με διαφορετικές τιμές και ρόλους.
  • «Κλήση» - Καθορίζει ότι η πηγή μπορεί να επικαλεστεί μια μέθοδο αντικειμένου στόχου.
  • «Αντίγραφο» - Καθορίζει ότι το αντικείμενο προορισμού είναι ανεξάρτητο, αντίγραφο ενός αντικειμένου προέλευσης.
  • «Παράμετρος» - ο προμηθευτής είναι μια παράμετρος των λειτουργιών του πελάτη .
  • «Αποστολή» - ο πελάτης είναι μια λειτουργία που στέλνει στον προμηθευτή κάποιο μη καθορισμένο στόχο.

Στερεότυπα μεταξύ μηχανής κατάστασης

  • «Αποστολή» - Καθορίζει ότι η λειτουργία προέλευσης στέλνει το συμβάν προορισμού.

Γενίκευση

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

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

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

Αυτός ο τύπος σχέσης είναι συλλογικά γνωστός ως σχέση γενίκευσης.

Στερεότυπα και περιορισμοί τους

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

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

Πραγματοποίηση

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

Η πραγματοποίηση μπορεί να αναπαρασταθεί με δύο τρόπους:

  • Χρησιμοποιώντας μια κανονική φόρμα
  • Χρησιμοποιώντας μια έντεκα φόρμα

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

Τύποι υλοποίησης:

  1. Κανονική μορφή

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

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

    Στο παραπάνω διάγραμμα, η διεπαφή Iruleagent πραγματοποιείται χρησιμοποιώντας ένα αντικείμενο που ονομάζεται Account Business Rules.

  2. Φόρμα

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

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

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

Σύνθεση

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

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

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

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

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

Αυτός ο τύπος σχέσης στο UML είναι γνωστός με σύνθετη σχέση συνάθροισης.

Συσσωμάτωση

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

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

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

Περίληψη

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