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

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

AΝΑΛΥΣΗ ΣΥΣΤΗΜΑΤΩΝ Εισαγωγή στη UML Τι είναι Αντικείμενο (1)  Στον πραγματικό κόσμο (ποδήλατο, σκύλος)  Αντικείμενο λογισμικού: Μοντελοποιεί, αναπαριστά,

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


Παρουσίαση με θέμα: "AΝΑΛΥΣΗ ΣΥΣΤΗΜΑΤΩΝ Εισαγωγή στη UML Τι είναι Αντικείμενο (1)  Στον πραγματικό κόσμο (ποδήλατο, σκύλος)  Αντικείμενο λογισμικού: Μοντελοποιεί, αναπαριστά,"— Μεταγράφημα παρουσίασης:

1

2 AΝΑΛΥΣΗ ΣΥΣΤΗΜΑΤΩΝ Εισαγωγή στη UML

3 Τι είναι Αντικείμενο (1)  Στον πραγματικό κόσμο (ποδήλατο, σκύλος)  Αντικείμενο λογισμικού: Μοντελοποιεί, αναπαριστά, αντιστοιχεί σε καποιο αντικείμενο του πραγματικού κόσμου  Αντικείμενο λογισμικού: ομαδοποίηση μεταβλητών (στατικό μέρος) και σχετιζομένων μεθόδων (δυναμικό μέρος)

4 Τι είναι Αντικείμενο (2) Δημόσιο Μέρος (Public API) Iδιωτικό Μέρος (Λεπτομέρειες Υλοποίησης)

5 Παράδειγμα Αντικειμένου: Ποδήλατο ΑλλαξεΤαχύτητα Φρέναρε Ξεκίνα Λεπτομέρειες Υλοποίησης των λειτουργιών

6 Αντικείμενο  Ολα τα αντικείμενα έχουν  χαρακτηριστικά καί βρίσκονται σε μιά κατάσταση. π.χ.  Σκυλί: όνομα, χρώμα, πεινασμένο, κλπ.  Ποδήλατο: 2 τροχοί, χρώμα, αριθμ.ταχυτήτων, παρούσα ταχύτητα κλπ  Συμπεριφορά, π.χ.  Σκυλί: γαβγίζει, τρέχει γιά να επιτεθεί κλπ.  Ποδήλατο: φρενάρει, αυξάνει/ελαττώνει ταχύτητα, αλλάζει ταχύτητα κλπ

7 Αντικείμενο Λογισμικού • Αντιστοιχούν σε αντικείμενα του πραγματικού κόσμου, δομές δεδομένων (π.χ. λίστα, ουρά, κλπ.) ή σε κάτι πιό αφαιρετικό • Εχουν χαρακτηριστικά καί κατάσταση (που δηλώνονται με μεταβλητές) καθώς καί συμπεριφορά (που υλοποιείται με μεθόδους)

8 Eγκλεισμός (Εncapsulation)  H έννοια του εγκλεισμού (encapsulation)  Πλεονεκτήματα  Αρθρωτά (modular) προγράμματα: Ο πηγαίος κώδικας γιά ένα αντικείμενο μπορεί να γραφτεί καί να συντηρηθεί ανεξάρτητα από άλλα αντικείμενα  Απόκρυψη πληροφορίας (ιδιωτικό μέρος/δημόσιο)

9 Επικοινωνία Μεταξύ Αντικειμένων ΑλλαξεΤαχύτητα Φρέναρε Ξεκίνα Φρέναρε ΠΟΔΗΛΑΤΟ ΠΟΔΗΛΑΤΗΣ ΜΗΝΥΜΑ

10 Μηνύματα  Τα αντικείμενα επικοινωνούν και αλληλεπιδρούν μεταξύ τους αποστέλλοντας μηνύματα.  Επιπλέον πληροφορία που απαιτείται δίνεται ως παράμετροι των μηνυμάτων.  Πλεονεκτήματα  Όλη η αλληλεπίδραση υποστηρίζεται με μεταβίβαση μηνυμάτων.  Τα αντικείμενα δε χρειάζεται να βρίσκονται στην ίδια διεργασία, ούτε καν στον ίδιο υπολογιστή.

