Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Μεθοδολογίες Προγραμματισμού ΙΙ OOA&D Διάγραμμα Περίπτωσης Χρήσης Παναγιώτης Σφέτσος, PhD

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Μεθοδολογίες Προγραμματισμού ΙΙ OOA&D Διάγραμμα Περίπτωσης Χρήσης Παναγιώτης Σφέτσος, PhD"— Μεταγράφημα παρουσίασης:

1 Μεθοδολογίες Προγραμματισμού ΙΙ OOA&D Διάγραμμα Περίπτωσης Χρήσης Παναγιώτης Σφέτσος, PhD

2 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ2 Στόχοι Στόχοι • ΟΟA / ΟΟD • Συγκέντρωση Απαιτήσεων Χρήστη • Μοντελοποίηση με Χρήση Περιπτώσεων Χρήσης • Εφαρμογές • ΟΟA / ΟΟD • Συγκέντρωση Απαιτήσεων Χρήστη • Μοντελοποίηση με Χρήση Περιπτώσεων Χρήσης • Εφαρμογές

3 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ3 Στόχοι OOA&D - 1 Τι κάνει το Σύστημα; Αντικειμενοστρεφής ανάλυση (OO analysis) επιδιώκει τη δημιουργία ενός μοντέλου του προβλήματος: • Με τον προσδιορισμό / αναγνώριση των αντικειμένων και κλάσεων. • Τα αντικείμενα και οι κλάσεις προέρχονται από το πεδίο του προβλήματος Πως υλοποιείται το Σύστημα; Αντικειμενοστρεφής σχεδίαση (OO design) προσδιορίζει τον τρόπο με τον οποίο οι πιο πάνω αφηρημένες έννοιες: • Είναι δυνατό να αναπαρασταθούν και να αλληλεπιδρούν μεταξύ τους σε επίπεδο λογισμικού. • Είναι δυνατό να ενταχθούν σε ένα γενικότερο πλαίσιο που να μοντελοποιεί το υπό εξέταση σύστημα. Τι κάνει το Σύστημα; Αντικειμενοστρεφής ανάλυση (OO analysis) επιδιώκει τη δημιουργία ενός μοντέλου του προβλήματος: • Με τον προσδιορισμό / αναγνώριση των αντικειμένων και κλάσεων. • Τα αντικείμενα και οι κλάσεις προέρχονται από το πεδίο του προβλήματος Πως υλοποιείται το Σύστημα; Αντικειμενοστρεφής σχεδίαση (OO design) προσδιορίζει τον τρόπο με τον οποίο οι πιο πάνω αφηρημένες έννοιες: • Είναι δυνατό να αναπαρασταθούν και να αλληλεπιδρούν μεταξύ τους σε επίπεδο λογισμικού. • Είναι δυνατό να ενταχθούν σε ένα γενικότερο πλαίσιο που να μοντελοποιεί το υπό εξέταση σύστημα.

4 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ4 Στόχοι • Το σηµείο έναρξης για την ανάπτυξη οποιουδήποτε συστήµατος είναι ο προσδιορισµός των απαιτήσεων του χρήστη. • Οι περιπτώσεις χρήσης και τα σενάρια αποτελούν το σημείο έναρξης για την εύρεση κλάσεων, ιδιοχαρακτηριστικών και μεθόδων. • Σε πρώτο στάδιο είναι σηµαντική η περιγραφή της λειτουργικότητας και συµπεριφοράς του συστήµατος. • Το σηµείο έναρξης για την ανάπτυξη οποιουδήποτε συστήµατος είναι ο προσδιορισµός των απαιτήσεων του χρήστη. • Οι περιπτώσεις χρήσης και τα σενάρια αποτελούν το σημείο έναρξης για την εύρεση κλάσεων, ιδιοχαρακτηριστικών και μεθόδων. • Σε πρώτο στάδιο είναι σηµαντική η περιγραφή της λειτουργικότητας και συµπεριφοράς του συστήµατος. OOA&D - 2 Πως ξεκινάμε;

5 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ5 Στόχοι Τεχνικές για τον Προσδιορισµό των Απαιτήσεων Χρήστη • Η πίο δηµοφιλής προσέγγιση (του Jacobson) βασίζεται σε:  Περιπτώσεις χρήσης (use cases)  Σενάρια (scenarios) • Δεν είναι αντικειµενοστρεφής τεχνική, αλλά αποτελεί ένα εξαιρετικό πρώτο βήµα για την OOA&D • Απλή και αποτελεσματική προσέγγιση • Η πίο δηµοφιλής προσέγγιση (του Jacobson) βασίζεται σε:  Περιπτώσεις χρήσης (use cases)  Σενάρια (scenarios) • Δεν είναι αντικειµενοστρεφής τεχνική, αλλά αποτελεί ένα εξαιρετικό πρώτο βήµα για την OOA&D • Απλή και αποτελεσματική προσέγγιση

