- Fondamenti e motivazioni per la qualità e la certificazione di sistemi critici per la sicurezza
- Processi di gestione della qualità, con attenzione alla software engineering: fondamenti ed esempi (CMMI, SPICE)
- Processo di certificazione per sistemi safety-critical: analisi degli standard per la safety nel dominio ferroviario, riguardanti il processo di sviluppo, verifica e validazione (EN 50126), l'hardware (EN50129), il software (EN50128), le comunicazioni (EN50159)
- Esercitazioni
Il materiale didattico fornito durante il corso è tipicamente ritenuto sufficiente. Eventualmente, può essere approfondito tramite le seguenti risorse:
Per la parte di qualità:
- P. Bourque and R.E. Fairley, eds., Guide to the Software Engineering Body of Knowledge, Version 3.0, IEEE Computer Society, 2014; www.swebok.org.
Per la parte di certificazione:
- aspetti relativi al software: CEI EN 50128:2011 Applicazioni ferroviarie, tranviarie, filoviarie e metropolitane Sistemi di telecomunicazione, segnalamento ed elaborazione - Software per sistemi ferroviari di comando e di protezione
- aspetti relativi al processo: Engineering Safety Management (The Yellow Book), https://www.rssb.co.uk
Ulteriori riferimenti per approfondimento:
Gli standard CEI EN 50126, CEI EN 50128, CEI EN 50129, CEI EN 50159-1-2, CMMI, ASPICE.
Obiettivi Formativi
Le nostre attività quotidiane dipendono sempre di più dalla presenza e dal corretto funzionamento di sistemi ICT. Bassa qualità nel processo di sviluppo di sistemi ICT può portare a ritardi nella produzione, aumenti dei costo, oppure a soluzioni di scarsa qualità con conseguente insoddisfazione del cliente/utente. Inoltre, un errato comportamento di questi sistemi può portare a varie conseguenze, dalla insoddisfazione dell'utente, a perdite economiche, od ancora a danni a cose o persone.
Conoscenza e capacità di comprensione. La prima parte del corso investiga processi, metodologie e tecniche per la qualità nello sviluppo e produzione di sistemi e software. La seconda parte del corso si concentra su sistemi critici per la sicurezza (safety) e la necessità di applicare standard per assicurarsi che si possa riporre fiducia in tali sistemi. Si analizzano infatti i processi e le principali tecniche richieste dagli standard, con attenzione al dominio ferroviario, per la progettazione, assessment e certificazione di sistemi critici per la sicurezza (safety).
Applicazione delle conoscenze acquisite. Alla fine del corso, saranno sviluppate abilità per:
i) riconoscere e comprendere le implicazioni e le caratteristiche dell'applicazione di procedure di qualità, e del quality management, con attenzione ai processi di software engineering. Lo Studente avrà acquisito competenze principalmente sui processi e metodi relativi alla software quality.
ii) comprendere gli elementi di un processo di assessment, e distinguere le peculiarità della sua applicazione.
Prerequisiti
Nessuno
Metodi Didattici
CFU: 6
Ore totali del corso: 180
Ore per studio personale e altre attività formative di tipo individuale: 132
Ore relative alle attività in aula: 48
Ore relative ad attività di laboratorio (lezioni in laboratorio): 0
Numero di ore relative ad attività di esercitazioni (in laboratorio, aula o in campo): 9
Numero di ore relative ad attività seminariali: 0
Numero di ore relative ad attività di stage: 0
Numero di ore per prove in itinere: 0
Altre Informazioni
Frequenza delle lezioni ed esercitazioni: Raccomandata
Strumenti a supporto della didattica UniFi E-Learning: http://e-l.unifi.it
Orario di ricevimento:
Dott. Andrea Ceccarelli, solo su appuntamento. Contattare il docente tramite numero telefonico o e-mail (andrea.ceccarelli@unifi.it).
DiMai, Universita' di Firenze, Viale Morgagni, 65 - 50134 Firenze
Tel. 055 2751487
Dott. Lorenzo Falai, solo su appuntamento. E-mail: lorenzo.falai@resiltech.com.
Modalità di verifica apprendimento
La verifica dell'apprendimento è organizzata in due parti:
- Una prova scritta, sugli argomenti trattati durante il corso. La prova include domande a risposta multipla e a risposta aperta, che trattano gli argomenti del corso. La durata della prova è 2 ore. La valutazione della prova è in trentesimi (la prova è superata con voto compreso tra 18 e 30).
- Svolgimento di un progetto, individualmente o a gruppi di massimo 3 persone, che consiste nell'applicazione di una tecnica o metodologia studiata durante il corso e affrontata durante le esercitazioni previste nel corso. Il procedimento ed i risultati conseguiti dovranno essere riportati in una relazione. La valutazione del progetto è in trentesimi (la prova è superata con voto compreso tra 18 e 30).
Se la prova scritta e il progetto sono entrambi almeno sufficienti, sarà proposto il voto finale. Il voto finale è la media pesata del voto della prova scritta e del progetto, dove la prova scritta ha peso 1/3 e il progetto ha peso 2/3, e arrotondato all'intero più vicino.
Programma del corso
- Presentazione del corso e fondamenti: motivazioni per processi di Qualità e Certificazione
- Il quality management: processi e metodologie
- Quality management applicato alla software engineering
- Alcuni processi di qualità famosi: CMMI (Capability Maturity Model Integration), SPICE (ISO/IEC 15504 Software Process Improvement and Capability Determination), Automotive SPICE
- La certificazione per sistemi safety-critical: presentazione e panoramica delle famiglie di standard più rilevanti
- La certificazione nel dominio ferroviario: presentazione degli standard 50126 (ciclo di vita), 50128 (software), 50129 (hardware), 50159 (comunicazioni) per la safety. Descrizione dei processi e delle principali tecniche.
- Esercitazioni su: i) hazard analysis e risk assessment, ii) analisi statica del codice, iii) analisi dinamica: costruzione ed esecuzione di test.