Internazionalizzazione della Didattica | SOFTWARE DEPENDABILITY
Internazionalizzazione della Didattica SOFTWARE DEPENDABILITY
Indietro
Orari Lezioni
cod. NF22500043
SOFTWARE DEPENDABILITY
NF22500043 | |
DIPARTIMENTO DI INFORMATICA | |
CORSO DI LAUREA MAGISTRALE | |
INFORMATICA | |
2025/2026 |
OBBLIGATORIO | |
ANNO CORSO 1 | |
ANNO ORDINAMENTO 2025 | |
PRIMO SEMESTRE |
SSD | CFU | ORE | ATTIVITÀ | |
---|---|---|---|---|
ING-INF/05 | 6 | 30 | LEZIONE | |
ING-INF/05 | 3 | 24 | LABORATORIO |
Obiettivi | |
---|---|
IL CORSO SI PROPONE DI FORNIRE METODI E TECNICHE PER ANALIZZARE E VERIFICARE L'AFFIDABILITÀ DEL SOFTWARE. QUESTI CONCETTI VENGONO AFFRONTATI NEL CONTESTO DI SISTEMI SOFTWARE COMPLESSI E CRITICI. CONOSCENZA E CAPACITÀ COMPRENSIONE AL TERMINE DEL CORSO LO STUDENTE AVRÀ ACQUISITO CONOSCENZA E COMPRENSIONE IN MERITO A - PRINCIPI FONDAMENTALI DI AFFIDABILITÀ DEL SOFTWARE; - CICLI DI VITA E INFRASTRUTTURE SOFTWARE AFFIDABILI; - ANALISI DEL SOFTWARE PER MIGLIORARE LA QUALITÀ DEL SOFTWARE E AUMENTARE LA SICUREZZA DEL SOFTWARE; - TESTING DEI REQUISITI FUNZIONALI E NON FUNZIONALI DEL SOFTWARE; - GENERAZIONE AUTOMATIZZATA DI CASI DI TEST PER TESTARE REQUISITI FUNZIONALI E NON FUNZIONALI. CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE DOPO AVER COMPLETATO IL CORSO, LO STUDENTE SARÀ IN GRADO DI - UTILIZZARE METODI E TECNICHE DI INGEGNERIA DEL SOFTWARE PER MONITORARE LA QUALITÀ, LE PRESTAZIONI E LA SICUREZZA DEL SOFTWARE; - PROGETTARE SISTEMI DISTRIBUITI SU CLOUD, VALUTANDONE LE PRESTAZIONI, CONFIGURANDONE LE SPECIFICHE, SVILUPPANDO APPLICAZIONI IN CONTESTO CONCORRENTE E PARALLELO; - UTILIZZARE LE TECNICHE DI ANALISI E VERIFICA DEL SOFTWARE PIÙ ADEGUATE AL SOFTWARE DA ANALIZZARE; - CREARE SOFTWARE SICURO EVITANDO LE VULNERABILITÀ; - IDENTIFICARE LE PRINCIPALI VULNERABILITÀ DEI SISTEMI IN RETE E VALUTARE LA SICUREZZA DEI SISTEMI IN RETE COMPLESSI. AUTONOMIA DI GIUDIZIO DOPO AVER COMPLETATO IL CORSO, LO STUDENTE SARÀ IN GRADO DI: - COMUNICARE IN MODO CHIARO ED EFFICACE, IN FORMA SCRITTA E ORALE, PER TRASMETTERE CONOSCENZE, IDEE, PROBLEMI, SOLUZIONI, E LE MOTIVAZIONI CHE NE STANNO ALLA BASE, ADATTANDO LE MODALITÀ ESPRESSIVE ALLE CARATTERISTICHE CULTURALI E PROFESSIONALI DEI DESTINATARI DELLA COMUNICAZIONE); - UTILIZZARE EFFICACEMENTE GLI STRUMENTI DI COMUNICAZIONE MULTIMEDIALE; - COMUNICARE IN INGLESE CON TECNICI ED ESPERTI DOTATI DI BUONE COMPETENZE LINGUISTICHE E DIMOSTRARE PADRONANZA DELLA TERMINOLOGIA TECNICA; - COMPRENDERE ED ELABORARE TESTI TECNICI IN INGLESE DI MEDIA DIFFICOLTÀ; - LAVORARE IN TEAM CON ADEGUATE CAPACITÀ RELAZIONALI E DECISIONALI; - RENDICONTARE LA PROPRIA ATTIVITÀ LAVORATIVA. ABILITÀ COMUNICATIVE DOPO AVER COMPLETATO IL CORSO, LO STUDENTE SARÀ IN GRADO DI: - PENSARE IN MODO CRITICO E METTERE IN DISCUSSIONE LE SCELTE PROGETTUALI E REALIZZATIVE; - SVILUPPARE RAGIONAMENTI E RIFLESSIONI AUTONOME E INDIPENDENTI; - COMPRENDERE LA RILEVANZA DI UNA PLURALITÀ DI PUNTI DI VISTA E APPROCCI ALTERNATIVI; - VALUTARE CRITICAMENTE GLI ASPETTI POSITIVI E NEGATIVI DI SOLUZIONI ALTERNATIVE, TENENDO IN CONSIDERAZIONE LA QUALITÀ E IL RAPPORTO COSTO/EFFICACIA; - STABILIRE UN ORDINE DI PRIORITÀ PER OBIETTIVI SPESSO CONTRASTANTI; - LAVORARE CON UN ELEVATO GRADO DI AUTONOMIA; - PIANIFICARE UNA RACCOLTA DATI ADEGUATA AGLI OBIETTIVI PROPOSTI E INTERPRETARE CRITICAMENTE I DATI RACCOLTI PER RICAVARE GIUDIZI AUTONOMI SUPPORTATI DA ANALISI OGGETTIVE E QUANTITATIVE. CAPACITÀ DI APPRENDIMENTO DOPO AVER COMPLETATO IL CORSO, LO STUDENTE SARÀ IN GRADO DI: - ORGANIZZARE LE PROPRIE IDEE IN MODO CRITICO E SISTEMATICO; - RIFLETTERE SULLA PROPRIA ESPERIENZA DI APPRENDIMENTO E ADATTARLA IN RISPOSTA A SUGGERIMENTI E STIMOLI ESTERNI; - RICONOSCERE LA NECESSITÀ DI ULTERIORI STUDI E DI ULTERIORI ATTIVITÀ DI RICERCA. |
Prerequisiti | |
---|---|
GLI STUDENTI DEVONO AVERE CONOSCENZA PREGRESSA DEI CONCETTI DI BASE DI INGEGNERIA DEL SOFTWARE, IN PARTICOLARE DEI MODELLI DI SVILUPPO SOFTWARE E DEL TESTING DI SISTEMI SOFTWARE. |
Contenuti | |
---|---|
I CONTENUTI SONO SUDDIVISI IN TRE MODULI FORMATIVI: M1: FONDAMENTI DI AFFIDABILITÀ DEL SOFTWARE E DELL'INFRASTRUTTURA IL PRIMO MODULO INTRODUCE LO STUDENTE AI FONDAMENTI DELL'AFFIDABILITÀ DEL SOFTWARE, DELLE INFRASTRUTTURE PROGRAMMABILI AFFIDABILI E DELL'ANALISI DEL SOFTWARE PER MIGLIORARNE L'AFFIDABILITÀ: - INTRODUZIONE ALL'AFFIDABILITÀ DEL SOFTWARE - 2 ORE DI LEZIONI FRONTALI; - REQUISITI DI AFFIDABILITÀ, GUASTI E SOLUZIONI - 3 ORE DI LEZIONI FRONTALI; - PREVENZIONE DEI GUASTI DEL SOFTWARE NELLE SPECIFICHE E NELL'IMPLEMENTAZIONE - 2 ORE DI LEZIONI FRONTALI E 3 ORE DI ESERCITAZIONI IN LABORATORIO; - TOLLERANZA AI GUASTI DEL SOFTWARE E VALUTAZIONE - 2 ORE DI LEZIONI FRONTALI; - ARCHITETTURE IOT - 2 ORE DI LEZIONI FRONTALI; - DEVOPS E INFRASTRUTTURE PROGRAMMABILI AFFIDABILI - 2 ORE DI LEZIONI FRONTALI E 3 ORE DI ESERCITAZIONI IN LABORATORIO. M2: TESTING DEL SOFTWARE IL SECONDO MODULO APPROFONDISCE E INTEGRA LE CONOSCENZE RELATIVE ALLA VERIFICA E ALLA VALIDAZIONE DEL SOFTWARE GIÀ ACQUISITE IN UN CORSO BASE DI INGEGNERIA DEL SOFTWARE DELLA LAUREA TRIENNALE: - INTRODUZIONE AL TESTING DEL SOFTWARE E ALLA SELEZIONE DEI CASI DI TEST - 2 ORE DI LEZIONI FRONTALI E 3 ORE DI ESERCITAZIONI IN LABORATORIO; - VALUTAZIONE DEI CASI DI TEST E SVILUPPO GUIDATO DAI TEST - 2 ORE DI LEZIONI FRONTALI E 3 ORE DI ESERCITAZIONI IN LABORATORIO; - TEST DELLE PRESTAZIONI - 2 ORE DI LEZIONI FRONTALI E 3 ORE DI ESERCITAZIONI IN LABORATORIO; - TEST DI SISTEMI CYBER-FISICI - 2 ORE DI LEZIONI FRONTALI; - CASI DI STUDIO SULL'AFFIDABILITÀ DEL SOFTWARE: 3 ORE DI LEZIONI FRONTALI. M3: RILEVAMENTO E SFRUTTAMENTO DELLE VULNERABILITÀ DEL SOFTWARE IL TERZO MODULO PRESENTA TECNICHE STATICHE E DINAMICHE PER RILEVARE E SFRUTTARE LE VULNERABILITÀ DEL SOFTWARE: - INTRODUZIONE ALLE VULNERABILITÀ DEL SOFTWARE - 2 ORE DI LEZIONI FRONTALI; - ATELIER SULLE VULNERABILITÀ DEL SOFTWARE - 2 ORE DI LEZIONI FRONTALI; - TECNICHE STATICHE E DINAMICHE PER RILEVARE E SFRUTTARE LE VULNERABILITÀ DEL SOFTWARE - 2 ORE DI LEZIONI FRONTALI E 9 ORE DI ESERCITAZIONI DI LABORATORIO. |
Metodi Didattici | |
---|---|
LA PARTE TEORICA SI SVILUPPA CON LEZIONI FRONTALI (6 CFU, 30 ORE) DI CARATTERE TEORICO/METODOLOGICO PER TRASFERIRE LE CONOSCENZE E GLI STRUMENTI NECESSARI PER LE ATTIVITÀ PROGETTUALI. LA PARTE PRATICA PREVEDE SESSIONI PRATICHE CON LE TECNICHE E I CONCETTI PRESENTATI NELLA PARTE TEORICA (3 CFU, 24 ORE). LA FORMULA SEGUITA CONSISTE NEL MOSTRARE UNO STRUMENTO E PERMETTERE AGLI STUDENTI DI SPERIMENTARLO SU UN PROGETTO SOFTWARE DA LORO SCELTO. |
Verifica dell'apprendimento | |
---|---|
IL RAGGIUNGIMENTO DEGLI OBIETTIVI DIDATTICI È CERTIFICATO DAL SUPERAMENTO DI UN ESAME CON VALUTAZIONE IN TRENTESIMI. L'ESAME PREVEDE LA REALIZZAZIONE E CONSEGNA DI UN PROGETTO INDIVIDUALE O DI GRUPPO CON LA RELATIVA DOCUMENTAZIONE E UNA PROVA ORALE. LA CONSEGNA DELLA DOCUMENTAZIONE PROGETTUALE È PROPEDEUTICA ALLA PROVA ORALE. |
Testi | |
---|---|
- KNIGHT, J. (2012). FUNDAMENTALS OF DEPENDABLE COMPUTING FOR SOFTWARE ENGINEERS. CRC PRESS - PEZZÈ, M., & YOUNG, M. (2008). SOFTWARE TESTING AND ANALYSIS: PROCESS, PRINCIPLES, AND TECHNIQUES. JOHN WILEY & SONS - MEAD, N. R., ALLEN, J. H., BARNUM, S., ELLISON, R. J., & MCGRAW, G. R. (2004). SOFTWARE SECURITY ENGINEERING: A GUIDE FOR PROJECT MANAGERS. ADDISON-WESLEY PROFESSIONAL |
Altre Informazioni | |
---|---|
LA FREQUENZA DEL CORSO NON È OBBLIGATORIA MA FORTEMENTE CONSIGLIATA. GLI STUDENTI DEVONO ESSERE PREPARATI AD ESSERE ATTIVAMENTE COINVOLTI NEL CORSO ATTRAVERSO L'INTERAZIONE CON IL DOCENTE IN AULA E LA FORMAZIONE INDIVIDUALE. LA PREPARAZIONE ADEGUATA, FINALIZZATA AL SUPERAMENTO DELL'ESAME, SARÀ COSTITUITA DA DUE ORE DI STUDIO INDIVIDUALE PER OGNI ORA TRASCORSA IN AULA E DA UN'ORA DEDICATA ALL'ATTIVITÀ PROGETTUALE ASSOCIATA. IL CORSO PREVEDE UNA SOLIDA PREDISPOSIZIONE ALL'APPRENDIMENTO DEGLI STRUMENTI SOFTWARE NECESSARI PER SVILUPPARE MODULI AFFIDABILI. IL MATERIALE DIDATTICO SARÀ DISPONIBILE SULLA PIATTAFORMA E-LEARNING DI DIPARTIMENTO. |
BETA VERSION Fonte dati ESSE3