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

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

Τεχνολογία ΛογισμικούSlide 1 Επαναχρησιμοποίηση Λογισμικού u Κατασκευή λογισμικού από επαναχρησιμοποιήσιμα στοιχεία.

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


Παρουσίαση με θέμα: "Τεχνολογία ΛογισμικούSlide 1 Επαναχρησιμοποίηση Λογισμικού u Κατασκευή λογισμικού από επαναχρησιμοποιήσιμα στοιχεία."— Μεταγράφημα παρουσίασης:

1 Τεχνολογία ΛογισμικούSlide 1 Επαναχρησιμοποίηση Λογισμικού u Κατασκευή λογισμικού από επαναχρησιμοποιήσιμα στοιχεία.

2 Τεχνολογία ΛογισμικούSlide 2 Στόχοι u Συζήτηση των πλεονεκτημάτων και μειονεκτημάτων της επαναχρησιμοποίησης λογισμικού u Περιγραφή της ανάπτυξης με και για επαναχρησιμοποίηση u Συζήτηση χαρακτηριστικών των βασικών επαναχρησιμοποιήσιμων στοιχείων u Περιγραφή μεθόδων για ανάπτυξη εφαρμογών που μπορούν να μετακινηθούν

3 Τεχνολογία ΛογισμικούSlide 3 Θέματα u Ανάπτυξη λογισμικού με επαναχρησιμοποίηση u Ανάπτυξη λογισμικού για επαναχρησιμοποίηση u Επαναχρησιμοποίηση βασισμένη σε γεννήτρια u Μεταφερσιμότητα εφαρμογής

4 Τεχνολογία ΛογισμικούSlide 4 Τύποι Επαναχρησιμοποιήσιμων Στοιχείων u Επαναχρησιμοποίηση Συστήματος Εφαρμογής Συνολικά ένα σύστημα εφαρμογής μπορεί να χρησιμοποιηθεί σε διαφορετική μηχανή. Αυτό ονομάζεται portability μηχανής u Επαναχρησιμοποίηση υπο - συστήματος Κύρια υποσυστήματα όπως το σύστημα αναγνώρισης προτύπων μπορούν να επαναχρησιμοποιηθούν u Επαναχρησιμοποίηση τμημάτων ή αντικειμένων Το επαναχρησιμοποιήσιμο στοιχείο είναι συλλογή συναρτήσεων ή procedures u Επαναχρησιμοποίηση συνάρτησης Το επαναχρησιμοποιήσιμο στοιχείο είναι απλά ένα στοιχείο

5 Τεχνολογία ΛογισμικούSlide 5 Πρακτική Επαναχρησιμοποίησης u Επαναχρησιμοποίηση Συστήματος Εφαρμογής Ευρέως διαδεδομένο. Είναι κοινή πρακτική για εταιρείες ανάπτυξης συστημάτων (π.χ. Microsoft) να έχουν διαθέσιμα τα προϊόντα τους σε διαφορετικές πλατφόρμες u Επαναχρησιμοποίηση Υποσυστήματος και τμήματος Οι μηχανικοί λογισμικού κάνουν χρήση προηγούμενης δουλείας. Μικρή συστηματική επανάχρηση αλλά αυξανόμενη διάδοση της επαναχρησιμοποίησης u Επαναχρησιμοποίηση Συνάρτησης Συχνό σε μερικά πεδία εφαρμογών (π.χ. μηχανική) όπως έχουν αναπτυχθεί ειδικές βιβλιοθήκες.

6 Τεχνολογία ΛογισμικούSlide 6 Τέσσερα Θέματα Επαναχρησιμοποίησης u Ανάπτυξη Λογισμικού με Επαναχρησιμοποίηση Ανάπτυξη λογισμικού με δοσμένη βάση επαναχρησιμοποιήσιμων στοιχείων u Ανάπτυξη Λογισμικού για Επαναχρησιμοποίηση Πως σχεδιάζουμε βασικά στοιχεία λογισμικού για επαναχρησιμοποίηση u Επαναχρησιμοποίηση βασισμένη σε γεννήτρια Επαναχρησιμοποίηση ειδική σε πεδίο μέσω παραγωγής εφαρμογής u Επαναχρησιμοποίηση Συστήματος Εφαρμογής Πως γράφουμε συστήματα εφαρμογών τα οποία μπορούν να μεταφερθούν από την μία πλατφόρμα στην άλλη