6 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ6 Στόχοι Σ ε ν ά ρ ι α • Σενάριο είναι η περιγραφή µιας σημαντικής κατάστασης για το υπό εξέταση σύστηµα. • Στο σενάριο γίνεται µια σταδιακή περιγραφή των γεγονότων καθώς συμβαίνουν, και µε τη σειρά που συμβαίνουν. • Στην αρχή τα σενάρια περιγράφουν ένα τυπικό επιτυχημένο αποτέλεσμα. • Στην συνέχεια όπου η ανάλυση γίνεται πιο λεπτοµερής προστίθενται εναλλακτικά σενάρια για αποτυχημένα αποτελέσματα ή εξαιρέσεις / λάθη. • Σενάριο είναι η περιγραφή µιας σημαντικής κατάστασης για το υπό εξέταση σύστηµα. • Στο σενάριο γίνεται µια σταδιακή περιγραφή των γεγονότων καθώς συμβαίνουν, και µε τη σειρά που συμβαίνουν. • Στην αρχή τα σενάρια περιγράφουν ένα τυπικό επιτυχημένο αποτέλεσμα. • Στην συνέχεια όπου η ανάλυση γίνεται πιο λεπτοµερής προστίθενται εναλλακτικά σενάρια για αποτυχημένα αποτελέσματα ή εξαιρέσεις / λάθη.

7 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ7 Στόχοι Παράδειγμα Σεναρίου Σενάριο για την “ανάληψη µετρητών” από ένα ΑΤΜ: • Εισαγωγή τραπεζικής κάρτας στο ΑΤΜ. • Πληκτρολόγιση του PIN. • Επιλογή της κατάλληλης υπηρεσίας ανάληψης µετρητών. • Εισαγωγή του επιθυµητού ποσού. • Αφαίρεση της τραπεζικής κάρτας. • Αποµάκρυνση των χρηµάτων. Ερώτηση: Τι θα συμβεί αν το ΑΤΜ δεν έχει χρήµατα; Απάντηση: Δηµιουργούμε ένα άλλο σενάριο. Σενάριο για την “ανάληψη µετρητών” από ένα ΑΤΜ: • Εισαγωγή τραπεζικής κάρτας στο ΑΤΜ. • Πληκτρολόγιση του PIN. • Επιλογή της κατάλληλης υπηρεσίας ανάληψης µετρητών. • Εισαγωγή του επιθυµητού ποσού. • Αφαίρεση της τραπεζικής κάρτας. • Αποµάκρυνση των χρηµάτων. Ερώτηση: Τι θα συμβεί αν το ΑΤΜ δεν έχει χρήµατα; Απάντηση: Δηµιουργούμε ένα άλλο σενάριο.

8 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ8 Στόχοι Περίπτωση Χρήσης Περίπτωση Χρήσης Η μοντελοποίηση σεναρίων που συνδέονται με ένα κοινό σκοπό (για τον χρήστη). Συνήθως περιλαμβάνει:  Ένα σύνολο από σενάρια.  Ένα κύριο σενάριο επιτυχίας (σαν μια ακολουθία από βήματα)  Εναλλακτικά σενάρια αποτυχίας (σαν παραλλαγές της κυρίας ακολουθίας βημάτων) ακολουθίας βημάτων) H διαφορά ανάµεσα σε µια περίπτωση χρήσης και σε ένα σενάριο είναι ότι η περίπτωση χρήσης καλύπτει όλα τα ενδεχόµενα που είναι δυνατό να προκύψουν από µια κατάσταση – και τις εξαιρέσεις ή λάθη. Το σενάριο είναι µόνο µία συγκεκριµένη ακολουθία γεγονότων. Η μοντελοποίηση σεναρίων που συνδέονται με ένα κοινό σκοπό (για τον χρήστη). Συνήθως περιλαμβάνει:  Ένα σύνολο από σενάρια.  Ένα κύριο σενάριο επιτυχίας (σαν μια ακολουθία από βήματα)  Εναλλακτικά σενάρια αποτυχίας (σαν παραλλαγές της κυρίας ακολουθίας βημάτων) ακολουθίας βημάτων) H διαφορά ανάµεσα σε µια περίπτωση χρήσης και σε ένα σενάριο είναι ότι η περίπτωση χρήσης καλύπτει όλα τα ενδεχόµενα που είναι δυνατό να προκύψουν από µια κατάσταση – και τις εξαιρέσεις ή λάθη. Το σενάριο είναι µόνο µία συγκεκριµένη ακολουθία γεγονότων.

