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

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

ΔΙΑΓΡΑΜΜΑΤΑ ΥΛΟΠΟΙΗΣΗΣ Διαγράμματα Συστατικών Λογισμικού (Component Diagrams) Διαγράμματα Ανάπτυξης (Deployment Diagrams)

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


Παρουσίαση με θέμα: "ΔΙΑΓΡΑΜΜΑΤΑ ΥΛΟΠΟΙΗΣΗΣ Διαγράμματα Συστατικών Λογισμικού (Component Diagrams) Διαγράμματα Ανάπτυξης (Deployment Diagrams)"— Μεταγράφημα παρουσίασης:

1 ΔΙΑΓΡΑΜΜΑΤΑ ΥΛΟΠΟΙΗΣΗΣ Διαγράμματα Συστατικών Λογισμικού (Component Diagrams) Διαγράμματα Ανάπτυξης (Deployment Diagrams)

2 ΦΥΣΙΚΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΠΡΟΥΠΟΘΕΣΕΙΣ ΠΟΥ ΕΞΑΣΦΑΛΙΖΟΥΝ ΤΗ ΣΩΣΤΗ ΠΕΡΙΓΡΑΦΗ ΤΗΣ •Μια σωστή περιγραφή των τμημάτων που συγκροτούν το σύστημα, στα πλαίσια τόσο της λογικής όσο και της φυσικής αρχιτεκτονικής. •Ένας χάρτης του συστήματος με τον οποίο ο αναλυτής να μπορεί εύκολα να προσδιορίσει που βρίσκεται (ή που υλοποιείται) μια συγκεκριμένη λειτουργία του συστήματος. •Να υπάρχει η δυνατότητα αλλαγών και επεκτάσεων σε μια συγκεκριμένη θέση του συστήματος, χωρίς να επηρεάζεται αρνητικά το υπόλοιπο σύστημα. •Απλά και καλά ορισμένα interface,έτσι ώστε αυτός που αναπτύσσει ένα συγκεκριμένο κομμάτι να μπορεί να το κάνει χωρίς να έχει κατανοήσει πλήρως όλες τις λεπτομέρειες του συστήματος.. •Υποστήριξη ανάπτυξης τμημάτων με τέτοιο τρόπο ώστε να μπορούν να ξαναχρησιμοποιηθούν κι από άλλα συστήματα.

3 ΛΟΓΙΚΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ •Μελετά κυρίως την λειτουργικότητα του συστήματος και πώς αυτή αναπτύσσεται. •Περιέχει την λογική της εφαρμογής κι όχι την φυσική διανομή αυτής της λογικής σε διαφορετικές διεργασίες, προγράμματα ή υπολογιστές. •Τα διαγράμματα της UML που χρησιμοποιούνται για τον προσδιορισμό της λογικής αρχιτεκτονικής είναι τα use- case, κλάσης, κατάστασης, δραστηριοτήτων, συνεργασίας κι ακολουθιακά.

4 ΦΥΣΙΚΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ •Ασχολείται με τη λεπτομερή περιγραφή του συστήματος από άποψη υλικού καί λογισμικού. Περιγράφει: –Τη δομή του υλικού (hardware), περιλαμβάνοντας διάφορους κόμβους και πώς αυτοί συνδέονται μεταξύ τους. –Τη φυσική δομή καί τις εξαρτήσεις του κώδικα που υλοποιεί τις έννοιες που ορίστηκαν στη λογική αρχιτεκτονική. –Την κατανομή του run-time λογισμικού σε διεργασίες, προγράμματα κι άλλα προϊόντα λογισμικού.

5 ΦΥΣΙΚΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ •Η φυσική αρχιτεκτονική περιγράφει τα συστατικά του υλικού καί του λογισμικού •Υπάρχει αντιστοίχιση από τη λογική αρχιτεκτονική στη φυσική αρχιτεκτονική, όπου οι κλάσεις κλπ. αντιστοιχούνται σε συστατικά, processes καί υπολογιστές •Έτσι μπορούμε από ένα κομμάτι της λογικής αρχιτεκτονικής να πάμε στο αντίστοιχο κομμάτι της φυσικής αρχιτεκτονικής καί αντίστροφα

