Il Master in Informatica offre un percorso completo e rigoroso che integra basi teoriche, progettazione software, gestione dei dati e competenze su sistemi, reti e sicurezza. Il programma è pensato per laureati e professionisti che desiderano consolidare le fondamenta e padroneggiare tecnologie allo stato dell’arte, con un approccio orientato alla soluzione di problemi reali e alla scalabilità industriale. Ogni modulo combina teoria formalizzata, casi d’uso e pratica intensiva in laboratorio, privilegiando qualità del codice, robustezza architetturale, governance dei dati e sicurezza by design. La didattica è arricchita da seminari con esperti, project work su dataset e infrastrutture realistiche e valutazioni continue volte a sviluppare autonomia critica e competenze operative spendibili.
Fondamenti, algoritmi e modelli di calcolo
L’area affronta i principi teorici che sorreggono ogni decisione progettuale: strutture dati avanzate, analisi della complessità (tempo/spazio), tecniche di ottimizzazione e trade-off computazionali. Si studiano modelli di calcolo (macchina di Turing, automi, grammatiche) e basi di teoria della computabilità e della complessità (classi P, NP, NP-completezza, riduzioni). Ampio spazio alla programmazione funzionale e concorrente per comprendere astrazioni, valutazione pigra, immutabilità e gestione della sincronizzazione. Sono introdotte tecniche di verifica formale (logiche temporali LTL/CTL, model checking) e ragionamento sul comportamento dei sistemi reattivi. L’obiettivo è saper analizzare problemi in termini di costo computazionale, scegliere strutture dati adeguate, dimostrare correttezza e stabilire limiti teorici alla risoluzione.
Ingegneria del software e architetture
Questa area sviluppa competenze sulla progettazione, realizzazione e gestione del ciclo di vita del software. Si approfondiscono principi SOLID, clean code, design pattern e refactoring, con un approccio evidence-based alla qualità. Si studiano architetture moderne: microservizi, event-driven, CQRS, serverless, hexagonal architecture e domain-driven design per allineare le soluzioni al dominio di business. Sono trattate pratiche DevOps e piattaforme di CI/CD, test automation (unit, integration, contract, property-based), osservabilità (logging strutturato, metrics, tracing distribuito), gestione delle dipendenze e sicurezza del software supply chain. Particolare attenzione a resilienza, scalabilità e gestione dello stato in ambienti distribuiti. Vengono introdotte tecniche di stima, gestione dei requisiti, roadmapping, documentazione eseguibile e governance architetturale.
Dati, machine learning e sistemi intelligenti
L’area copre l’intero ciclo di vita del dato: modellazione, raccolta, integrazione, qualità e governance. Si affrontano probabilità, statistica inferenziale, algebra lineare e ottimizzazione come base per machine learning supervisionato e non supervisionato, con tecniche quali regressione, alberi, ensemble, clustering e riduzione della dimensionalità. Il modulo deep learning tratta reti neurali, CNN, RNN/Transformer, ottimizzatori e tecniche di regolarizzazione, con applicazioni a NLP, visione e serie temporali. Sul fronte data engineering si studiano ETL/ELT, pipeline su data lakehouse, formati colonnari e sistemi SQL/NoSQL, oltre a elaborazione distribuita con Spark e streaming con Kafka. Sono inclusi MLOps, monitoraggio dei modelli, drift, explainability (SHAP, LIME), fairness ed etica del dato, conformità normativa e strategie di deployment scalabile in produzione.
Sistemi, reti, cloud e cybersecurity
Quest’area fornisce competenze operative su sistemi operativi, reti e infrastrutture cloud, con un focus nativo sulla sicurezza. Si studiano processi, scheduling, gestione della memoria, I/O e filesystem, insieme a concetti di sistemi distribuiti (consensus, replica, partizionamento, CAP). Per le reti: TCP/IP, routing, DNS, HTTP/2-3, SDN e osservabilità di rete. Nel cloud: containerizzazione con Docker, orchestrazione con Kubernetes, modelli IaaS/PaaS/SaaS, infrastruttura come codice (Terraform), provisioning e policy as code. La sicurezza copre crittografia simmetrica e asimmetrica, TLS/PKI, gestione segreti, IAM, zero trust, threat modeling, secure coding, SAST/DAST, sicurezza runtime, pentesting, incident response e hardening. Sono affrontate normative e standard (GDPR, ISO 27001, NIS2) e pratiche di privacy by design per soluzioni resilienti e conformi.
La didattica combina lezioni teoriche strutturate, laboratori pratici intensivi e progetti applicativi con partner esterni. La valutazione è continua e orientata all’evidenza, per consolidare competenze solide e trasferibili.
"L’informatica non riguarda tanto i computer quanto il modo rigoroso di pensare e costruire astrazioni utili e durature."
— Edsger W. Dijkstra