9 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ9 Στόχοι Ερωτήματα για την εύρεση των Ερωτήματα για την εύρεση των περιπτώσεων χρήσης περιπτώσεων χρήσης • Ποιες λειτουργίες απαιτεί ο χρήστης από το σύστημα; • Πρέπει ο χρήστης να διαβάσει, αποθηκεύσει, δημιουργήσει, διαγράψει κάποια πληροφορία στο σύστημα; • Χρειάζεται ο χρήστης να ειδοποιήσει το σύστημα ή να ειδοποιηθεί από αυτό σε σχέση με κάποια γεγονότα; Πώς μεταφράζονται αυτά σε λειτουργικότητα του συστήματος; • Μπορεί η καθημερινή δουλειά του χρήστη να απλοποιηθεί με νέες λειτουργίες του συστήματος; • Ποιες λειτουργίες απαιτεί ο χρήστης από το σύστημα; • Πρέπει ο χρήστης να διαβάσει, αποθηκεύσει, δημιουργήσει, διαγράψει κάποια πληροφορία στο σύστημα; • Χρειάζεται ο χρήστης να ειδοποιήσει το σύστημα ή να ειδοποιηθεί από αυτό σε σχέση με κάποια γεγονότα; Πώς μεταφράζονται αυτά σε λειτουργικότητα του συστήματος; • Μπορεί η καθημερινή δουλειά του χρήστη να απλοποιηθεί με νέες λειτουργίες του συστήματος;

10 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ10 Στόχοι Bήματα για τη δημιουργία των διαγραμμάτων περιπτώσεων χρήσης Bήματα για τη δημιουργία των διαγραμμάτων περιπτώσεων χρήσης • Kαθορισμός των ορίων του συστήματος • Εύρεση των χαρακτήρων (actors) καί των περιπτώσεων χρήσης • Κατασκευή γενικού διαγράμματος περιπτώσεων χρήσης • Περιγραφή των περιπτώσεων χρήσης (κείμενο ή με activity diagrams) • Καθορισμός των συσχετίσεων μεταξύ των περιπτώσεων χρήσης • Kαθορισμός των ορίων του συστήματος • Εύρεση των χαρακτήρων (actors) καί των περιπτώσεων χρήσης • Κατασκευή γενικού διαγράμματος περιπτώσεων χρήσης • Περιγραφή των περιπτώσεων χρήσης (κείμενο ή με activity diagrams) • Καθορισμός των συσχετίσεων μεταξύ των περιπτώσεων χρήσης

11 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ11 Στόχοι Παράδειγμα Περίπτωσης Χρήσης Παράδειγμα Περίπτωσης Χρήσης Παράδειγμα: Η ανάληψη µετρητών από ΑΤΜ (πόσα σενάρια;)  Επιτυχηµένο σενάριο ανάληψης.  Σενάριο αποτυχίας κατά το οποίο το ΑΤΜ δεν έχει χρήµατα.  Σενάριο αποτυχίας λόγω λάθους PIN Στα αρχικά στάδια της ανάλυσης εστιάζουμε στα επιτυχημένα Στα αρχικά στάδια της ανάλυσης εστιάζουμε στα επιτυχημένα σενάρια σενάρια Παράδειγμα: Η ανάληψη µετρητών από ΑΤΜ (πόσα σενάρια;)  Επιτυχηµένο σενάριο ανάληψης.  Σενάριο αποτυχίας κατά το οποίο το ΑΤΜ δεν έχει χρήµατα.  Σενάριο αποτυχίας λόγω λάθους PIN Στα αρχικά στάδια της ανάλυσης εστιάζουμε στα επιτυχημένα Στα αρχικά στάδια της ανάλυσης εστιάζουμε στα επιτυχημένα σενάρια σενάρια

12 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ12 Στόχοι Παράδειγμα Περίπτωσης Χρήσης - ΑΤΜ Παράδειγμα Περίπτωσης Χρήσης - ΑΤΜ 1. Tο ΑΤΜ εμφανίζει το μήνυμα Welcome13. Το ΑΤΜ στέλνει όλα τα στοιχεία στη Τράπεζα (pin, ID, κίνηση, ποσό) 2. O πελάτης βάζει την κάρτα14. Η τράπεζα επιστρέφει ΟΚ 3. Το ΑΤΜ ζητά PIN15. Το ΑΤΜ βγάζει τα 100 Euro από τον διανομέα χρημάτων 4. Ο πελάτης εισάγει το PIN16. Το ΑΤΜ εκτυπώνει την απόδειξη 5. Το ΑΤΜ επαληθεύει το PIN μέσω Τραπέζης17. Tο ΑΤΜ ζητά επιλογή εργασίας 6. Η τράπεζα απαντά ΟΚ18. Ο πελάτης επιλέγει επιστροφή κάρτας 7. Tο ΑΤΜ ζητά επιλογή εργασίας19. Tο ΑΤΜ βγάζει την απόδειξη 8. Ο πελάτης επιλέγει ανάληψη20. Tο ΑΤΜ βγάζει την κάρτα 9. Το ΑΤΜ ζητά είδος λογαριασμού21. Tο ΑΤΜ εμφανίζει το μήνυμα Welcome 10. Ο πελάτης επιλέγει τρεχούμενος 11. Το ΑΤΜ ζητά ποσό 12. Ο πελάτης εισάγει 100 Εuro

