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

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Τι είναι ο προγραμματισμός
Advertisements

ΔΙΑΓΡΑΜΜΑΤΑ ΥΛΟΠΟΙΗΣΗΣ Διαγράμματα Συστατικών Λογισμικού (Component Diagrams) Διαγράμματα Ανάπτυξης (Deployment Diagrams)
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
AΝΑΛΥΣΗ ΣΥΣΤΗΜΑΤΩΝ Εισαγωγή στη UML.
POINTERS, AGGREGATION, COMPOSITION. POINTERS TO OBJECTS.
Copyright ©: SAMSUNG & Samsung Hope for Youth. Με επιφύλαξη κάθε νόμιμου δικαιώματος Εκπαιδευτικό υλικό Λογισμικό: Δημιουργία εφαρμογών Επίπεδο.
-Στοίβα-Ουρά - Πλεονεκτήματα πινάκων -Δομές δεδομένων δευτερεύουσας μνήμης -Πληροφορική και δεδομένα -Παραδείγματα-Προβλήματα ψευδοκώδικα.
Κεφάλαιο 1ο: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
Διαδικασία ανάπτυξης Προσδιορισμός απαιτήσεων Αρχιτεκτονικός Σχεδιασμός Λεπτομερής Σχεδιασμός Κωδικοποίηση Έλεγχος Παράδοση Συστήματος Λειτουργία - Συντήρηση.
ΟΠΑ - Τεχνολογία Λογισμικού - Εμμ. Γιακουμάκης
ΕΠΙΚΟΙΝΩΝΙΑ ΑΝΘΡΩΠΟΥ – ΜΗΧΑΝΗΣ Εαρινό Εξάμηνο 2007 Παρουσίαση Εργαλείου Ανάπτυξης JBuilder Τσουρού Σταυρούλα, ΑΜ 708 Μαδεμλής Ιωάννης, ΑΜ 669.
 Αυδίκου Χριστίνα  Γιουμούκης Παναγιώτης  Κιντσάκης Θάνος  Πάπιστας Γιάννης.
