Πρωτότυπος Τίτλος:
Χρήση μεθοδολογιών και εργαλείων devops στην ανάπτυξη και την παραγωγική λειτουργία web εφαρμογών
Συγγραφέας:
Μπέλλιας, Παναγιώτης, Δημήτριος
Επιβλέπων καθηγητής:
Τσαδήμας, Ανάργυρος
Περίληψη:
Ο σκοπός της παρούσας πτυχιακής εργασίας είναι η ανάπτυξη, υλοποίηση
και παραμετροποίηση ενός διαδικτυακού συστήματος διαχείρισης αιτήσεων
συστατικών επιστολών που θα διευκολύνει φοιτητές, καθηγητές αλλά και
εξωτερικούς φορείς όπως πανεπιστήμια ή εταιρείες (που χρειάζονται συστατική
επιστολή προκειμένου να δεχτούν ή να προσλάβουν ένα φοιτητή ή απόφοιτο) να
αυτοματοποιήσουν διάφορες διαδικασίες. Θα εξοικειωθούμε με συναφείς
τεχνολογίες πληροφορικής σχετικά με την σχεδίαση, ανάπτυξη, αυτοματοποίηση,
εγκατάσταση και συντήρηση λογισμικού διαθέσιμου στο web.
Το αντικείμενο της εργασίας είναι η εγκατάσταση και παραμετροποίηση του
συστήματος προκειμένου να είναι διαθέσιμο στο διαδίκτυο αλλά και να μπορεί να
βελτιώνεται εύκολα με αυτοματοποιημένο τρόπο. Οι διαδικασίες για την επίτευξη
των παραπάνω ονομάζονται συχνά development operations (DevOps).
Η μεθοδολογία που ακολουθήθηκε είναι η παρακάτω. Ξεκινάμε με τη
σχεδίαση του λογισμικού και τις απαιτήσεις των δυνητικών χρηστών. Συνεχίζουμε
με την επιλογή των κατάλληλων προγραμματιστικών γλωσσών και των αντίστοιχων
frameworks (έτοιμες προγραμματιστικές βιβλιοθήκες προς επαναχρησιμοποίηση)
και αναλαμβάνουμε την υλοποίηση της εφαρμογής σύμφωνα με τις απαιτήσεις και
τη σχεδίαση που προηγήθηκε.
Στην πορεία ερευνήθηκε ο τρόπος του dockerization του συστήματος αλλά
και ο τρόπος αυτοματοποίησης της εγκατάστασης αυτού. Εξετάστηκαν οι
εναλλακτικές τεχνολογίες docker για virtualization και containerization, όπως το
Github Container Registry. Το σημαντικότερο λογισμικό που χρησιμοποιήθηκε στα
πλαίσια της DevOps διαδικασίας είναι ο Κυβερνήτης (Kubernetes), το οποίο
διαχειρίζεται containers σαν αντικείμενα λογισμικού συνδεδεμένα και με άλλα
έτοιμα λογισμικά που υπάρχουν ή βάσεις δεδομένων. Το επόμενο κομμάτι της
διαδικασίας είναι η συνεχής ενσωμάτωση, ανάπτυξη και συντήρηση της εφαρμογής
χρησιμοποιώντας CI/CD servers.
Τέλος, κάνουμε μια αναφορά και δοκιμή σε κάποια εργαλεία διάγνωσης
προβλημάτων αλλά και επίβλεψης λογισμικού (monitoring - logging tools). Για την
εκπόνηση της παρούσας εργασίας και την εκτέλεση της περιγραφείσας διαδικασίας
χρησιμοποιήθηκαν εργαλεία version control όπως github, και ιδεατές μηχανές
(virtual machines - VMs) που ανήκουν στις υποδομές του τμήματος Πληροφορικής
και Τηλεματικής του Χαροκοπείου Πανεπιστημίου Αθηνών, αλλά και σε cloud
παρόχους (βλ. Microsoft Azure και Google Cloud Platform).
Ημερομηνία κατάθεσης:
2022-11-03
Γλώσσες Τεκμηρίου:
Ελληνικά
Θεματικές Κατηγορίες:
Ηλεκτρονικοί υπολογιστές. Επιστήμη των υπολογιστών
Λοιπά Θέματα:
Εφαρμογές, εργαλεία, κλπ.
Λέξεις-κλειδιά:
Κυβερνήτης, ΝτεβΟπς, Αυτοματοποίηση, Λογισμικό, Διαχείριση συστατικών επιστολών
Περιγραφή:
101 σ.,εικ.,πίν.,σχ.
Άδεια χρήσης:
Αναφορά Δημιουργού – Μη Εμπορική Χρήση – Όχι Παράγωγα Έργα 4.0