13 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ13 Στόχοι Χειριστές / Χαρακτήρες (Actors) Χειριστές / Χαρακτήρες (Actors) Ένας χειριστής / ρόλος / χαρακτήρας (actor) είναι κάποιος ή κάτι που αλληλεπιδρά µε το σύστηµα. Χρησιμοποιεί το σύστημα (ξεκινά τις περιπτώσεις χρήσεως) ή χρησιμοποιείται από αυτό (παρέχοντας την λειτουργικότητα).  Κάθε χειριστής πρέπει να επικοινωνεί με τουλάχιστον μία περίπτωση χρήσης. Επικοινωνεί στέλνοντας και λαμβάνοντας μηνύματα  Οι χειριστές αναπαριστούν ρόλους (roles). Ένας χειριστής μπορεί να έχει περισσότερους από έναν ρόλους σε κάθε χρονική στιγμή.  Οι χειριστές βρίσκονται εκτός των ορίων του συστήματος  Ένας χαρακτήρας είναι μια κλάση, όχι ένα στιγμιότυπο Ο χειριστής παριστάνεται µε σκίτσο ανθρώπου (stick figure). Ένας χειριστής / ρόλος / χαρακτήρας (actor) είναι κάποιος ή κάτι που αλληλεπιδρά µε το σύστηµα. Χρησιμοποιεί το σύστημα (ξεκινά τις περιπτώσεις χρήσεως) ή χρησιμοποιείται από αυτό (παρέχοντας την λειτουργικότητα).  Κάθε χειριστής πρέπει να επικοινωνεί με τουλάχιστον μία περίπτωση χρήσης. Επικοινωνεί στέλνοντας και λαμβάνοντας μηνύματα  Οι χειριστές αναπαριστούν ρόλους (roles). Ένας χειριστής μπορεί να έχει περισσότερους από έναν ρόλους σε κάθε χρονική στιγμή.  Οι χειριστές βρίσκονται εκτός των ορίων του συστήματος  Ένας χαρακτήρας είναι μια κλάση, όχι ένα στιγμιότυπο Ο χειριστής παριστάνεται µε σκίτσο ανθρώπου (stick figure).

14 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ14 Στόχοι • Ποιοι θα χρησιμοποιούν την κύρια λειτουργικότητα του συστήματος; • Ποιοι χρειάζονται υποστήριξη από το σύστημα στις καθημερινές τους ασχολίες; • Ποιοι θα συντηρούν και διαχειρίζονται το σύστημα; • Ποια περιφερειακά υλικά χρησιμοποιεί το σύστημα; • Με ποια άλλα συστήματα χρειάζεται να επικοινωνεί το σύστημα; • Ποιος ή τι έχει ενδιαφέρον για τα αποτελέσματα που θα παράγει το σύστημα; • Ποιοι θα χρησιμοποιούν την κύρια λειτουργικότητα του συστήματος; • Ποιοι χρειάζονται υποστήριξη από το σύστημα στις καθημερινές τους ασχολίες; • Ποιοι θα συντηρούν και διαχειρίζονται το σύστημα; • Ποια περιφερειακά υλικά χρησιμοποιεί το σύστημα; • Με ποια άλλα συστήματα χρειάζεται να επικοινωνεί το σύστημα; • Ποιος ή τι έχει ενδιαφέρον για τα αποτελέσματα που θα παράγει το σύστημα; Ερωτήσεις για την εύρεση Ερωτήσεις για την εύρεση των χειριστών (actors)

15 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ15 Στόχοι Αναπαράσταση Περίπτωσης Χρήσης Αναπαράσταση Περίπτωσης Χρήσης Οι περιπτώσεις χρήσεις παριστάνονται σαν ελλείψεις στα όρια του συστήματος κι έχουν συνδέσεις με τους χειριστές. Οι περιπτώσεις χρήσεις παριστάνονται σαν ελλείψεις στα όρια του συστήματος κι έχουν συνδέσεις με τους χειριστές. Όνομα Χαρακτήρα Όνομα Περίπτωσης Χρήσης Σύνδεσμος επικοινωνίας Περίπτωση Χρήσης Α Όνομα Συστήματος Περίπτωση Χρήσης Β Περίπτωση Χρήσης Γ

