INGEGNERIA DEL SOFTWARE

Pasquale FOGGIA INGEGNERIA DEL SOFTWARE

0622700002
DIPARTIMENTO DI INGEGNERIA DELL'INFORMAZIONE ED ELETTRICA E MATEMATICA APPLICATA
CORSO DI LAUREA MAGISTRALE
INGEGNERIA INFORMATICA
2014/2015

OBBLIGATORIO
ANNO CORSO 1
ANNO ORDINAMENTO 2012
PRIMO SEMESTRE
CFUOREATTIVITÀ
990LEZIONE
Obiettivi
IL CORSO MIRA ALL’APPRENDIMENTO DI MODELLI, METODI E STRUMENTI PER LA PROGETTAZIONE E REALIZZAZIONE DI SISTEMI SOFTWARE DI GRANDI DIMENSIONI, E DEI PRINCIPALI PROCESSI CHE INTERVENGONO NEL CICLO DI VITA DEL SOFTWARE.

CONOSCENZE E CAPACITÀ DI COMPRENSIONE
CONOSCENZA DEI PRINCIPALI DESIGN PATTERN. COMPRENSIONE DEI DOCUMENTI DI ANALISI E DI PROGETTO REALIZZATI UTILIZZANDO IL LINGUAGGIO UML.

CONOSCENZA E CAPACITÀ DI COMPRENSIONE APPLICATE
SAPER PROGETTARE UN SISTEMA SOFTWARE UTILIZZANDO I PRINCIPALI DESIGN PATTERN; SAPER ESPRIMERE L’ANALISI DEI REQUISITI E LE SCELTE PROGETTUALI USANDO UML; SAPER UTILIZZARE STRUMENTI SOFTWARE PER LA DOCUMENTAZIONE E IL TESTING AUTOMATICI E IL CONTROLLO DELLE REVISIONI DEI PROGRAMMI.

AUTONOMIA DI GIUDIZIO
SAPER INDIVIDUARE I METODI PIÙ APPROPRIATI PER PROGETTARE E REALIZZARE UN SISTEMA SOFTWARE COMPLESSO IN BASE AL CONTESTO IN ESAME.

ABILITÀ COMUNICATIVE
SAPER DOCUMENTARE E COMUNICARE CON GLI OPPORTUNI FORMALISMI I REQUISITI DI UN SISTEMA SOFTWARE E LE SCELTE PROGETTUALI EFFETTUATE. SAPER ORGANIZZARE NELL'AMBITO DI UN TEAM IL PROCESSO DI PRODUZIONE DEL SOFTWARE.

CAPACITÀ DI APPRENDERE
SAPER APPLICARE LE CONOSCENZE ACQUISITE A CONTESTI DIFFERENTI DA QUELLI PRESENTATI DURANTE IL CORSO, ED APPROFONDIRE GLI ARGOMENTI TRATTATI USANDO MATERIALI DIVERSI DA QUELLI PROPOSTI
Prerequisiti
PER IL PROFICUO RAGGIUNGIMENTO DEGLI OBIETTIVI PREFISSATI È RICHIESTA LA CONOSCENZA DEL LINGUAGGIO JAVA E DELLA PROGRAMMAZIONE ORIENTATA AGLI OGGETTI.
Contenuti
INTRODUZIONE AL CORSO
INTRODUZIONE AL CICLO DI VITA DEL SOFTWARE. QUALITÀ DEL SOFTWARE: CARATTERISTICHE DEL PRODOTTO E CARATTERISTICHE DEL PROCESSO. (ORE LEZIONE/ESERCITAZIONE/LABORATORIO 4/0/0)
CICLO DI VITA DEL SOFTWARE: METODI TRADIZIONALI.
IL MODELLO A CASCATA. ANALISI DEI REQUISITI. PROGETTAZIONE. IMPLEMENTAZIONE. TEST. DEPLOYMENT E MANUTENZIONE. EVOLUZIONI DEL MODELLO A CASCATA. IL FRAMEWORK RUP (CENNI). APPROCCI MODEL-DRIVEN (CENNI). (ORE 14/12/0)
CICLO DI VITA DEL SOFTWARE: METODI AGILI.
LIMITAZIONI DEI METODI TRADIZIONALI. METODI AGILI: PRINCIPI FONDAMENTALI. SVILUPPO TEST-DRIVEN. REFACTORING. I METODI XP E SCRUM (CENNI). (ORE 10/12/0)
DESIGN PATTERN
INTRODUZIONE AI DESIGN PATTERN. PATTERN DI CREAZIONE. PATTERN STRUTTURALI. PATTERN COMPORTAMENTALI. (ORE 10/12/0)
STRUMENTI SOFTWARE
UNIT TESTING: JUNIT. BUILD AUTOMATICO: ANT. SISTEMI DI CONTROLLO DELLE REVISIONI: SUBVERSION. (ORE 6/0/10)