7 Τεχνολογία ΛογισμικούSlide 7 Ανάπτυξη Λογισμικού με Επαναχρησιμοποίηση u Προσπάθειες για μεγιστοποίηση της χρήσης υπαρχόντων στοιχείων u Τα στοιχεία αυτά πρέπει να προσαρμόζονται σε μία νέα εφαρμογή u Λιγότερα στοιχεία πρέπει να προδιαγράφονται, σχεδιάζονται και προγραμματίζονται u Τα συνολικά κόστη ανάπτυξης με αυτόν τον τρόπο μειώνονται

8 Τεχνολογία ΛογισμικούSlide 8 Άλλα Πλεονεκτήματα u Η αξιοπιστία του συστήματος αυξάνεται u Το συνολικό ρίσκο μειώνεται u Μπορεί να γίνει αποτελεσματική χρήση από ειδικούς u Τα οργανωτικά πρότυπα μπορούν να ενσωματωθούν σε επαναχρησιμοποιήσιμα στοιχεία u Ο χρόνος ανάπτυξης λογισμικού ελαττώνεται

9 Τεχνολογία ΛογισμικούSlide 9 Ανάπτυξη με Επαναχρησιμοποίηση Διαδικασίας

10 Τεχνολογία ΛογισμικούSlide 10 Απαιτήσεις για Επαναχρησιμοποίηση u Πρέπει να είναι δυνατόν να βρούμε επαναχρησιμοποιήσιμα στοιχεία σε μία βάση δεδομένων στοιχείων u Τα άτομα τα οποία θα επαναχρησιμοποιήσουν στοιχεία πρέπει να μπορούν να κατανοήσουν τα στοιχεία και να πιστεύουν ότι ικανοποιούν τις ανάγκες τους u Τα στοιχεία πρέπει να έχουν τεκμηρίωση που να φαίνεται πως μπορούν να επαναχρησιμοποιηθούν και το πιθανό κόστος επαναχρησιμοποίησης

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

12 Τεχνολογία ΛογισμικούSlide 12 Ανάπτυξη Καθοδηγούμενη από Επαναχρησιμοποίηση

13 Τεχνολογία ΛογισμικούSlide 13 Προβλήματα Επαναχρησιμοποίησης u Δύσκολη η ποσοτικοποίηση κόστους και ωφελειών από την ανάπτυξη με επαναχρησιμοποίηση u Τα CASE εργαλεία δεν υποστηρίζουν ανάπτυξη με επαναχρησιμοποίηση. Δεν μπορούν να ολοκληρωθούν με συστήματα βιβλιοθήκης στοιχείων u Μερικοί μηχανικοί λογισμικού προτιμούν να ξαναγράφουν από το να επαναχρησιμοποιούν στοιχεία u Οι υπάρχουσες τεχνικές για κατηγοριοποίηση, καταλογοποίηση και ανάκτηση στοιχείων δεν είναι ώριμες. Το κόστος για την εύρεση καταλλήλων στοιχείων είναι πολύ υψηλό.

14 Τεχνολογία ΛογισμικούSlide 14 Ανάπτυξη Λογισμικού για Επαναχρησιμοποίηση 7 u Τα στοιχεία λογισμικού δεν είναι αυτόματα επαναχρησιμοποιήσιμα. Πρέπει να τροποιηθούν για να γίνουν επαναχρησιμοποιήσιμα από εφαρμογές u Η ανάπτυξη λογισμικού για επαναχρησιμοποίηση είναι μία διαδικασία ανάπτυξης που παίρνει υπάρχοντα στοιχεία και βοηθά στην γενίκευση και τεκμηρίωσή τους για να χρησιμοποιηθούν σε περιοχή εφαρμογών