11 Κλάση ή Τάξη Αντικειμένων  Μία κλάση ή τάξη είναι ένα σχέδιο ή πρότυπο που ορίζει τις κοινές μεταβλητές και μεθόδους όλων των ομοειδών αντικειμένων.  Κάθε αντικείμενο είναι στιγμιότυπο μίας κλάσης.

12 Παράδειγμα Κλάσης: Ποδήλατο ΑλλαξεΤαχύτητα Φρέναρε Ξεκίνα Δημόσιο Μέρος (Public API) Iδιωτικό Μέρος (Λεπτομέρειες Υλοποίησης) Στατικά Χαρακτηριστικά: •Χρώμα •Μοντέλο Δυναμικά Χαρακτηριστικά: Αλλάξε Ταχύτητα: (Υλοποίηση) κλπ

13 Κληρονομικότητα (1) Ποδήλατο Ποδήλατο ΒουνούΑγωνιστικό ΠοδήλατοΠοδήλατο Πόλης

14 Κληρονομικότητα (2)  Υποκλάσεις (subclasses) και υπερκλάσεις (superclasses).  Κάθε υποκλάση κληρονομεί τη συμπεριφορά και την κατάσταση της υπερκλάσης της.  Οι υποκλάσεις μπορούν να επανεγγράψουν κληροδοτούμενη συμπεριφορά και κατάσταση.  Ιεραρχία κλάσεων

15 Πλεονεκτήματα Κληρονομικότητας  Οι υποκλάσεις προσφέρουν εξειδικευμένη συμπεριφορά από τα κοινά στοιχεία που προσφέρει η υπερκλάση. Επαναχρησιμοποίηση του κώδικα της υπερκλάσης.  Οι προγραμματιστές μπορούν να υλοποιήσουν υπερκλάσεις που λέγονται αφαιρετικές κλάσεις (abstract classes) και ορίζουν γενικευμένη συμπεριφορά, η οποία εξιδικεύεται απο τις αντίστοιχες υποκλάσεις. Οι αφαιρετικές κλάσεις δεν έχουν στιγμιότυπα

16 Τι είναι η UML  H UML (Unified Modeling Language) είναι μιά γλώσσα γιά  Κατάρτιση προδιαγραφών λογισμικού και τεκμηρίωση τμημάτων λογισμικού  Αναπαράσταση με οπτικό τρόπο (visualization) τμημάτων λογισμικού  Μοντελοποίηση εταιρικών καί άλλων συστημάτων που δεν αφορούν λογισμικό

17 Κύκλος Ζωής Λογισμικού  Ανάλυση  Εννοιολογικό μοντέλο  Απαιτήσεις συστήματος  Σχεδιασμός  Σχεδιασμός συστήματος  Λεπτομεριακός σχεδιασμός  Υλοποίηση  Κωδικοποίηση  Έλεγχος

18 Χρήση της UML Πληροφοριακάσυστήματα Συστήματα πραγματικού χρόνου Κατανεμημένασυστήματα Συστήματαεπιχειρήσεων Τεχνολογικάσυστήματα UML

19 Στόχοι της UML  H μοντελοποίηση συστημάτων με βάση τις αρχές των αντικειμενοστραφών μοντέλων  Η δημιουργία μιας μοντελοποιημένης γλώσσας που μπορεί να χρησιμοποιηθεί τόσο από τον άνθρωπο όσο κι από τις μηχανές

20 Η Έννοια της Αφαίρεσης  Εστίαση σε επιλεγμένα στοιχεία καί αγνόηση υπόλοιπων λεπτομερειών  Τα μοντέλα μπορούν να εκφραστούν σε διαφορετικά επίπεδα πιστότητας και λεπτομέρειας  Σύνθετα τμήματα περιγράφονται καλύτερα με μικρά σύνολα ανεξάρτητων όψεων

