Show simple item record

Σχεδιασμός και υλοποίηση πλατφόρμας car-sharing : μια εφαρμογή Android με Java και Spring Boot Backend

dc.contributor.advisorΑλέπης, Ευθύμιος
dc.contributor.authorΠαπανικολάου, Νικόλαος
dc.date.accessioned2026-03-03T11:19:06Z
dc.date.available2026-03-03T11:19:06Z
dc.date.issued2026-02
dc.identifier.urihttps://dione.lib.unipi.gr/xmlui/handle/unipi/18949
dc.description.abstractΗ παρούσα πτυχιακή εργασία πραγματεύεται τη σχεδίαση και υλοποίηση μιας ολοκληρωμένης πλατφόρμας κοινής χρήσης αυτοκινήτων (car-sharing), με στόχο την προώθηση της βιώσιμης αστικής κινητικότητας μέσω της αποδοτικής αξιοποίησης των μεταφορικών πόρων. Το σύστημα αναπτύχθηκε με αρχιτεκτονική διαχωρισμού επιπέδων, αποτελούμενο από ένα backend βασισμένο στο Spring Boot και μια εφαρμογή Android ως frontend, επιτυγχάνοντας την άμεση σύνδεση οδηγών και επιβατών μέσω μηχανισμών γεωεντοπισμού και δυναμικής αντιστοίχισης σε πραγματικό χρόνο. Το backend του συστήματος αξιοποιεί PostgreSQL για τη μόνιμη αποθήκευση δεδομένων και Redis για χωρική ευρετηρίαση και προσωρινή αποθήκευση, επιτρέποντας ταχύτατες γεωγραφικές αναζητήσεις και αποδοτική αντιστοίχιση χρηστών. Η επικοινωνία μεταξύ των συστατικών υλοποιείται μέσω RESTful API για σύγχρονες λειτουργίες και WebSocket (πρωτόκολλο STOMP) για ενημερώσεις σε πραγματικό χρόνο, όπως η μετάδοση τοποθεσίας και οι αλλαγές κατάστασης διαδρομών. Ιδιαίτερη έμφαση δόθηκε στην ασφάλεια μέσω της χρήσης JWT tokens για έλεγχο ταυτότητας, κρυπτογράφησης για την προστασία ευαίσθητων δεδομένων και κατακερματισμού κωδικών πρόσβασης με. Η εφαρμογή Android προσφέρει διακριτές λειτουργικότητες για τους δύο βασικούς ρόλους χρηστών, επιβάτες και οδηγούς, με δυνατότητα απρόσκοπτης εναλλαγής μεταξύ τους. Οι επιβάτες μπορούν να υποβάλλουν αιτήματα διαδρομών, να παρακολουθούν την τοποθεσία του οδηγού σε πραγματικό χρόνο και να διαχειρίζονται τις ενεργές διαδρομές τους, ενώ οι οδηγοί λαμβάνουν προσφορές διαδρομών, τις αποδέχονται και μεταδίδουν συνεχώς την τοποθεσία τους. Η ενσωμάτωση του Google Maps API επιτρέπει την απεικόνιση χαρτών, τον προσδιορισμό διαδρομών και την πλοήγηση, ενώ το Google Places API υποστηρίζει την αναζήτηση προορισμών με αυτόματη συμπλήρωση. Κεντρικό στοιχείο της πλατφόρμας αποτελεί ο αλγόριθμος δυναμικής αντιστοίχισης, ο οποίος λαμβάνει υπόψη γεωγραφικά και χρονικά κριτήρια για τη βελτιστοποίηση της σύνδεσης επιβατών με οδηγούς, στοχεύοντας στη μείωση του χρόνου αναμονής και στη βελτίωση της συνολικής εμπειρίας χρήστη. Η υλοποίηση μηχανής καταστάσεων διασφαλίζει τη σωστή ροή του κύκλου ζωής κάθε διαδρομής, από την υποβολή αιτήματος έως την ολοκλήρωση, με ξεκάθαρες και επικυρωμένες μεταβάσεις μεταξύ καταστάσεων. Η πλατφόρμα αναπτύχθηκε με γνώμονα την επεκτασιμότητα και τη συντηρησιμότητα, χρησιμοποιώντας Docker για containerization και το [Render.com](http://Render.com) για cloud deployment. Η αξιολόγηση του συστήματος αναδεικνύει την επιτυχή ολοκλήρωση των στόχων της εργασίας, ταυτόχρονα εντοπίζοντας περιοχές για μελλοντική βελτίωση, όπως η ενσωμάτωση δυναμικής τιμολόγησης, προηγμένης βελτιστοποίησης διαδρομών και συστημάτων αξιολόγησης 3 χρηστών. Η παρούσα εργασία αποδεικνύει πώς η τεχνολογία μπορεί να συμβάλει στην προώθηση βιώσιμων μοντέλων μετακίνησης, μειώνοντας την κυκλοφοριακή συμφόρηση, τις εκπομπές ρύπων και την ανάγκη για ατομική ιδιοκτησία οχημάτων. Παράλληλα, τοποθετεί τη λύση στο ευρύτερο πλαίσιο των έξυπνων πόλεων και της συνεργατικής οικονομίας, καθιστώντας την ένα ολοκληρωμένο παράδειγμα σύγχρονης ανάπτυξης λογισμικού για την αντιμετώπιση πραγματικών κοινωνικών και περιβαλλοντικών προκλήσεων.el
dc.format.extent55el
dc.language.isoelel
dc.publisherΠανεπιστήμιο Πειραιώςel
dc.titleΣχεδιασμός και υλοποίηση πλατφόρμας car-sharing : μια εφαρμογή Android με Java και Spring Boot Backendel
dc.title.alternativeDesign and implementation of a car-sharing platform : an Android application with Java and Spring Boot Backendel
dc.typeBachelor Dissertationel
dc.contributor.departmentΣχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών. Τμήμα Πληροφορικήςel
dc.description.abstractENThis thesis deals with the design and implementation of an integrated car-sharing platform, aiming to promote sustainable urban mobility through the eeicient use of transport resources. The system was developed with a layered architecture, consisting of a Spring Boot-based backend and an Android application as a frontend, achieving the direct connection of drivers and passengers through geolocation and dynamic matching mechanisms in real time. The backend of the system utilizes PostgreSQL for persistent data storage and Redis for spatial indexing and caching, allowing for fast geographic searches and eeicient user matching. Communication between the components is implemented via RESTful API for modern operations and WebSocket (STOMP protocol) for real-time updates, such as location transmission and route status changes. Special emphasis was placed on security through the use of JWT tokens for authentication, encryption to protect sensitive data, and password hashing with. The Android application oeers distinct functionalities for the two main user roles, passengers and drivers, with the ability to seamlessly switch between them. Passengers can submit ride requests, track the driver’s location in real time, and manage their active trips, while drivers receive ride oeers, accept them, and continuously broadcast their location. The integration of the Google Maps API allows for map display, route determination, and navigation, while the Google Places API supports destination search with autocomplete. A central element of the platform is the dynamic matching algorithm, which takes into account geographical and temporal criteria to optimize the connection of passengers with drivers, aiming to reduce waiting times and improve the overall user experience. The state machine implementation ensures the correct flow of the life cycle of each trip, from request to completion, with clear and validated transitions between states. The platform was developed with scalability and maintainability in mind, using Docker for containerization and [Render.com](http://Render.com) for cloud deployment. The evaluation of the system highlights the successful completion of the work's objectives, while identifying areas for future improvement, such as the integration of dynamic pricing, advanced route optimization, and user rating systems. This work demonstrates how technology can contribute to promoting sustainable mobility models, reducing traeic congestion, emissions, and the need for individual vehicle ownership. At the same time, it places the solution in the broader context of smart cities and the collaborative economy, making it a comprehensive example of modern software development to address real social and environmental challenges.el
dc.subject.keywordCar-sharingel
dc.subject.keywordREST APIel
dc.subject.keywordMobile frontendel
dc.subject.keywordRide matchingel
dc.subject.keywordSmart citiesel
dc.subject.keywordGeolocationel
dc.subject.keywordJavael
dc.subject.keywordΒιώσιμη αστική κινητικότηταel
dc.date.defense2026-02-10


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record


Βιβλιοθήκη Πανεπιστημίου Πειραιώς
Contact Us
Send Feedback
Created by ELiDOC
Η δημιουργία κι ο εμπλουτισμός του Ιδρυματικού Αποθετηρίου "Διώνη", έγιναν στο πλαίσιο του Έργου «Υπηρεσία Ιδρυματικού Αποθετηρίου και Ψηφιακής Βιβλιοθήκης» της πράξης «Ψηφιακές υπηρεσίες ανοιχτής πρόσβασης της βιβλιοθήκης του Πανεπιστημίου Πειραιώς»