Questo corso esplora l'integrazione dei Large Language Models (LLM) nelle pratiche moderne di DevOps e DevSecOps, evidenziando il loro ruolo nell'automazione dello sviluppo software, del deployment e della gestione della sicurezza. Gli studenti acquisiranno conoscenze sia teoriche che pratiche su come gli strumenti basati sull'intelligenza artificiale ottimizzano la scrittura del codice, le pipeline CI/CD, l'automazione dell'infrastruttura e l'analisi della sicurezza.
Acquisire familiarità con i metodi e le tecnologie più avanzate dell’ingegneria del software e comprenderne il ruolo nello sviluppo, nel deployment e nella gestione della sicurezza del software
Al termine del corso, gli studenti saranno in grado di: • Comprendere come i LLM possano ottimizzare i flussi di lavoro nello sviluppo software. • Implementare metodologie DevOps e DevSecOps con strumenti potenziati dall’intelligenza artificiale. • Sviluppare soluzioni di ingegneria del software sicure, scalabili e automatizzate.
Si assume che siano state acquisite le seguenti conoscenze, che costituiscono le basi necessarie per comprendere gli argomenti del corso e sostenere l'esame: • Ingegneria del software • Fondamenti di programmazione orientata agli oggetti • Concetti di base dello sviluppo di applicazioni Web/Mobile e delle Reti
L'insegnamento combina la presentazione dei concetti teorici con esercitazioni e discussioni. È orientato al dialogo e con un approccio pratico. Durante il corso saranno assegnati compiti obbligatori (i laboratori), che dovranno essere completati dagli studenti.
Il corso è strutturato in tre moduli principali:
Per ogni argomento trattato a lezione saranno forniti riferimenti specifici.
Ricevimento: Gli studenti possono contattare il docente via e-mail
MAURIZIO LEOTTA (Presidente)
In accordo con il calendario didattico approvato dal Consiglio dei Corsi di Studio in Informatica: https://corsi.unige.it/corsi/11964/studenti-orario
L'esame consisterà in una parte scritta (con domande tradizionali aperte/chiuse ed esercizi), oltre alla discussione degli assignment/laboratori. Il voto finale sarà assegnato combinando le valutazioni di (1) l'esame scritto e (2) gli assignment/laboratori completati durante il corso.
Indicazioni per studenti con certificazione di DSA, di disabilità o di altri bisogni educativi speciali sono disponibili a partire da https://corsi.unige.it/corsi/11964/studenti-disabilita-dsa
L'acquisizione delle competenze previste dal corso sarà valutata attraverso l'esame scritto. I parametri di valutazione includono: la qualità dell’esposizione, il corretto uso del lessico specialistico, la capacità di ragionare criticamente sulle possibili soluzioni tecniche da adottare e l’abilità nell’applicarle a contesti reali.
Per ulteriori informazioni, consultare il modulo Aulaweb dell'insegnamento o contattare il docente.