Please use this identifier to cite or link to this item: https://olympias.lib.uoi.gr/jspui/handle/123456789/31409
Full metadata record
DC FieldValueLanguage
dc.contributor.authorShehaj, Fationen
dc.date.accessioned2021-10-11T05:53:52Z-
dc.date.available2021-10-11T05:53:52Z-
dc.identifier.urihttps://olympias.lib.uoi.gr/jspui/handle/123456789/31409-
dc.identifier.urihttp://dx.doi.org/10.26268/heal.uoi.11230-
dc.rightsAttribution-NonCommercial-NoDerivs 3.0 United States*
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/3.0/us/*
dc.subjectRelational databasesen
dc.subjectFree open-source projectsen
dc.titleA study of schema & software co-evolution for relational databases in free open-source projectsen
dc.titleΜελέτη της συν-εξέλιξη του σχήματος και του κώδικα για σχεσιακές βάσεις δεδομένων σε ανοιχτού κώδικα έργαel
heal.typemasterThesis-
heal.type.enMaster thesisen
heal.type.elΜεταπτυχιακή εργασίαel
heal.classificationRelational databases-
heal.dateAvailable2021-10-11T05:54:53Z-
heal.languageen-
heal.accessfree-
heal.recordProviderΠανεπιστήμιο Ιωαννίνων. Πολυτεχνική Σχολή. Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικήςel
heal.publicationDate2021-
heal.bibliographicCitationΒιβλιογραφία: σ. 81el
heal.abstractIn this dissertation, we attempt to study and make an analysis on the co-evolution of the database schema and source code. Studying the co-evolution is especially important as it can identify patterns on how the code development can impact the schema evolution, with the purpose to help designers and developers spend less time modifying the storage and processing system for the provided information. Also, through this study, the potential effects on software maintenance that would emerge from the dependence of the source code and the database schema can be reduced or even improve the performance of the software and potentially the development time. The key question of this thesis is: Is there a correlation on how the evolution of a software source code affects the evolution of the database schema, and if so, can we categorize them? To answer this question, we used data from the commit history of three hundred and fifty (350) projects, collected with the help of the GitHub platform. The projects were divided into six categories, these categories are: frozen, almost frozen, focused shot & frozen, moderate, focused shot & low and active. First, we made an extensive, manually (non-automated) analysis of six randomly selected projects. We tried to understand how the code and the database schema evolve simultaneously and find possible patterns. We also developed software that uses the data files from GitHub to visualize the code and database changes in real-time using bar charts to help us identify possible patterns. Finally, to draw more derailed conclusions, as we are not interested in all types of changes in a SQL file, but only those that affect the schema of the database, we used files that contained more information about the history of changes in the database, to export diagrams with the cumulative changes for each program. This tool, incorporated in the previous one, is made to the standards of the Heraclitus tool (GitHub: HeraclitusFire) and has also the ability to export these graphs into a web format to better summarize the information.en
heal.abstractΣε αυτή την διπλωματική εργασία επιχειρούμε να κάνουμε μια μελέτη και ανάλυση στην συν-εξέλιξη του σχήματος της βάσης δεδομένων και του πηγαίου κώδικα. Η μελέτη αυτής της συν-εξέλιξης είναι ιδιαίτερα σημαντική καθώς μπορεί να εντοπίσει μοτίβα στον τρόπο με τον οποίο η ανάπτυξη του κώδικα μπορεί να επηρεάσει την εξέλιξη του σχήματος, με σκοπό να βοηθήσει τους σχεδιαστές και προγραμματιστές να αφιερώνουν λιγότερο χρόνο για την τροποποίηση του τρόπου αποθήκευσης και επεξεργασίας της παρεχόμενης πληροφορίας. Επίσης, μέσω αυτής της μελέτης μπορούν να μειωθούν οι πιθανές συνέπειες στην συντήρηση του λογισμικού που θα προκύπταν λόγο της εξάρτηση του κώδικα και του σχήματος της βάσης δεδομένων ή ακόμα και να βελτιωθεί η απόδοση του λογισμικού και ενδεχομένως του χρόνου ανάπτυξης του. Το βασικό ερώτημα αυτής της διπλωματικής εργασίας είναι: Υπάρχει κάποια συσχέτιση στον τρόπο που η εξέλιξη του πηγαίου κώδικα ενός λογισμικού επηρεάζει την εξέλιξη της βάσης δεδομένων, και αν ναι, μπορούμε να τα κατηγοριοποιήσουμε; Για να απαντήσουμε την συγκεκριμένη ερώτηση, χρησιμοποιήσαμε δεδομένα από το ιστορικό των αλλαγών από τριακόσια πενήντα (350) προγράμματα (projects), που συλλέχθηκαν με την βοήθεια της πλατφόρμας του GitHub. Τα έργα (προγράμματα) χωρίστηκαν σε έξι κατηγορίες, συγκεκριμένα: frozen, almost frozen, focused shot & frozen, moderate, focused shot & low and active. Αρχικά, κάνουμε μια εκτεταμένη, μη αυτοματοποιημένη ανάλυση σε έξι τυχαία επιλεγμένα προγράμματα, προσπαθώντας να καταλάβουμε τον τρόπο που εξελίσσεται ο κώδικας και το σχήμα βάσης ταυτόχρονα και να βρούμε πιθανά μοτίβα. Επίσης, αναπτύξαμε ένα λογισμικό που χρησιμοποιεί τα αρχεία με το ιστορικό δεδομένων από το GitHub, για να οπτικοποιήσουμε σε διαγράμματα μπάρας τις αλλαγές στον κώδικα και τη βάση στον χρόνο, ώστε να μας βοηθήσει να εντοπίσουμε πιθανά μοτίβα. Στην συνέχεια, για να εξάγουμε πιο λεπτομερή συμπεράσματα, καθώς δεν μας ενδιαφέρουν όλες οι αλλαγές σε ένα SQL αρχείο, αλλά μόνο όσες επηρεάζουν το σχήμα της βάσης, χρησιμοποιήσαμε αρχεία που περιείχαν περισσότερη πληροφορία για το ιστορικό αλλαγών στην βάση δεδομένων, για να εξάγουμε διαγράμματα με τις σωρευτικές αλλαγές για κάθε πρόγραμμα. Το εργαλείο αυτό, ενσωματώθηκε στο προηγούμενο, έγινε στα πρότυπα του εργαλείου Ηράκλειτος (GitHub: HeraclitusFire) και έχει την δυνατότητα να εξάγει τα γραφήματα αυτά σε διαδικτυακή μορφή για καλύτερη σύνοψη της πληροφορίας.el
heal.advisorNameΒασιλειάδης, Παναγιώτηςel
heal.committeeMemberNameΒασιλειάδης, Παναγιώτηςel
heal.committeeMemberNameΖάρρας, Απόστολοςel
heal.committeeMemberNameΜαμουλής, Νικόλαοςel
heal.academicPublisherΠανεπιστήμιο Ιωαννίνων. Πολυτεχνική Σχολή. Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικήςel
heal.academicPublisherIDuoi-
heal.numberOfPages83 σ.-
heal.fullTextAvailabilitytrue-
Appears in Collections:Διατριβές Μεταπτυχιακής Έρευνας (Masters) - ΜΗΥΠ

Files in This Item:
File Description SizeFormat 
Μ.Ε. SHEHAJ FATION 2021.pdf5.17 MBAdobe PDFView/Open


This item is licensed under a Creative Commons License Creative Commons