16 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ16 Στόχοι Σχέσεις μεταξύ περιπτώσεων χρήσης (1) Σχέσεις μεταξύ περιπτώσεων χρήσης (1) Σχέση «περιλαμβάνει» (includes): Μία περίπτωση χρήσης περιλαμβάνει τη συμπεριφορά μίας άλλης. η Σχέση «περιλαμβάνει» (includes): Μία περίπτωση χρήσης περιλαμβάνει τη συμπεριφορά μίας άλλης. η - Η συμπεριφορά της cash ενσωματώνεται στην pay - H cash είναι απαραίτητη για την λειτουργία της pay

17 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ17 Στόχοι Σχέσεις μεταξύ περιπτώσεων χρήσης (2) Σχέσεις μεταξύ περιπτώσεων χρήσης (2) Σχέση «επεκτείνει» (extends): Μία περίπτωση χρήσης επεκτείνει κάποια άλλη προσθέτοντας επιπλέον ενέργειες στη βασική περίπτωση χρήσης. Σχέση «επεκτείνει» (extends): Μία περίπτωση χρήσης επεκτείνει κάποια άλλη προσθέτοντας επιπλέον ενέργειες στη βασική περίπτωση χρήσης. - Η credit card επεκτείνει την συμπεριφορά της βασικής pay. - H pay χρειάζεται τη λειτουργία της credit card

18 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ18 Στόχοι Σχέσεις μεταξύ περιπτώσεων χρήσης (3) Σχέσεις μεταξύ περιπτώσεων χρήσης (3) Σχέση «γενικεύει/εξειδικεύει» (generalization / specialization): Mία περίπτωση χρήσης κληρονομεί τη συμπεριφορά και την περιγραφή μίας άλλης περίπτωσης χρήσης. • Αντίστοιχη της σχέσης γενίκευσης ανάμεσα στις κλάσεις. • Η περίπτωση χρήσης Α κληρονομεί τη συμπεριφορά της περίπτωσης χρήσης Β και μπορεί να την επεκτείνει αλλά και να την υποσκελίσει (override). • Η περίπτωση χρήσης Α κληρονομεί τις σχέσεις επικοινωνίας της περίπτωσης χρήσης Β. • Επιτρέπει τη μοντελοποίηση των αφαιρετικών (abstract) περιπτώσεων χρήσης. Σχέση «γενικεύει/εξειδικεύει» (generalization / specialization): Mία περίπτωση χρήσης κληρονομεί τη συμπεριφορά και την περιγραφή μίας άλλης περίπτωσης χρήσης. • Αντίστοιχη της σχέσης γενίκευσης ανάμεσα στις κλάσεις. • Η περίπτωση χρήσης Α κληρονομεί τη συμπεριφορά της περίπτωσης χρήσης Β και μπορεί να την επεκτείνει αλλά και να την υποσκελίσει (override). • Η περίπτωση χρήσης Α κληρονομεί τις σχέσεις επικοινωνίας της περίπτωσης χρήσης Β. • Επιτρέπει τη μοντελοποίηση των αφαιρετικών (abstract) περιπτώσεων χρήσης. A B

19 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ19 Στόχοι Παράδειγμα Περίπτωσης Χρήσης - 1 Παράδειγμα Περίπτωσης Χρήσης - 1

20 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ 20 Στόχοι ATM Customer ATM Withdraw Money from ATM Withdraw Money from Savings Account Withdraw Money from Credit Card Account > Withdraw Money using ATM Card from Other Bank > Παράδειγμα Περίπτωσης Χρήσης - 2 Παράδειγμα Περίπτωσης Χρήσης - 2

21 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ21 Στόχοι ATM Customer ATM > Print Receipt Withdraw Money from ATM Deposit Money into ATM Get Balance from ATM > Παράδειγμα Περίπτωσης Χρήσης - 3 Παράδειγμα Περίπτωσης Χρήσης - 3

