An open API service indexing awesome lists of open source software.

https://github.com/petridhsg/parkhub

Android app for parking seat reservations (Documentation in Greek)
https://github.com/petridhsg/parkhub

android android-studio java uml

Last synced: about 21 hours ago
JSON representation

Android app for parking seat reservations (Documentation in Greek)

Awesome Lists containing this project

README

          

# Εφαρμογή δέσμευσης θέσεων παρκινγκ

### *Υλοποίηση εφαρμογής που διευκολύνει την εύρεση πάρκινγκ σε πολυσύχναστες περιοχές μέσω της ανταλλαγής των θέσεων μεταξύ χρηστών.*

* Για να χρησιμοποιηθεί η εφαρμογή ο χρήστης θα πρέπει να έχει λογαριασμό και αν δεν έχει πρέπει να φτιάξει, καταχορώντας τόσο τα προσωπικά του στοιχεία (ονοματεπώνυμο, κωδικό, email, τηλέφωνο) όσο και τα στοχεία του οχήματός του(χρώμα, μέγεθος, μάρκα-μοντελό, αριθμός πινακίδας).

* Όταν κάποιος χρήστης θελήσει να εγκαταλήψει την θέση πάρκινγκ στην οποία βρίσκεται, το δηλώνει στην εφαρμογή παρέχοντας διεύθυνση και ώρα που η θέση θα είναι διαθέσιμη.

* Ο χρήστης που αναζητά θέση πάρκινγκ θα πληροφορείται για τις διαθέσιμες θέσεις βάσει της εκτιμώμενης ώρας άφιξης και τοποθεσίας που έχει δηλώσει στην εφαρμογή και θα επιλέγει για κράτηση την κατάλληλη για αυτόν θέση.

* Εφόσον ο χρήστης επιλέξει θέση, η εφαρμογή θα κοινοποιεί το αίτημα του στον σταθμευμένο χρήστη, ο οποίος είτε θα το αποδεχτεί είτε θα το απορρίψει ανάλογα με την αξιοπιστία του αιτούντα (αξιολόγηση, μέσος χρόνος καθυστέρησης).

* Κατά την άφιξη του χρήστη που θέλει να παρκάρει, με το πάτημα ενός κουμπιού θα κοινοποιείται ένας κωδικός στον ήδη σταθμευμένο χρήστη, ο οποίος θα καταχωρείται στο σύστημα ώστε να ολοκληρωθεί η ανταλλαγή.

* Με την ολοκήρωση της ανταλλαγής, ο σταθμευμένος χρήστης λαμβάνει από τον χρήστη που θέλει να παρκάρει πιστωτικές μονάδες (**[P-Bucks](#p-bucks)**).

* Σε περίπτωση ψευδούς δήλωσης θέσης σταθμεύσης, ο χρήστης που αναζητεί θέση μπορεί να βαθμολογεί αρνητικά τον χρήστη που έκανε αυτή την δήλωση.

* Η εφαρμογή θα στέλνει δεδομένα στην εταιρεία λειτουργίας της, όπως ποσοστό επιτυχών σταθμεύσεων κάθε μήνα και μέση καθυστέρηση σε κάθε ανταλλαγή θέσεων.

# P-Bucks

### Τι είναι τα P-Bucks;

Πρόκειται για το σύστημα πιστωτικών μονάδων της εφαρμογής. Είναι απαραίτητα για την αποστολή αιτήματος επιλογής θέσης στάθμευσης.

### Πως χρησιμοποιώ τα P-Bucks;

Τα P-Bucks χρησιμοποιούνται κατά την ολοκλήρωση της ανταλλαγής θέσεων μεταξύ των χρηστών. Πιο συγκεκριμένα, απαιτούνται 10 P-Bucks από
τον χρήστη που αναζητεί θέση στάθμευσης. Με την ολοκλήρωση της ανταλλαγής αυτά τα 10 P-Bucks μεταφέρονται στον ήδη σταθμευμένο χρήστη.

### Πως αποκτώ P-Bucks;

Κάθε χρήστης κατά την εγγραφή του λαμβάνει 100 P-Bucks.
Επίσης, με την ολοκλήρωση κάθε ανταλλαγής, ο σταθμευμένος χρήστης παίρνει
10 P-Bucks απο τον χρήστη που λαμβάνει την θέση στάθμευσης.


### Τι συμβαίνει αν κάποιος από τους δύο χρήστες αργήσει;

1.Στην περίπτωση που ο χρήστης που θέλει να παρκάρει ξεπεράσει το όριο
αργοπορίας, θα χρεωθεί 10 P-Bucks τα οποία θα μεταφερθούν στον χρήστη που
είναι σταθμευμένος και η ανταλλαγή θέσης θα ακυρωθεί αυτόματα από το σύστημα.

2.Στην περίπτωση που ο σταθμευμένος χρήστης ξεπεράσει το όριο αργοπορίας,
η ανταλλάγη ακυρώνεται χωρίς να χρεωθεί κανείς από τους δύο P-Bucks.

### Πόσο είναι το επιτρεπτό όριο αργοπορίας;

Κάθε χρήστης έχει όριο αργοπορίας 10 λεπτών για κάθε θέση στάθμευσης.

### Τι κάνω αν μου τελειώσουν τα P-Bucks;

Σε περίπτωση που τελειώσουν τα P-Bucks κάποιου χρήστη, αυτός μπορεί
να αποκτήσει P-Bucks, αναλόγα με το πακέτο που θα επιλέξει.

# Διάγραμμα Περιπτώσεων Χρήσης
![Το διάγραμμα περιπτώσεων χρήσης ](docs/markdown/uml/requirements/use_cases.png)

# Οδηγίες χρήσης
* Μπορείτε να συνδεθείτε με email: dkefalas@gmail.com και κωδικό:qwerty12 για να δείτε τις λειτουργίες του σταθμευμένου χρήστη, όταν έχει δηλώσει θέση.

* Μπορείτε να συνδεθείτε με email: giannisp@gmail.com και κωδικό:qwerty12 για να δείτε τις λειτουργίες του χρήστη που αναζητάει θέση, όταν έχει κάνει κράτηση.

* Μπορείτε να συνδεθείτε με email: sifisxr@gmail.com και κωδικό:12345 για να δείτε τις λειτουργίες ενός απλού χρήστη που ούτε έχει δηλώσει κάποια θέση και ούτε έχει κρατήσει κάποια θέση.