15 Τεχνολογία ΛογισμικούSlide 15 Ανάπτυξη για Επαναχρησιμοποίηση u Το κόστος ανάπτυξης για επαναχρησιμοποιήσιμα στοιχεία είναι υψηλότερο από το κόστος ισοδύναμης ανάπτυξης. Αυτό το επιπλέον κόστος είναι κόστος οργάνωσης παρά κόστος έργου u Τα βασικά στοιχεία απαιτούν περισσότερο χώρο και έχουν μεγαλύτερους χρόνους εκτέλεσης από τα ειδικά ισοδύναμά τους

16 Τεχνολογία ΛογισμικούSlide 16 Επαύξηση Δυνατότητας Επαναχρησιμοποίησης u Γενίκευση Ονόματος Τα ονόματα σε ένα στοιχείο πρέπει να τροποποιηθούν ώστε να μην είναι απευθείας ανάκλαση μίας οντότητας ειδικής εφαρμογής u Γενίκευση Λειτουργίας Προστίθενται λειτουργίες για παροχή επιπλέον λειτουργικότητας και ειδικές λειτουργίες αφαιρούνται u Γενίκευση Εξαίρεσης Αφαιρούνται εξαιρέσεις ειδικές για την εφαρμογή και προστίθεται διαχείριση εξαιρέσεων για να αυξηθεί η ευρωστία του στοιχείου u Αναγνώριση Στοιχείου Το στοιχείο αναγνωρίζεται ως επαναχρησιμοποιήσιμο

17 Τεχνολογία ΛογισμικούSlide 17 Διαδικασία Επαύξησης της Δυνατότητας Επαναχρησιμοποίησης

18 Τεχνολογία ΛογισμικούSlide 18 Επαναχρησιμοποίηση Ειδική για το Πεδίο u Τα στοιχεία μπορούν ευκολότερα να επαναχρησιμοποιηθούν για το πεδίο εφαρμογής για το οποίο αρχικά είχαν αναπτυχθεί καθόσον αντικατοπτρίζουν ιδέες και σχέσεις του πεδίου u Η ανάλυση πεδίου σχετίζεται με την μελέτη του πεδίου για την εξεύρεση των βασικών χαρακτηριστικών u Με αυτή την γνώση τα στοιχεία μπορούν να γενικευτούν για επαναχρησιμοποίηση στο πεδίο αυτό

19 Τεχνολογία ΛογισμικούSlide 19 Επαναχρησιμοποίηση στο Ειδικό Πεδίο u Τα επαναχρησιμοποιήσιμα στοιχεία ενσωματώνουν έννοιες αφαίρεσης του πεδίου u Για να είναι επαναχρησιμοποιήσιμη, μία αφαίρεση θα πρέπει να είναι πλήρης u Η αφαίρεση θα πρέπει να παραμετροποιηθεί (τουλάχιστον σε κάποιο εύρος) για να επιτρέπεται εισαγωγή σε διαφορετικά συστήματα με ειδικές απαιτήσεις 9

20 Τεχνολογία ΛογισμικούSlide 20 Το Πεδίο Αφαίρεσης Δομών Δεδομένων u Καλά κατανοητό πεδίο εφαρμογής u Σημαντικό ως βάση για πολλούς τύπους συστημάτων λογισμικού u Οι απαιτήσεις για επαναχρησιμοποιήσιμες δομές δεδομένων αφαίρεσης έχουν δημοσιευθεί από διαφορετικούς συγγραφείς (π.χ. Booch) u Έχει δημιουργηθεί σχήμα ταξινόμησης για τέτοια στοιχεία

21 Τεχνολογία ΛογισμικούSlide 21 Γενίκευση ADS (Abstract Data Structures) u Σημαίνει προσθήκη λειτουργιών σε κάποιο στοιχείο για κάλυψη του πεδίου u Οι λειτουργίες που απαιτούνται περιλαμβάνουν Λειτουργίες πρόσβασης Λειτουργίες δημιουργού Λειτουργίες I/O Λειτουργίες σύγκρισης Λειτουργίες επανάληψης, εάν το στοιχείο είναι συλλογή στοιχείων

