INGEGNERIA DEL SOFTWARE - SERLab

Transcript

INGEGNERIA DEL SOFTWARE - SERLab
INGEGNERIA DEL
SOFTWARE
A.A. 2014 – 2015
Pasquale Ardimento, Nicola Boffoli, Danilo Caivano,
Giuseppe Visaggio
Presentazione
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
Presentazione
IL PIANO
3
DEL
CORSO
Presentazione
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
Presentazione
Modello Didattico
ð Per ogni argomento:
Analisi dei problemi per un aspetto specifico
dello sviluppo software;
q  Trasferimento dei concetti inerenti il/i
principio/i che mitigano il problema;
q  Esercizi per l’applicazione dei concetti: sarà
utilizzato un caso di studio come filo
conduttore sull’intero processo di sviluppo.
q 
5
Presentazione
Prerequisiti del Corso
ð Principi di Programmazione
ð Algoritmi e strutture dati
ð Capacità di acquisire rapidamente nuovi
linguaggi di programmazione
6
Presentazione
Struttura del Programma
ð E’ costituito da un insieme di Unità Didattiche.
ð Ogni Unità Didattica contiene una o più delle
seguenti componenti
q 
q 
q 
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
Presentazione
I Contenuti del Programma
ð Principi della Ingegneria del Software.
ð Metodi, tecniche e pratiche per lo sviluppo del
software; con particolare attenzione alla:
q 
q 
q 
Architettura e Progettazione delle procedure;
Progettazione delle Basi di Dati;
Verifica e Validazione;
ð Approcci alla produzione
q 
q 
Orientato alle componenti, comprese quelle Open Source
Software;
Orientato ai Servizi.
ð Concetti Generali della Ingegneria del
Software(I.S.).
8
Presentazione
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
Presentazione
SVOLGIMENTO
10
DEGLI
ESAMI
Presentazione
Esami …
ð  L’esame consisterà di due parti:
q Svolgimento
q 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 :
q Gli
studenti devono conoscere i concetti e mostrare di saperli
“applicare”.
Presentazione
… Esami
ð  Gli studenti devono prenotare il loro esame sul sistema
ESSE3, dove per ogni appello troveranno le seguenti date:
q 
q 
q 
Presentazione 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
q 
q 
il voto del caso di studio ed
il voto della prova finale
Presentazione
Regole per gli esami
ð In occasione della PROVA FINALE gli studenti si
devono attenere alle seguenti regole:
q 
q 
q 
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.
Presentazione
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:
q 
q 
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
Presentazione
Caso di Studio: criteri di valutazione
ð  Valutazione di quanto realizzato sulla base di 3 criteri:
q 
q 
q 
q 
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
Presentazione
BIBLIOGRAFIA
Presentazione
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
Presentazione
MATERIALE DIDATTICO
Presentazione
Accesso al Materiale Didattico
ð http://SERLAB13.di.uniba.it/learning/login.php
Presentazione
ð Inserire le informazioni necessarie per
registrarsi, specificando NOME LOGIN e
PASSWORD (saranno usati per tutti gli
accessi successivi).
ð NON DIMENTICATE NOME LOGIN E
PASSWORD!!!
Presentazione
ð Il sistema conferma l’avvenuta registrazione.
ð Usare il nome login e password specificati per
accedere alla piattaforma.
Presentazione
Presentazione
ð  Selezionare Mostra Corsi
ð  Selezionare il corso di interesse relativamente a questo anno
accademico
ð  Accedere al corso
Presentazione
ð Richiedere l’iscrizione al corso
Presentazione
ð Attendere la risposta da parte dell’amministratore
del sistema per l’accesso alla piattaforma
ð La risposta è inviata entro due giorni per email.
Presentazione
DEFINIZIONE
DELLA INGEGNERIA DEL
SOFTWARE
26
Presentazione
Ingegneria del Software per Grandi Sistemi
27
Presentazione
SOFTWARE ENGINEERING BOOK OF
KNOWLEDGE
28
Presentazione
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
Presentazione
Sei aree di conoscenza della ingegenaria del
software
30
Presentazione
L’INGEGNERIA DEL SOFTWARE
OGGI
31
Presentazione
L’Ingegneria del Software nella Smart
Organization: Sistemi Ultra Grandi
32
Presentazione
Impatto dei Sistemi Ultra Grandi
33
Presentazione
ALCUNI
PROFILI PROFESSIONALI RICHIESTI
DAL MERCATO
34
Presentazione
Esempi di profili
ð Profili professionali di esempio:
ð http://serlab.di.uniba.it/files/
Figureprofessionali.pdf
35