Skip to content

Dionysis33/task-management-system

Repository files navigation

Enterprise Task Management System (Task-Management-System)

Φοιτητής: Διονύσιος Αλεξόπουλος (Student ID: 2331909) Μάθημα: SWE6002 - Enterprise Systems Development Επιβλέπων Καθηγητής: Σπύρος Μαύρος


Επισκόπηση (Overview)

Το παρόν έργο υλοποιεί ένα ολοκληρωμένο σύστημα διαχείρισης εργασιών (Task-Management-System) για φοιτητές, με στόχο την αποτελεσματική οργάνωση ακαδημαϊκών και προσωπικών υποχρεώσεων. Η εφαρμογή αναπτύχθηκε με έμφαση στην επεκτασιμότητα, την ασφάλεια των δεδομένων και την υψηλή απόδοση μέσω σύγχρονων τεχνολογιών Java.


Στοιχεία Πρόσβασης (Credentials)

Για τη δοκιμή των λειτουργιών και του ελέγχου πρόσβασης βάσει ρόλων (RBAC), χρησιμοποιήστε τα παρακάτω στοιχεία:

1. Διαχειριστής (Admin)

  • Username: admin
  • Password: Olympus2026!

2. Μέλος (Student)

  • Username: student1
  • Password: student123!

3. Μέλος (Work User)

  • Username: work_user
  • Password: work_user123!

Τεχνολογικό Υπόβαθρο (Tech Stack)

  • Java 21: Αξιοποίηση των Virtual Threads για τη βελτιστοποίηση της διαχείρισης πόρων.
  • Spring Boot 3.3.0: Χρήση του πλέον σύγχρονου framework για enterprise εφαρμογές.
  • Spring Security 6: Ολοκληρωμένη υλοποίηση ελέγχου πρόσβασης (RBAC) και προστασία δεδομένων.
  • MySQL: Σύστημα βάσης δεδομένων για τη διασφάλιση της συνεκτικότητας των δεδομένων.

Αρχιτεκτονική και Σχεδιασμός

Η εφαρμογή ακολουθεί την Πολυεπίπεδη Αρχιτεκτονική (N-Tier) για τον πλήρη διαχωρισμό των ευθυνών:

  • Controller Layer: Διαχείριση αιτημάτων HTTP, επικύρωση δεδομένων και δρομολόγηση.
  • Service Layer: Ενσωμάτωση όλης της επιχειρησιακής λογικής και των κανόνων του συστήματος.
  • Repository Layer: Ανεξάρτητη επικοινωνία με τη βάση δεδομένων μέσω του Repository Pattern.
  • DTO Pattern: Χρήση ειδικών αντικειμένων μεταφοράς δεδομένων για την αποφυγή επιθέσεων Mass Assignment.

Κύριες Λειτουργίες

  • User Management: Σύστημα εγγραφής, σύνδεσης και πλήρους διαχείρισης χρηστών από τον Admin.
  • Task CRUD: Πλήρης κύκλος διαχείρισης εργασιών (Δημιουργία, Προβολή, Ενημέρωση, Διαγραφή).
  • RBAC: Αυστηρός διαχωρισμός δικαιωμάτων μεταξύ των ρόλων ROLE_ADMIN και ROLE_MEMBER.
  • Filtering and Search: Δυνατότητα αναζήτησης και φιλτραρίσματος εργασιών βάσει κατηγορίας και ημερομηνίας.

Σημείωση: Το αναλυτικό ημερολόγιο ανάπτυξης των 2,5 μηνών βρίσκεται στο αρχείο DEVELOPMENT_LOG.md.

About

Enterprise To-Do System developed for SWE6002. Built with Java 21 and Spring Boot 3.3.0, featuring N-Tier architecture, Virtual Threads, and Spring Security 6.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors