Ανάπτυξη συστήματος ηλεκτρονικής μάθησης με χρήση Spring Boot
Development of a learning management system (LMS) using Spring Boot

View/ Open
Keywords
Σύστημα διαχείρισης μάθησης ; Ηλεκτρονική μάθηση ; Πολυεπίπεδη αρχιτεκτονική ; Έλεγχος πρόσβασης βάσει ρόλων ; Μηχανική λογισμικού ; Learning management system ; N-Tier architecture ; Software engineering ; Role-based access control (RBAC) ; e-LearningAbstract
In contemporary educational environments, Learning Management Systems (LMS) constitute
fundamental information tools, providing an integrated digital environment for organizing,
distributing, and monitoring the educational process. The objective of this bachelor’s thesis is
the design, development, and evaluation of a modern, secure, and interactive web-based e-
learning platform that emulates the functionalities of a production-grade LMS.
To implement the system, an N-Tier architecture was deployed, utilizing cutting-edge web
technologies. The backend of the application was developed using the Spring Boot framework
(Java), leveraging Spring Data JPA and Hibernate for Object-Relational Mapping (ORM),
while the file-based H2 database was utilized for data management. The frontend was
designed using HTML5, CSS3, and asynchronous JavaScript, ensuring a fully responsive
user interface and lightweight client-server communication via REST APIs and JSON data
exchange.
The application incorporates a strict Role-Based Access Control (RBAC) system, supporting
three distinct user categories with specialized capabilities:
Administrators (Admins): Possess full oversight of the platform, user management,
and course management.
Instructors: Are capable of creating courses, uploading educational material (Lessons
in PDF, Word, PowerPoint formats), assigning coursework (Assignments) with strict
deadlines, constructing digital multiple-choice examinations (Quizzes), and managing
the electronic Gradebook.
Students: Have the ability to enroll in courses, download material, submit
assignments, participate in quizzes with automated grading, and track their academic
progress.
Furthermore, the system features an integrated internal Messaging system with unread
badges for real-time user notification, alongside comprehensive internationalization (i18n)
supporting dynamic language switching between Greek and English.
In conclusion, extensive software testing verified the correctness, stability, and low latency of
the system under realistic usage scenarios. This thesis successfully translated the theoretical
principles of Software Engineering into a robust, functional, and scalable product, establishing
a solid infrastructure ready to integrate future technological upgrades and be effectively
utilized in a modern academic environment.