22 Τεχνολογία ΛογισμικούSlide 22 Μοντέλο Επαναχρησιμοποιήσιμων ADS

23 Τεχνολογία ΛογισμικούSlide 23 Οδηγίες Επαναχρησιμοποίησης u Υλοποίηση δομών δεδομένων ως βασικών πακέτων u Παροχή λειτουργιών για την δημιουργία και αντιστοίχιση στιγμών u Παροχή μηχανισμού για να δείξουμε αν μία λειτουργία είναι επιτυχής ή όχι u Ελαχιστοποίηση της πληροφορίας που ορίζεται στην εξειδίκευση του στοιχείου

24 Τεχνολογία ΛογισμικούSlide 24 Οδηγίες Επαναχρησιμοποίησης u Υλοποίηση λειτουργιών ως συναρτήσεων που όταν αποτυγχάνουν επιστρέφουν δείκτη λάθους ως παράμετρο εξόδου u Παρέχουν ένα τελεστή ισότητας για σύγκριση δομών u Παρέχουν έναν επαναλήπτη ο οποίος επιτρέπει σε ένα στοιχείο συλλογής να είναι επισκέψιμο αποτελεσματικά χωρίς να ενημερώνεται το στοιχείο

25 Τεχνολογία ΛογισμικούSlide 25 Παράδειγμα Επαναχρησιμοποιήσιμου Στοιχείου u Διασυνδεδεμένη λίστα στοιχείων όπου κάθε στοιχείο διατηρεί δείκτη στο επόμενο στοιχείο στην λίστα u Συνήθως υλοποιείται σε συστήματα εφαρμογών αλλά τα στοιχεία τα οποία είναι εξειδικευμένα σε εφαρμογές σπάνια είναι βασικά και αντανακλούν τις ειδικές ανάγκες της εφαρμογής u Οι λειτουργίες της διασυνδεδεμένης λίστας είναι συνήθως ανεξάρτητες από τον τύπο του στοιχείου στην λίστα

26 Τεχνολογία ΛογισμικούSlide 26 Βασικό Πακέτο Διασυνδεδεμένης λίστας u See portrait slide

27 Τεχνολογία ΛογισμικούSlide 27 Λειτουργίες Πρόσβασης -- true if the list has no elements function Is_empty (L: LIST) return BOOLEAN ; -- returns the number of elements in the list function Size_of (L: LIST ) return NATURAL ; -- true if a list element is the same as E function Contains (E: ELEMENT; L: LIST ) return BOOLEAN ; -- returns the first list element procedure Head (L: LIST; E: in out ELEMENT ; Error_level: out STATUS ) ; -- removes the first list element and returns the remaining list procedure Tail (L: LIST; Outlist: in out LIST ; Error_level: out STATUS ) ;

28 Τεχνολογία ΛογισμικούSlide 28 Λειτουργίες Δημιουργού u See portrait slides

29 Τεχνολογία ΛογισμικούSlide 29 Λειτουργίες I/O -- print onto standard output procedure Print_list (L: LIST; Error_level: out STATUS ) ; procedure Write_list (F: TEXT_IO.FILE_TYPE ; L: LIST; Error_level: out STATUS ) ; procedure Read_list (F: TEXT_IO.FILE_TYPE ; Outlist: out LIST ; Error_level: out STATUS ) ;

30 Τεχνολογία ΛογισμικούSlide 30 Λειτουργίες Επανάληψης procedure Iterator_initialise (L: LIST; Iter: in out ITERATOR; Error_status: in out STATUS) ; procedure Go_next (L: LIST; Iter: in out ITERATOR; Error_status: in out STATUS) ; procedure Eval (L: List; Iter: in out ITERATOR; Val: out ELEMENT; Error_status: in out STATUS) ; function At_end (L: LIST; Iter: ITERATOR) return BOOLEAN ;

31 Τεχνολογία ΛογισμικούSlide 31 Στοιχείο Διασυνδεδεμένης Λίστας στην C++ u See portrait slides