6 ΦΥΣΙΚΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ •Απαντά σε ερωτήματα όπως: –σε ποιά προγράμματα ή processes βρίσκονται οι κλάσεις καί τα αντικείμενα; –σε ποιούς υπολογιστές εκτελούνται τα προγράμματα καί οι processes; –ποιοί υπολογιστές καί τί άλλα περιφερειακά βρίσκονται στο σύστημα καί πως συνδέονται μεταξύ τους; –ποιες είναι οι εξαρτήσεις ανάμεσα σε διαφορετικά αρχεία κώδικα. Επίσης, αν αλλάξει ένα αρχείο, ποια άλλα αρχεία πρέπει να επαναμεταγλωττιστούν ( recompiled).

7 ΦΥΣΙΚΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ •Μοντελοποιείται με τα UML διαγράμματα υλοποίησης που είναι τα component και τα deployment διαγράμματα. –Τα διαγράμματα συστατικών λογισμικού περιλαμβάνουν τα συστατικά του λογισμικού: τα τμήματα του κώδικα καί τη δομή των αρχείων κώδικα (source code & binary). – Τα διαγράμματα ανάπτυξης δείχνουν την run-time αρχιτεκτονική του συστήματος, που περιλαμβάνει καί τα φυσικά περιφερειακά καί το λογισμικό που συνδέεται με αυτά.

8 ΥΛΙΚΟ (HARDWARE) Οι έννοιες του υλικού που χρησιμοποιούνται στη φυσική αρχιτεκτονική είναι οι εξής: •Επεξεργαστές : Σε αυτήν την κατηγορία περιλαμβάνονται οι υπολογιστές που εκτελούν το πρόγραμμα (μικροεπεξεργαστές ή ακόμα και υπερυπολογιστές). •Περιφερειακές Συσκευές :Υποστηρίζουν το σύστημα, π.χ. εκτυπωτές, δρομολογητές και οι αναγνώστες καρτών. Αυτές συνδέονται σε έναν επεξεργαστή που τις ελέγχει. •Συνδέσεις : Οι επεξεργαστές συνδέονται με άλλους επεξεργαστές και με περιφερειακές συσκευές. Μια σύνδεση ανάμεσα σε δύο κόμβους περιγράφεται τόσο από το φυσικό μέσο (π.χ. οπτική ίνα), όσο κι από το πρωτόκολλο λογισμικού (π.χ. TCP/IP)

9 Στοιχεία περιγραφής του λογισμικού •Συστατικά Λογισμικού (components) : Eίναι επαναχρησιμοποιήσιμα τμήματα που αποτελούν το φυσικό πακετάρισμα μιας συλλογής στοιχείων μοντέλου. Δηλαδή είναι μια φυσική υλοποίηση που υλοποιεί τα στοιχεία του λογικού μοντέλου που ορίζονται σε διαγράμματα κλάσεων ή αλληλεπίδρασης. Μπορούν να έχουν διαφορετικές όψεις, ανάλογα με τα στάδια της ανάπτυξης: compile time, link time and run time components. •Διεργασίες (processes) καί νήματα διεργασιών (threads) : Η διεργασία εκπροσωπεί μια υψηλής βαρύτητας ροή ελέγχου, ενώ ένα νήμα διεργασίας εκπροσωπεί χαμηλότερης βαρύτητας ροή ελέγχου. Καί οι δύο περιγράφονται σαν μια στερεότυπη ενεργή κλάση (ενεργό αντικείμενο) καί ανατίθενται σε κάποιο εκτελέσιμο συστατικό. •Παθητικά αντικείμενα: είναι αυτά που δεν μπορούν να εκτελεστούν από μόνα τους. Τρέχουν μόνο όταν κάποιος στέλνει ένα μήνυμα σ’αυτά. (κλήση κάποιων συναρτήσεων). Ανατίθεται σε κάποια διεργασία ή σε κάποιο νήμα διεργασίας (δηλ. σε κάποιο ενεργό αντικείμενο) ή απ’ ευθείας σ’ ένα εκτελέσιμο συστατικό.

10 ΔΙΑΓΡΑΜΜΑ ΣΥΣΤΑΤΙΚΩΝ ΛΟΓΙΣΜΙΚΟΥ COMPONENT DIAGRAMS

