logo-polimi
Loading...
Risorse bibliografiche
Risorsa bibliografica obbligatoria
Risorsa bibliografica facoltativa
Scheda Riassuntiva
Anno Accademico 2004/2005
Facoltà Scuola di Ingegneria dell'Informazione
Insegnamento 061237 - INGEGNERIA DEL SOFTWARE
Docente Baresi Luciano
Cfu 7.50 Tipo insegnamento Monodisciplinare

Corso di Studi Codice Piano di Studio preventivamente approvato Da (compreso) A (escluso) Insegnamento
Ing Ind - Inf (1 liv.)(ord. 509) - MI (116) INGEGNERIA INFORMATICA* POZZZZ061237 - INGEGNERIA DEL SOFTWARE

Programma dettagliato e risultati di apprendimento attesi

Obiettivi

Rendere lo studente in grado di realizzare progetti software complessi, utilizzando le moderne tecniche e strumenti dell’ingegneria del software.

Prerequisiti

La programmazione, anche di rete, in linguaggio C.

Distribuzione indicativa dell'attività didattica

32 ore di lezione, 30 ore di esercitazione, 32 ore di laboratorio

Programma delle lezioni e delle esercitazioni

 

PROGETTAZIONE DEL SOFTWARE

Progettazione orientata agli oggetti e programmazione in Java.

Architetture client-server e progettazione distribuita in Java

Interazione tra componenti attraverso eventi e progettazione delle interfacce utente.

UNIFIED MODELING LANGUAGE

Descrizione dell'architettura software in UML.

Cenni ai requisiti e alla specifica del problema mediante UML.

TEST DEL SOFTWARE

Obiettivi, fondamenti e tecniche.

PROCESSO DI SVILUPPO

Il processo di sviluppo e di evoluzione del software.

La gestione delle configurazioni

 

Il laboratorio

Gli studenti sono divisi in classi che svolgono lo stesso lavoro in aule o orari diversi. Obiettivo dell’attività di laboratorio è lo sviluppo di un elaborato da realizzare in Java. Lo studente deve dimostrare, tramite l’elaborato, la propria conoscenza dei linguaggi, metodi e strumenti introdotti nel corso, e la propria capacità di utilizzarli per la progettazione del software. L’attività di laboratorio è assistita dai responsabili, ma l’elaborato deve essere sviluppato dallo studente in modo autonomo. In caso di insufficiente disponibilità di posti di lavoro singoli nelle aule attrezzate, potranno essere formati gruppi di non più di due studenti per svolgere un elaborato di dimensioni maggiori.

La valutazione dallo studente viene effettuata sul complesso del lavoro svolto e deriva dalla frequente interazione informale docente/discente. La frequenza al laboratorio assume quindi una particolare importanza. La mancata partecipazione ad alcune sessioni di laboratorio può pertanto pregiudicare l’esito finale. Contattare tempestivamente i responsabili di laboratorio se si prevede di non potere seguire alcune sessioni. 

L'attività svolta in laboratorio permette di ottenere un massimo di 4 punti, ed è considerata sufficiente se lo studente ottiene almeno 2 punti.
 Non è previsto il recupero del laboratorio. Pertanto in caso di valutazione insufficiente lo studente dovrà ripetere il corso nell'anno accademico successivo: saranno annullati gli eventuali risultati ottenuti durante le prove in itinere e non sarà possibile partecipare agli appelli.

Per assegnare una valutazione sufficiente sono adottati i seguenti criteri:

autonomia, originalità e qualità nella realizzazione dei programmi Java proposti durante l'attività di laboratorio;

presenza alle sessioni di laboratorio;

impegno durante l'attività di laboratorio.



Note Sulla Modalità di valutazione
Le prove in itinere e il laboratorio assegnano in tutto 30 punti. Ulteriori 2 o 3 punti sono assegnati a discrezione dei docenti per elaborati di laboratorio di particolare valore, per soluzioni molto brillanti degli scritti o di esercizi o quesiti proposti durante l’anno. Si rammenta l'obbligatorietà del laboratorio. Prove in itinere: Sono previste due prove scritte durante lo svolgimento del corso, collocate nei due periodi di sospensione dell'attività didattica. Ogni prova assegna un massimo di 13 punti ed è considerata valida se lo studente ottiene almeno 6 punti, con il vincolo che la somma dei due punteggi sia almeno 16. Chi non si presenta a una o entrambe le prove intermedie, oppure ottiene un punteggio inferiore a 6 in una delle due prove, oppure non ottiene almeno 16 punti complessivi deve sostenere una prova scritta, che verte sull'intero programma, da svolgere in uno qualunque degli appelli dell'anno accademico corrente. L'esame viene superato se, oltre ad ottenere almeno 16 punti nella parte scritta, vengono ottenuti almeno 2 punti nel laboratorio. Per ogni prova, il docente fissa una o più date in cui è possibile visionare il proprio compito. Appelli: Gli studenti sono ammessi agli appelli se hanno superato il laboratorio e si sono regolarmente iscritti tramite Poliself nei tempi prescritti, avendo inoltre rinunciato espressamente per tempo a un eventuale precedente voto sufficiente per la parte scritta. Negli appelli il punteggio massimo della prova sarà di 26 punti e la soglia di validità sarà di 16 punti, a cui sommare il risultato del laboratorio. Come rinunciare a un voto positivo? Lo studente che intende rinunciare a un voto sufficiente deve presentarsi di persona al docente alla data fissata per la visione degli scritti, presentando il tesserino. Senza rinuncia esplicita, il voto è immediatamente registrato e non sarà possibile partecipare agli appelli successivi.

Bibliografia

1.      B. Liskov, J. Guttag, Program Development in Java:
Abstraction, Specification, and Object-Oriented Design.
Addison Wesley, 2000

2.      E. Damiani e M. Madravio. UML PRATICO, (solo i cap. 4 e 5). Pearson Italia

3.      H. M. Deitel, P. M. Deitel,Vol 1+2:   Java Fondamenti di programmazione+ Java Tecniche avanzate di programmazione, Apogeo,Milano.

4.      Dispense (lucidi) in pdf distribuite durante l’anno. 

Il corso è basato sul testo (1) e sulle dispense (4), integrate con gli altri testi. Il testo (3) può essere sostituito anche altri testi avanzato di programmazione Java fra i molti disponibili, come il testo online: B. Eckel, Thinking in Java, 2nd edition:
http://www.mindview.net/Books/TIJ/DownloadSites
Il testo (2) può essere sostituito o integrato da altri testi su UML, come Fowler M, UML Distilled.
Addison Wesley.

Software:

Ambiente di programmazione per Java: Eclipse (www.eclipse.org).

Ulteriori informazioni sul materiale software saranno rese disponibili dai responsabili di laboratorio durante lo svolgimento del corso.


Mix Forme Didattiche
Tipo Forma Didattica Ore didattiche
lezione
32.0
esercitazione
30.0
laboratorio informatico
32.0
laboratorio sperimentale
0.0
laboratorio di progetto
0.0

Informazioni in lingua inglese a supporto dell'internazionalizzazione
Insegnamento erogato in lingua Italiano
schedaincarico v. 1.6.5 / 1.6.5
Area Servizi ICT
18/01/2021