22 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ 22 Στόχοι 1. Ο θεατής ξεκινάει μια καινούρια κράτηση επιλέγοντας την πόλη στην οποία θέλει να παρακολουθήσει την κινηματογραφική παράσταση. Κάνει ένα σχόλιο για κάποια ταινία που έχει δει ή που σκοπεύει να δει. 2. Ο θεατής συνεχίζει επιλέγοντας την ταινία της αρεσκείας του 3. Ο θεατής επιλεγεί τον κινηματογράφο στον οποίο θέλει να δει την ταινία. 4. Ο θεατής επιλέγει τύπο προβολής (π.χ. απογευματινή, βραδινή κλπ) 5. Ο θεατής επιλεγεί μέρα παράστασης. 6. Ο θεατής επιλέγει την ακριβή ώρα παράστασης που επιθυμεί. 7. Ο θεατής επιλεγεί ένα ή περισσότερα καθίσματα. 8. Το σύστημα εμφανίζει μια αναλυτική αναφορά της συναλλαγής 9. Ο θεατής επιλέγει έναν τρόπο πληρωμής. 10. Το αντίτιμο πληρώνεται και η συναλλαγή ολοκληρώνεται. 1. Ο θεατής ξεκινάει μια καινούρια κράτηση επιλέγοντας την πόλη στην οποία θέλει να παρακολουθήσει την κινηματογραφική παράσταση. Κάνει ένα σχόλιο για κάποια ταινία που έχει δει ή που σκοπεύει να δει. 2. Ο θεατής συνεχίζει επιλέγοντας την ταινία της αρεσκείας του 3. Ο θεατής επιλεγεί τον κινηματογράφο στον οποίο θέλει να δει την ταινία. 4. Ο θεατής επιλέγει τύπο προβολής (π.χ. απογευματινή, βραδινή κλπ) 5. Ο θεατής επιλεγεί μέρα παράστασης. 6. Ο θεατής επιλέγει την ακριβή ώρα παράστασης που επιθυμεί. 7. Ο θεατής επιλεγεί ένα ή περισσότερα καθίσματα. 8. Το σύστημα εμφανίζει μια αναλυτική αναφορά της συναλλαγής 9. Ο θεατής επιλέγει έναν τρόπο πληρωμής. 10. Το αντίτιμο πληρώνεται και η συναλλαγή ολοκληρώνεται. Εφαρμογή: Εφαρμογή:e - Κράτηση Εισιτηρίου Κινηματογράφου

23 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ23 Στόχοι Κύριο Σενάριο επιτυχίας ή Βασική Ροή: Κύριο Σενάριο επιτυχίας ή Βασική Ροή:

24 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ24 Στόχοι • Τα βήματα 2 και 3 μπορούν ανά εκτελεστούν και με την αντίθετη σειρά, δηλαδή πρώτα το 3 και μετά το 2 χωρίς αυτό να αλλάξει την λειτουργικότητα της παρούσας περίπτωσης χρήσης. • 7 α : Ο θεατής έχει την δυνατότητα, σε περίπτωση που η κράτηση αφορά 2 ή περισσότερα καθίσματα να επιλέξει την πιθανή γειτνίαση των καθισμάτων αυτών. • 8 a : Αν δεν υπάρχουν καθίσματα για την παράσταση που έχει επιλέξει ο θεατής το σύστημα εμφανίζει αντίστοιχο μήνυμα πληροφορώντας τον θεατή για την πληρότητα της παράστασης και ενημερώνοντας τον για πιθανές εναλλακτικές επιλογές. • Τα βήματα 2 και 3 μπορούν ανά εκτελεστούν και με την αντίθετη σειρά, δηλαδή πρώτα το 3 και μετά το 2 χωρίς αυτό να αλλάξει την λειτουργικότητα της παρούσας περίπτωσης χρήσης. • 7 α : Ο θεατής έχει την δυνατότητα, σε περίπτωση που η κράτηση αφορά 2 ή περισσότερα καθίσματα να επιλέξει την πιθανή γειτνίαση των καθισμάτων αυτών. • 8 a : Αν δεν υπάρχουν καθίσματα για την παράσταση που έχει επιλέξει ο θεατής το σύστημα εμφανίζει αντίστοιχο μήνυμα πληροφορώντας τον θεατή για την πληρότητα της παράστασης και ενημερώνοντας τον για πιθανές εναλλακτικές επιλογές. Επεκτάσεις ή εναλλακτικές ροές - 1: Επεκτάσεις ή εναλλακτικές ροές - 1:

25 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ25 Στόχοι • 9α : Αν ο θεατής επιλέξει να πληρώσει με μετρητά τότε το σύστημα δημιουργεί και εμφανίζει έναν κωδικό κράτησης με τον οποίο ο θεατής μπορεί να πάει στο ταμείο του κινηματογράφου και να πάρει το εισιτήριο του μέχρι και 30 λεπτά πριν την έναρξη της παράστασης. • 9β: Αν ο θεατής επιλέξει να πληρώσει με πιστωτική κάρτα τότε το σύστημα επικοινωνεί με τρίτο λογισμικό πρόγραμμα, τον αυθεντικοποιητή πιστωτικών καρτών • 9α : Αν ο θεατής επιλέξει να πληρώσει με μετρητά τότε το σύστημα δημιουργεί και εμφανίζει έναν κωδικό κράτησης με τον οποίο ο θεατής μπορεί να πάει στο ταμείο του κινηματογράφου και να πάρει το εισιτήριο του μέχρι και 30 λεπτά πριν την έναρξη της παράστασης. • 9β: Αν ο θεατής επιλέξει να πληρώσει με πιστωτική κάρτα τότε το σύστημα επικοινωνεί με τρίτο λογισμικό πρόγραμμα, τον αυθεντικοποιητή πιστωτικών καρτών Επεκτάσεις ή εναλλακτικές ροές - 2: Επεκτάσεις ή εναλλακτικές ροές - 2:

