Architetture software (2007/2008)

Corso disattivato non visibile

Codice insegnamento
4S00008
Crediti
5
Coordinatore
Luca Vigano'
L'insegnamento è organizzato come segue:
Modulo Crediti Settore disciplinare Periodo Docenti
Teoria 4 INF/01-INFORMATICA 2° Q Luca Vigano'
Laboratorio 1 INF/01-INFORMATICA 2° Q Luca Vigano'

Obiettivi formativi

Modulo: Teoria
-------

Il corso fornisce nozioni scientifiche e professionali di base sulle architetture software, presentando un'analisi comparata di architetture software assieme a linguaggi di modellazione e di specifica delle stesse.


Modulo: Laboratorio
-------

Il corso fornisce nozioni scientifiche e professionali di base sulle architetture software, presentando un'analisi comparata di architetture software assieme a linguaggi di modellazione e di specifica delle stesse.

Programma

Modulo: Teoria
-------

- Analisi e specifica di architetture software:
-- Introduzione all'architettura del software.
-- Tassonomia di architetture software di uso più frequente.
-- Gestione delle configurazioni di architetture software.
-- Modellazione, analisi e specifica di architetture software ad oggetti.
-- Analisi comparata di architetture software in casi di studio.

- Linguaggi di modellazione di architetture software e di specifica di vincoli su modelli di architetture ad oggetti:
-- Il linguaggio standard UML 2 (notazione e metodologie d'uso dei principali tipi di diagrammi).
-- Il linguaggio standard OCL 2 (notazione e metodologie d'uso dei principali costrutti).
-- Il linguaggio standard Z (notazione e metodologie d'uso dei principali costrutti).

- Validazione e collaudo nelle architetture software:
-- Prototipazione rapida di specifiche di architetture software e automazione nel collaudo di prototipi di architetture.
-- Strategie di collaudo di architettura: di unità, di integrazione, di sistema.
-- Metodi di collaudo di architetture software ad oggetti.


Modulo: Laboratorio
-------

Il corso fornisce agli studenti le metodologie e gli strumenti necessari nella progettazione di processo. Vengono presentati programmi per il computer-aided software engineering (CASE) che possono essere utilizzati nella realizzazione dei progetti proposti.
In particolare, gli studenti vengono esposti all'uso di UML nella progettazione e realizzazione di piccoli componenti software e agli strumenti per il controllo delle versioni di progetto.

Attraverso lo svolgimento di alcuni progetti in piccoli gruppi di lavoro (di 3 o 4 studenti), lo studente apprenderà come lavorare in modo efficace all'interno di un piccolo team di sviluppo e come documentare i concetti di software design attraverso la creazione di opportuni diagrammi UML.

Modalità d'esame

La verifica del profitto avviene mediante uno scritto sugli argomenti del programma. Il superamento della prova porta all'acquisizione di 4 crediti, a cui si aggiunge 1 credito per il corso di Laboratorio (nel quale la verifica dell'apprendimento dei concetti proposti avviene mediante lo sviluppo di alcuni progetti in gruppi di lavoro, composti da 3 o 4 studenti.)
È facoltà del docente sostituire la prova scritta con una prova orale, in particolare nel caso in cui non sia possibile evitare che gli studenti accedano ad appunti, libri, fotocopie. La prova scritta deve, infatti, essere svolta senza l'ausilio di appunti o altro.