32 Τεχνολογία ΛογισμικούSlide 32 Επαναχρησιμοποίηση που Εξαρτάται από την Γλώσσα u Οι οδηγίες επαναχρησιμοποίησης για αφαιρέσεις πεδίου είναι ανεξάρτητες από την γλώσσα υλοποίησης u Όμως μερικές οδηγίες επαναχρησιμοποίησης είναι εξαρτώμενες από την γλώσσα Στην Ada, μην περνάτε μεγέθη διανυσμάτων ως παράμετρο σε επαναχρησιμοποιήσιμα στοιχεία τα οποία επενεργούν σε διανύσματα. Χρήση του ενσωματωμένου χαρακτηριστικού για εύρεση του μεγέθους διανύσματος ΣτήνC++, πάντα να περνάμε το μέγεθος διανύσματος ως παράμετρο σε επαναχρησιμοποιήσιμα στοιχεία που επενεργούν σε διανύσματα

33 Τεχνολογία ΛογισμικούSlide 33 Προσαρμογή Στοιχείων u Επιπλέον λειτουργικότητα μπορεί να χρειάζεται να προστεθεί σε στοιχείο. Όταν αυτό γίνει το νέο στοιχείο μπορεί να είναι διαθέσιμο για επαναχρησιμοποίηση u Μη απαιτούμενη λειτουργία πρέπει να απομακρυνθεί από ένα στοιχείο για βελτίωση της λειτουργίας και μείωση των απαιτήσεων σε χώρο u Η υλοποίηση κάποιων λειτουργιών στοιχείων πρέπει να τροποποιηθούν. Αυτό σημαίνει ότι οι αρχικές αποφάσεις γενίκευσης μπορεί να είναι λάθος

34 Τεχνολογία ΛογισμικούSlide 34 Επαναχρησιμοποίηση και Κληρονομικότητα u Τα αντικείμενα είναι επαναχρησιμοποιήσιμα διότι περιλαμβάνουν κατάσταση και σχετικές λειτουργίες. Επίσης μπορεί να είναι αυτοδύναμα χωρίς εξωτερικές εξαρτήσεις u Κληρονομικότητα σημαίνει ότι μία κλάση κληρονομεί χαρακτηριστικά και λειτουργίες από μία υπερ - κλάση. Στην ουσία αυτά επαναχρησιμοποιούνται u Πολλαπλή κληρονομικότητα επιτρέπει πολλά αντικείμενα να λειτουργούν ως κλάση βάσης ώστε χαρακτηριστικά και λειτουργίες να επαναχρησιμοποιούνται από πολλές πηγές

35 Τεχνολογία ΛογισμικούSlide 35 Πλέγμα Κλάσεων

36 Τεχνολογία ΛογισμικούSlide 36 Προβλήματα Κληρονομικότητας u Όπως αναπτύσσονται οι κλάσεις στοιχείων, το πλέγμα κληρονομικότητας γίνεται πολύπλοκο με ύπαρξη αντιγράφων στο πλέγμα. Απαιτείται οργάνωση u Για την κατανόηση ενός στοιχείου, πολλές κλάσεις στην ιεραρχία θα πρέπει να εξεταστούν και κατανοηθούν u Σε πολλές περιπτώσεις πιθανό να είναι αδύνατο να αποφευχθεί κληρονομικότητα μη απαραίτητης λειτουργικότητας

37 Τεχνολογία ΛογισμικούSlide 37 Επαναχρησιμοποίηση Βασισμένη σε Γεννήτρια u Γεννήτριες προγραμμάτων συμπεριλαμβάνουν την επαναχρησιμοποίηση προτύπων και αλγορίθμων u Είναι ενσωματωμένοι στην γεννήτρια και παραμετροποιούνται με εντολές χρήστη. Το πρόγραμμα παράγεται τότε αυτόματα u Οι μεταγλωττιστές είναι παραγωγοί προγραμμάτων όπου τα επαναχρησιμοποιήσιμα πρότυπα είναι τμήματα κώδικα που αντιστοιχούν σε εντολές γλώσσας υψηλού επιπέδου 4