Πτυχιακή εργασία των Κωνσταντίνου Κουρμούση (1604)
HMMY Τεχνολογία Λογισμικού Διδάσκων Κώστας Κοντογιάννης Αναπλ
Αρχή της ενσωμάτωσης Η εσωτερική κατάσταση ενός αντικειμένου πρέπει να είναι τροποποιήσιμη μόνο μέσω της δημόσιας διασύνδεσής του.
Η ποιότητα της πληροφορίας στο εκπαιδευτικό υλικό που χρησιμοποιείται ή διανέμεται μέσω του Internet Χρήστος Σαβρανίδης Πανεπιστήμιο Ιωαννίνων Τμήμα ΦΠΨ.
Αρχιτεκτονική Συστημάτων
Τι είναι Ανάλυση Τι είναι Συστήματα Πληροφορικής
Υπηρεσίες δικτύων επικοινωνίας
ΑΠΕΙΚΟΝΙΣΗ ΕΝΝΟΙΩΝ 1. 2 Χρήστης Στόχος Ταμίας διενέργεια πώλησης διενέργεια ενοικίασης εισαγωγή ταμείου εξαγωγή ταμείου * 1 Μοντέλο Πεδίου Προβλήματος.
ΕΙΣΑΓΩΓΗ ΜΑΘΗΜΑ 1.
Νταλιακούρας Νικόλαος CEID – Πανεπιστήμιο Πατρών Object Oriented Programming II (C++) Χειμερινό Εξάμηνο
Τεχνολογία ΛογισμικούSlide 1 Σχεδιασμός Λογισμικού u Ανάπτυξη λύσης που ικανοποιεί τις απαιτήσεις λογισμικού.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Χειμερινό Εξάμηνο (Ε') - Κωδ. Μαθήματος:
Μοντέλα Συστημάτων Παρουσιάσεις των συστημάτων των οποίων οι απαιτήσεις αναλύονται.
1 HMMY Τεχνολογία Λογισμικού Διδάσκων Κώστας Κοντογιάννης Αναπλ. Καθηγητής, Ε.Μ.Π.
Αναπαράσταση και Διαχείριση Ετερογενών Ψηφιακών Συλλογών στο Σ.Ψ.Β. Πέργαμος Γιώργος Πυρουνάκης, Κώστας Σαΐδης, Κώστας Βίγλας, Ειρήνη Λουρδή, Μαρία Νικολαΐδη.
Εννοιολογική αναπαράσταση δεδομένων. Οντότητα Είναι κάθε αντικείμενο, πρόσωπο, γεγονός κατάσταση ή και αφηρημένη έννοια που προσδιορίζεται από την ανεξάρτητη.
HMMY Τεχνολογία Λογισμικού Διδάσκων Κώστας Κοντογιάννης Αναπλ. Καθηγητής, Ε.Μ.Π.
Δομές Δεδομένων.
ΔΥΝΑΜΙΚΑ ΔΙΑΓΡΑΜΜΑΤΑ ä Οψεις της UML ä Οψεις καί Διαγράμματα ä Δυναμικά Διαγράμματα ä Διαγράμματα Καταστάσεων ä Διαγράμματα Ακολουθίας ä Διαγράμματα Συνεργασίας.
ΟΠΑ - Τεχνολογία Λογισμικού - Εμμ. Γιακουμάκης
ΔΙΑΓΡΑΜΜΑ ΔΡΑΣΤΗΡΙΟΤΗΤΩΝ
1 Εισαγωγή στη Java Χρήσιμες Διευθύνσεις Χαρακτηριστικά της Java Εργαλεία της Java Εργαλεία της Java Μεταγλώττιση στοιχειωδών εφαρμογών.
Επικοινωνία Ανθρώπου Μηχανής HTML CGI JAVASCRIPT Κουμπούλης Χρήστος Α.Μ. 921 Χαλαβαζής Βασίλης Α.Μ. 988.
Διδακτική της Πληροφορικής ΗΥ302 Εργασία :Παρουσίαση σχολικού βιβλίου Γ’ Λυκείου Τεχνολογικής Κατεύθυνσης «Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον»
ΑΝΑΚΕΦΑΛΑΙΩΣΗ 26 Οκτωβρίου Αντικειμενοστρεφής Προγραμματισμός Ένα νέο προγραμματιστικό μοντέλο (paradigm) το οποίο στηρίζεται στις κλάσεις και τα.
3 Αρχιτεκτονική Συστημάτων  Κατηγορίες χρηστών ΣΔΒΔ  Αρχιτεκτονική ANSI/SPARC  Γλώσσες ερωτημάτων  Μοντέλα δεδομένων  Λειτουργίες ΣΔΒΔ.
ΟΡΙΣΜΟΣ ΣΥΜΠΕΡΙΦΟΡΑΣ ΔΙΑΓΡΑΜΜΑTA ΑΛΛΗΛΕΠΙΔΡΑΣΗΣ
Προγραμματισμός Γιατι γραφουμε προγραμματα (προηγ. διαλεξη)
Τεχνολογία TCP/IP TCP/IP internet είναι ένα οποιοδήποτε δίκτυο το οποίο χρησιμοποιεί τα πρωτόκολλα TCP/IP. Διαδίκτυο (Internet) είναι το μεγαλύτερο δίκτυο.
Τμήμα Πληροφορικής και Τηλεπικοινωνιών
On user-defined features Christoph M Hoffmann and Robert Joan-Arinyo Ανδρέας Φωτίου.
Παράδειγμα Εφαρμογής Σύστημα για Online Αγορές Αθανασόπουλος Γιώργος ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ.
Τεχνολογία ΛογισμικούSlide 1 Τεχνολογία Απαιτήσεων u Καθορίζει τι θέλει ο πελάτης από ένα σύστημα λογισμικού.
ΕΝΟΤΗΤΑ 2 – Κεφάλαιο 5: Γνωριμία με το Λογισμικό
ANAΛΥΣΗ ΣΥΣΤΗΜΑΤΩΝ Aντικειμενοστρεφής Ανάπτυξη Συστημάτων Εισαγωγή στη UML.
Αρχές Τεχνολογίας Λογισμικού Εργαστήριο 1: Εισαγωγή.
Υλοποίηση εφαρμογών σε προγραμματιστικά περιβάλλοντα Κεφάλαιο 7.
ΚΑΤΑΝΟΩ ΤΙΣ ΜΕΤΑΒΛΗΤΕΣ ΜΕ ΤΗ ΒΟΗΘΕΙΑ ΤΟΥ SCRATCH Χρήστος Μανώλης, Πληροφορικός ΠΕ 19 ΘΕΣΣΑΛΟΝΙΚΗ / ΑΥΓΟΥΣΤΟΣ 2015 Ομάδα ανάπτυξης 6 ο εσπερινό ΕΠΑΛ Θεσσαλονίκης.
1 Εργαστήριο MIS Use Cases. 2 ΆνθρωποιΔεδομένα Λογισμικό Υλικό Διαδικασίες.
Εισαγωγή στη C# Μαρίνος Θεμιστοκλέους Ανδρούτσου 150 Γραφείο 206 Τηλ Ώρες Γραφείου: Τετάρτη 5-6 μμ.
ΥΠΟΛΟΓΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ ΓΙΑ ΣΥΣΤΗΜΑΤΑ ΜΕΤΑΔΟΣΗΣ ΠΛΗΡΟΦΟΡΙΑΣ Αντικειμενοστραφής προγραμματισμός Web Site: ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ.
Διαγράμματα Πακέτων (Package Diagrams)
ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ανδρέου Βασίλης.
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Κατανεμημένα Συστήματα
Κλάσεις και αντικείμενα
Αρχές Διοίκησης και Διαχείρισης Έργων
Επεξεργασία Κειμένου Διδακτική προσέγγιση των λογισμικών γενικής χρήσης Ζωγραφική Λογιστικά φύλλα Βάσεις δεδομένων.

ΣΥΣΤΗΜΑ ΠΟΙΟΤΗΤΑΣ ΛΟΓΙΣΜΙΚΟΥ (QUALITY SYSTEM)
Κεφάλαιο 7: Διαδικτύωση-Internet
Activity Diagrams.
Σύγχρονες μεθοδολογίες ανάπτυξης και διαχείρισης Πληροφοριακών Συστημάτων 2ο Κεφάλαιο.
Ειδικά Θέματα στον προγραμματισμό Υπολογιστών
ΥΛΟΠΟΙΗΣΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ
Εφαρμογή Μεθοδολογίας ICONIX
ΕΙΣΑΓΩΓΗ ΣΤΗ UML ΕΙΣΑΓΩΓΗ ΣΤΗ UML.
ΔΙΑΓΡΑΜΜΑΤΑ ΥΛΟΠΟΙΗΣΗΣ Διαγράμματα Συστατικών Λογισμικού (Component Diagrams) Διαγράμματα Ανάπτυξης (Deployment Diagrams)
Μεταγράφημα παρουσίασης:

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

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

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

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

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

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

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

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

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

ΚΛΑΣΗ ΑΝΤΙΚΕΙΜΕΝΩΝ  Μία κλάση είναι ένα σχέδιο ή πρότυπο που ορίζει τις κοινές μεταβλητές και μεθόδους όλων των αντικειμένων που ανήκουν στο ίδιο είδος.  Κάθε αντικείμενο είναι στιγμιότυπο μίας κλάσης.

ΠΑΡΑΔΕΙΓΜΑ ΚΛΑΣΗΣ: ΠΟΔΗΛΑΤΟ ΑλλαξεΤαχύτητα Φρέναρε Ξεκίνα Δημόσιο Μέρος (Public API) Iδιωτικό Μέρος (Λεπτομέρειες Υλοποίησης) Στατικά Χαρακτηριστικά: ΧΡΩΜΑΜΟΝΤΕΛΟ Δυναμικά ΧαρακτηριστικάΣ ΑΛΛΑΞΕ ΤΑΧΥΤΗΤΑ: (Υλοποίηση)κλπ

ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ ΠΟΔΗΛΑΤΟ ΠΟΔΗΛΑΤΟ ΒΟΥΝΟΥΑΓΩΝΙΣΤΙΚΟ ΠΟΔΗΛΑΤΟΠΟΔΗΛΑΤΟ ΠΟΛΗΣ

ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ  Υποκλάσεις (subclasses) και υπερκλάσεις (superclasses).  Κάθε υποκλάση κληρονομεί τη συμπεριφορά και την κατάσταση της υπερκλάσης της.  Οι υποκλάσεις μπορούν να επανεγγράψουν κληροδοτούμενη συμπεριφορά και κατάσταση.  Ιεραρχία κλάσεων

ΠΛΕΟΝΕΚΤΗΜΑΤΑ ΚΛΗΡΟΝΟΚΙΚΟΤΗΤΑΣ ä Οι υποκλάσεις προσφέρουν εξειδικευμένη συμπεριφορά από τα κοινά στοιχεία που προσφέρει η υπερκλάση. Επαναχρησιμοποίηση του κώδικα της υπερκλάσης. ä Οι προγραμματιστές μπορούν να υλοποιήσουν υπερκλάσεις που λέγονται αφηρημένες κλάσεις (abstract classes) και ορίζουν γενικευμένη συμπεριφορά. Οι αφηρημένες υπερκλάσεις ορίζουν και υλοποιούν εν μέρει τη συμπεριφορά. Κάθε προγραμματιστής συμπληρώνει τα χαρακτηριστικά που επιθυμεί.

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

KYKΛΟΣ ΖΩΗΣ ΛΟΓΙΣΜΙΚΟΥ  Ανάλυση  Εννοιολογικό μοντέλο  Απαιτήσεις συστήματος  Σχεδιασμός  Σχεδιασμός συστήματος  Λεπτομεριακός σχεδιασμός  Υλοποίηση  Κωδικοποίηση  Έλεγχος

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

ΣΤΟΧΟΙ ΤΗΣ UML ä H μοντελοποίηση συστημάτων με βάση τις αρχές των αντικειμενοστραφών μοντέλων ä Συνταίριασμα σκέψεων και πρακτικής εφαρμογής αυτών ä Η δημιουργία μιας μοντελοποιημένης γλώσσας που μπορεί να χρησιμοποιηθεί τόσο από τον άνθρωπο όσο κι από τις μηχανές

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

ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΤΩΝ ΜΟΝΤΕΛΩΝ u Ακρίβεια - περιγράφουν με σωστό τρόπο το σύστημα u Συνέπεια - διαφορετικές όψεις χρησιμοποιούν ομοιόμορφα αντικείμενα u Εύκολη επικοινωνία με άλλα διαγράμματα u Ευμετάβλητα u Κατανοητά - τόσα απλά όσο το δυνατό,αλλά όχι απλουστευμένα

ΤΜΗΜΑΤΑ ΤΟΥ UML είναι τα γραφικά Διαγράμματα: είναι τα γραφικά που περιγράφουν τα περιεχόμενα μιας όψης Στοιχεία μοντέλου:Αυτά περιλαμβάνουν τις κλάσεις,τα αντικείμενα και τις σχέσεις τους Oψεις(Views) :δείχνουν απόψεις του συστήματος που μοντελοποιούνται

Use-caseView ComponentviewLogicalview DeploymentviewConcurrencyView ΕΙΔΗ ΤΩΝ ΟΨΕΩΝ ΤΟΥ UML

Υπογραφή ασφάλειας Στατιστικά στοιχεία πωλήσεων πωλήσεων Στατιστικά στοιχεία πελατών ΠελάτηςΠράκτορας ασφαλειών USE-CASE DIAGRAM Περιγράφει τη λειτουργικότητα του συστήματος Περιγράφει τη λειτουργικότητα του συστήματος όπως αυτή γίνεται αντιληπτή από τον χρήστη

ΔΙΑΓΡΑΜΜΑΤΑ ΚΛΑΣΕΩΝ (CLASS DIAGRAM) ΚΑΤΟΧΟΣ Όνομα : Συμβολοσειρά Ακέραιος ΥΠΟΛΟΓΙΣΤΗΣ όνομ α : Συμβολοσειρά Μνήμη : Ακέραιος * : χρησιμοποιεί Ηλικία: Οι κλάσεις συσχετίζονται με διάφορους τρόπους  σύνδεσης  εξάρτησης  ειδίκευσης(μια τάξη είναι ειδική περίπτωση κάποιας άλλης  ομαδοποίησης

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

ΔΙΑΓΡΑΜΜΑ ΚΑΤΑΣΤΑΣΕΩΝ State Diagrams On first floor Moving up Moving down Idle Moving to 1st floor Go up (floor) arrived arrived arrived Go down (floor) Time out arrived

:Computer :PrinterServer :Printer:Queue Print(file) Print(file) [printer free] Print(file) [printer busy] Store(file) ΔΙΑΓΡΑΜΜΑ AΛΛΗΛΟΔΙΑΔΟΧΗΣ (SEQUENCE DIAGRAM)

:Computer :PrinterServer :Queue :Printer 1:Print(file) [printer busy] 1.2: Store(file) [printer free] 1.1: Print(file) COLLABORATION DIAGRAM

Διαφορές των sequence diagrams και των collaboration diagrams t Sequence diagram : Δείχνει την ακολουθία μηνυμάτων ανάμεσα στα αντικείμενα, με την πάροδο του χρόνου t Collaboration diagram: Δίνει μεγαλύτερη έμφαση στο περιεχόμενο και στις σχέσεις μεταξύ των αντικειμένων

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

COMPONENT DIAGRAM(διαγρ.εξαρτημάτων) Δείχνει τα συστατικά μέρη του κώδικα και την φυσική τους δομή 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)

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

ΕΙΔΗ UML ΔΙΑΓΡΑΜΜΑΤΩΝ Στατικά Δυναμικά Υλοποίησης Διαγράμματα αντικειμένων και κλάσεων Kαταστάσεων, Ακολουθίας,Συνεργασίας, Δραστηριοτήτων Εξαρτημάτων,ανάπτυξης Εσωτερική όψη Εξωτερική όψη Use case διάγραμμα

ΕΙΔΗ UML ΔΙΑΓΡΑΜΜΑΤΩΝ Στατική Άποψη Δυναμική Άποψη Αποψη Υλοποίησης Διαγράμματα αντικειμένων και κλάσεων Kαταστάσεων, Ακολουθίας,Συνεργασίας, Δραστηριοτήτων Εξαρτημάτων,ανάπτυξης Λειτουργική Άποψη Use case διάγραμμα

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

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

ΕΠΕΚΤΕΙΝΟΝΤΑΣ ΤΗΝ UML u Στερεότυπα : ορίζει ένα νέο είδος στοιχείου μοντέλου βασισμένο ΄σ’ ένα υπάρχον στοιχείο μοντέλου.Είναι λοιπόν σαν ένα υπάρχον στοιχείο μοντέλου, με κάποια επιπλέον στοιχεία u Tagged values : Τα στοιχεία μπορούν να έχουν ιδιότητες που περιέχουν ζευγάρια τιμών σχετικά με επιπλέον πληροφορίες u Περιορισμοί : Θέτουν κάποια βάση που περιορίζει είτε την χρήση του στοιχείου είτε την σημασία του

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

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

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

Φάση ανάλυσης Φάση υλοποίησης Φάση πραγμάτωσης Φάση σχεδίασης Use-case,class,activity Class,sequence,stateactivity,component Εδώ δημιουργούνται ελάχιστα διαγράμματα Deployment,sequencecollaboration Αντιστοιχία διαγραμμάτων στις διάφορες φάσεις ανάπτυξης ενός συστήματος

ΛΕΙΤΟΥΡΓΙΕΣ ΤΩΝ ΕΡΓΑΛΕΙΩΝ ΜΟΝΤΕΛΟΠΟΙΗΣΗΣ (Case Tools) tΣχεδιασμός διαγραμμάτων που εξασφαλίζουν την σωστή χρήστη των στοιχείων του μοντέλου tΑποθήκευση δεδομένων.Αν το όνομα μιας κλάσης αλλάζει σ’ ένα διάγραμμα, η αλλαγή αυτή διαδίδεται και στα υπόλοιπα tΥποστήριξη διάδοσης ενός στοιχείου από ένα διάγραμμα σε ένα άλλο κι επέκταση της περιγραφής του στοιχείου tΥποστήριξη πολλών χρηστών -δίνει την δυνατότητα να δουλεύουν πολλοί χρήστες ταυτόχρονα tΔημιουργία κώδικα

ΆΛΛΕΣ ΛΕΙΤΟΥΡΓΙΕΣ ΤΩΝ CASE TOOL tΑντίστροφη παραγωγή, δηλαδή από τον κώδικα μπορούμε να παράγουμε μοντέλα tΣυμβατότητα με άλλα εργαλεία όπως editor, μεταγλωττιστές κι άλλα επιχειρησιακά εργαλεία tΚάλυψη όλων των επιπέδων, από το επίπεδο περιγραφής του συστήματος στο επίπεδο κώδικα tΣυναλλαγές ανάμεσα στα μοντέλα.Ένα μοντέλο από κάποιο διάγραμμα θα πρέπει να έχει τη δυνατότητα να εισάγεται από το ένα εργαλείο στο άλλο