26 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ 26 Στόχοι 1α. Ο Administrator θέλει να εισάγει έναν καινούριο κινηματογράφο στο σύστημα. 1β. Εισάγει όλα τα στοιχειά του κινηματογράφου όπως όνομα κινηματογράφου, διεύθυνση, Ταχυδρομικό κώδικα, φωτογραφία του κινηματογράφου, αριθμό αιθουσών. 1γ. Το σύστημα αποθηκεύει τα δεδομένα. 2α. Ο Administrator θέλει να εισάγει μια καινούρια αίθουσα στο σύστημα 2β. Εισάγει όλα τα στοιχειά της αίθουσας όπως το όνομα του κινηματογράφου που βρίσκεται η αίθουσα, το όνομα της και τον τύπο της. 2γ. Το σύστημα αποθηκεύει τα δεδομένα. 1α. Ο Administrator θέλει να εισάγει έναν καινούριο κινηματογράφο στο σύστημα. 1β. Εισάγει όλα τα στοιχειά του κινηματογράφου όπως όνομα κινηματογράφου, διεύθυνση, Ταχυδρομικό κώδικα, φωτογραφία του κινηματογράφου, αριθμό αιθουσών. 1γ. Το σύστημα αποθηκεύει τα δεδομένα. 2α. Ο Administrator θέλει να εισάγει μια καινούρια αίθουσα στο σύστημα 2β. Εισάγει όλα τα στοιχειά της αίθουσας όπως το όνομα του κινηματογράφου που βρίσκεται η αίθουσα, το όνομα της και τον τύπο της. 2γ. Το σύστημα αποθηκεύει τα δεδομένα. O Administrator - 1 O Administrator - 1

27 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ 27 Στόχοι 3α Ο Administrator θέλει να εισάγει ένα καινούριο τύπο αίθουσας στο σύστημα. 3β Εισάγει όλα τα στοιχειά του νέου τύπου αίθουσας όπως το όνομα της ο αριθμός σειρών και θέσεων. 3γ. Το σύστημα αποθηκεύει τα δεδομένα. 4α. Ο Administrator θέλει να εισάγει μια καινούρια ταινία στο σύστημα 4β. Εισάγει τα απαραίτητα στοιχειά για την νέα ταινία δηλαδή το όνομα της μια φωτογραφία από κάποια αφίσα της ταινίας τους ηθοποιούς, τον σκηνοθέτη καθώς και την εταιρεία παραγωγής και διανομής. 4γ. Το σύστημα αποθηκεύει τα δεδομένα. 3α Ο Administrator θέλει να εισάγει ένα καινούριο τύπο αίθουσας στο σύστημα. 3β Εισάγει όλα τα στοιχειά του νέου τύπου αίθουσας όπως το όνομα της ο αριθμός σειρών και θέσεων. 3γ. Το σύστημα αποθηκεύει τα δεδομένα. 4α. Ο Administrator θέλει να εισάγει μια καινούρια ταινία στο σύστημα 4β. Εισάγει τα απαραίτητα στοιχειά για την νέα ταινία δηλαδή το όνομα της μια φωτογραφία από κάποια αφίσα της ταινίας τους ηθοποιούς, τον σκηνοθέτη καθώς και την εταιρεία παραγωγής και διανομής. 4γ. Το σύστημα αποθηκεύει τα δεδομένα. O Administrator - 2 O Administrator - 2

28 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ 28 Στόχοι 5α. Ο Administrator θέλει να εισάγει μια καινούρια παράσταση στο σύστημα 5β. Εισάγει ότι είναι απαραίτητο ώστε μια καινούρια παράσταση να καταχωρηθεί στο σύστημα. Δηλαδή επιλεγεί την ταινία, τον κινηματογράφο, την ή τις αίθουσες τις ημερομηνίες και τις ώρες προβολής. 5γ. Το σύστημα αποθηκεύει τα δεδομένα. 6α. Ο Administrator θέλει να διαχειριστεί τα σχόλια των θεατών για τις ταινίες που έχουν δει. 6β. Επιλέγει να σβήσει 6γ. Το σύστημα αποθηκεύει τα δεδομένα. 5α. Ο Administrator θέλει να εισάγει μια καινούρια παράσταση στο σύστημα 5β. Εισάγει ότι είναι απαραίτητο ώστε μια καινούρια παράσταση να καταχωρηθεί στο σύστημα. Δηλαδή επιλεγεί την ταινία, τον κινηματογράφο, την ή τις αίθουσες τις ημερομηνίες και τις ώρες προβολής. 5γ. Το σύστημα αποθηκεύει τα δεδομένα. 6α. Ο Administrator θέλει να διαχειριστεί τα σχόλια των θεατών για τις ταινίες που έχουν δει. 6β. Επιλέγει να σβήσει 6γ. Το σύστημα αποθηκεύει τα δεδομένα. O Administrator - 3 O Administrator - 3