21 Χαρακτηριστικά των Μοντέλων  Ακρίβεια - περιγράφουν με σωστό τρόπο το σύστημα.  Συνέπεια – διαφορετικές όψεις δεν έρχονται σε σύγκρουση μεταξύ τους.  Διευκολύνουν την επικοινωνία  Ευμετάβλητα  Κατανοητά

22 Περιγράφουν τα περιεχόμενα Διαγράμματα: Περιγράφουν τα περιεχόμενα μιας όψης. Υπάρχουν εννέα διαφορετικά διαγράμματα που χρησιμοποιούνται σε συνδυασμό για να δώσουν όλες τις όψεις του συστήματος Στοιχεία μοντέλου: Είναι οι έννοιες που χρησιμοποιούνται στα διαγράμματα για να αναπαραστήσουν τις κλάσεις, τα αντικείμενα και τις μεταξύ τους συσχετίσεις Oψεις: Δείχνουν διαφορετικά χαρακτηριστικά του συστήματος που μοντελοποιούνται. Μια όψη αποτελείται απο ένα σύνολο διαγραμμάτων Τμήματα της UML

23 ΌψηΠεριπτώσεωνΧρήσης (Use-case View) ΌψηΣυστατικών (Component (ComponentView) Λογική Όψη (LogicalView) ΌψηΠαράταξης(DeploymentView)ΌψηΣυγχρονισμού(ConcurrencyView) Είδη των Όψεων της UML

24 Υπογραφή ασφάλειας Στατιστικά στοιχεία πωλήσεων πωλήσεων Στατιστικά στοιχεία πελατών ΠελάτηςΠράκτορας ασφαλειών Περιγράφει τη λειτουργικότητα του συστήματος όπως αυτή γίνεται αντιληπτή από τον χρήστη Διάγραμμα Περίπτωσης Χρήσης (Use-Case Diagram)

25 ΚΑΤΟΧΟΣ Όνομα : Συμβολοσειρά Ακέραιος ΥΠΟΛΟΓΙΣΤΗΣ όνομ α : Συμβολοσειρά Μνήμη : Ακέραιος * : χρησιμοποιεί Ηλικία:  Οι κλάσεις συσχετίζονται με διάφορους τρόπους  σύνδεσης  εξάρτησης  ειδίκευσης(μια τάξη είναι ειδική περίπτωση κάποιας άλλης  ομαδοποίησης Διαγράμματα Κλάσεων ή Τάξεων (Class Diagram)

26 Bob-Κάτοχος όνομα: ”Bob.j” ηλικία=32 Bob’s job PC Computer Όνομα: “Dell4” Μνήμη =64 Bob’s Home PC Computer Όνομα:”Pentium Μνήμη =32 Δείχνουν Συσχετίσεις μεταξύ Συγκεκριμένων στιγμιοτύπων Διαγράμματα Αντικειμένων

27 On first floor Moving up Moving down Idle Moving to 1st floor Go up (floor) arrived arrived arrived Go down (floor) Time out arrived Διάγραμμα Καταστάσεων (State Diagram)

28 :Computer :PrinterServer :Printer:Queue Print(file) Print(file) [printer free] Print(file) [printer busy] Store(file) Διάγραμμα Ακολουθίας (Sequence Diagram)

29 :Computer :PrinterServer :Queue :Printer 1:Print(file) [printer busy] 1.2: Store(file) [printer free] 1.1: Print(file) Διάγραμμα Συνεργασίας

30  Διάγραμμα Ακολουθίας : Δείχνει την ακολουθία μηνυμάτων ανάμεσα στα αντικείμενα, με την πάροδο του χρόνου  Διάγραμμα Συνεργασίας: Δίνει μεγαλύτερη έμφαση στο περιεχόμενο και στις σχέσεις μεταξύ των αντικειμένων Διαφορές Μεταξύ Διαγραμμάτων Ακολουθίας και Συνεργασίας

31  Δίνει την ακολουθιακή ροή των δραστηριοτήτων  Περιέχει προσδιορισμούς των μηνυμάτων που στέλνονται Εμφάνισε μύνημα «Δίσκος γεμάτος» Εμφάνισε μύνημα «Εκτύπωση» στην οθόνη Δημιουργησε postscript αρχείου Μετακίνησε κουτιά μηνυμάτων [ Δίσκος γεμάτος ] [ Ελεύθερος χώρος δίσκου ] ΠαράθυροΠελάτη.Εκτύπωση ( ) ^Εκτυπωτής.Εκτύπωση() Διάγραμμα Δραστηριοτήτων (Activity Diagram)

32 Δείχνει τα συστατικά μέρη του κώδικα και τις εξαρτήσεις τους Window Handler (wind.cpp) Comm Handler (comm.hnd) Main Class (main.cpp) Window Handler (wind.obj) Comm Handler (commhnd.obj) Main Class (main.obj) Graphic lib (graphic.dll) Client Program (client.exe) Διάγραμμα Συστατικών (Component Diagram)

33 Δείχνει τους υπολογιστές και τις συσκευές (κόμβους ) καθώς και τον τύπο των συνδέσεων Client A: Compaq Pro PC ApplicationServer: Silicon Graphics «TCP/IP» «TCP IP /» DatabaseSERVER:VAX «Decnet» Client B: Compaq Pro PC Διάγραμμα Παράταξης (Deployment Diagram)

34 Στατικά Δυναμικά Υλοποίησης Διαγράμματα αντικειμένων και κλάσεων Kαταστάσεων, Ακολουθίας, Συνεργασίας, Δραστηριοτήτων Συστατικό Παράταξης Εσωτερική όψη Εξωτερική όψη Διάγραμμα Περιπτώσεων Χρήσης Είδη Διαγραμμάτων της UML

35 Κατάσταση Κόμβος (node) Package Component Component Κλάση Γνωρίσματα Λειτουργίες Αντικείμενο Γνωρίσματα Λειτουργίες Use Case interface Υποσημείωση Ορισμένα Κοινά Στοιχεία Μοντέλου

36 Εξάρτηση(dependency) (ένα στοιχείο εξαρτάται με κάποιον τρόπο από κάποιο άλλο Κληρονομικότητα ( ένα στοιχείο μπορεί να αποτελεί ειδική περίπτωση κάποιο Σύνδεση (συνδέει στοιχεία και στιγμιότυπα συνδέσμων ) Ομαδικότητα (ένα στοιχείο περιέχει άλλα στοιχεία ) Παραδείγματα Συσχετίσεων Μεταξύ Κλάσεων

37  Στερεότυπo : ορίζει ένα νέο είδος στοιχείου μοντέλου βασισμένο σ’ ένα υπάρχον στοιχείο μοντέλου.Είναι λοιπόν σαν ένα υπάρχον στοιχείο μοντέλου, με κάποια επιπλέον στοιχεία  Tagged values : Τα στοιχεία μπορούν να έχουν ιδιότητες που περιέχουν ζευγάρια τιμών σχετικά με επιπλέον πληροφορίες  Περιορισμοί : Θέτουν κάποια βάση που περιορίζει είτε τη χρήση του στοιχείου είτε τη σημασία του Επεκτείνοντας την UML

38 «Actor» ΠελάτηςΠελάτης Πελάτης Ο πελάτης είναι μια κλάση με το στερεότυπο «Actor» Το στερεότυπο προσθέτει επιπλέον σημασιολογικές πληροφορίες σχετικά με την κλάση.Εδώ η κλάση εκπροσωπεί έναν εξωτερικό χρήστη του συστήματος Στερεότυπα

39 Εργαλείο {abstract} {συγγραφ.=“Hee”} {κατάσταση=draft} Τιμή : ακέραιος Ημ.Λήξης: ημερ. O συγγραφέας και η κατάσταση είναι γνωρίσματα ορισμένα από τον χρήστη Ομάδα Ηλικιωμένων Ηλικιωμένωνπολιτών Άτομο {Ατομο.Ηλικία>60} Περιορισμοί * Tagged Values και Περιορισμοί

40 ΦΑΣΗ ΑΝΑΛΥΣΗΣ Εδώ αναλύονται οι απαιτήσεις του συστήματος ΦΑΣΗ ΣΧΕΔΙΑΣΗΣ Eπεκτείνει το μοντέλο ανά- λυσης σε μια λειτουργικά τεχνική λύση ΦΑΣΗ ΥΛΟΠΟΙΗΣΗΣ Το μοντέλο είναι τώρα ο κώ- δικας του προγράμματος,ο οποίος υλοποιεί το σύστημα ΦΑΣΗ ΠΡΑΓΜΑΤΩΣΗΣ Εδώ εξηγείται πως το σύστημα αναπτύσσεται σε φυσική αρχιτεκτονική Μοντελοποιώντας με τη UML

41 Φάση ανάλυσης Φάση υλοποίησης Φάση πραγμάτωσης Φάση σχεδίασης Διαγράμματα Περιπτώσεων Χρήσης, Κλάσεων, Δραστηριοτήτων Διαγράμματα Κλάσεων, Ακολουθίας, Καταστάσεων, Δραστηριοτήτων, Συστατικών Εδώ δημιουργούνται ελάχιστα διαγράμματα Διαγράμματα Παράταξης, Ακολουθίας Συνεργασίας Αντιστοιχία Διαγραμμάτων στις Διάφορες Φάσεις Ανάπτυξης ενός Συστήματος

42  Σχεδιασμός διαγραμμάτων που εξασφαλίζουν τη σωστή χρήστη των στοιχείων του μοντέλου  Κοινή Αποθήκευση δεδομένων. Η πληροφορία αποθηκεύεται μόνο σε ένα μέρος. Αν το όνομα μιας κλάσης αλλάζει σ’ ένα διάγραμμα, η αλλαγή αυτή μετάδίδεται και στα υπόλοιπα  Υποστήριξη πλοήγησης του μοντέλου ή παρακολούθησης ενός στοιχείου από ένα διάγραμμα σε ένα άλλο ή επέκταση της περιγραφής του στοιχείου  Υποστήριξη πολλών χρηστών -δίνει την δυνατότητα να δουλεύουν πολλοί χρήστες ταυτόχρονα  Δημιουργία κώδικα Λειτουργίες των Εργαλείων Μοντελοποίησης (Case Tools)

43  Παραγωγή μοντέλων από τον κώδικα (Reverse Engineering)  Συνεργασία με άλλα εργαλεία όπως editor, μεταγλωττιστές κι άλλα επιχειρησιακά εργαλεία  Κάλυψη όλων των επιπέδων αφαίρεσης, από το επίπεδο περιγραφής του συστήματος στο επίπεδο κώδικα  Ανταλλαγές μοντέλων.Ένα μοντέλο από κάποιο διάγραμμα θα πρέπει να έχει τη δυνατότητα να εισάγεται από το ένα εργαλείο στο άλλο Άλλες Λειτουργίες των Εργαλείων Μοντελοποίησης (Case Tools)


Κατέβασμα ppt "AΝΑΛΥΣΗ ΣΥΣΤΗΜΑΤΩΝ Εισαγωγή στη UML Τι είναι Αντικείμενο (1)  Στον πραγματικό κόσμο (ποδήλατο, σκύλος)  Αντικείμενο λογισμικού: Μοντελοποιεί, αναπαριστά,"

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


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