Σχέσεις
Στη UML ορίζονται τέσσερεις βασικές σχέσεις:
- εξάρτηση (dependency)
- γενίκευση (generalisation)
- σύνδεση (association)
- υλοποίηση (realisation)
Εξάρτηση
Η εξάρτηση δηλώνει πως μια αλλαγή σε μιαν οντότητα θα επηρεάσει μιαν άλλη
αλλά όχι απαραίτητα και το αντίστροφο.
Παριστάνεται με μια διακεκομμένη γραμμή με ανοιχτό βέλος που δείχνει προς
την οντότητα που υπάρχει εξάρτηση:
Γενίκευση
Η γενίκευση δηλώνει μια σχέση ανάμεσα σε κάτι γενικό
(τη βασική κλάση ή αλλιώς γονέα)
και κάτι ειδικό
(μιαν υποκλάση ή αλλιώς παιδί της).
Παριστάνεται με μια συνεχή γραμμή με κλειστό βέλος που δείχνει προς
τη βασική κλάση:
Σύνδεση
Η σύνδεση αναφέρεται σε αντικείμενα τα οποία συνδέονται με κάποιο τρόπο
με άλλα.
Όταν δύο κλάσεις είναι συνδεδεμένες μπορεί κανείς να μεταβεί από αντικείμενα
της μιας σε αντικείμενα της άλλης.
Η σύνδεση παριστάνεται με μια ευθεία γραμμή ανάμεσα στα δύο αντικείμενα.
- Αν η σύνδεση δεν είναι αμφίδρομη τότε η κατεύθυνσή της μπορεί να οριστεί
με ένα ανοιχτό βέλος.
- Το όνομα της σύνδεσης μπορεί να γραφεί πάνω από τη γραμμή, ενώ
η κατεύθυνση του ονόματος ορίζεται από ένα βέλος πλάι στο όνομα.
- Ο ρόλος των οντοτήτων που συνδέονται προσδιορίζεται από ένα όνομα
στην κάθε άκρη της γραμμής.
- Ο αριθμός που δηλώνει πόσα αντικείμενα αντιστοιχούν σε κάθε αντικείμενο
στην άλλη άκρη της σχέσης (πολλαπλότητα (multiplicity))
δηλώνεται από έναν αριθμό (π.χ. 3), ή μια περιοχή αριθμών (π.χ. 1..* για ένα
έως πολλά) πάνω από την αντίστοιχη άκρη της γραμμής.
- Ένα X πάνω σε μια άκρη της γραμμής δηλώνει πως δεν προσφέρεται
μετάβαση (navigation) προς τη συγκεκριμένη κατεύθυνση.
Αν σε μια σχέση τα αντικείμενα απαρτίζουν τμήματα ενός όλου, τότε
αυτή απεικονίζεται ως συγκρότημα (aggregation)
με την παράσταση ενός διαμαντιού στην άκρη του "όλου".
Αν σχέση τα αντικείμενα που απαρτίζουν τμήματα ενός όλου έχουν
την ίδια διάρκεια ζωής με το όλο, τότε
αυτή απεικονίζεται ως σύνθεση (composition)
με την παράσταση ενός γεμάτου διαμαντιού στην άκρη του "όλου".
Υλοποίηση
Η υλοποίηση δηλώνει πως
ο εξυπηρετούμενος (αυτός που βρίσκεται στην ουρά του βέλους)
υποστηρίζει τη διεπαφή (τουλάχιστον όλες τις πράξεις)
που ορίζονται από τον παροχέα (αυτόν που βρίσκεται στην κεφαλή του βέλους):