Τεχνολογία Λογισμικού

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Τεχνολογία Λογισμικού"

Transcript

1 Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 9/10/2017 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων UML - Unified Modeling Language Ενοποιημένη Γλώσσα Μοντελοποίησης 1

2 UML!!! Πρότυπο για γραφική μοντελοποίηση λογισμικού! Όχι μόνο για αντικειμενοστρεφή συστήματα Βασική αξία: Επικοινωνία και κατανόηση! Ευρεία χρήση και προτυποποίηση στους κύκλους ανάπτυξης αντικειμενοστρεφων συστημάτων Μοντελοποίηση Φτιάχνουμε μοντέλα για να καταλάβουμε καλύτερα το σύστημα που αναπτύσσουμε -Προσφέρει γραφική απεικόνιση -Προσδιορίζει δομή και συμπεριφορά -Βοηθά στην οργάνωση της κατασκευής Item Order Modeling captures essential parts of the system. Dr. James Rumbaugh Ship via Business Process Visual Modeling is modeling using standard graphical notations Computer System 2

3 Τι είναι Μοντέλο? Γιατί? Μοντέλο: απλούστευση (αφαίρεση) της πραγματικότητας Το μοντέλο αναπαριστά τα σημαντικά (από μία ορισμένη οπτική γωνία) στοιχεία της οντότητας που μοντελοποιείται, απλοποιώντας ή παραλείποντας τα υπόλοιπα, τις άσχετες πλευρές και τις δευτερεύουσας σημασίας λεπτομέρειες Το μέσο επάνω στο οποίο αναπτύσσεται το μοντέλο ΠΡΕΠΕΙ να είναι βολικό για επεξεργασία. Για παράδειγμα το μοντέλο ενός κτιρίου κατασκευάζεται σε χαρτί ή το μοντέλο ενός αεροσκάφους σε μία μακέτα. Γιατί χρειαζόμαστε τα μοντέλα? Γιατι μας βοηθούν στην καλύτερη κατανόηση του συστήματος Συνήθως φτιάχνουμε μοντέλα σύνθετων συστημάτων τα οποία δεν μπορούμε να κατανοήσουμε στην πληρότητα τους (ένεκα των περιορισμένων μας αντιληπτικών και διανοητικών ικανοτήτων) και εφαρμόζουμε αφαίρεση και διαίρεση Χαρακτηριστικά Μοντέλων Ακρίβεια Περιγράφουν το σύστημα με ακρίβεια και χωρίς ασάφειες Συνέπεια Όλες οι διαφορετικές όψεις που παρέχουν πληροφορία για το σύστημα χρησιμοποιούν όμοια αντικείμενα και δεν έρχονται σε σύγκρουση μεταξύ τους Εύκολη επικοινωνία Με τους χρήστες Με άλλα διαγράμματα Ευμετάβλητα Μπορούν να αλλάξουν εύκολα Κατανοητά Είναι όσο το δυνατόν πιο απλά και κατανοητά 3

4 Βασικές αρχές Μοντελοποίησης Η επιλογή του μοντέλου καθορίζει τον τρόπο αντιμετώπισης του προβλήματος και τη δημιουργία της λύσης. Υπάρχουν μοντέλα για διάφορα επίπεδα λεπτομέρειας και ακρίβειας. Δεν υπάρχει ένα μοναδικό μοντέλο που να καλύπτει όλες τις πλευρές του συστήματος. Ακριβής καθορισμός των απαιτήσεων έτσι ώστε όλοι οι εμπλεκόμενοι να τις κατανοούν με κοινό τρόπο. Καλά μοντέλα είναι εκείνα που συνδέονται με την πραγματικότητα Κανένα μοντέλο από μόνο του δεν είναι επαρκές!!! Κάθε μη τετριμμένο σύστημα προσεγγίζεται καλύτερα από ένα (σχετικά μικρό) σύνολο ανεξάρτητων μοντέλων από διαφορετικές σκοπιές. Μοντελοποίηση στην Ανάλυση και Σχεδίαση Συστημάτων Λογισμικού Βοηθά την οπτικοποίηση ενός (υπαρκτού ή προς κατασκευή) συστήματος Βοηθά την προδιαγραφή της δομής ή συμπεριφοράς ενός συστήματος Αποτελεί οδηγό για την κατασκευή ενός συστήματος Τεκμηριώνει τις αποφάσεις που έχουμε πάρει 4

