ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 3 ο ΕΞΑΜΗΝΟ Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 7 ο Εργαστήριο - ΕΠΙΜΕΛΕΙΑ ΜΑΘΗΜΑΤΟΣ: Πρέντζα Ανδριάνα ΕΠΙΜΕΛΕΙΑ ΕΡΓΑΣΤΗΡΙΟΥ: Στουγιάννου Ελευθερία Email Επικοινωνίας: estoug@unipi.gr
Περιεχόμενο Ενότητας Εισαγωγή Έννοιες Διαγραμμάτων Επικοινωνίας Τρόπος Δημιουργίας Διαγράμματος Επικοινωνίας Παραδείγματα και Ασκήσεις Δημιουργίας Διαγραμμάτων Επικοινωνίας με UMLet
Εισαγωγή: Διαγράμματα Επικοινωνίας (1/2) Τα διαγράμματα επικοινωνίας παρουσιάζουν την αλληλεπίδραση των αντικειμένων μέσω της ανταλλαγής μηνυμάτων. Δίνουν έμφαση στη οργάνωση των αντικειμένων για να υλοποιήσουν την απαιτούμενη συμπεριφορά. Ένα διάγραμμα επικοινωνίας περιέχει: Χειριστές Αντικείμενα και Μηνύματα που ανταλλάσσουν τα αντικείμενα
Εισαγωγή: Διαγράμματα Επικοινωνίας (2/2) Τα διαγράμματα επικοινωνίας χρησιμοποιούνται για να περιγράψουν: τη ροή του ελέγχου μέσα στο σύστημα Τα διαγράμματα επικοινωνίας είναι σημασιολογικά ισοδύναμα με τα διαγράμματα ακολουθίας. Τα διαγράμματα επικοινωνίας επεκτείνουν κατά κάποιο τρόπο τα διαγράμματα αντικειμένων, παρουσιάζοντας όχι μόνο τις σχέσεις μεταξύ των αντικειμένων αλλά και την επικοινωνία τους που πραγματοποιείται με την ανταλλαγή μηνυμάτων.
Διαγράμματα Επικοινωνίας Μηνύματα (1/3) Τα μηνύματα είναι ο τρόπος επικοινωνίας μεταξύ αντικειμένων. Η ανταλλαγή μηνυμάτων στα διαγράμματα επικοινωνίας γίνεται διά μέσου των συνδέσμων (links) (βλ. διάγραμμα αντικειμένων). Στα μηνύματα μπορεί να εμφανίζονται παράμετροι και επιστροφές (βλ. Σχήμα2) 1 2
Διαγράμματα Επικοινωνίας Μηνύματα (2/3) Η σειρά αποστολής των μηνυμάτων εμφανίζεται από την αρίθμησή τους Επίσης, ανάλογα την κλήση των λειτουργιών μπορούν να προστεθούν ψηφία στην αρίθμηση των μηνυμάτων (δηλ. αντί για 5: message5 να γράψουμε 1.1: message5, αντί για 2: message2 να γράψουμε 1.2: message2, κ.ο.κ. )
Διαγράμματα Επικοινωνίας Μηνύματα (3/3) Η αποστολή μηνύματος υπό συνθήκη γίνεται με την εμφάνιση της συνθήκης μετά την αρίθμηση του μηνύματος. Η αποστολή μηνύματος στο ίδιο αντικείμενο:
Διαγράμματα Επικοινωνίας Δημιουργία Αντικειμένων- Η δημιουργία αντικειμένων έχει διαφορετικό συμβολισμό στην αποστολή μηνύματος
Παράδειγμα Διαγράμματος Ακολουθίας Online Bookshop-
Πώς θα εξάγουμε τώρα το αντίστοιχο Διάγραμμα Επικοινωνίας για το συγκεκριμένο Παράδειγμα «Online Bookshop»?
Επεξηγηματικό Παράδειγμα Online Bookshop- Πηγή: http://www.uml-diagrams.org/examples/onlineshopping-uml-communication-diagramexample.html?context=cmm-examples
Εξαγωγή Διαγράμματος Επικοινωνίας με UMLet 1. Δημιουργείτε νέο UMLet diagram στο eclipse (κάτω από ένα νέο project) 2. Έπειτα από τη δεξιά λίστα επιλέγουμε UML Sequence (δείτε διπλανή εικόνα) Θα χρησιμοποιήσουμε στοιχεία από το πάνελ αυτό (τα διαγράμματα ακολουθίας είναι ισοδύναμα) 3. Με διπλό κλικ σε κάθε στοιχείο από το δεξί πάνελ, εισάγετε στο κεντρικό παράθυρο σχεδίασης τα στοιχεία που θέλετε για να συνθέσετε το διάγραμμά σας (κυρίως αντικείμενα, links, και βέλη επικοινωνίας/μηνυμάτων) 4. Μπορείτε να αλλάξετε τους τίτλους/περιγραφές των επιλεγμένων κάθε φορά στοιχείων από το δεξιά κάτω πλαίσιο «Properties». 5. Μπορείτε να χρησιμοποιήσετε και το σύμβολο του actor από την επιλογή της λίστας UML UseCase.
Εξαγωγή Διαγράμματος Επικοινωνίας μέσω Διαγράμματος Ακολουθίας (1/2) -Παράδειγμα -Εκτυπωτής-
Εξαγωγή Διαγράμματος Επικοινωνίας μέσω Διαγράμματος Ακολουθίας (2/2) -Παράδειγμα -Εκτυπωτής-
Εξαγωγή Διαγράμματος Επικοινωνίας μέσω Διαγράμματος Ακολουθίας (1/2) -Παράδειγμα: Πληρωμή ωρομισθίων υπαλλήλων εταιρίας-
Εξαγωγή Διαγράμματος Επικοινωνίας μέσω Διαγράμματος Ακολουθίας (2/2) -Παράδειγμα: Πληρωμή ωρομισθίων υπαλλήλων εταιρίας-
Παράδειγμα Εξαγωγής Διαγράμματος Επικοινωνίας (1/2) -Αγορά Προϊόντων- ΠΕΡΙΓΡΑΦΗ ΣΕΝΑΡΙΟΥ: Ο πελάτης φτάνει στο ταμείο με προϊόντα για αγορά Ο ταμίας εισάγει τα στοιχεία κάθε τεμαχίου μέσω του Ανιχνευτή barcode. Για περισσότερα του ενός προϊόντα εισάγεται η ποσότητα. Το Σύστημα καθορίζει την τιμή κάθε κατηγορίας προϊόντος και προσθέτει την κάθε κίνηση αγοράς. Εμφανίζει την περιγραφή και την τιμή των προϊόντων. Ο ταμίας υποδεικνύει το τέλος εισόδου των προϊόντων. Το Σύστημα υπολογίζει και παρουσιάζει το συνολικό ποσό πληρωμής. Ο πελάτης πληρώνει την αγορά των προϊόντων, περιμένοντας συνήθως ρέστα Ο ταμίας καταγράφει το ποσό που εισπράττει Το Σύστημα εμφανίζει το υπόλοιπο και τα ρέστα. Εκτυπώνει την απόδειξη. Ο ταμίας βάζει τα λεφτά στο ταμείο και παίρνει τα ρέστα που δίνει στον πελάτη μαζί με την απόδειξη. Το Σύστημα καταγράφει την ολοκληρωμένη δοσοληψία. Ο πελάτης φεύγει με τα προϊόντα που αγόρασε.
Παράδειγμα Εξαγωγής Διαγράμματος Επικοινωνίας (2/2) -Αγορά Προϊόντων-
Μπορείτε να εξάγετε τώρα το αντίστοιχο Διάγραμμα Ακολουθίας για το συγκεκριμένο Παράδειγμα «Αγορά Προϊόντων»?
Παράδειγμα Εξαγωγή Διαγράμματος Ακολουθίας -Ιατρικό Ραντεβού-
Παράδειγμα Εξαγωγής Διαγράμματος Επικοινωνίας -Ιατρικό Ραντεβού-
Άσκηση: Εξαγωγή Διαγράμματος Ακολουθίας από Διάγραμμα Επικοινωνίας (1/2)
Άσκηση: Εξαγωγή Διαγράμματος Ακολουθίας από Διάγραμμα Επικοινωνίας (2/2)
Περιγραφή Παραδείγματος -Σενάριο Ανελκυστήρας (ασανσέρ)- 1. Ο χρήστης A πατά το «προς τα πάνω» κουμπί ορόφου στον όροφο 3 για να καλέσει έναν ανελκυστήρα. Ο χρήστης A επιθυμεί να μεταβεί στον όροφο 7 2. Το «προς τα πάνω» κουμπί του ορόφου 3 ανάβει 3. Ένας ανελκυστήρας φθάνει στον όροφο 3. Μέσα είναι ο χρήστης B που μπήκε στον ανελκυστήρα στον όροφο 1 και πάτησε το κουμπί του ανελκυστήρα για τον όροφο 9 4. Το «προς τα πάνω» κουμπί του ορόφου 3 σβήνει 5. Οι πόρτες του ανελκυστήρα ανοίγουν. Ο χρήστης A μπαίνει στον ανελκυστήρα 6. Ο χρήστης A πατά το κουμπί του ανελκυστήρα για τον όροφο 7 7. Το κουμπί του ανελκυστήρα «όροφος 7» ανάβει 8. Οι πόρτες του ανελκυστήρα κλείνουν 9. Ο ανελκυστήρας κινείται προς τα πάνω και φτάνει στον όροφο 7 10. Το κουμπί του ανελκυστήρα «όροφος 7» σβήνει 11. Οι πόρτες του ανελκυστήρα ανοίγουν για να βγει ο χρήστης A 12. Ξεκινά ένα ρολόι-μετρητής. Ο χρήστης A εξέρχεται 13. Οι πόρτες του ανελκυστήρα κλείνουν μετά την πάροδο κάποιου χρόνου
Παράδειγμα -Διάγραμμα Κλάσης: Ανελκυστήρας (ασανσέρ)-
Παράδειγμα Διάγραμμα Ακολουθίας: - Ανελκυστήρας (ασανσέρ)-
Παράδειγμα Διάγραμμα Επικοινωνίας: - Ανελκυστήρας (ασανσέρ)-
Παράδειγμα Διάγραμμα Επικοινωνίας: -Επιλογή Μαθημάτων για Διδασκαλία-
Παράδειγμα Διάγραμμα Επικοινωνίας: -Προσθήκη Προσφοράς Μαθήματος-
Παράδειγμα -Διάγραμμα Κλάσης: Κλειδιά Αυτόματου Σύστημα απομακρυσμένου κλειδώματος αυτοκινήτου με ηλεκτρονικά κλειδιά (button car keys): επιτρέπει να ανοίγει και να κλειδώνει το αυτοκίνητο και να ανοίγει το πορτπαγκάζ με το πάτημα ενός κουμπιού. Όταν επιλέγεται το «lock» button, αναβοσβήνουν τα φώτα του αυτοκινήτου, ακούγεται ένα μπιπ και κλειδώνουν οι πόρτες. Κλειδώματος Αυτοκινήτου-
Παράδειγμα Διάγραμμα Ακολουθίας: - Κλειδιά Αυτόματου Κλειδώματος Αυτοκινήτου-
Παράδειγμα Διάγραμμα Επικοινωνίας (1): - Κλειδιά Αυτόματου Κλειδώματος Αυτοκινήτου-
Παράδειγμα Διάγραμμα Επικοινωνίας (2): - Κλειδιά Αυτόματου Κλειδώματος Αυτοκινήτου- 2 η Εκδοχή: Mοντελοποιώντας τις αλλαγές κατάστασης (locked, unlocked car) στο διάγραμμα επικοινωνίας. Σημειώνεται το εμφωλευμένο μήνυμα 3.1 «become».
Απορίες?