Skip to content

Latest commit

 

History

History
65 lines (43 loc) · 4.17 KB

README.md

File metadata and controls

65 lines (43 loc) · 4.17 KB

SpringMVCWebApp

Descrizione del Progetto

Una web app progettata per facilitare la comunicazione e la collaborazione tra studenti universitari. Gli utenti possono registrarsi, fare login, aggiornare i loro profili e inviare notifiche per formare gruppi di studio basati su interessi comuni. Il sistema non gestisce direttamente gli studenti, ma permette loro di interagire e organizzarsi autonomamente in gruppi di studio.

Caratteristiche Principali

  • Registrazione e Login: Gli utenti possono creare un nuovo account o accedere con le credenziali esistenti.
  • Aggiornamento Profilo: Gli utenti possono modificare le informazioni del loro profilo.
  • Notifiche: Gli utenti possono inviare e ricevere notifiche per creare e unirsi a gruppi di studio.
  • Gestione Gruppi di Studio: Gli utenti possono formare gruppi di studio basati su interessi comuni e collaborare con altri membri del gruppo.

Tecnologie Utilizzate

  • Spring Boot: Framework per lo sviluppo di applicazioni Java basate su Spring.
  • Spring Security: Per la gestione della sicurezza e dell'autenticazione.
  • Thymeleaf: Motore di template per la generazione di pagine web.
  • Bootstrap: Un framework HTML, CSS e JavaScript più popolare per sviluppare siti web responsivi e mobile-first.
  • H2 Database: Database embedded per lo sviluppo e il test.
  • JUnit: Framework per la scrittura di test unitari.
  • Playwright: Un framework per il test e l'automazione web. Permette di testare Chromium, Firefox e WebKit utilizzando un'unica API.
  • Postman: Una piattaforma per sviluppatori che facilita il testing, lo sviluppo e la documentazione delle API tramite un'interfaccia intuitiva.
  • Maven: Sistema di gestione dei progetti e delle dipendenze.

Modello di Sviluppo

Il progetto è stato sviluppato utilizzando il modello di sviluppo Agile. In particolare, abbiamo adottato il modello Agile in coppia. Abbiamo lavorato insieme in modo iterativo e incrementale per garantire una consegna continua di valore e una risposta rapida ai cambiamenti nei requisiti.

Caratteristiche del Modello Agile Utilizzato

  • Iterazioni Brevi: Sviluppo in cicli brevi per garantire feedback frequente e miglioramenti continui.
  • Collaborazione Stretta: Lavoro a stretto contatto tra i programmatori per risolvere rapidamente i problemi e migliorare il prodotto.
  • Adattamento ai Cambiamenti: Capacità di adattarsi ai cambiamenti nei requisiti e nelle condizioni del progetto.
  • Focus sul Valore: Concentrarsi sulla consegna di valore reale e tangibile agli utenti finali.

Istruzioni per l'Esecuzione del Progetto

  1. Clonare il Repository: Utilizzare git clone per clonare il repository sul proprio ambiente locale.
  2. Importare il progetto in STS: Aprire Spring Tool Suite (STS) e importare il progetto come Maven Project.
  3. Installare le Dipendenze: Una volta importato, STS scaricherà automaticamente le dipendenze del progetto.
  4. Avviare l'applicazione: selezionare Run As > Spring Boot App per avviare l'applicazione.
  5. Accedere all'applicazione:Aprire il browser e navigare su http://localhost:8080.

Indice