INGEGNERIA DEL SOFTWARE A.A. 2014 2015 Pasquale Ardimento, Nicola Boffoli, Danilo Caivano, Giuseppe Visaggio
Sommario ð Il Piano del Corso ð Svolgimento degli Esami ð Bibliografia ð Materiale didattico ð Definizione della Ingegneria del Software ð Software Engineering Book Of Kowledge ð L Ingegneria del software oggi ð Alcuni profili richiesti dal mercato 2
IL PIANO 3 DEL CORSO
Obiettivi ð Conoscenza di principi, tecniche e metodi della Ingegneria del software. ð Abilità nell applicare le conoscenze per lo sviluppo (produzione e manutenzione) delle Applicazioni d Impresa. Con particolare riferimento al processo di sviluppo orientato alle componenti ed ai servizi, con l uso dell Open Source Software (OSS). 4
Modello Didattico ð Per ogni argomento: Analisi dei problemi per un aspetto specifico dello sviluppo software; Trasferimento dei concetti inerenti il/i principio/i che mitigano il problema; Esercizi per l applicazione dei concetti: sarà utilizzato un caso di studio come filo conduttore sull intero processo di sviluppo. 5
Prerequisiti del Corso ð Principi di Programmazione ð Algoritmi e strutture dati ð Capacità di acquisire rapidamente nuovi linguaggi di programmazione 6
Struttura del Programma ð E costituito da un insieme di Unità Didattiche. ð Ogni Unità Didattica contiene una o più delle seguenti componenti Principi: i concetti alla base della Ingegneria del Software che attengono all argomento sviluppato dall Unità Didattica Pratiche: tecniche utilizzate nello sviluppo per realizzare i principi ed eventuali metodi di rappresentazione dei sistemi dal punto di vista dell argomento trattato Esercizi: esempi che chiariscono i principi e la loro applicazione attraverso la illustrazione di un caso di studio che copre tutte la fasi del ciclo di sviluppo del software 7
I Contenuti del Programma ð Principi della Ingegneria del Software. ð Metodi, tecniche e pratiche per lo sviluppo del software; con particolare attenzione alla: Architettura e Progettazione delle procedure; Progettazione delle Basi di Dati; Verifica e Validazione; ð Approcci alla produzione Orientato alle componenti, comprese quelle Open Source Software; Orientato ai Servizi. ð Concetti Generali della Ingegneria del Software(I.S.). 8
Servizi ð E-learning: trasferimento di materiale didattico, non solo quello utilizzato in aula ma anche materiale di approfondimento e rinforzo, consente di eseguire test di autovalutazione. ð Caso di Studio: progetto da eseguirsi in coppia. 9
SVOLGIMENTO 10 DEGLI ESAMI
Esami ð L esame consisterà di due parti: Svolgimento Prova finale di un caso di studio ð Il CASO DI STUDIO, è realizzato in gruppi di due studenti applicando i principi acquisiti durante il corso. Maggiori dettagli sul Caso di Studio saranno forniti al momento della presentazione dei requisiti e delle specifiche. ð La PROVA FINALE consiste in domande (scritte) che vertono su TUTTO il programma e i contenuti del corso (teoria, caso di studio esercitazioni, esercizi, esempi di applicazione, uso di strumenti, etc.) ð Lo studente dovrà mostrare di aver acquisito i concetti e di saperli applicare utilizzando i metodi, le tecniche, gli strumenti presentati a lezione ð E opportuno evidenziare che : Gli studenti devono conoscere i concetti e mostrare di saperli applicare.
Esami ð Gli studenti devono prenotare il loro esame sul sistema ESSE3, dove per ogni appello troveranno le seguenti date: del Caso di Studio e contestuale consegna Prova Finale Verbalizzazione ð NON SONO AMMESSE ALTRE FORME DI PRENOTAZIONE (email a docenti, prenotazioni per telefono etc). Non ci saranno eccezioni di alcun tipo. ð Gli studenti dovranno risolvere per tempo eventuali problemi (mancanza di account, dimenticanza login, password etc etc etc) rivolgendosi a chi di competenza (webmaster). ð Il voto finale dell esame sarà il risultato della media pesata tra il voto del caso di studio ed il voto della prova finale
Regole per gli esami ð In occasione della PROVA FINALE gli studenti si devono attenere alle seguenti regole: Lasciare all ingresso dell aula, al docente, ogni tipo di borsa con il relativo contenuto Deve essere visibile ed autorizzato tutto ciò che lo studente può portare al posto di lavoro destinatogli Gli studenti seduti al posto di lavoro destinatogli non possono avere supporti di memorizzazione digitale mobili, telefonini o qualunque altro strumento digitale. Quando uno studente che sta eseguendo la prova dovesse avere uno di questi prodotti è allontanato dall aula e sospeso dall esame, indipendentemente dalla capacità di funzionare del dispositivo e dall uso che lo studente ne sta facendo.
Caso di Studio: consegna ð Il caso di studio deve essere consegnato su supporto magnetico che deve contenere tutti i prodotti: codice e documentazione. ð Alla consegna il gruppo che ha svolto il caso di studio deve: Installare il sistema risultato e dimostrare che questo funzioni correttamente; Presentare il caso di studio e la sua documentazione mettendo in evidenza come sono stati utilizzate le conoscenze apprese durante il corso e quali attività sono state svolte durante il suo sviluppo. La presentazione deve essere effettuata da tutti gli appartenenti al gruppo di lavoro. 14
Caso di Studio: criteri di valutazione ð Valutazione di quanto realizzato sulla base di 3 criteri: Test di accettazione complessivamente saranno previsti almeno 20 test per ogni caso di studio, opportunamente progettati. Tracciabilità dei prodotti consegnati: 10 controlli a campione su documenti e software Qualità della soluzione implementata aiutata da un sistema automatico, a insindacabile giudizio del valutatore. Qualità della presentazione implementata, a insindacabile giudizio del valutatore. ð Per l ultimo punto della valutazione gli appartenenti ad uno stesso gruppo potrebbero avere una valutazione diversa per lo stesso caso di studio. 15
BIBLIOGRAFIA
Libri di Testo ð Martin Fowler UML Distilled Pearson Addison Wesley, 2004 ð Leszek A. Maciaszek Sviluppo di Sistemi Informativi con UML Pearson Addison Wesley, 2002 ð Carlo Ghezzi, Medhi Jazayeri, Dino Mandrioli Ingegneria del Software, Fondamenti e Principi Pearson Prentice Hall, 2004 ð Lucidi del corso disponibili sulla Piattaforma elearning per la erogazione dei corsi: http://serlab13.di.uniba.it/learning/login.php ð Articoli distribuiti durante il corso
MATERIALE DIDATTICO
Accesso al Materiale Didattico ð http://serlab13.di.uniba.it/learning/login.php
ð Inserire le informazioni necessarie per registrarsi, specificando NOME LOGIN e PASSWORD (saranno usati per tutti gli accessi successivi). ð NON DIMENTICATE NOME LOGIN E PASSWORD!!!
ð Il sistema conferma l avvenuta registrazione. ð Usare il nome login e password specificati per accedere alla piattaforma.
ð Selezionare Mostra Corsi ð Selezionare il corso di interesse relativamente a questo anno accademico ð Accedere al corso
ð Richiedere l iscrizione al corso
ð Attendere la risposta da parte dell amministratore del sistema per l accesso alla piattaforma ð La risposta è inviata entro due giorni per email.
DEFINIZIONE DELLA INGEGNERIA DEL SOFTWARE 26
Ingegneria del Software per Grandi Sistemi 27
SOFTWARE ENGINEERING BOOK OF KNOWLEDGE 28
Aree di conoscenza della Ingegneria del Software ð Requisiti ð Progettazione ð Costruzione ð Testing ð Manutenzione ð Gestione della configurazione ð Gestione dell ingegneria del software ð Processi dell ingegneria del software ð Strumenti e metodi della ingegneria dl software ð Qualità del software 29
Sei aree di conoscenza della ingegenaria del software 30
L INGEGNERIA DEL SOFTWARE OGGI 31
L Ingegneria del Software nella Smart Organization: Sistemi Ultra Grandi 32
Impatto dei Sistemi Ultra Grandi 33
ALCUNI PROFILI PROFESSIONALI RICHIESTI DAL MERCATO 34
Esempi di profili ð Profili professionali di esempio: ð http://serlab.di.uniba.it/files/ Figureprofessionali.pdf 35