dc.contributor.advisor | Alepis, Efthimios | |
dc.contributor.advisor | Αλέπης, Ευθύμιος | |
dc.contributor.author | Koniavitis, Konstantinos | |
dc.contributor.author | Κονιαβίτης, Κωνσταντίνος | |
dc.date.accessioned | 2025-04-16T11:42:07Z | |
dc.date.available | 2025-04-16T11:42:07Z | |
dc.date.issued | 2025-04 | |
dc.identifier.uri | https://dione.lib.unipi.gr/xmlui/handle/unipi/17675 | |
dc.description.abstract | Η παρούσα διπλωματική εργασία παρουσιάζει το σχεδιασμό και την υλοποίηση μιας εφαρμογής κρατήσεων για υπηρεσίες ομορφιάς και ευεξίας, η οποία αναπτύχθηκε χρησιμοποιώντας Angular για το frontend και Spring Boot για το backend, ακολουθώντας τις αρχές της Clean Architecture. Το σύστημα προσφέρει μια σταθερή, επεκτάσιμη και εύκολα συντηρήσιμη πλατφόρμα που επιτρέπει στους χρήστες να περιηγούνται στις διαθέσιμες υπηρεσίες, να βλέπουν διαθεσιμότητες και να προγραμματίζουν ραντεβού με παρόχους υπηρεσιών μέσω ενός εύχρηστου και διαισθητικού περιβάλλοντος χρήστη.
Κεντρικό στοιχείο της αρχιτεκτονικής είναι ο διαχωρισμός των ευθυνών σε διαφορετικά επίπεδα, προωθώντας τη μετατρεψιμότητα, την ευκολία στον έλεγχο και την ενίσχυση της δυνατότητας μελλοντικών επεκτάσεων. Η αυθεντικοποίηση των χρηστών διασφαλίζεται με ασφάλεια μέσω του Auth0, με χρήση JWT-based authentication και ελέγχου πρόσβασης βάσει ρόλων, ώστε να προστατεύονται οι ευαίσθητες λειτουργίες.
Η PostgreSQL χρησιμοποιείται ως το κύριο σχεσιακό σύστημα διαχείρισης βάσεων δεδομένων, αξιοποιώντας τις προηγμένες δυνατότητές της σε ερωτήματα και τη συμμόρφωση με τις ιδιότητες ACID για τη διασφάλιση της ακεραιότητας των δεδομένων. Το Spring Data JPA αφαιρεί την πολυπλοκότητα του επιπέδου πρόσβασης στα δεδομένα, επιτρέποντας καθαρότερο κώδικα και καλύτερη ευθυγράμμιση με τις αρχές του domain-driven design.
Ορισμένα βασικά τεχνικά χαρακτηριστικά περιλαμβάνουν έναν καθαρό και εύκολα συντηρήσιμο κώδικα, ένα ασφαλές σύστημα κρατήσεων και ένα ευέλικτο και φιλικό προς τον χρήστη περιβάλλον Angular.
Η διπλωματική αυτή αναδεικνύει επιτυχώς σύγχρονες πρακτικές ανάπτυξης λογισμικού, όπως η πολυεπίπεδη αρχιτεκτονική, η ασφαλής αυθεντικοποίηση, η αποτελεσματική διαχείριση δεδομένων και ο σχεδιασμός διεπαφών βασισμένων σε components. Δεν καλύπτει μόνο πραγματικές ανάγκες κρατήσεων, αλλά επιπλέον καταδεικνύει την πρακτική εφαρμογή της Clean Architecture στην υλοποίηση επεκτάσιμων και έτοιμων για παραγωγή full-stack εφαρμογών. | el |
dc.format.extent | 40 | el |
dc.language.iso | en | el |
dc.publisher | Πανεπιστήμιο Πειραιώς | el |
dc.rights | Αναφορά Δημιουργού-Μη Εμπορική Χρήση-Όχι Παράγωγα Έργα 3.0 Ελλάδα | * |
dc.rights | Αναφορά Δημιουργού-Μη Εμπορική Χρήση-Όχι Παράγωγα Έργα 3.0 Ελλάδα | * |
dc.rights.uri | http://creativecommons.org/licenses/by-nc-nd/3.0/gr/ | * |
dc.title | Full-stack Spring Bοοt / Angular bοοking sοftware | el |
dc.title.alternative | Λογισμικό κρατήσεων σε Spring Bοοt και Angular | el |
dc.type | Master Thesis | el |
dc.contributor.department | Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών. Τμήμα Πληροφορικής | el |
dc.description.abstractEN | This thesis presents the design and implementation of a full-stack booking application for beauty and wellness services, developed using Angular for the frontend and Spring Boot for the backend, following the principles of Clean Architecture. The system offers a robust, scalable, and maintainable platform that allows users to browse services, view availability, and schedule appointments with service providers through an intuitive web interface.
Central to the architecture is the separation of concerns across different layers, promoting modularity, testability, and ease of future enhancements. User authentication is handled securely via Auth0, incorporating JWT-based authentication and role-based access control to protect sensitive operations and ensure proper user authorization.
PostgreSQL is employed as the primary relational database, taking advantage of its advanced query capabilities and ACID compliance to ensure data integrity. Spring Data JPA abstracts the data access layer, enabling cleaner code and better alignment with domain-driven design principles.
Some key technical features include a clean and maintainable codebase, a secure booking system and a responsive and user-friendly Angular UI.
The project successfully showcases modern software development practices, including layered architecture, secure authentication, efficient data handling, and component-based UI design. It not only addresses real-world booking needs but also demonstrates the practical application of Clean Architecture in building scalable and production-ready full-stack applications. | el |
dc.contributor.master | Πληροφορική | el |
dc.subject.keyword | Angular | el |
dc.subject.keyword | Spring | el |
dc.subject.keyword | Booking software | el |
dc.subject.keyword | Full-stack | el |
dc.date.defense | 2025-04-04 | |