11 COMPONENT DIAGRAM •Περιγράφει τη δομή του κώδικα, δηλ. τα συστατικά του λογισμικού καί τις εξαρτήσεις μεταξύ τους. •Τα συστατικά είναι η φυσική υλοποίηση των εννοιών καί της λειτουργικότητας στη λογική αρχιτεκτονική (κλάσεις, αντικείμενα, συσχετίσεις μεταξύ τους καί συνεργασίες). •Βασικά, τα συστατικά λογισμικού είναι τα αρχεία υλοποίησης στο περιβάλλον υλοποίησης

12 COMPONENT DIAGRAM : Είδη των συστατικών λογισμικού •Πηγαίο αρχείο (source component) : Είναι ο πηγαίος κώδικας που υλοποιεί μία ή περισσότερες κλάσεις. Έχει σημασία μόνο κατά την διάρκεια της μεταγλώττισης. •Δυαδικό αρχείο (binary component) : Είναι ο αντικείμενος κώδικας δηλ. το αποτέλεσμα της μεταγλώττισης του πηγαίου αρχείου. Μπορεί να είναι ένα object code file, library file or dynamic library file. Έχει αξία τόσο κατά την διάρκεια της σύνδεσης όσο και κατά την εκτέλεση (στις δυναμικές βιβλιοθήκες, όπου η δυναμική βιβλιοθήκη φορτώνεται από το εκτελέσιμο συσταστικό σε run time). •Εκτελέσιμο (executable component) : είναι το αποτέλεσμα σύνδεσης όλων των δυαδικών αρχείων. Αντιπροσωπεύει την εκτελέσιμη μονάδα η οποία τρέχει σε έναν επεξεργαστή.

13 ΔΙΑΓΡΑΜΜΑ ΣΥΣΤΑΤΙΚΩΝ (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)

14 Updatethread.java Display.java Runnable To βέλος με την διακεκομμένη γραμμή φανερώνει μια σχέση εξάρτησης.Όταν τα δύο συστατικά είναι πηγαία αρχεία, τότε η σχέση εξάρτησης μπορεί να σημαίνει ότι η αλλαγή σε οποιοδήποτε από τα δύο,μπορεί να καθιστά απαραίτητη την μεταγλώττιση του άλλου.Η γραμμή με τον κύκλο παριστάνει ένα interface το οποίο στο σχήμα μας είναι ορατό κι από το άλλο component. Οταν η εξάρτηση είναι μεταξύ εκτελέσιμων συστατικών, η εξάρτηση σημαίνει ποιές δυναμικές βιβλιοθήκες χρειάζεται ένα πρόγραμμα γιά να εκτελεστεί. ΕΞΑΡΤΗΣΗ ΣΥΣΤΑΤΙΚΩΝ

15 « page » home.html «file» animlogo.java «file» animator.java «document» animlogo.doc «document» animator.doc Μερικά στερεότυπα που χρησιμοποιούνται για components χρόνου μεταγλώττισης (compile-time components) είναι : «file» : είναι ένα αρχείο που περιέχει τον πηγαίο κώδικα «page» : είναι μια ιστοσελίδα (Webpage) «document» : αντιπροσωπεύει το έγγραφο COMPONENTS ΧΡΟΝΟΥ ΜΕΤΑΓΛΩΤΤΙΣΗΣ

16 ΣΥΣΤΑΤΙΚΑ ΧΡΟΝΟΥ ΕΚΤΕΛΕΣΗΣ (RUN-TIME COMPONENTS) «library» commhandler.dll «library» graphics.dll «library» dbhandler.dll «application» umlviewer.exe Ένα συστατικό χρόνου εκτέλεσης προσδιορίζεται από τα συστατικά σύνδεσης χρόνου (link-time components) ή από τα συστατικά χρόνου μεταγλώττισης. Το στερεότυπο «application» αντιστοιχεί σε ένα εκτελέσιμο πρόγραμμα ενώ το στερεότυπο «table» εκφράζει μια βάση δεδομένων που φαίνεται επίσης σαν συστατικό στοιχείο κατά τον χρόνο εκτέλεσης.