29 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ 29 Στόχοι Κύριο Σενάριο επιτυχίας ή Βασική Ροή: Κύριο Σενάριο επιτυχίας ή Βασική Ροή:

30 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ30 Στόχοι • 1. Τα βήματα από 1 έως 6 του κυρίου σεναρίου επιτυχίας μπορούν να εκτελεστούν με οποιαδήποτε σειρά χωρίς να αλλάξει κάτι στο νόημα αυτής της περίπτωσης χρήσης. • 2. Τα βήματα από 1 έως 6 του κυρίου σεναρίου επιτυχίας δεν είναι υποχρεωτικά. Μπορούν να εκτελεστούν μόνο αυτά που χρειάζονται για την διαχείριση των επιχειρηματικών δεδομένων και τα υπόλοιπα να παραλειφθούν χωρίς αυτό να επηρεάσει με δυσμενή τρόπο το κύριο σενάριο επιτυχίας. • 3. Τα βήματα από 1 έως 6 του κύριου σεναρίου επιτυχίας μπορούν να επαναληφθούν όσες φορές χρειάζεται ώστε να δημιουργηθούν, τροποποιηθούν και αποθηκευτούν όλα τα δεδομένα που είναι αναγκαία για την λειτουργία του συστήματος. • 1. Τα βήματα από 1 έως 6 του κυρίου σεναρίου επιτυχίας μπορούν να εκτελεστούν με οποιαδήποτε σειρά χωρίς να αλλάξει κάτι στο νόημα αυτής της περίπτωσης χρήσης. • 2. Τα βήματα από 1 έως 6 του κυρίου σεναρίου επιτυχίας δεν είναι υποχρεωτικά. Μπορούν να εκτελεστούν μόνο αυτά που χρειάζονται για την διαχείριση των επιχειρηματικών δεδομένων και τα υπόλοιπα να παραλειφθούν χωρίς αυτό να επηρεάσει με δυσμενή τρόπο το κύριο σενάριο επιτυχίας. • 3. Τα βήματα από 1 έως 6 του κύριου σεναρίου επιτυχίας μπορούν να επαναληφθούν όσες φορές χρειάζεται ώστε να δημιουργηθούν, τροποποιηθούν και αποθηκευτούν όλα τα δεδομένα που είναι αναγκαία για την λειτουργία του συστήματος. Επεκτάσεις ή εναλλακτικές ροές - 1: Επεκτάσεις ή εναλλακτικές ροές - 1:

31 Παναγιώτης Σφέτσος, Μεθοδολογίες Προγραμματισμού ΙΙ31 Στόχοι • 4. Σε κάθε μια από τις περιπτώσεις εισαγωγής δεδομένων στα βήματα του κυρίου σεναρίου επιτυχίας αν τα δεδομένα που ο administrator προσπαθεί να εισάγει υπάρχουν ήδη τότε το σύστημα δεν επιτρέπει την διπλοεγγραφή των ίδιων δεδομένων. • 5. Σε κάθε μια από τις περιπτώσεις εισαγωγής δεδομένων στα βήματα του κυρίου σεναρίου επιτυχίας αν ο administrator παραλείψει την εισαγωγή σημαντικών πεδίων τότε το σύστημα πληροφορεί τον administrator για την λάθος εισαγωγή και δεν αποθηκεύει δεδομένα. • 4. Σε κάθε μια από τις περιπτώσεις εισαγωγής δεδομένων στα βήματα του κυρίου σεναρίου επιτυχίας αν τα δεδομένα που ο administrator προσπαθεί να εισάγει υπάρχουν ήδη τότε το σύστημα δεν επιτρέπει την διπλοεγγραφή των ίδιων δεδομένων. • 5. Σε κάθε μια από τις περιπτώσεις εισαγωγής δεδομένων στα βήματα του κυρίου σεναρίου επιτυχίας αν ο administrator παραλείψει την εισαγωγή σημαντικών πεδίων τότε το σύστημα πληροφορεί τον administrator για την λάθος εισαγωγή και δεν αποθηκεύει δεδομένα. Επεκτάσεις ή εναλλακτικές ροές - 2: Επεκτάσεις ή εναλλακτικές ροές - 2:


Κατέβασμα ppt "Μεθοδολογίες Προγραμματισμού ΙΙ OOA&D Διάγραμμα Περίπτωσης Χρήσης Παναγιώτης Σφέτσος, PhD"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google