38 Τεχνολογία ΛογισμικούSlide 38 Επαναχρησιμοποίηση μέσω Παραγωγής Προγράμματος 5

39 Τεχνολογία ΛογισμικούSlide 39 Τύποι Γεννητριών Προγραμμάτων u Τύποι Γεννητριών Προγραμμάτων Παραγωγοί εφαρμογών για επεξεργασία επιχειρησιακών δεδομένων Λεκτικοί αναλυτές για την επεξεργασία γλώσσας Γεννήτριες κώδικα σε εργαλεία CASE u Η επαναχρησιμοποίηση που βασίζεται σε γεννήτριες είναι πολύ αποτελεσματική ως προς το κόστος αλλά η εφαρμογή της είναι περιορισμένη σε μικρό αριθμό πεδίων εφαρμογής

40 Τεχνολογία ΛογισμικούSlide 40 Μεταφερσιμότητα Συστήματος Εφαρμογής u Η μεταφερσιμότητα είναι ειδική περίπτωση επαναχρησιμοποίησης όπου ολόκληρη η εφαρμογή επαναχρησιμοποιείται σε διαφορετική πλατφόρμα u Η μεταφερσιμότητα ενός προγράμματος είναι το μέτρο του όγκου εργασίας που απαιτείται για να δουλέψει το έργο στο νέο περιβάλλον

41 Τεχνολογία ΛογισμικούSlide 41 Θέματα Μεταφερσιμότητας Συστήματος u Μεταφορά Η φυσική μετακίνηση του κώδικα και των σχετικών δεδομένων από το ένα περιβάλλον στο άλλο Αυτό επιτρέπεται να γίνει με ανταλλαγή δεδομένων μέσω δικτύου που κάνει τα πράγματα πολύ ευκολότερα u Προσαρμογή Οι αλλαγές που απαιτούνται για να κάνουν το πρόγραμμα να δουλεύει σε διαφορετικό περιβάλλον

42 Τεχνολογία ΛογισμικούSlide 42 Διεπαφές Προγράμματος Εφαρμογής

43 Τεχνολογία ΛογισμικούSlide 43 Εξαρτήσεις Μεταφερσιμότητας u Εξαρτήσεις από την αρχιτεκτονική μηχανής Εξαρτήσεις από την αναπαράσταση πληροφορίας και την οργάνωσή της u Εξαρτήσεις λειτουργικού συστήματος Εξαρτήσεις από χαρακτηριστικά λειτουργικού συστήματος u Run-time προβλήματα συστήματος Εξαρτήσεις από ένα ειδικό run-time σύστημα υποστήριξης u Προβλήματα βιβλιοθήκης Εξαρτήσεις από ένα ειδικό σύνολο βιβλιοθηκών

44 Τεχνολογία ΛογισμικούSlide 44 Ανάπτυξη για Μεταφερσιμότητα u Απομόνωση τμημάτων του συστήματος που είναι εξαρτώμενα από εξωτερικές δειεπαφές του συστήματος. Οι διεπαφές υλοποιούνται ως αντικείμενα ή σύνολα αφαιρετικών δομών δεδομένων u Ορισμός διεπαφής μεταφερσιμότητας για απόκρυψη αρχιτεκτονικής μηχανής και χαρακτηριστικών λειτουργικού συστήματος u Για μεταφερσιμότητα προγράμματος μόνο ο κώδικας της διεπαφής μεταφοράς απαιτείται να ξαναγραφεί

45 Τεχνολογία ΛογισμικούSlide 45 Διεπαφή για Μεταφερσιμότητα

46 Τεχνολογία ΛογισμικούSlide 46 Εξαρτήσεις από την Αρχιτεκτονική Μηχανής u Το πρόγραμμα βασίζεται στο σχήμα αναπαράστασης δεδομένων που υποστηρίζεται από μία ειδική αρχιτεκτονική μηχανής u Συνήθη προβλήματα είναι: Η ακρίβεια πραγματικών αριθμών Η αρίθμηση των Bits στην αναπαράσταση των αριθμών u Μπορεί να αντιμετωπισθεί με την χρήση αφαιρετικών τύπων δεδομένων. Υποστηρίζονται διαφορετικές αναπαραστάσεις