5 Μοντελοποίηση στην Ανάλυση και Σχεδίαση Συστημάτων Λογισμικού Υψηλού επιπέδου επιχειρηματικές ανάγκες καταγεγραμμένες στην Πρόταση Συστήματος Καθορισμός Απαιτήσεων Αναλυτική Καταγραφή συγκεκριμένων απαιτήσεων Μοντελοποίηση του Συστήματος Λειτουργικότητα / Δομή / Συμπεριφορά (Functionality/Structure/Behavior Άξονες Μοντελοποίησης Λειτουργικότητα functionality Τι κάνει το σύστημα; Ποιες λειτουργίες υποστηρίζει; Ανάλυση απαιτήσεων Περιγραφές από κείμενο Στατικά διαγράμματα Πώς είναι οργανωμένα τα συστατικά του τμήματα; Δομή structure Συμπεριφορά behaviour Δυναμική συμπεριφορά Πώς ανταποκρίνεται και από ποιες καταστάσεις περνάει; 10 5

6 UML Η Eνοποιημένη Γλώσσα Μοντελοποίησης (Unified Modeling Language) είναι γραφική γλώσσα γενικού σκοπού η οποία χρησιμοποιείται για: τον προσδιορισμό (specifying), με ακρίβεια και πληρότητα την οπτικοποίηση (visualizing), με γραφικά σύμβολα την ανάπτυξη/κατασκευή (constructing), με μοντέλα που μετασχηματίζονται σε κώδικα με εργαλεία CASE και την τεκμηρίωση (documenting), για όλα τα στάδια κύκλου ζωής λογισμικού των κατασκευασμάτων (artifacts) των συστημάτων λογισμικού UML Σχετικά ανοιχτό πρότυπο που ελέγχεται από την Ομάδα Διαχείρισης Αντικειμένων (Object Management Group OMG) ανοιχτή κοινοπραξία εταιρειών Η OMG δημιουργήθηκε για την κατασκευή προτύπων που υποστηρίζουν τη διαλειτουργικότητα 6

7 UML Πρακτικά η UML είναι μία γλώσσα Μας προσφέρει το λεξιλόγιο, τους γραμματικούς και τους συντακτικούς κανόνες και τη σημασιολογία που συνοδεύει το λεξιλόγιο και τους κανόνες UML Επίσης η UML είναι μία γλώσσα μοντελοποίησης ΔΕΝ είναι γλώσσα προγραμματισμού μπορεί να χρησιμοποιηθεί τόσο από τον άνθρωπο όσο και από τις μηχανές Χρήση με οποιαδήποτε διαδικασία/μεθοδολογία ανάπτυξης, σε οποιοδήποτε στάδιο ανάπτυξης, για οποιαδήποτε πλατφόρμα με οποιαδήποτε γλώσσα Επιτρέπει τη μοντελοποίηση συστημάτων με βάση τις αρχές των αντικειμενοστρεφών μοντέλων και χρησιμοποιεί κυρίως διαγράμματα για να εκφράσει την αντικειμενοστρεφή ανάλυση και σχεδίαση έργων λογισμικού Απλοποιεί την πολύπλοκη διαδικασία σχεδίασης λογισμικού 7

8 UML Επίσης η UML είναι ενοποιημένη, γιατί είναι αποτέλεσμα ενοποίησης διαφορετικών προσεγγίσεων και συμβολισμών που εμφανίστηκαν στις αρχές της δεκαετίας του 1990 Ενοποίηση σχετικά με τον κύκλο ζωής λογισμικού από τις αρχικές φάσεις προσδιορισμού απαιτήσεων μέχρι παράδοση λογισμικού Ενοποίηση για διαφορετικούς χώρους προβλημάτων Ενοποίηση για διαφορετικές διαδικασίες ανάπτυξης η UML είναι ανεξάρτητη από το μοντέλο διαδικασίας του λογισμικού που επιλέγεται Ενοποίηση σχετικά με τις θεμελιώδεις έννοιες που χρησιμοποιούνται το λεξιλόγιο, το συντακτικό και η σημασιολογία της UML θεμελιώνεται πάνω σε αυστηρές έννοιες με τυπικό φορμαλισμό Γιατί η UML? Εκφραστική γλώσσα γραφικής μοντελοποίησης για ανάπτυξη & ανταλλαγή κατανοητών μοντέλων μεταξύ χρηστών Παρέχει συστηματική προσέγγιση στη διαδικασία προγραμματισμού, ανάλυσης, σχεδίασης και κατασκευής Ουσιαστικά αποτελείται από μία σειρά σταδίων που περιγράφουν συγκεκριμένες εργασίες που πρέπει να γίνουν. Η UML είναι γλώσσα μοντελοποίησης ΚΑΙ ΟΧΙ μεθοδολογία ανάπτυξης έργων λογισμικού! Η UML είναι ουδέτερη σε σχέση με τις μεθοδολογίες, δεν επιβάλει κάποια συγκεκριμένη μεθοδολογία και χρησιμοποιείται με διάφορους τρόπους ΜΠΟΡΕΙ ΝΑ χρησιμοποιηθεί με οποιαδήποτε μεθοδολογία ανάπτυξης!!!! 8

9 Κύκλος Ζωής Λογισμικού UML Ανάλυση Εννοιολογικό μοντέλο (UML) Απαιτήσεις συστήματος (UML) Σχεδιασμός Σχεδιασμός συστήματος (UML) Λεπτομεριακός σχεδιασμός (UML) Υλοποίηση (UML διαγράμματα deployment & component) Κωδικοποίηση Έλεγχος Ιστορία της UML Δεκαετία 70: εμφανίζονται οι πρώτες γλώσσες μοντελοποίησης που βασίζονται σε αντικείμενα Δεκαετία 80 (τέλη): C++, Smalltalk Δεκαετία 90: πολλές μέθοδοι αντικειμενοστραφούς μοντελοποίησης Booch 93 (Grady Booch - Rational) OOSE - Object Oriented Software Engineering (Ivar Jacobson Objectory) OMT-2 Object Modelling Technique (James Rumbaugh GE) 1995: Ενοποίηση μεθόδων και 1 η έκδοση UML 1997: Η UML έκδοση1.0 υιοθετείται ως πρότυπο του Object Management Group (OMG) σε συνεργασία με τους JaCOBSON, Booch και Rumbaugh (the three amigos). 2003: UML έκδοση 2.0 Δεκατρείς επίσημοι τύποι διαγραμμάτων Ανεξάρτητη μεθοδολογίας μοντελοποίησης 9

10 Ιστορία της UML Ιστορία της UML Nov 97 UML approved by the OMG 10

11 Εταίροι στη UML Rational Software Corporation Hewlett-Packard I-Logix IBM ICON Computing Intellicorp MCI Systemhouse Microsoft ObjecTime Oracle Platinum Technology Taskon Texas Instruments/Sterling Software Unisys... -> ισχυρή δυναμική Σκοπός της UML Να ορίσει ένα κοινό λεξιλόγιο για την αντικειμενοστρεφή προσέγγιση και να προσφέρει διαγραμματικές τεχνικές ικανές να μοντελοποιήσουν οποιοδήποτε σύστημα από την ανάλυση έως και την υλοποίησή του. Είναι χρήσιμο να έχουμε μια κοινή γλώσσα επικοινωνίας και σχεδιασμού αντικειμενοστρεφών συστημάτων από την αρχή ως το τέλος! Για να απαγκιστρωθούμε από την ορολογία και τις λεπτομέρειες της κάθε αντικειμενοστρεφούς γλώσσας (C++, Java, Smalltalk, C# κτλ) Τα διαγράμματα μπορούν να κατανοηθεί γρηγορότερα και για πολλά χρόνια μετά!!! 11

12 Τμήματα της UML Όψεις δείχνουν διαφορετικά χαρακτηριστικά του συστήματος που μοντελοποιούνται. Μία όψη αποτελείται από ένα σύνολο διαγραμμάτων Διαγράμματα δείχνουν/περιγράφουν τα περιεχόμενα μιας όψης Στοιχεία μοντέλου είναι οι έννοιες που χρησιμοποιούνται στα διαγράμματα για να αναπαραστήσουν τις κλάσεις, τα αντικείμενα, τις συσχετίσεις μεταξύ τους, τις καταστάσεις, τα πακέτα, τις περιπτώσεις χρήσης, τους κόμβους, τα συστατικά κτλ. UML Η UML αποτυπώνει τόσο τη στατική δομή, όσο και τη δυναμική συμπεριφορά ενός συστήματος. Ένα αντικειμενοστρεφές σύστημα μοντελοποιείται ως μία συλλογή αντικειμένων που αλληλεπιδρούν για την εκτέλεση μιας λειτουργίας η οποία είναι τελικά αξιοποιήσιμη από το χρήστη του συστήματος. Η στατική δομή καθορίζει τα είδη των αντικειμένων που είναι σημαντικά για το σύστημα καθώς και τις συσχετίσεις μεταξύ τους. Η δυναμική συμπεριφορά προσδιορίζει την εξέλιξη των αντικειμένων σε σχέση με τον χρόνο και την επικοινωνία μεταξύ τους. 12

13 UML Τα αντικείμενα και οι κλάσεις μοντελοποιούνται με τη χρήση διαγραμμάτων αντικειμένων και κλάσεων (object and class diagrams). Οι κλάσεις μπορούν να συνδέονται σε ιεραρχίες, με σχέσεις γενίκευσης (generalization) και εξειδίκευσης (specialization), οι οποίες αναπαρίστανται με σχέσεις κληρονομικότητας (inheritance). Οι αλληλεπιδράσεις μεταξύ των αντικειμένων αναπαρίστανται από τα διαγράμματα επικοινωνίας και ακολουθίας (communication and sequence diagrams). Τα διαγράμματα επικοινωνίας αναπαριστούν τη φυσική σύνδεση των αντικειμένων σε ένα σύστημα. Τα διαγράμματα ακολουθίας αναπαριστούν τις αλληλεπιδράσεις μεταξύ των αντικειμένων στο χρόνο. Μοντελοποίηση με τη γλώσσα UML Περιγραφή Λειτουργίας από την πλευρά του χρήστη Στατική δομή Δυναμικά χαρακτηριστικά - Συμπεριφορά Μοντελοποίηση Απαιτήσεων Μοντελοποίηση στατικής δομής του συστήματος Μοντελοποίηση δυναμικών χαρακτηριστικών του συστήματος Μοντελοποίηση της συμπεριφοράς συγκεκριμένων αντικειμένων Μοντελοποίηση των βημάτων εκτέλεσης μιας διαδικασίας Σενάρια, Διαγράμματα περιπτώσεων χρήσης (Scenaria, Use Case Diagrams) Διαγράμματα Κλάσεων (Class Diagrams) Διαγράμματα Αντικειμένων (Object Diagrams) Διαγράμματα Συστατικών (Component Diagrams) Διαγράμματα Ανάπτυξης (Deployment Diagrams) Διαγράμματα Ακολουθίας (Sequence Diagrams) Διαγράμματα Επικοινωνίας (Collaboration Diagrams Communication Diagrams στη UML 2.0) Διαγράμματα Κατάστασης (State Machine Diagrams) Διαγράμματα Δραστηριότητας (Activity Diagrams) 13

14 Κατηγορίες διαγραμμάτων UML Διαγράμματα Λειτουγικότητας Διαγράμματα περιπτώσεων χρήσης Διαγράμματα Δομής Διαγράμματα στατικής δομής Διαγράμματα κλάσεων Διαγράμματα αντικειμένων Διαγράμματα υλοποίησης Διαγράμματα συστατικών Διαγράμματα ανάπτυξης Διαγράμματα Συμπεριφοράς Διαγράμματα αλληλεπίδρασης Διάγραμμα ακολουθίας Διάγραμμα επικοινωνίας Διαγράμματα κατάστασης Διαγράμματα δραστηριότητας Κατηγοριοποίηση Διαγραμμάτων UML

15 Τύποι διαγραμμάτων UML Γιατί τόσο διαφορετικοί τύποι διαγραμμάτων? Το σύστημα έχει στατικά στοιχεία, δυναμικά στοιχεία, στοιχεία υλοποίησης κοκ. Δεν είναι δυνατόν ένας και μόνο τύπος διαγράμματος να περιγράψει όλες αυτές τις διαφορετικές οπτικές γωνίες ενός συστήματος. Έτσι τυπικά χρησιμοποιούμε διαγράμματα κλάσεων για την περιγραφή των στατικών σχέσεων μεταξύ των κλάσεων, διαγράμματα συμπεριφοράς (κατάστασης, ακολουθίας κοκ) για την περιγραφή της δυναμικής συμπεριφοράς του συστήματος, διαγράμματα υλοποίησης (συστατικών, διάταξης) για την καταγραφή των λεπτομερειών υλοποίησης του συστήματος. Όψεις της UML Component view Logical view Use-case View Deployment view Process View 15

16 Όψεις της UML Όψη περιπτώσεων χρήσης (Use case view): Περιγράφει τη λειτουργικότητα ενός συστήματος, όπως αυτή γίνεται αντιληπτή από εξωτερικούς δράστες (actors) Λογική όψη (Logical view): Περιγράφει το σχεδιασμό της λειτουργικότητας ενός συστήματος - στατική δομή (κλάσεις, αντικείμενα και σχέσεις) και δυναμική συμπεριφορά του συστήματος (ανταλλαγή μηνυμάτων) Όψη Συστατικών (Component view): Περιγράφει τα κύρια συστατικά του συστήματος (κύρια συστατικά λογισμικού) και τις σχέσεις τους. Όψη Διαδικασιών (Process view): Περιγράφει τo σύστημα σε σχέση με τις διαδικασίες που εκτελούνται σε αυτό. Όψη Ανάπτυξης (Deployment view): Περιγράφει τη φυσική ανάπτυξη του συστήματος υπολογιστές, μηχανές (κόμβοι) που χρησιμοποιούνται και ο τρόπος σύνδεσής τους. Πότε (σε ποιες φάσεις) χρησιμοποιούμε ένα διάγραμμα? Διαφορετικές φάσεις του έργου συνήθως συνοδεύονται από διαφορετικού τύπου διαγράμματα Μερικοί τύποι διαγραμμάτων μπορούν να χρησιμοποιηθούν σε παραπάνω από μια φάση Π.χ. μπορεί να έχουμε ένα διάγραμμα που αρχικά είναι πολύ αφηρημένο (και φτιαγμένο από την εννοιολογική σκοπιά) που στη συνέχεια του προσθέσουμε λεπτομέρειες και εν τέλει από αυτό καταλήγουμε στην παραγωγή κώδικα. 16

17 Ανάλυση απαιτήσεων με UML Προσδιορισμός περιπτώσεων χρήσης περιγράφουν τους τρόπους με τους οποίους οι άνθρωποι αλληλεπιδρούν με το σύστημα Διαγράμματα περιπτώσεων χρήσης (Use case diagrams): Περιγράφονται οι απαιτήσεις των χρηστών (πελατών) από το σύστημα και αναπαρίστανται στα διαγράμματα χωρίς να περιγράφεται ο τρόπος υλοποίησης αυτής της λειτουργικότητας Διαγράμματα δραστηριοτήτων (activity diagrams): Απεικόνιση ροής εργασιών στον οργανισμό, πώς αλληλεπιδρούν οι δραστηριότητες του λογισμικού με τις ανθρώπινες δραστηριότητες Διαγράμματα καταστάσεων (state diagrams): Αν μια έννοια έχει ενδιαφέροντα κύκλο ζωής με διάφορες καταστάσεις και συμβάντα που αλλάζουν αυτές τις καταστάσεις Ανάλυση απαιτήσεων με UML Διαγράμματα κλάσεων (Class diagrams): Από εννοιολογικής άποψης κατασκευή περιεκτικού λεξικού πεδίου ανάπτυξης Περιγράφονται οι σχέσεις μεταξύ των κλάσεων που είναι απαραίτητες για την εκτέλεση των διαγραμμάτων περιπτώσεων χρήσεων (use case diagrams). Σε αυτό το στάδιο λαμβάνεται υπόψη μόνο οι κλάσεις που σχετίζονται με την περιοχή προβλήματος που μοντελοποιείται και όχι τεχνικές κλάσεις, όπως είναι κλάσεις για τα συστήματα διεπαφής του συστήματος, κλάσεις για βάσεις δεδομένων κ.α. Πολύ σημαντική η επικοινωνία με χρήστες και πελάτες! 17

18 Σχεδιασμός συστήματος με UML Διαγράμματα κλάσεων (Class diagrams) από πλευράς λογισμικού: Περιγράφονται οι τεχνικές κλάσεις, όπως είναι οι κλάσεις για τα συστήματα διεπαφής (user interfaces), κλάσεις για τη διαχείριση βάσεων δεδομένων, κλάσεις για την επικοινωνία με άλλα συστήματα κ.α. και οι σχέσεις μεταξύ τους. Ενσωμάτωση των τεχνικών κλάσεων με τις κλάσεις της περιοχής προβλήματος που προέκυψαν από το προηγούμενο στάδιο ανάλυσης του συστήματος. Τα αποτελέσματα του σχεδιασμού του συστήματος καταλήγει σε λεπτομερείς προδιαγραφές για την υλοποίηση του συστήματος Σχεδιασμός συστήματος με UML Διαγράμματα ακολουθίας για συνήθη σενάρια Διαγράμματα πακέτων για την μακροσκοπική οργάνωση του λογισμικού καλός λογικός οδικός χάρτης του συστήματος ποια είναι τα λογικά κομμάτια του συστήματος, εξαρτήσεις Διαγράμματα καταστάσεων για κλάσεις με πολύπλοκο ιστορικό ζωής Διαγράμματα ανάπτυξης για τη φυσική διάταξη του λογισμικού 18

19 Υλοποίηση συστήματος με UML Οι κλάσεις των μοντέλων του συστήματος, που προέκυψαν από το προηγούμενο στάδιο σχεδιασμού του συστήματος, μετατρέπονται σε πραγματικό κώδικα με τη χρήση μιας γλώσσας προγραμματισμού βασισμένη στα αντικείμενα Δοκιμή συστήματος με UML Διαγράμματα κλάσεων (Class diagrams): χρησιμοποιούνται για την εκτέλεση δοκιμών στις κλάσεις του συστήματος. Διαγράμματα συστατικών (Component diagrams) και Διαγράμματα επικοινωνίας (Communication diagrams): χρησιμοποιούνται για τη δοκιμή της επικοινωνίας μεταξύ συστατικών και κλάσεων. Διαγράμματα περιπτώσεων χρήσης (Use case diagrams) και Διαγράμματα δραστηριοτήτων (Activity diagrams): χρησιμοποιούνται για την αναγνώριση ότι το σύστημα συμπεριφέρεται όπως είχε αρχικά καθοριστεί σε αυτά τα διαγράμματα. 19

20 Τεκμηρίωση συστήματος Διάγραμμα πακέτων καλός λογικός οδικός χάρτης Διάγραμμα ανάπτυξης φυσική εικόνα υψηλού επιπέδου συστήματος Μέσα σε κάθε πακέτο, διάγραμμα κλάσεων με τα σημαντικά στοιχεία (πίνακας περιεχομένων με γραφικά!) Διαγράμματα αλληλεπίδρασης που υποστηρίζουν τις πιο σημαντικές αλληλεπιδράσεις με το σύστημα Αν μια κλάση έχει συμπεριφορά με πολύπλοκο κύκλο ζωής, τότε διάγραμμα καταστάσεων! ΜΟΝΟ αν η συμπεριφορά πολύπλοκη Διάγραμμα δραστηριοτήτων αν υπάρχει πολύπλοκος αλγόριθμος Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Επισκόπηση διαγραμμάτων UML 20

21 Διάγραμμα περιπτώσεων χρήσης Εμφανίζουν τις περιπτώσεις χρήσης και τις εξωτερικές οντότητες που αλληλεπιδρούν με το σύστημα λογισμικού και τις σχέσεις μεταξύ τους Περίπτωση Χρήσης (Use Case) = ένα σύνολο σεναρίων για την επίτευξη ενός σκοπού του χρήστη Σενάριο = μια ακολουθία ενεργειών που περιγράφουν την αλληλεπίδραση μεταξύ χρήστη και συστήματος (περιλαμβάνουν επιτυχή κατάληξη ή διάφορες περιπτώσεις αποτυχίας) Μέσο για τον προσδιορισμό των απαιτήσεων Αναπαριστά τους εξωτερικούς δράστες (actors) (άτομο, εφαρμογή, σύστημα) και τις σχέσεις τους με τις περιπτώσεις χρήσης (use cases) του συστήματος Προσδιορισμός «Δραστών» Δράστης είναι μια οντότητα στις περιπτώσεις χρήσης που ορίζει ένα ρόλο που παίζει ένας χρήστης κατά την αλληλεπίδρασή του με το σύστημα. Μπορεί να είναι άνθρωπος, συσκευή, κά. Π.χ. Για το ΑΤΜ, δράστες είναι: Κάτοχος ειδικής κάρτας Υπάλληλος τράπεζας Πληροφοριακό σύστημα της τράπεζας Σύμβολο δράστη: Σύστημα εξουσιοδότησης πιστωτικής κάρτας 21

22 Διάγραμμα περιπτώσεων χρήσης ΑΤΜ Κάτοχος Κάρτας Ανάληψη Τοποθέτηση Μετρητών Υπάλληλος Τράπεζας Κατάθεση Πελάτης Τράπεζας Όριο του συστήματος Διάγραμμα Κλάσεων Αναπαριστά τη στατική δομή του συστήματος σε επίπεδο κλάσεων (class structure), διεπαφών και σχέσεων μεταξύ τους. Αναπαριστά τις σχέσεις μεταξύ των κλάσεων με τη χρήση σχέσεων όπως είναι η συσχέτιση (association), η σχέση εξειδίκευσης (specialization), η σχέση γενίκευσης (generalization) και άλλες. Ένα σύστημα τυπικά έχει πολλά διαγράμματα κλάσεων. Μια κλάση μπορεί να συμμετέχει σε πολλά διαγράμματα κλάσεων. Χρήση: Αποτυπώνει τις σχέσεις μεταξύ των κλάσεων που εμφανίζονται στο μοντέλο του συστήματος. Φάσεις: ανάλυση, σχεδίαση 22

23 Αντικείμενα Εντοπίζουμε τα πράγματα που είναι σημαντικά για το σύστημα που μοντελοποιούμε Π.χ. σε ένα σπίτι τα δομικά στοιχεία είναι τοίχοι, παράθυρα, πόρτες, κλπ Μοντελοποιούνται ως κλάσεις. Κλάση είναι μια αφαίρεση για το σύνολο ομοειδών αντικειμένων Πχ ένα σπίτι έχει τέσσερεις τοίχους και πέντε παράθυρα (αντικείμενα). Αυτά είναι στιγμιότυπα των κλάσεων «τοίχος» και «παράθυρο». Διάγραμμα Κλάσεων ΚΑΤΟΧΟΣ ΥΠΟΛΟΓΙΣΤΗΣ Όνομα: Συμβολοσειρά Ηλικία : Ακέραιος χρησιμοποιεί * Όνομα: Συμβολοσειρά Μνήμη: Ακέραιος Είδη συσχετίσεων μεταξύ κλάσεων: Απλή συσχέτιση, συσχέτιση εξάρτησης, συσχέτιση εξειδίκευσης / κληρονομικότητας, συσχέτιση ομαδοποίησης 23

24 Διάγραμμα Αντικειμένων Αναπαριστά ένα σύνολο αντικειμένων και τις σχέσεις μεταξύ τους σε κάποιο σημείο του χρόνου. Τα διαγράμματα αντικειμένων είναι παρόμοια με τα διαγράμματα κλάσεων και χρησιμοποιούν την ίδια σημειογραφία (notation) με τη διαφορά ότι παρουσιάζουν αντικείμενα και όχι κλάσεις. Τα διαγράμματα αντικειμένων δεν είναι πολύ σημαντικά διαγράμματα, αλλά συχνά χρησιμοποιούνται όταν τα διαγράμματα κλάσεων είναι ιδιαίτερα πολύπλοκα, με σκοπό την αναπαράσταση των στιγμιότυπων των κλάσεων και τις σχέσεις μεταξύ τους στο πραγματικό σύστημα σε κάποια δεδομένη στιγμή. Ουσιαστικά παρέχουν ένα τρόπο ελέγχου της ορθότητας του διαγράμματος κλάσης πριν τον προγραμματισμό. Άλλες μεθοδολογίες χρησιμοποιούν το διάγραμμα αντικειμένων κατά την ανάλυση και από εκεί παράγουν το διάγραμμα κλάσεων. κλάση = καλούπι, πρότυπο αντικείμενο = στιγμιότυπο 48 24

25 Διάγραμμα Αντικειμένων Η περιγραφή του πεδίου του προβλήματος γίνεται με περιπτώσεις χρήσης. Οι περιπτώσεις χρήσης περιγράφουν αλληλεπιδράσεις δραστών με το σύστημα. Οι διάφορες εξελίξεις μιας περίπτωσης χρήσης είναι τα σενάρια. Παρακολουθώντας την εκτέλεση των σεναρίων φτιάχνουμε τα διαγράμματα αντικειμένων. Το διάγραμμα αντικειμένων δείχνει ουσιαστικά την στατική δομή του συστήματος σε επίπεδο αντικειμένων. Χρήση: Αποτυπώνει τις σχέσεις μεταξύ των αντικειμένων που εμφανίζονται στο μοντέλο του συστήματος. Χρησιμοποιείται όταν συγκεκριμένα στιγμιότυπα των κλάσεων κάνουν το μοντέλο πιο ευκολονόητο. Φάσεις: ανάλυση, σχεδίαση Διάγραμμα Καταστάσεων Εκφράζει τη συμπεριφορά ενός αντικειμένου και τον τρόπο που ανταποκρίνεται σε γεγονότα που λαμβάνει. Απεικονίζει το σύστημα σαν μια μηχανή πεπερασμένων καταστάσεων: Κατά τη λειτουργία, το σύστημα θα πρέπει να βρίσκεται σε μια από ένα πεπερασμένο πλήθος 'νόμιμων' καταστάσεων. Ανταποκρινόμενο σε εσωτερικά ή εξωτερικά συμβάντα/γεγονότα το σύστημα θα μεταβαίνει από μια κατάσταση σε μια άλλη. Αφορά ένα αντικείμενο και τις διαδοχικές καταστάσεις που αυτό μεταπίπτει κατά την εκτέλεση ενός σεναρίου μιας περίπτωσης χρήσης. Τα διαγράμματα καταστάσεων δεν σχεδιάζονται για όλες τις κλάσεις ενός συστήματος αλλά μόνο για αυτές τις κλάσεις που περνούν από διαφορετικές καταστάσεις και αυτές οι καταστάσεις επηρεάζουν τη συμπεριφορά των κλάσεων. 25

26 Βήματα για Κατασκευή Διαγράμματος Καταστάσεων 1. Επιλογή του αντικειμένου Ένα διάγραμμα καταστάσεων δεν μπορεί να περιλαμβάνει καταστάσεις πολλών αντικειμένων. Τα συμβάντα ωστόσο μπορούν να προκαλούνται από άλλα αντικείμενα. 2. Εντοπισμός των διακριτών καταστάσεων που μπορεί να μπει αυτό το αντικείμενο. 3. Εντοπισμός συμβάντων που προκαλούν μετάβαση ανάμεσα στις καταστάσεις. Συμβάντα Συνήθως η μετάβαση από μια κατάσταση σε μια άλλη σηματοδοτείται από την αποστολή ενός μηνύματος (=εκτέλεση μιας μεθόδου) από ένα αντικείμενο σε ένα άλλο αντικείμενο. Μερικές φορές η μετάβαση σε μια άλλη κατάσταση πυροδοτείται όταν ισχύσει μια συνθήκη στην κατάσταση του αντικειμένου. Τότε χρησιμοποιούμε την ετικέτα when με την συνθήκη που πυροδοτεί τη μετάβαση

27 Διάγραμμα Καταστάσεων On first floor Go up (floor) Moving up arrived Moving to 1st floor arrived Go up (floor) Moving down arrived Idle Go down (floor) Time out Διάγραμμα Δραστηριοτήτων Αναπαριστά μια σειριακή ροή των ενεργειών (ροή εργασίας) που εκτελούνται σε ένα σύστημα με έμφαση στη ροή ελέγχου. Καταγράφει μια συγκεκριμένη επιχειρησιακή διαδικασία ή τη δυναμική μιας ομάδας αντικειμένων. Προβάλει μια άποψη των ροών και περιγράφει τι συμβαίνει κατά την εξέλιξη μιας περίπτωσης χρήσης μεταξύ των κλάσεων. Κύριο στοιχείο είναι οι ενέργειες (actions). Αναπαρίστανται συνθήκες, σημεία αποφάσεων και παράλληλες εκτελέσεις ενεργειών. Χρήση: Αποτυπώνει τη ροή των δραστηριοτήτων μέσα σε μια περίπτωση χρήσης. Φάσεις: ανάλυση, σχεδίαση 27

28 Μοντελοποίηση Διεργασιών Ο πηγαίος κώδικας που γράφουμε εκτελεί διεργασίες χρησιμοποιώντας ακολουθιακή εκτέλεση, έλεγχο ροής και λογικές συνθήκες. Θέλουμε να καταλαβαίνουμε πώς ρέει ο έλεγχος ανάμεσα στις διεργασίες. Παραδοσιακά, είχαμε τα διαγράμματα ροής (flowcharts). Στη UML, η εξέλιξή τους ονομάζεται διαγράμματα δραστηριοτήτων Η αντικειμενοστρεφής προσέγγιση υποβαθμίζει τη μοντελοποίηση της συμπεριφοράς, αφού έχει σε πρώτη προτεραιότητα τα διαγράμματα κλάσεων / αντικειμένων. Σκοπός του Διαγράμματος Δραστηριοτήτων Το χρησιμοποιούμε στις περιπτώσεις χρήσης και στις λειτουργίες κλάσεων. Είδαμε ότι οι στόχοι του συστήματος περιγράφονται με τις περιπτώσεις χρήσης. Το αντίστοιχο διάγραμμα είναι πολύ γενικό και γι' αυτό χρησιμοποιήσαμε περιγραφές με κείμενο. Ένα Διάγραμμα Δραστηριοτήτων είναι πιο συγκεκριμένο. Όταν μια μέθοδος μιας κλάσης είναι περίπλοκη, ένα Διάγραμμα Δραστηριοτήτων την αποσαφηνίζει. 28

29 Ένα διάγραμμα δραστηριότητας δείχνει τη ροή από μια διεργασία σε μια άλλη. Αρχική και τελική κατάσταση Παράδειγμα ανοικοδόμησης κτίσματος Περιγράφονται και ταυτοχρονισμένες διεργασίες Δραστηριότητα Μετάβαση Δυναμικά Μοντέλα Το διάγραμμα κλάσης είναι το βασικότερο στατικό μοντέλο που περιγράφει τη δομή του συστήματος. Τα δυναμικά μοντέλα απεικονίζουν τη δυναμική συμπεριφορά του συστήματος, πχ πώς αποκρίνεται στις ενέργειες των χρηστών ή σε άλλα εξωτερικά ερεθίσματα και πώς διαμορφώνεται η εσωτερική του κατάσταση κατά τη λειτουργία του. Το δυναμικό μοντέλο αποτελείται από τα διαγράμματα αλληλεπίδρασης, τα οποία αποτελούνται από τα διαγράμματα ακολουθίας και επικοινωνίας και περιληπτικά διαγράμματα αλληλεπίδρασης. 29

30 Διαγράμματα Αλληλεπίδρασης Διάγραμμα ακολουθίας (Sequence Diagram) Αναπαριστά τη χρονική σειρά εκτέλεσης και την αλληλεπίδραση των αντικειμένων που λαμβάνουν μέρος σε μια αλληλεπίδραση. Κάθετη διάσταση (vertical dimension) (χρόνος) και Οριζόντια διάσταση (horizontal dimension) (διαφορετικά αντικείμενα). Διάγραμμα επικοινωνίας (Communication Diagram) Είναι παρόμοιο διάγραμμα με το διάγραμμα ακολουθίας με τη διαφορά ότι αναπαριστά και τις σχέσεις μεταξύ των αντικειμένων. Περιληπτικό Διάγραμμα αλληλεπίδρασης (Interaction Overview Diagram) Αναπαριστούν τη ροή των αλληλεπιδράσεων μεταξύ των αντικειμένων σε υψηλό επίπεδο ανάλυσης. Διάγραμμα Ακολουθίας Μοντελοποιεί αλληλεπιδράσεις μεταξύ αντικειμένων. Μοιάζει με το διάγραμμα δραστηριότητας σε διαδρομές. Δείχνει την αλληλεπίδραση ανάμεσα στις κλάσεις ενός συγκεκριμένου σεναρίου μιας περίπτωσης χρήσης και είναι διαρθρωμένο κατά τον άξονα του χρόνου. Το διάγραμμα ακολουθίας προκύπτει από τις περιγραφές των σεναρίων σε κείμενα. Χρήση: Αποτυπώνει τη συμπεριφορά των κλάσεων κατά την 'εκτέλεση' του σεναρίου Φάσεις: ανάλυση, σχεδίαση 60 30

31 Διάγραμμα Ακολουθίας Πρωτεύων δράστης Δευτερεύων δράστης 61 Τι απεικονίζει το Διάγραμμα Ακολουθίας Το διάγραμμα ακολουθίας (sequence diagram) είναι ένα διάγραμμα ροής που απεικονίζει τη σειρά των ενεργειών ενός σεναρίου στον άξονα του χρόνου. Εξηγεί ποιος δράστης εκκινεί μια ενέργεια και με ποιον άλλο δράστη συνεργάζεται. Δεν δείχνει εναλλακτικές πορείες, παρά μόνο την κύρια ροή προς την επιτυχημένη κατάληξη. Για μια περίπτωση χρήσης, υπάρχουν διαγράμματα ακολουθίας για κάθε σενάριο. Το διάγραμμα ακολουθίας μοντελοποιεί ένα σενάριο, συνήθως το επιτυχές ή το αναμενόμενο. Γι αυτό δεν έχει σημεία διακλάδωσης (ρόμβους, if-then-else) παρά μόνο μια ακολουθία ενεργειών. 31

32 Διάγραμμα Επικοινωνίας Είναι μια εναλλακτική αποτύπωση του διαγράμματος ακολουθίας. Αντί να διαρθρώσουμε τα μηνύματα κατά τον άξονα του χρόνου, τα τοποθετούμε πάνω σε ένα διάγραμμα αντικειμένων. Δείχνει την αλληλεπίδραση ανάμεσα στις κλάσεις για μια περίπτωση χρήσης, χωρίς να είναι διαρθρωμένο κατά τον άξονα του χρόνου. Χρήση: Αποτυπώνει τη συμπεριφορά των κλάσεων κατά την 'εκτέλεση' της περίπτωσης χρήσης. Φάσεις: ανάλυση, σχεδίαση Διάγραμμα Επικοινωνίας 32

33 Οπτική Γωνία κάθε Διαγράμματος Το διάγραμμα επικοινωνίας επικεντρώνεται σε σχέσεις στο χώρο, ενώ το διάγραμμα ακολουθίας σε σχέσεις στο χρόνο. Εργαλεία CASE μπορούν να μετακινούνται από το ένα προς το άλλο διάγραμμα. Το διάγραμμα επικοινωνίας δείχνει τις μεθόδους που θα υλοποιεί κάθε κλάση και ποια άλλη κλάση θα τις καλεί. 65 Φυσικά Διαγράμματα Διάγραμμα Συστατικών (Component Diagram) Μοιάζει με διάγραμμα κλάσεων αλλά το βασικό στοιχείο είναι το συστατικό. Aναπαριστά σε υψηλό επίπεδο τη δομή του κώδικα. Συστατικό είναι μία φυσική μονάδα υλοποίησης κώδικα. Είναι αυτόνομη οντότητα που παρέχει ένα σύνολο διεπαφών. Επίσης αναπαριστώνται οι αλληλοσυνδέσεις μεταξύ των συστατικών, συμπεριλαμβανομένου των συστατικών κώδικα, των συστατικών δυαδικού κώδικα και των εκτελέσιμων συστατικών. Διάγραμμα Ανάπτυξης (Deployment Diagram) Αναπαριστά τη φυσική αρχιτεκτονική του υλικού (hardware) και του λογισμικού σε ένα σύστημα. Αναπαριστώνται οι μηχανές και οι υπολογιστές (nodes) που χρησιμοποιούνται από το σύστημα καθώς και οι συνδέσεις τους. Κόμβοι είναι τα φυσικά αντικείμενα που στη γενική περίπτωση έχουν τουλάχιστον μνήμη και δυνατότητα επεξεργασίας. 33

34 Διάγραμμα Συστατικών Window Handler (wind.cpp) Window Handler (wind.obj) Graphic lib (graphic.dll) Main Class (main.cpp) Comm Handler (comm.hnd) Main Class (main.obj) Comm Handler (commhnd.obj) Client Program (client.exe) Δείχνει τα συστατικά μέρη του κώδικα και τη φυσική τους δομή Διάγραμμα Ανάπτυξης Client A: Compaq Pro PC Application Server: Silicon Graphics «Decnet» Database SERVER: VAX Client B: Compaq Pro PC Δείχνει τους υπολογιστές και τις συσκευές (κόμβους) καθώς και τον τύπο των συνδέσεων. Εκτελέσιμα αντικείμενα φανερώνουν ποιες μονάδες λογισμικού εκτελούνται σε κάθε κόμβο 34

35 Διαγράμματα Σύνθετης Δομής Παρόμοια με τα διαγράμματα κλάσεων αναπαριστούν μέρη και συνδέσεις. Τα μέρη αυτά δεν αναπαριστούν απαραίτητα στιγμιότυπα αλλά ρόλους μέσα στο σύστημα. Τα μέρη αναπαρίστανται όμοια με τα αντικείμενα. Αναπαριστούν σχέσεις ή συνδέσεις μεταξύ μερών (π.χ. περιπτώσεις χρήσεων) κατά την εκτέλεση ενός συστήματος. Αναπαριστούν τα εκτελέσιμα στοιχεία που χρειάζεται ένα μέρος του συστήματος. Εργαλεία (Case Tools) UML / Λειτουργίες Σχεδιασμός διαγραμμάτων που εξασφαλίζουν τη σωστή χρήση των συστατικών των μοντέλων. Αποθήκευση δεδομένων - τα εργαλεία πρέπει να υποστηρίζουν μια κοινή αποθήκη (repository) ώστε να αποθηκεύεται η κοινή πληροφορία των μοντέλων. Π.χ. η αλλαγή του ονόματος μιας κλάσης σε ένα διάγραμμα πρέπει να σημαίνει την αλλαγή του ονόματος της κλάσης σε όλα τα διαγράμματα. Πλοήγηση και υποστήριξη εισαγωγής/εξαγωγής - τα εργαλεία πρέπει να υποστηρίζουν την εύκολη πλοήγηση στα στοιχεία των διαγραμμάτων, τη μεταφορά τους από διάγραμμα σε διάγραμμα κ.α. 35

36 Εργαλεία (Case Tools) UML / Λειτουργίες Υποστήριξη πολλών χρηστών έτσι ώστε να επιτρέπεται σε πολλούς χρήστες να εργάζονται σε ένα μοντέλο χωρίς να επηρεάζεται η εργασία του άλλου χρήστη. Παραγωγή Κώδικα - ένα αναβαθμισμένο εργαλείο πρέπει να μπορεί να παράγει κώδικα (σκελετούς κώδικα), ο οποίος θα χρησιμοποιηθεί ως βάση στη φάση της υλοποίησης. Αντίστροφη ανάπτυξη (reverse engineering) - ένα αναβαθμισμένο εργαλείο πρέπει να μπορεί να διαβάζει κώδικα και να παράγει μοντέλα από αυτόν. Εργαλεία (Case Tools) UML / Λειτουργίες Συμβατότητα και ολοκλήρωση με άλλα εργαλεία - τα εργαλεία να υποστηρίζουν ολοκλήρωση με άλλα εργαλεία, όπως περιβάλλοντα ανάπτυξης όπως είναι οι συντάκτες κώδικα (editors), οι μεταγλωττιστές (compilers) κ.α. Κάλυψη των μοντέλων σε όλα τα επίπεδα αφαίρεσης και όλων των φάσεων ανάπτυξης - τα εργαλεία πρέπει να υποστηρίζουν εύκολη πλοήγηση από τα μοντέλα σε υψηλό επίπεδο αφαίρεσης στα μοντέλα σε χαμηλό επίπεδο αφαίρεσης και από τη φάση περιγραφής του συστήματος στην παραγωγή κώδικα. Διαλειτουργικότητα μοντέλων - τα μοντέλα πρέπει να μπορούν να εξαχθούν και ύστερα να εισαχθούν σε άλλα εργαλεία μοντελοποίησης και ανάλυσης 36

37 UML Modeling Tools Rational Rose ( by IBM TogetherSoft Control Center, Borland ( ArgoUML (free software) ( ) OpenSource; written in java Others ( pany.html ) Πηγές / Acknowledgements Ε. Κιουντούζης, Μεθοδολογίες Ανάλυσης και Σχεδιασμού Πληροφοριακών Συστημάτων,Εκδόσεις Α.Σταμούλη, Αθήνα 2002 Γιάννης Τζίτζικας. Ανάλυση και Σχεδίαση Πληροφοριακών Συστημάτων, Πανεπιστήμιο Κρήτης Shari Lawrence Pfleeger. Τεχνολογία Λογισμικού: Θεωρία και Πράξη, τόμος 1, Κλειδάριθμος, Αθήνα, 2003 Leszek A. Maciaszek, Requirements Analysis and System Design (2nd edition), Addison Wesley, 2005 A.Dennis, B. Haley Wixom, D. Tegarden, Systems Analysis and Design with UML Version 2.0 (2nd edition) Wiley, 2005 Booch G., Rumbaugh J., Jacobson I. Unified Modeling Language User Guide. Addison- Wesley Professional 2 Edition, ISBN Pascal Roques, UML in Practice, John Wiley, 2004 UML Fundamentals & OOAD UML 2.0, Αφροδίτη Τσαλγατίδου. Εισαγωγή στη UML, Καποδιστριακό Πανεπιστήμιο Αθηνών Ιωάννης Γαβιώτης. Πληροφοριακά Συστήματα Μοντελοποίηση με UML, Πανεπιστήμιο Αιγαίου Αντικειμενοστρεφής Ανάπτυξη Λογισμικού με τη UML, επιμέλεια Π. Φιτσιλής, Κλειδάριθμος 2006 Martin Fowler, Εισαγωγή στη UML, Κλειδάριθμος, Αθήνα,

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 10/10/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 21/11/2016. Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια.

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 21/11/2016. Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια. Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων 21/11/2016 Τεχνολογία Λογισμικού & Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Ανάλυση Συστημάτων Object Diagrams Διαγράμματα Αντικειμένων

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 3/12/2018 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Physical Diagrams Διαγράμματα Υλοποίησης Διαγράμματα UML Διάγραμμα

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 14/11/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Class Diagrams Διαγράμματα Κλάσεων Άξονες

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 26/11/2018 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr State Diagrams Διαγράμματα Καταστάσεων Διαγράμματα UML Διάγραμμα

Διαβάστε περισσότερα

Μοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές

Μοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές Μοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές Ελληνικό Ανοικτό Πανεπιστήμιο ΓΤΠ61 Πληροφορική Πολυμέσα Αγγελική Μαζαράκη Τι είναι η UML Είναι μια γραφική γλώσσα μοντελοποίησης συστημάτων.

Διαβάστε περισσότερα

Διαχείριση Πληροφοριακών Συστημάτων

Διαχείριση Πληροφοριακών Συστημάτων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Διαχείριση Πληροφοριακών Συστημάτων Ενότητα #7: UML Χρήστος Δρόσος Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ UML ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΕΠΙΧΕΙΡΗΜΑΤΙΚΩΝ ΔΙΑΔΙΚΑΣΙΩΝ (ΔΙΑΓΡΑΜΜΑΤΑ ΔΡΑΣΤΗΡΙΟΤΗΤΩΝ & ΠΕΡΙΠΤΩΣΕΩΝ ΧΡΗΣΗΣ) (7-8)

ΕΙΣΑΓΩΓΗ ΣΤΗΝ UML ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΕΠΙΧΕΙΡΗΜΑΤΙΚΩΝ ΔΙΑΔΙΚΑΣΙΩΝ (ΔΙΑΓΡΑΜΜΑΤΑ ΔΡΑΣΤΗΡΙΟΤΗΤΩΝ & ΠΕΡΙΠΤΩΣΕΩΝ ΧΡΗΣΗΣ) (7-8) ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ (ΜΕΣΟΛΟΓΓΙ) ΑΝΑΛΥΣΗ ΚΑΙ ΣΧΕΔΙΑΣΜΟΣ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ UML ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΕΠΙΧΕΙΡΗΜΑΤΙΚΩΝ ΔΙΑΔΙΚΑΣΙΩΝ (ΔΙΑΓΡΑΜΜΑΤΑ ΔΡΑΣΤΗΡΙΟΤΗΤΩΝ & ΠΕΡΙΠΤΩΣΕΩΝ

Διαβάστε περισσότερα

UML. Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις. Παραδείγματα

UML. Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις. Παραδείγματα ΕΙΣΑΓΩΓΗ ΣΤΗ UML UML Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις ιαγράµµατα Παραδείγματα Ορισμός του μοντέλου Αποτελεί µια αφηρηµένη περιγραφή ενός Φυσικού συστήµατος. Αποτελεί ένα σχέδιο για την

Διαβάστε περισσότερα

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

Διαβάστε περισσότερα

09 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών. Εαρινό εξάμηνο

09 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών. Εαρινό εξάμηνο 09 Η γλώσσα UML I Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Εαρινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Unified Modeling Language

Διαβάστε περισσότερα

Περιεχόμενο του μαθήματος

Περιεχόμενο του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Η Αντικειμενοστρεφής Τεχνολογία Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 202-203 Περιεχόμενο του μαθήματος Η έννοια

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Τεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Τεχνολογία Λογισμικού Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

Εισαγωγή στη UML. Περιεχόμενα. Γενικά χαρακτηριστικά. Στοιχεία μοντέλων. Συσχετίσεις. Διαγράμματα. Παραδείγματα. Γλώσσες Προδιαγραφής 1

Εισαγωγή στη UML. Περιεχόμενα. Γενικά χαρακτηριστικά. Στοιχεία μοντέλων. Συσχετίσεις. Διαγράμματα. Παραδείγματα. Γλώσσες Προδιαγραφής 1 Εισαγωγή στη UML Γλώσσες Προδιαγραφής 1 Περιεχόμενα Γενικά χαρακτηριστικά Στοιχεία μοντέλων Συσχετίσεις Διαγράμματα Παραδείγματα Γλώσσες Προδιαγραφής 2 Τι είναι μοντέλο? Αποτελεί µια αφηρηµένη περιγραφή

Διαβάστε περισσότερα

Τι είναι η UML. H UML (Unified Modeling Language) είναι µιά γλώσσα µοντελοποίησης γιά

Τι είναι η UML. H UML (Unified Modeling Language) είναι µιά γλώσσα µοντελοποίησης γιά Εισαγωγή στη UML 1 Τι είναι η UML H UML (Unified Modeling Language) είναι µιά γλώσσα µοντελοποίησης γιά Κατάρτιση προδιαγραφών λογισµικού και τεκµηρίωση τµηµάτων λογισµικού Αναπαράσταση µε οπτικό τρόπο

Διαβάστε περισσότερα

UML: Unified modelling language

UML: Unified modelling language UML: Διαγράμματα UML: Unified modelling language Γλώσσα μοντελοποίησης για ανάλυση και σχεδιασμό Παρέχει το συμβολισμό για ανάλυση και σχεδιασμό. Είναι γλώσσα συμβολισμού. Δεν είναι ολόκληρη μεθοδολογία.

Διαβάστε περισσότερα

Εισαγωγή στην αντικειµενοστρεφή τεχνολογία

Εισαγωγή στην αντικειµενοστρεφή τεχνολογία 1 Ελληνικό Ανοικτό Πανεπιστήµιο Εισαγωγή στην αντικειµενοστρεφή τεχνολογία ρ. Πάνος Φιτσιλής Περιεχόµενα Γιατί µοντελοποιούµε Εισαγωγή στη UML Ένα απλό παράδειγµα 2 Γιατί µοντελοποιούµε; Ησηµασία της µοντελοποίησης

Διαβάστε περισσότερα

Εισαγωγή στη γλώσσα UML

Εισαγωγή στη γλώσσα UML Κεφάλαιο 1 o Εισαγωγή στη γλώσσα UML 1.1 Προσθέτοντας μια νέα μέθοδο Στις πρώτες εποχές των υπολογιστών, οι προγραμματιστές συνήθιζαν να περιορίζονται στην ανάλυση σε βάθος των προβλημάτων που αντιμετώπιζαν.

Διαβάστε περισσότερα

08 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο. Χειμερινό εξάμηνο

08 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο. Χειμερινό εξάμηνο 08 Η γλώσσα UML I Τεχνολογία Λογισμικού Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Χειμερινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Unified Modeling Language

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 20/11/2017 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr State Diagrams Διαγράμματα Καταστάσεων 1 Διαγράμματα UML Διάγραμμα

Διαβάστε περισσότερα

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

Εισαγωγή στη UML ΑΝΑΛΥΣΗ ΣΥΣΤΗΜΑΤΩΝ 1 Εισαγωγή στη UML ΑΝΑΛΥΣΗ ΣΥΣΤΗΜΑΤΩΝ 1 Τι είναι η UML H UML (Unified Modeling Language) είναι µιά γλώσσα µοντελοποίησης γιά Κατάρτιση προδιαγραφών λογισµικού και τεκµηρίωση τµηµάτων λογισµικού Αναπαράσταση

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 5/12/2016. Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια.

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 5/12/2016. Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια. Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων 5/12/2016 Τεχνολογία Λογισμικού & Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Ανάλυση Συστημάτων State Diagrams Διαγράμματα Καταστάσεων

Διαβάστε περισσότερα

Περιεχόμενο του μαθήματος

Περιεχόμενο του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Απαιτήσεις Λογισμικού Περιπτώσεις χρήσης Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2012-2013 1 Περιεχόμενο του μαθήματος

Διαβάστε περισσότερα

Διαγράμματα UML για την τεκμηρίωση της Αρχιτεκτονικής

Διαγράμματα UML για την τεκμηρίωση της Αρχιτεκτονικής Διαγράμματα UML για την τεκμηρίωση της Αρχιτεκτονικής περιεχόμενα παρουσίασης Διαγράμματα πακέτων Διαγράμματα συστατικών Διαγράμματα παράταξης Το μοντέλο των 4+1 όψεων τεκμηρίωση αρχιτεκτονικής και UML

Διαβάστε περισσότερα

Περιεχόμενα. ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στη UML... 19

Περιεχόμενα. ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στη UML... 19 Περιεχόμενα ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στη UML... 19 1.1 Εισαγωγή... 19 1.2 Η γλώσσα UML... 20 1.2.1 Μεθοδολογίες ανάπτυξης λογισμικού... 21 1.2.2 Τύποι διαγραμμάτων της UML... 22 1.3 Διαγράμματα της UML... 24

Διαβάστε περισσότερα

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 8 ο & 9 ο Εργαστήριο -

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 8 ο & 9 ο Εργαστήριο - ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 3 ο ΕΞΑΜΗΝΟ Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 8 ο & 9 ο Εργαστήριο - ΕΠΙΜΕΛΕΙΑ ΜΑΘΗΜΑΤΟΣ: Πρέντζα Ανδριάνα ΕΠΙΜΕΛΕΙΑ ΕΡΓΑΣΤΗΡΙΟΥ:

Διαβάστε περισσότερα

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 2: Βασικές Αρχές Αντικειμενοστραφούς Σχεδίασης Συστημάτων και Εφαρμογών (2ο Μέρος)

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 2: Βασικές Αρχές Αντικειμενοστραφούς Σχεδίασης Συστημάτων και Εφαρμογών (2ο Μέρος) Πληροφοριακά Συστήματα Διοίκησης Ενότητα 2: Βασικές Αρχές Αντικειμενοστραφούς Σχεδίασης Συστημάτων και Εφαρμογών (2ο Μέρος) Γρηγόριος Μπεληγιάννης Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης

Διαβάστε περισσότερα

Εισαγωγή στη UML. Περιεχόµενα. Γενικά χαρακτηριστικά. Στοιχεία µοντέλων. Συσχετίσεις. ιαγράµµατα. Παραδείγµατα. Γλώσσες Προδιαγραφής

Εισαγωγή στη UML. Περιεχόµενα. Γενικά χαρακτηριστικά. Στοιχεία µοντέλων. Συσχετίσεις. ιαγράµµατα. Παραδείγµατα. Γλώσσες Προδιαγραφής Εισαγωγή στη UML 1 Περιεχόµενα Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις ιαγράµµατα Παραδείγµατα 2 1 Τι είναι µοντέλο? Αποτελεί µια αφηρηµένη περιγραφή ενός φυσικού συστήµατος. Αποτελεί ένα σχέδιο

Διαβάστε περισσότερα

09 Η γλώσσα UML II. Τεχνολογία Λογισμικού. Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο. Χειμερινό εξάμηνο

09 Η γλώσσα UML II. Τεχνολογία Λογισμικού. Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο. Χειμερινό εξάμηνο 09 Η γλώσσα UML II Τεχνολογία Λογισμικού Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Χειμερινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Μοντελοποίηση συμπεριφοράς

Διαβάστε περισσότερα

Κεφάλαιο 2ο. Κατανοώντας την αντικειμενοστρέφεια

Κεφάλαιο 2ο. Κατανοώντας την αντικειμενοστρέφεια Περιεχόμενα Πρόλογος... 11 Κεφάλαιο 1ο. Εισαγωγή στη γλώσσα UML 1.1 Προσθέτοντας μια νέα μέθοδο...13 1.2 Πως αναπτύχθηκε η UML...14 1.3 Κατανοώντας την UML...15 1.4 Αναγνωρίζοντας τα επί μέρους τμήματα

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 24/10/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Use Case Models & Diagrams Μοντέλα και

Διαβάστε περισσότερα

ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ ανάλυση απαιτήσεων Σε αυτό το μάθημα θα ασχοληθούμε με : Δημιουργία μοντέλων

ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ ανάλυση απαιτήσεων Σε αυτό το μάθημα θα ασχοληθούμε με : Δημιουργία μοντέλων ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ Οι Μηχανικοί Λογισμικού παράγουν μοντέλα που βοηθούν στη διατύπωση των απαιτήσεων με τη μορφή προδιαγραφών. Η εργασία της παραγωγής μοντέλων περιγράφεται ως ανάλυση απαιτήσεων. Η ανάλυση

Διαβάστε περισσότερα

Πανεπιστήµιο Πειραιά Τµήµα Εκπαιδευτικής Τεχνολογίας και Ψηφιακών Συστηµάτων. Εισαγωγή στην UML. Βασίλειος Βεσκούκης

Πανεπιστήµιο Πειραιά Τµήµα Εκπαιδευτικής Τεχνολογίας και Ψηφιακών Συστηµάτων. Εισαγωγή στην UML. Βασίλειος Βεσκούκης Πανεπιστήµιο Πειραιά Τµήµα Εκπαιδευτικής Τεχνολογίας και Ψηφιακών Συστηµάτων Εισαγωγή στην UML Βασίλειος Βεσκούκης ιδάκτωρ Ηλεκτρολόγος Μηχανικός και Μηχανικός Υπολογιστών v.vescoukis@unipi.gr v.vescoukis@cs.ntua.gr

Διαβάστε περισσότερα

Διαγράμματα UML στην Ανάλυση. Μέρος Γ Διαγράμματα Επικοινωνίας Διαγράμματα Ακολουθίας Διαγράμματα Μηχανής Καταστάσεων

Διαγράμματα UML στην Ανάλυση. Μέρος Γ Διαγράμματα Επικοινωνίας Διαγράμματα Ακολουθίας Διαγράμματα Μηχανής Καταστάσεων Διαγράμματα UML στην Ανάλυση Μέρος Γ Διαγράμματα Επικοινωνίας Διαγράμματα Ακολουθίας Διαγράμματα Μηχανής Καταστάσεων περιεχόμενα παρουσίασης Διαγράμματα επικοινωνίας Διαγράμματα ακολουθίας Διαγράμματα

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 14/11/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Μοντέλα Παράστασης

Διαβάστε περισσότερα

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Ανάλυση Περιπτώσεων Χρήσης

Ανάλυση Περιπτώσεων Χρήσης Ανάλυση Περιπτώσεων Χρήσης ανάλυση απαιτήσεων ü Διαγράμματα Δραστηριότητας. Επιχειρησιακή μοντελοποίηση και ροή εργασιών σε περιπτώσεις χρήσης ü Μοντελοποίηση Πεδίου. Δημιουργία διαγραμμάτων κλάσεων για

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Τεχνολογία Λογισμικού 8ο Εξάμηνο 2018 19 Unified Modeling Language II Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Μοντελοποίηση δομής Διαγράμματα κλάσεων Class diagrams

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΜΟΝΤΕΛΑ ΣΥΣΤΗΜΑΤΟΣ Διδάσκων: Γ. Χαραλαμπίδης, Επ. Καθηγητής

Διαβάστε περισσότερα

Rational Unified Process:

Rational Unified Process: ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ - Μεταπτυχιακό µάθηµα: ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΕΙΣ ΜΕΘΟ ΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΛΟΓΙΣΜΙΚΟΥ Καθ. Ε. Σκορδαλάκης, ρ. Β. Βεσκούκης Rational Unified

Διαβάστε περισσότερα

περιεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης

περιεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης Περιπτώσεις Χρήσης περιεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης περιπτώσεις χρήσης Τι θα κάνει το λογισμικό για κάποιον

Διαβάστε περισσότερα

Μοντελοποίηση Πεδίου

Μοντελοποίηση Πεδίου Μοντελοποίηση Πεδίου περιεχόμενα παρουσίασης Εννοιολογικές κλάσεις Συσχετίσεις εννοιολογικών κλάσεων Τύποι ιδιοτήτων Γενίκευση Συχνά σφάλματα μοντελοποίησης πεδίου Εννοιολογικές κλάσεις και κλάσεις λογισμικού

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 21/11/2016. Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια.

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 21/11/2016. Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια. Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων 21/11/2016 Τεχνολογία Λογισμικού & Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Ανάλυση Συστημάτων Activity Diagrams Διαγράμματα Δραστηριοτήτων

Διαβάστε περισσότερα

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Εργαλεία CASE Computer Assisted Systems Engineering Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2011-2012 1 Εργαλεία CASE

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 31/10/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Class Diagrams Διαγράμματα Κλάσεων Διαγράμματα

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 13/11/2017 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Activity Diagrams Διαγράμματα Δραστηριοτήτων Διαγράμματα UML

Διαβάστε περισσότερα

Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού

Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού Πρόλογος...21 μέρος A Εισαγωγή στην Τεχνολογία Λογισμικού 1 Εισαγωγή στην Τεχνολογία Λογισμικού 1.1 Το λογισμικό...25 1.1.1 Ο ρόλος και η σημασία του λογισμικού...26 1.1.2 Οικονομική σημασία του λογισμικού...28

Διαβάστε περισσότερα

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 1: Βασικές Αρχές Αντικειμενοστραφούς Σχεδίασης Συστημάτων και Εφαρμογών (1ο Μέρος)

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 1: Βασικές Αρχές Αντικειμενοστραφούς Σχεδίασης Συστημάτων και Εφαρμογών (1ο Μέρος) Πληροφοριακά Συστήματα Διοίκησης Ενότητα 1: Βασικές Αρχές Αντικειμενοστραφούς Σχεδίασης Συστημάτων και Εφαρμογών (1ο Μέρος) Γρηγόριος Μπεληγιάννης Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης

Διαβάστε περισσότερα

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Διαγράμματα Αλληλεπίδρασης. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Διαγράμματα Αλληλεπίδρασης. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Διαγράμματα Αλληλεπίδρασης Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

Ανάλυση Πληροφοριακών Συστημάτων. «Εισαγωγή στην UML» Βασίλειος Καρακόιδας 26 10 2005

Ανάλυση Πληροφοριακών Συστημάτων. «Εισαγωγή στην UML» Βασίλειος Καρακόιδας 26 10 2005 Ανάλυση Πληροφοριακών Συστημάτων «Εισαγωγή στην UML» Βασίλειος Καρακόιδας 26 10 2005 Περιεχόμενα Παρουσίασης Εισαγωγικά Προαπαιτούμενα Πρόγραμμα διαλέξεων Εργασίες Λογισμικό Εισαγωγή στην UML Βιβλιογραφία

Διαβάστε περισσότερα

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 Μ6. Φάσεις ανάπτυξης λογισμικού: προδιαγραφές, σχεδίαση, υλοποίηση, επαλήθευση, τεκμηρίωση, συντήρηση προγραμμάτων Δρ. Γεώργιος Παπαλάμπρου Επικ.

Διαβάστε περισσότερα

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 Μ6. Φάσεις ανάπτυξης λογισμικού: προδιαγραφές, σχεδίαση, υλοποίηση, επαλήθευση, τεκμηρίωση, συντήρηση προγραμμάτων Δρ. Γεώργιος Παπαλάμπρου Επικ.

Διαβάστε περισσότερα

Τεχνολογία λογισμικού στην πράξη

Τεχνολογία λογισμικού στην πράξη Τεχνολογία λογισμικού στην πράξη Μοντέλα και μέθοδοι τεχνολογίας λογισμικού Διομήδης Σπινέλλης Τμήμα Διοικητικής Επιστήμης και Τεχνολογίας Οικονομικό Πανεπιστήμιο Αθηνών dds@aueb.gr http://www.dmst.aueb.gr/dds

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 17/10/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Use Case Models & Diagrams Μοντέλα και

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 16/10/2017 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Use Case Models & Diagrams Μοντέλα και Διαγράμματα Περιπτώσεων

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 15/10/2018 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Use Case Models & Diagrams Μοντέλα και Διαγράμματα Περιπτώσεων

Διαβάστε περισσότερα

περιεχόμενα παρουσίασης

περιεχόμενα παρουσίασης Ανάλυση Απαιτήσεων περιεχόμενα παρουσίασης Δημιουργία μοντέλου Προσεγγίσεις Μοντελοποίησης Μοντελοποίηση δεδομένων Διαγράμματα ροής δεδομένων Μη διαγραμματικά μοντέλα ανάλυσης Διαγράμματα δραστηριότητας

Διαβάστε περισσότερα

Μέθοδοι μοντελοποίησης

Μέθοδοι μοντελοποίησης Μέθοδοι μοντελοποίησης Ευθύμιος Ταμπούρης tambouris@uom.gr Περιεχόμενα Ο ρόλος των μοντέλων Διαγράμματα Δραστηριοτήτων Διαγράμματα Περιπτώσεων Χρήσης Διαγράμματα Κλάσεων Διαγράμματα Ακολουθίας Διαγράμματα

Διαβάστε περισσότερα

Σχεδίαση Λογισμικού. Σημείωση

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

Διαβάστε περισσότερα

ΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Μεθοδολογίες Ανάπτυξης Συστημάτων Πληροφορικής Απαντούν στα εξής ερωτήματα Ποιά βήματα θα ακολουθηθούν? Με ποιά σειρά? Ποιά τα παραδοτέα και πότε? Επομένως,

Διαβάστε περισσότερα

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Rational Unified Process. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Rational Unified Process. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Rational Unified Process Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Διαγράμματα Συνεργασίας. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Διαγράμματα Συνεργασίας. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Διαγράμματα Συνεργασίας Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΔΙΑΔΙΚΑΣΙΕΣ ΠΑΡΑΓΩΓΗΣ ΛΟΓΙΣΜΙΚΟΥ Διδάσκων: Γ. Χαραλαμπίδης,

Διαβάστε περισσότερα

Σχεδιασµός βασισµένος σε συνιστώσες

Σχεδιασµός βασισµένος σε συνιστώσες Σχεδιασµός βασισµένος σε συνιστώσες 1 Ενδεικτικά περιεχόµενα του κεφαλαίου Ποια είναι τα "άτοµα", από τα οποία κατασκευάζονται οι υπηρεσίες; Πώς οργανώνουµε τις συνιστώσες σε ένα αρµονικό σύνολο; Τι είναι

Διαβάστε περισσότερα

Αρχιτεκτονική Λογισμικού

Αρχιτεκτονική Λογισμικού Αρχιτεκτονική Λογισμικού περιεχόμενα παρουσίασης Τι είναι η αρχιτεκτονική λογισμικού Αρχιτεκτονική και απαιτήσεις Σενάρια ποιότητας Βήματα αρχιτεκτονικής σχεδίασης Αρχιτεκτονικά πρότυπα Διαστρωματωμένη

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 18/11/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4 Διαδικασίες παραγωγής λογισμικού Στόχοι Παρουσίαση μοντέλων παραγωγής λογισμικού Περιγραφή τριών γενικών μοντέλων παραγωγής λογισμικού και πότε μπορούν να χρησιμοποιούνται Γενική περιγραφή των μοντέλων

Διαβάστε περισσότερα

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Διαδικασίες παραγωγής λογισμικού Περιεχόμενα Παρουσίαση μοντέλων διεργασίας ανάπτυξης λογισμικού Περιγραφή τριών γενικών μοντέλων διεργασίας ανάπτυξης λογισμικού Γενική περιγραφή των διαδικασιών που περιλαμβάνονται

Διαβάστε περισσότερα

Ανάλυση Πληροφοριακών Συστημάτων. «Βασικές Έννοιες Αντικειμενοστρεφούς Προγραμματισμού Διαγράμματα κλάσεων» Βασίλειος Καρακόιδας

Ανάλυση Πληροφοριακών Συστημάτων. «Βασικές Έννοιες Αντικειμενοστρεφούς Προγραμματισμού Διαγράμματα κλάσεων» Βασίλειος Καρακόιδας Ανάλυση Πληροφοριακών Συστημάτων «Βασικές Έννοιες Αντικειμενοστρεφούς Προγραμματισμού Διαγράμματα κλάσεων» Βασίλειος Καρακόιδας 7 12 2005 Περιεχόμενα Παρουσίασης Βασικές Έννοιες Αντικειμενοστραφούς προγραμματισμού

Διαβάστε περισσότερα

Ανάλυση Συστηµάτων και Τεχνολογία Λογισµικού

Ανάλυση Συστηµάτων και Τεχνολογία Λογισµικού ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΜΑΤΙΚΗΣ Ανάλυση Συστηµάτων και Τεχνολογία Λογισµικού Μάρα Νικολαϊδου Αντικείµενο & Σκοπός Παρουσίαση και ανάλυση όλων των σταδίων της διαδικασίας ανάπτυξης

Διαβάστε περισσότερα

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Διάλεξη 7: Εισαγωγή στη UML Τι είναι η UML; 2 Βασικό πρόβλημα τεχνολογίας λογισμικού Έλλειψη κοινά αποδεκτής «γλώσσας» για την έκφραση των σχεδίων λογισμικού. Το

Διαβάστε περισσότερα

Use Cases: μια σύντομη εισαγωγή. Heavily based on UML & the UP by Arlow and Neustadt, Addison Wesley, 2002

Use Cases: μια σύντομη εισαγωγή. Heavily based on UML & the UP by Arlow and Neustadt, Addison Wesley, 2002 Use Cases: μια σύντομη εισαγωγή Heavily based on UML & the UP by Arlow and Neustadt, Addison Wesley, 2002 (γενικές εισαγωγικές ιδέες) ΣΥΛΛΟΓΗ ΑΠΑΙΤΗΣΕΩΝ 2 Ανάλυση απαιτήσεων Λειτουργικές απαιτήσεις: τι

Διαβάστε περισσότερα

Διαγράμματα Κλάσεων στη Σχεδίαση

Διαγράμματα Κλάσεων στη Σχεδίαση Διαγράμματα Κλάσεων στη Σχεδίαση περιεχόμενα παρουσίασης Αφηρημένες κλάσεις Ιδιότητες Λειτουργίες Απλοί τύποι Συσχετίσεις Εξάρτηση Διεπαφές αφηρημένες κλάσεις Οι αφηρημένες κλάσεις δεν μπορούν να δημιουργήσουν

Διαβάστε περισσότερα

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 3 ο ΕΞΑΜΗΝΟ Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 6 ο Εργαστήριο - ΕΠΙΜΕΛΕΙΑ ΜΑΘΗΜΑΤΟΣ: Πρέντζα Ανδριάννα ΕΠΙΜΕΛΕΙΑ ΕΡΓΑΣΤΗΡΙΟΥ: Στουγιάννου

Διαβάστε περισσότερα

ΕΚΦΩΝΗΣΗ ΥΠΟΧΡΕΩΤΙΚΗΣ ΕΡΓΑΣΙΑΣ σε UML

ΕΚΦΩΝΗΣΗ ΥΠΟΧΡΕΩΤΙΚΗΣ ΕΡΓΑΣΙΑΣ σε UML ΕΚΦΩΝΗΣΗ ΥΠΟΧΡΕΩΤΙΚΗΣ ΕΡΓΑΣΙΑΣ σε UML για το µάθηµα ΑΝΑΛΥΣΗΣ ΣΥΣΤΗΜΑΤΩΝ Ακαδηµαϊκό Έτος 2012-2013 «Αντικειµενοστρεφής Ανάλυση Ηλεκτρονικού Καταστήµατος Προσφορών (e-shop)» Η άσκηση αφορά στη χρήση της

Διαβάστε περισσότερα

Πληροφορική 2. Τεχνολογία Λογισμικού

Πληροφορική 2. Τεχνολογία Λογισμικού Πληροφορική 2 Τεχνολογία Λογισμικού 1 2 Κρίση Λογισμικού (1968) Στην δεκαετία του 1970 παρατηρήθηκαν μαζικά: Μεγάλες καθυστερήσεις στην ολοκλήρωση κατασκευής λογισμικών Μεγαλύτερα κόστη ανάπτυξης λογισμικού

Διαβάστε περισσότερα

Ελληνικό Ανοικτό Πανεπιστήµιο Εισαγωγή στη Ενοποιηµένη Προσέγγιση Unified Process (UP) ρ. Πάνος Φιτσιλής

Ελληνικό Ανοικτό Πανεπιστήµιο Εισαγωγή στη Ενοποιηµένη Προσέγγιση Unified Process (UP) ρ. Πάνος Φιτσιλής 1 Ελληνικό Ανοικτό Πανεπιστήµιο Εισαγωγή στη Ενοποιηµένη Προσέγγιση Unified Process (UP) ρ. Πάνος Φιτσιλής 2 Περιεχόµενα Τι είναι η UP Βασικές αρχές µηχανικής λογισµικού Οι βασικές έννοιες της UP Οι τέσσερις

Διαβάστε περισσότερα

Αρχές Προγραμματισμού Υπολογιστών

Αρχές Προγραμματισμού Υπολογιστών Αρχές Προγραμματισμού Υπολογιστών Ανάπτυξη Προγράμματος Β ΕΠΑΛ Τομέας Πληροφορικής Βελώνης Γεώργιος Καθηγητής Πληροφορικής ΠΕ20 Κύκλος ανάπτυξης προγράμματος/λογισμικού Η διαδικασία ανάπτυξης λογισμικού,

Διαβάστε περισσότερα

Tεχνολογία Λογισµικού II

Tεχνολογία Λογισµικού II Tεχνολογία Λογισµικού II ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Σχολή Θετικών Επιστηµών και Τεχνολογίας Πρόγραµµα Σπουδών ΠΛHPOΦOPIKH Θεµατική Ενότητα ΣΧΕ ΙΑΣΜΟΣ ΛΟΓΙΣΜΙΚΟΥ Τόµος B' Tεχνολογία Λογισµικού II BAΣIΛEIOΣ

Διαβάστε περισσότερα

Ανάλυση Απαιτήσεων Mεθοδολογίες Ανάπτυξης

Ανάλυση Απαιτήσεων Mεθοδολογίες Ανάπτυξης ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΜΑΤΙΚΗΣ Ανάλυση Απαιτήσεων Mεθοδολογίες Ανάπτυξης Μάρα Νικολαϊδου Μοντελοποίηση Συστήµατος Περιπτώσεις χρήσης Οι περιπτώσεις χρήσης είναι µια τεχνική

Διαβάστε περισσότερα

Υποδείγματα Ανάπτυξης

Υποδείγματα Ανάπτυξης Υποδείγματα Ανάπτυξης περιεχόμενα παρουσίασης Αποσύνθεση Αφαίρεση Μοντελοποίηση Η δεδομένο λειτουργική προσέγγιση Η αντικειμενοστρεφής προσέγγιση αποσύνθεση Όταν επιχειρούμε τη λύση ενός προβλήματος, πρώτα

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 7/11/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Class Diagrams Διαγράμματα Κλάσεων Άξονες

Διαβάστε περισσότερα

Προγραμματισμός Υπολογιστών

Προγραμματισμός Υπολογιστών Προγραμματισμός Υπολογιστών Βασικές γνώσεις Κ. Βασιλάκης, ΣΤΕΦ, ΤΕΙ Κρήτης Η Πληροφορική και τα εργαλεία της Παροχή έγκαιρης και έγκυρης πληροφόρησης. Καταχώριση στοιχείων Αποθήκευση Επεξεργασία ψηφιακών

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι κ. ΠΕΤΑΛΙΔΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

Διαβάστε περισσότερα

Οι περιπτώσεις χρήσης

Οι περιπτώσεις χρήσης 1 Ελληνικό Ανοικτό Πανεπιστήµιο Οι περιπτώσεις χρήσης ρ. Πάνος Φιτσιλής 2 Περιεχόµενα Το µοντέλο των περιπτώσεων χρήσης Τα διαγράµµατα των περιπτώσεων χρήσης Λεκτική περιγραφή των περιπτώσεων χρήσης Τρόπος

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 23/10/2017 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Use Case Models & Diagrams Μοντέλα και Διαγράμματα Περιπτώσεων

Διαβάστε περισσότερα

06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός

06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός 06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Εαρινό εξάμηνο 2016 17 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Αφαίρεση Abstraction "Η εννοιολογική

Διαβάστε περισσότερα

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Διαδικασίες παραγωγής λογισμικού Περιεχόμενα Παρουσίαση μοντέλων διεργασίας ανάπτυξης λογισμικού Περιγραφή τριών γενικών μοντέλων διεργασίας ανάπτυξης λογισμικού Γενική περιγραφή των διαδικασιών που περιλαμβάνονται

Διαβάστε περισσότερα

Διερεύνηση κριτηρίων και αξιολόγηση των διαγραμμάτων Ακολουθίας και Συνεργασίας της UML

Διερεύνηση κριτηρίων και αξιολόγηση των διαγραμμάτων Ακολουθίας και Συνεργασίας της UML Πτυχιακή εργασία Διερεύνηση κριτηρίων και αξιολόγηση των διαγραμμάτων Ακολουθίας και Συνεργασίας της UML Της φοιτήτριας Επιβλέπων καθηγητής Ιγνάτιος Δεληγιάννης Θεσσαλονίκη 2010 Σελίδα 1 από 61 Ευχαριστώ

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ. Προτεινόμενα θέματα εξετάσεων Εργαστήριο. Μέρος 1 ό. ΤΕΙ Λάρισας- Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πολιτικών Έργων Υποδομής

Προγραμματισμός Η/Υ. Προτεινόμενα θέματα εξετάσεων Εργαστήριο. Μέρος 1 ό. ΤΕΙ Λάρισας- Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πολιτικών Έργων Υποδομής Προγραμματισμός Η/Υ Προτεινόμενα θέματα εξετάσεων Εργαστήριο Μέρος 1 ό ΤΕΙ Λάρισας- Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πολιτικών Έργων Υποδομής Ιανουάριος 2011 Καλογιάννης Γρηγόριος Επιστημονικός/ Εργαστηριακός

Διαβάστε περισσότερα

Διαγράμματα περιπτώσεων χρήσης

Διαγράμματα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης Use case diagrams Περιγράφουν τη συμπεριφορά ενός συστήματος από την οπτική γωνία ενός χρήστη. Το μοντέλο περιπτώσεων χρήσης περιλαμβάνει : Τις ίδιες τις περιπτώσεις χρήσης

Διαβάστε περισσότερα

Ελληνικό Ανοικτό Πανεπιστήµιο. Τα διαγράµµατα UML. ρ. Πάνος Φιτσιλής

Ελληνικό Ανοικτό Πανεπιστήµιο. Τα διαγράµµατα UML. ρ. Πάνος Φιτσιλής Ελληνικό Ανοικτό Πανεπιστήµιο Τα διαγράµµατα UML ρ. Πάνος Φιτσιλής Περιεχόµενα Σύντοµη περιγραφή των διαγραµµάτων UML Στατική δοµή υναµική δοµή ιαγράµµατα UML - 1 Περιγράφουν τη στατική δοµή του συστήµατος

Διαβάστε περισσότερα

Σχεδίαση Περιβάλλοντος εργασίας ενός Οργανισμού και Σχεδίαση Χάρτη διαδικασιών ενός Οργανισμού και

Σχεδίαση Περιβάλλοντος εργασίας ενός Οργανισμού και Σχεδίαση Χάρτη διαδικασιών ενός Οργανισμού και ΜΕΘΟΔΟΛΟΓΙΕΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ ΔΙΑΔΙΚΑΣΙΩΝ ΔΗΜΟΣΙΩΝ ΥΠΗΡΕΣΙΩΝ Σχεδίαση Περιβάλλοντος εργασίας ενός Οργανισμού και Σχεδίαση Χάρτη διαδικασιών ενός Οργανισμού και ΕΘΝΙΚΗ ΣΧΟΛΗ ΔΗΜΟΣΙΑΣ ΔΙΟΙΚΗΣΗΣ

Διαβάστε περισσότερα

Ανάλυση Πληροφοριακών Συστημάτων. «Διαγράμματα περιπτώσεων χρήσης» Βασίλειος Καρακόιδας 2 11 2005

Ανάλυση Πληροφοριακών Συστημάτων. «Διαγράμματα περιπτώσεων χρήσης» Βασίλειος Καρακόιδας 2 11 2005 Ανάλυση Πληροφοριακών Συστημάτων «Διαγράμματα περιπτώσεων χρήσης» Βασίλειος Καρακόιδας 2 11 2005 Περιεχόμενα Παρουσίασης Εργασίες Εισαγωγή στην UML Διαγράμματα περιπτώσεων χρήσης Άσκηση στην τάξη Μελέτη

Διαβάστε περισσότερα

Περιπτώσεις Χρήσης και Διαγράµµατα Περιπτώσεων Χρήσης. Use Cases and Use Case Diagrams

Περιπτώσεις Χρήσης και Διαγράµµατα Περιπτώσεων Χρήσης. Use Cases and Use Case Diagrams Περιπτώσεις Χρήσης και Διαγράµµατα Περιπτώσεων Χρήσης Use Cases and Use Case Diagrams Τι είναι οι Περιπτώσεις Χρήσης (Use Cases)! Eίναι µια τεχνική αποτύπωσης των λειτουργικών απαιτήσεων ενός συστήµατος!

Διαβάστε περισσότερα

Ελληνικό Ανοικτό Πανεπιστήµιο. Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας. ρ. Πάνος Φιτσιλής

Ελληνικό Ανοικτό Πανεπιστήµιο. Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας. ρ. Πάνος Φιτσιλής 1 Ελληνικό Ανοικτό Πανεπιστήµιο Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας ρ. Πάνος Φιτσιλής Περιεχόµενα Βασικές έννοιες αντικειµενοστεφούς τρόπου ανάπτυξης Τι είναι κλάση Τι είναι αντικείµενο 2 Βασικές

Διαβάστε περισσότερα

Ανάλυση Πληροφοριακών Συστημάτων. Εαρινό Εξάμηνο Lec06 (Εργαστήριο) 26/03/2019 Διδάσκων: Γεώργιος Χρ. Μακρής

Ανάλυση Πληροφοριακών Συστημάτων. Εαρινό Εξάμηνο Lec06 (Εργαστήριο) 26/03/2019 Διδάσκων: Γεώργιος Χρ. Μακρής Ανάλυση Πληροφοριακών Συστημάτων Εαρινό Εξάμηνο 2018-2019 Lec06 (Εργαστήριο) 26/03/2019 Διδάσκων: Γεώργιος Χρ. Μακρής Διαλέξεις παρουσιάσεις Το υλικό του μαθήματος στηρίζεται στο υλικό που χρησιμοποίησε

Διαβάστε περισσότερα

Τμήμα Μηχανικών Η/Υ Τηλεπικοινωνιών & Δικτύων,

Τμήμα Μηχανικών Η/Υ Τηλεπικοινωνιών & Δικτύων, Περιπτώσεις Χρήσης (Προδιαγραφές Απαιτήσεων) Ιδέα του Jacobson ( 92, OOSE) μηχανισμός ανακάλυψης και καταγραφής των λειτουργικών απαιτήσεων ιστορίες χρήσης του συστήματος εργαλείο ανάλυσης ακόμη και σε

Διαβάστε περισσότερα

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4 Διαδικασίες παραγωγής λογισμικού Περιεχόμενα Παρουσίαση μοντέλων διεργασίας ανάπτυξης λογισμικού Περιγραφή τριών γενικών μοντέλων διεργασίας ανάπτυξης λογισμικού Γενική περιγραφή των διαδικασιών που περιλαμβάνονται

Διαβάστε περισσότερα

Διαγράμματα UML στην Ανάλυση. Μέρος Β Διαγράμματα Κλάσεων Διαγράμματα Αντικειμένων

Διαγράμματα UML στην Ανάλυση. Μέρος Β Διαγράμματα Κλάσεων Διαγράμματα Αντικειμένων Διαγράμματα UML στην Ανάλυση Μέρος Β Διαγράμματα Κλάσεων Διαγράμματα Αντικειμένων περιεχόμενα παρουσίασης Διαγράμματα κλάσεων Διαγράμματα αντικειμένων διαγράμματα κλάσεων Χρησιμοποιούνται στην ανάλυση

Διαβάστε περισσότερα