TOTALE ORE 44/36/10
Metodi Didattici
L’INSEGNAMENTO CONTEMPLA LEZIONI TEORICHE, ESERCITAZIONI IN AULA ED ESERCITAZIONI PRATICHE DI LABORATORIO. NELLE ESERCITAZIONI IN AULA VIENE ASSEGNATO AGLI STUDENTI, DIVISI PER GRUPPI DI LAVORO, UN PROGETTO DA SVILUPPARE DURANTE TUTTO LO SVOLGIMENTO DEL CORSO. IL PROGETTO COMPRENDE UNITARIAMENTE TUTTI I CONTENUTI DELL’INSEGNAMENTO ED È STRUMENTALE ALL’ACQUISIZIONE, OLTRE CHE DELLE CAPACITÀ DI PROGETTAZIONE E REALIZZAZIONE DI UN SISTEMA SOFTWARE PARTENDO DALLE SPECIFICHE, ANCHE A SVILUPPARE E RAFFORZARE LE CAPACITÀ DI LAVORARE IN TEAM. NELLE ESERCITAZIONI IN LABORATORIO GLI STUDENTI UTILIZZANO STUMENTI SOFTWARE PER LA DOCUMENTAZIONE E IL TEST AUTOMATICI E IL CONTROLLO DELLE REVISIONI.
Verifica dell'apprendimento
LA PROVA DI ESAME È FINALIZZATA A VALUTARE NEL SUO COMPLESSO: LA CONOSCENZA E LA CAPACITÀ DI COMPRENSIONE DEI CONCETTI PRESENTATI AL CORSO; LA CAPACITÀ DI APPLICARE TALI CONOSCENZE PER LA RISOLUZIONE DI PROBLEMI DI ANALISI E PROGETTAZIONE DEL SOFTWARE; L’AUTONOMIA DI GIUDIZIO, LE ABILITÀ COMUNICATIVE E LA CAPACITÀ DI APPRENDERE
LA PROVA CONSISTE NELLA DISCUSSIONE DI UN ELABORATO, SVOLTO DURANTE IL CORSO, IL CUI SCOPO È VALUTARE LA CAPACITÀ DI APPLICARE LE CONOSCENZE, L’ESPOSIZIONE IN FORMA SCRITTA, L’AUTONOMIA DI GIUDIZIO E LA CAPACITÀ DI LAVORARE IN GRUPPO, E DA UN COLLOQUIO ORALE, IL CUI SCOPO È VALUTARE LE CONOSCENZE E LE CAPACITÀ DI COMPRENSIONE ACQUISITE, LA CAPACITÀ DI APPRENDERE DIMOSTRATA, L’ESPOSIZIONE ORALE.
L'ELABORATO CONSISTE IN UN PICCOLO PROGETTO SOFTWARE, DA SVOLGERE IN GRUPPO, IN CUI OCCORRE SVOLGERE E DOCUMENTARE TUTTE LE FASI DEL CICLO DI VITA.
IL COLLOQUIO ORALE VERTERÀ SU TUTTI GLI ARGOMENTI DEL CORSO E LA VALUTAZIONE TERRÀ CONTO DELLE CONOSCENZE DIMOSTRATE DALLO STUDENTE E DEL GRADO DEL LORO APPROFONDIMENTO, DELLA CAPACITÀ DI APPRENDERE DIMOSTRATA, DELLA QUALITÀ DELL’ESPOSIZIONE.
NELLA VALUTAZIONE FINALE, ESPRESSA IN TRENTESIMI, LA VALUTAZIONE DELL'ELABORATO PESERÀ PER IL 40% MENTRE IL COLLOQUIO ORALE PER IL 60%. LA LODE POTRÀ ESSERE ATTRIBUITA AGLI STUDENTI CHE DIMOSTRINO DI SAPER APPLICARE LE CONOSCENZE ACQUISITE CON AUTONOMIA ANCHE IN CONTESTI DIVERSI DA QUELLI PROPOSTI NEL CORSO.
Testi
TESTI DI RIFERIMENTO
- I. SOMMERVILLE, INGEGNERIA DEL SOFTWARE (8 ED.), ADDISON-WESLEY, 2007.
- DISPENSE AGGIUNTIVE FORNITE DAL DOCENTE

ALTRI TESTI CONSIGLIATI
E. GAMMA ET AL., DESIGN PATTERNS, PEARSON EDUCATION ITALIA, 2002.
Altre Informazioni
-
  BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2016-09-30]