Salta al contenuto principale
CODICE 118157
ANNO ACCADEMICO 2025/2026
CFU
SETTORE SCIENTIFICO DISCIPLINARE INF/01
LINGUA Inglese
SEDE
  • GENOVA
PERIODO 2° Semestre
PROPEDEUTICITA
Propedeuticità in uscita
Questo insegnamento è propedeutico per gli insegnamenti:
  • COMPUTER SCIENCE 11964 (coorte 2025/2026)
  • CAPSTONE PROJECT 101810

PRESENTAZIONE

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.

OBIETTIVI E CONTENUTI

OBIETTIVI FORMATIVI

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

OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO

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.

PREREQUISITI

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

MODALITA' DIDATTICHE

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.

PROGRAMMA/CONTENUTO

Il corso è strutturato in tre moduli principali:

  1. LLM per l'ingegneria del software – Questo modulo introduce gli studenti ai modelli linguistici di ultima generazione, esaminando il loro impatto sulla generazione di codice, testing, documentazione, debugging e analisi statica. Vengono anche esplorate considerazioni etiche e i limiti dei LLM nell’ingegneria del software.
  2. DevOps – Automazione e Continuous Delivery – Gli studenti acquisiranno esperienza pratica con i principi e gli strumenti DevOps, imparando come i LLM possano migliorare l'automazione delle pipeline CI/CD, la generazione di Infrastructure as Code e l'analisi intelligente dei log.
  3. DevSecOps – Sicurezza nel ciclo di vita dello sviluppo software – Questo modulo approfondisce le best practice di sicurezza, il threat modeling e la gestione delle vulnerabilità, integrando soluzioni basate su LLM per il rilevamento automatico delle vulnerabilità, l’automazione delle policy di sicurezza e l’analisi avanzata dell’intelligence sulle minacce.

TESTI/BIBLIOGRAFIA

Per ogni argomento trattato a lezione saranno forniti riferimenti specifici.

DOCENTI E COMMISSIONI

LEZIONI

INIZIO LEZIONI

In accordo con il calendario didattico approvato dal Consiglio dei Corsi di Studio in Informatica: https://corsi.unige.it/corsi/11964/studenti-orario

Orari delle lezioni

L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy

ESAMI

MODALITA' D'ESAME

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.

MODALITA' DI ACCERTAMENTO

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.

ALTRE INFORMAZIONI

Per ulteriori informazioni, consultare il modulo Aulaweb dell'insegnamento o contattare il docente.