DARIO DI NUCCI | SOFTWARE DEPENDABILITY
DARIO DI NUCCI SOFTWARE DEPENDABILITY
cod. 0522500119
SOFTWARE DEPENDABILITY
0522500119 | |
DIPARTIMENTO DI INFORMATICA | |
CORSO DI LAUREA MAGISTRALE | |
INFORMATICA | |
2024/2025 |
OBBLIGATORIO | |
ANNO CORSO 1 | |
ANNO ORDINAMENTO 2016 | |
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 DOVREBBERO CONOSCERE I CONCETTI DI BASE DELL'INGEGNERIA DEL SOFTWARE, IN PARTICOLARE I MODELLI DI SVILUPPO DEL SOFTWARE E IL TESTING DEL 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 MIGLIORARE L'AFFIDABILITÀ DEL SOFTWARE: - REQUISITI INGEGNERISTICI DI AFFIDABILITÀ DEL SOFTWARE - 4 ORE DI LEZIONI FRONTALI; - METODOLOGIE AGILE E DEVOPS – 2 ORE DI LEZIONI FRONTALI - INFRASTRUTTURE AFFIDABILI E PROGRAMMABILI: CONTAINERIZZAZIONE E ORCHESTRAZIONE - 2 ORE DI LEZIONI FRONTALI E 6 ORE DI SESSIONI DI LABORATORIO; - ANALISI SOFTWARE – 2 ORE DI LEZIONI FRONTALI E 4 ORE DI SESSIONI DI LABORATORIO. M2: TESTING DEL SOFTWARE IL SECONDO MODULO APPROFONDISCE E INTEGRA LE CONOSCENZE RELATIVE ALLA VERIFICA E VALIDAZIONE DEL SOFTWARE GIÀ ACQUISITE IN UN CORSO DI INGEGNERIA DEL SOFTWARE DI BASE DELLA LAUREA TRIENNALE: - INTRODUZIONE AL TESTING DEL SOFTWARE – 2 ORE DI LEZIONI FRONTALI; - TEST-DRIVEN DEVELOPMENT– 2 ORE DI LEZIONI FRONTALI; - METODI PER SELEZIONARE, PROGETTARE, VALUTARE E OTTIMIZZARE I CASI TEST - 4 ORE DI LEZIONI FRONTALI E 2 ORE DI SESSIONI DI LABORATORIO; - TEST PRESTAZIONALI – 2 ORE DI LEZIONI FRONTALI E 4 ORE DI SESSIONI DI LABORATORIO; - GENERAZIONE AUTOMATIZZATA DI CASI TEST – 4 ORE DI LEZIONI FRONTALI E 2 ORE DI SESSIONI DI LABORATORIO; - TESTING DI SISTEMI CYBER-FISICI – 2 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; - TECNICHE STATICHE E DINAMICHE PER RILEVARE E SFRUTTARE LE VULNERABILITÀ DEL SOFTWARE – 2 ORE DI LEZIONI FRONTALI E 4 ORE DI SESSIONI DI LABORATORIO; - GENERAZIONE AUTOMATIZZATA DI TEST DI SICUREZZA - 2 ORE DI SESSIONI 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 - DISPENSE DEL DOCENTE. |
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 [Ultima Sincronizzazione: 2024-11-18]