47 Τεχνολογία ΛογισμικούSlide 47 Μεταφέρσιμο Στοιχείο Μετρητή u Replace with portrait slide

48 Τεχνολογία ΛογισμικούSlide 48 Εξαρτήσεις από το Λειτουργικό Σύστημα u Το πρόγραμμα βασίζεται στην χρήση εικι9κών κλήσεων στο λειτουργικό σύστημα όπως εργαλεία για την υποστήριξη διαχείρισης διαδικασίας u Το πρόγραμμα εξαρτάται από το ειδικό σύστημα οργάνωσης αρχείων που υποστηρίζεται από το λειτουργικό σύστημα

49 Τεχνολογία ΛογισμικούSlide 49 Διαχείριση Μεταφερσιμότητας Διαδικασίας u Replace with portrait slide

50 Τεχνολογία ΛογισμικούSlide 50 Υλοποίηση Διεπαφής Μεταφερσιμότητας

51 Τεχνολογία ΛογισμικούSlide 51 u Τα πρότυπα είναι μορφές συμφωνίας που ελαχιστοποιούν το ποσό της μεταβλητότητας στα συστήματα λογισμικού u Με βάση την ανάπτυξη προτύπων από το 1980 η μεταφερσιμότητα υλοποιείται πολύ ευκολότερα τώρα u Κατά κανόνα, όσο τα πρότυπα αναπτύσσονται τα ετερογενή συστήματα αναπτύσσονται όπου μέρη ενός προγράμματος τρέχουν σε διαφορετικές μηχανές Πρότυπα

52 Τεχνολογία ΛογισμικούSlide 52 u Πρότυπα γλωσσών προγραμματισμού Ada, Pascal, C, C++, FORTRAN. u Πρότυπα λειτουργικών συστημάτων UNIX, MS-DOS (de-facto standard), MS Windows u Πρότυπα δικτύων TCP/IP protocols, X400, X500, Sun NFS, OSI layered model. HTML, WWW u Πρότυπα συστήματος Window X-windows. Motif toolkit Υπάρχοντα Πρότυπα

53 Τεχνολογία ΛογισμικούSlide 53 u Η επαναχρησιμοποίηση λογισμικού σημαίνει χρήση στοιχείων που έχουν αναπτυχθεί σε μία εφαρμογή σε μία διαφορετική εφαρμογή u Η συστηματική επαναχρησιμοποίηση ελαχιστοποιεί ρίσκο διαχείρισης και βελτιώνει την αξιοπιστία λογισμικού u Η ανάπτυξη με επαναχρησιμοποίηση βασίζεται σε βιβλιοθήκη από επαναχρησιμοποιήσιμα στοιχεία u Τα στοιχεία πρέπει να γενικευτούν για επαναχρησιμοποίηση Σημαντικά Σημεία

54 Τεχνολογία ΛογισμικούSlide 54 Σημαντικά Σημεία u Οι τύποι δεδομένων αφαίρεσης και τα αντικείμενα είναι ενθυλακώσεις επαναχρησιμοποιήσιμων στοιχείων u Η επαναχρησιμοποίηση που βασίζεται στην γεννήτρια εξαρτάται από την χρήση προτύπων πεδίου u Η μεταφερσιμότητα εφαρμογής είναι μορφή επαναχρησιμοποίησης όπου όλη η εφαρμογή επαναχρησιμοποιείται σε διαφορετική πλατφόρμα u Η μεταφερσιμότητα επιτυγχάνεται με ανάπτυξη σύμφωνα με πρότυπα και απομόνωση εξαρτήσεις πλατφόρμας


Κατέβασμα ppt "Τεχνολογία ΛογισμικούSlide 1 Επαναχρησιμοποίηση Λογισμικού u Κατασκευή λογισμικού από επαναχρησιμοποιήσιμα στοιχεία."

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


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