17 Διαγράμματα ανάπτυξης (Deployment diagrams) •Σε αυτά περιγράφεται η φυσική αρχιτεκτονική του συστήματος δηλαδή η δομή των μονάδων του hardware, και του software που εκτελείται σε κάθε μονάδα. •Υπάρχει άμεση δυνατότητα να δει κάποιος ποια στοιχεία εκτελούνται σε κάθε κόμβο και ποια λογικά στοιχεία (αντικείμενα, κλάσεις και συνεργασίες) υλοποιούνται.

18 Bill’s Machine: Dell Pentium 466 MMX Dell Pentium 466 MMX Τύπος κόμβου : περιγράφει τα χαρακτηριστικά του επεξεργαστή ή του τύπου της συσκευής. Στιγμιότυπο κόμβου : περιγράφει ένα συγκεκριμένο μηχάνημα αυτού του τύπου.Παίζει το ρόλο του αντικειμένου και είναι πάντα υπογραμμισμένο. ΚΟΜΒΟΙ ( NODES) - περιλαμβάνουν υπολογιστές με επεξεργαστές καθώς κι άλλες συσκευές όπως εκτυπωτές, αναγνώστες καρτών, συσκευές επικοινωνίας.

19 Client A: Compaq Pro PC ApplicationServer: Silicon Graphics «TCP/IP» «TCP IP /» DatabaseSERVER:VAX «Decnet» Client B: Compaq Pro PC ΣΥΝΔΕΣΕΙΣ ΑΝΑΜΕΣΑ ΣΤΟΥΣ ΚΟΜΒΟΥΣ Οι κόμβοι ανταλλάσσουν μεταξύ τους αντικείμενα ή στέλνουν μηνύματα μέσω των μονοπατιών επικοινωνίας.Ο τύπος επικοινωνίας μπορεί και να αντιστοιχεί σ’ένα στερεότυπο που ταυτοποιεί το πρωτόκολλο επικοινωνίας ή το χρησιμοποιούμενο δίκτυο.

20 Billoon Graphics O2 UNIX Transaction Server Program «supports» «library» Transaction Client Library Client Program Bill’s Machine : Dell pentium MMX PC Ένα βέλος εξάρτησης με το στερεότυπο «supports» (υποστηρίζει) δηλώνει ότι ο συγκεκριμένος κόμβος υποστηρίζει τεχνικά το συστατικό λογισμικού. Το διπλανό σχήμα είναι ένα στιγμιότυπο component κατά την ώρα εκτέλεσης που εκτελείται σ’ένα στιγμιότυπο κόμβου.

21 ΑΝΤΙΚΕΙΜΕΝΑ ΜΕΣΑ ΣΕ ΚΟΜΒΟΥΣ MicrowaveOvenSystem :Microwave Oven Controller Guard.exe Thermometer Controller «process» supervisor Ένα παθητικό αντικείμενο (της κλάσης Thermometer Controler) εντός ενός ενεργού αντικειμένου διεργασίας (process) το οποίο ζει σ’ένα στιγμιότυπο συστατικού (του τύπου guard.exe), το οποίο με τη σειρά του βρίσκεται στον κόμβο MicrowaveOvenSystem.

22 Trans.obj Bill’s Machine Dell Pentium MMX PC Client Program MainServer :QuadPentium PC Transaction Server Program T1:updatethread t transobj dbobjcallobj «becomes» Tα αντικείμενα δεσμεύονται στους κόμβους.Το transobj αντικείμενο,το οποίο υπάρχει στον κόμβο Main Server, μπορεί να διανεμηθεί και στον κόμβο Dell PC (αυτό φαίνεται από το στερεότυπο «becomes»

23 NetDrv AppClient Windows95 ClientPC AdminPC AdminPgm 1 backupMedium 1 BackupStation 1..* Connected To 1..2 Server ΣΥΣΧΕΤΙΣΕΙΣ ΑΝΑΜΕΣΑ ΣΕ ΔΙΑΦΟΡΕΤΙΚΟΥΣ ΚΟΜΒΟΥΣ


Κατέβασμα ppt "ΔΙΑΓΡΑΜΜΑΤΑ ΥΛΟΠΟΙΗΣΗΣ Διαγράμματα Συστατικών Λογισμικού (Component Diagrams) Διαγράμματα Ανάπτυξης (Deployment Diagrams)"

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


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