Programma di Modelli E Qualita' Del Software:

OBIETTIVI FORMATIVI Obiettivo del corso MQS è fornire metodiche e  strumenti per la modellisatica del software e l'analisi della sua qualità.   

CONOSCENZA E CAPACITÀ DI COMPRENSIONE:  Alla fine del corso lo studente conoscerà le metodiche per sviluppare un modello del prodotto software e valutarne la qualità.  

CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE: Alla fine del corso lo studente sarà in grado di applicare un modello software all'analisi delle sua qualità  

AUTONOMIA DI GIUDIZIO:  Il corso prevede prove intermedie da espletare a casa che consentano allo studente di giudicare il livello di preparazione raggiunto e colmare lacune eventualmente accumulate  

ABILITÀ COMUNICATIVE: Le prove intermedie prevedono necessità di interagire con i compagni di classe allo scopo di affinare le proprie capacità comunicative.    

CAPACITÀ DI APPRENDIMENTO: Le prove intermedie prevedono una interazione con il docente il quale ne esprime un giudizio ed invita lo studente a produrne una nuova versione nel caso di insufficienza. Ciò costringere lo studente a misurare le proprie capacità di apprendimento del contenuto delle lezioni e progressivamente migliorarlo sino a raggiungere la sufficienza.  

Prerequisiti

Programmazione Java o C++

Ingegneria del Software

Probabilità e Statistica   

Programma

o modelli di qualità  del software   

o indici e attributi di qualità 

o verifica e convalida della qualità

o affidabilità del software

o modelli statici e dinamici di affidabilità

o statistical testing o metodi analitici e simulativi di stima dell’ affidabilità

o sicurezza del software o metodi di stima della sicurezza.  

Modalità di Valutazione Oltre alla prova finale d'esame, il corso prevede prove intermedie che consentono allo studente di giudicare il livello di preparazione raggiunto e colmare lacune eventualmente accumulate.Esse non sono prove di autovalutazione, bensì hanno valore di esonero della parte di programma cui si riferiscono. Dunque non sono materia di esame finale. Esse sono tuttavia valutate e le si assegna un voto che, con il dovuto peso, entrerà nel calcolo del voto finale.Dette prove prevedono una interazione con il docente il quale ne esprime un giudizio ed invita lo studente a produrne una nuova versione nel caso di insufficienza.Ciò porta lo studente a misurare le proprie capacità di apprendimento delle lezioni e progressivamente migliorarlo sino a raggiungere la sufficienza.Tra le prove intermedie è previsto  un project work che si espleta in due passi. Il consiste nella stesura di un progetto di un programma  di verifica affidabilità del software che viene dal docente valutata e, se superata, ammette lo studente al secondo passo che è la realizzazione in linguaggio Java o C++ del progetto. Lo studente che abbia superate tutte le prove intermedie può accedere alla prova finale .

Testi adottati

  • Giuseppe Iazeolla  Affidabilità e Sicurezza del Software, Franco Angeli, 2013
  • Schach S.R., Software Engineering (3rd Edition), Irwin oppure
  • Schach S.R., Classical and Object Oriented Software Engineering (4th Edition), Irwin
  • Sommerville I., Software Engineering (6th Edition), Addison-Wesley
  • Giuseppe Iazeolla MQS Class Notes, University of Rome TorVergata