Please use this identifier to cite or link to this item: http://dspace.lib.uom.gr/handle/2159/14401
Full metadata record
DC FieldValueLanguage
dc.contributor.advisorΧατζηγεωργίου, Αλέξανδροςel
dc.contributor.authorΛιάκος, Αριστείδηςel
dc.date.accessioned2011-05-24T08:12:05Z-
dc.date.available2011-05-24T08:12:05Z-
dc.date.issued2010en
dc.identifier.urihttp://dspace.lib.uom.gr/handle/2159/14401-
dc.descriptionΔιπλωματική εργασία--Πανεπιστήμιο Μακεδονίας, Θεσσαλονίκη, 2010.el
dc.description.abstractΗ συντήρηση του λογισμικού είναι μια διαδικασία εξόχως σημαντική και η αναγκαιότητα της γίνεται ιδιαίτερα αντιληπτή καθώς το λογισμικό «παλιώνει». Για την αποφυγή επιβάρυνσης της εργασίας του συντηρητή είναι επιθυμητό το λογισμικό να είναι «καλά» σχεδιασμένο πράγμα που σημαίνει πως πρέπει να συμβαδίζει με Αρχές Σχεδίασης και Πρότυπα Σχεδίασης. Ωστόσο, αν και για την πλειοψηφία των συστημάτων κυριαρχεί αρχικά η αίσθηση ότι είναι καλά σχεδιασμένα, η ποιότητα τους φθίνει με την πάροδο του χρόνου. Οι τροποποιήσεις που λαμβάνουν χώρα από έκδοση σε έκδοση έχουν ως αποτέλεσμα τη συχνή εμφάνιση τμημάτων κώδικα που αγνοούν τις αρχές και τα πρότυπα σχεδίασης. Για τα τμήματα αυτά έχει επικρατήσει στη βιβλιογραφία της Τεχνολογίας Λογισμικού ο όρος «κακές οσμές» (bad smells). Η εξάλειψη τους στη συντριπτική πλειοψηφία των περιπτώσεων επιτυγχάνεται με την εφαρμογή αναδόμησης του κώδικα. Τα τελευταία χρόνια έχουν αναπτυχθεί αρκετά ημιαυτόματα εργαλεία που εντοπίζουν κακές οσμές στον κώδικα και επιπλέον προτείνουν για κάθε περίπτωση κατάλληλη αναδόμηση. Στα μεσαία και μεγάλα συστήματα όμως, παραμένει το πρόβλημα της πληθώρας των κακών οσμών που καθιστά αδύνατη την εφαρμογή αναδόμησης για όλες αυτές. Μια λύση για το πρόβλημα είναι η ανάθεση προτεραιότητας σε κάθε αναδόμηση ώστε να παρέχονται στο συντηρητή ταξινομημένες με αποτέλεσμα η επιλογή αυτών που θα εφαρμοστούν να μην αποτελεί χρονοβόρα διαδικασία. Έτσι, ο σκοπός της εργασίας αυτής είναι η πρόταση μιας νέας μεθοδολογίας ταξινόμησης των προτεινόμενων αναδομήσεων χρησιμοποιώντας τις προηγούμενες εκδόσεις του ίδιου λογισμικού. Η μεθοδολογία υλοποιήθηκε επίσης και προγραμματιστικά ως επέκταση των δυνατοτήτων του JDeodorant που είναι εργαλείο εντοπισμού κακών οσμών και αναπτύχθηκε από το εργαστήριο Τεχνολογίας Λογισμικού του Τμήματος Εφαρμοσμένης Πληροφορικής του Πανεπιστημίου Μακεδονίας. Οι τρεις μη τετριμμένες κακές οσμές που εντοπίζει το εργαλείο και επιπρόσθετα προτείνει αναδόμηση για κάθε περίπτωση είναι οι Long Method, State Checking, Feature Envy οι οποίες αποτελούν αντικείμενο και της παρούσης εργασίας. Η μεθοδολογία για την ταξινόμηση των αναδομήσεων βασίζεται σε έναν παράγοντα που υπολογίζεται μέσω της εξέτασης του κώδικα των προηγούμενων εκδόσεων και τον εντοπισμό αλλαγών σε συγκεκριμένα τμήματα αυτού, στα οποία εμφανίζονται οι κακές οσμές. Για τον υπολογισμό του παράγοντα λαμβάνονται υπόψη η ύπαρξη και το εύρος της αλλαγής τα οποία ορίζονται διαφορετικά για κάθε κακή οσμή καθώς και η εγγύτητα της έκδοσης που η κάθε μια εντοπίζεται με την τρέχουσα έκδοση του λογισμικού. Τέλος έχει γίνει μια πρώτη προσπάθεια αξιολόγησης των αποτελεσμάτων που εξήχθησαν από πραγματικά συστήματα ανοικτού κώδικα από έναν ανεξάρτητο ειδικό.el
dc.format.extent59en
dc.format.extent607960 bytes-
dc.format.mimetypeapplication/pdf-
dc.language.isoelen
dc.publisherΠανεπιστήμιο Μακεδονίας Οικονομικών και Κοινωνικών Επιστημών.el
dc.subjectΑναδομήσειςel
dc.subjectΤαξινόμησηel
dc.subjectΙστορικά δεδομέναel
dc.subjectΑντικειμενοστραφή συστήματα λογισμικούel
dc.subjectΑρχές και πρότυπα σχεδίασηςel
dc.subjectΣυντήρηση λογισμικούel
dc.titleΤαξινόμηση προτεινόμενων αναδομήσεων σε αντικειμενοστραφή συστήματα χρησιμοποιώντας ιστορικά δεδομένα.el
dc.typeElectronic Thesis or Dissertationen
dc.typeTexten
dc.contributor.departmentΠρόγραμμα Μεταπτυχιακών Σπουδών Ειδίκευσης στην Εφαρμοσμένη Πληροφορικήel
Appears in Collections:Π.Μ.Σ. στην Εφαρμοσμένη Πληροφορική (M)

Files in This Item:
File Description SizeFormat 
LiakosAristeidisMsc2010.pdf593.71 kBAdobe PDFView/Open


Items in Psepheda are protected by copyright, with all rights reserved, unless otherwise indicated.