|
Università
di Padova
|
Diploma in Ingegneria Informatica
Corso di Fondamenti di Informatica 2
2 Moduli
|
A.A. 2001/2002
Versione 1.0 19/09/2001
Modalità d'esame
- Le prove intermedie
- Il progetto
- Integrazione per gli studenti provenienti da Corsi di Laurea
- Altre modalità e casi particolari
Torna alla pagina principale
Le prove intermedie
Il corso ha, come si desume dagli obiettivi
e dal programma, sia una valenza teorica che
pratica. Al fine di agevolare gli studenti nel progressivo apprendimento
delle tecniche e metodiche trattate, l'esame può essere superato
con prove durante il semestre così organizzate:
- 1ª prova (presso il centro locale: data)
- Progetto e sviluppo sulla carta di un semplice programma in Java
in cui è richiesta la conoscenza della sintassi
del linguaggio, della programmazione object-oriented,
dell'uso (elementare) di stream per l'I/O
- 3 domande di teoria sul programma sviluppato fino
alla settimana (compresa) precedente le due settimane di pausa
- Non è consentita la consultazione di
testi e/o appunti
- Durata complessiva della prova: 3 ore
- Su ciascuna delle due parti della prova
verrà assegnato un voto in
trentesimi
- 2ª prova (presso il centro locale: data)
- Prima parte (teoria): una decina di domande a risposta multipla sulla seconda
parte del programma di teoria (quella non coperta dalla
prima prova intermedia)
- Non è consentita la consultazione di
testi e/o appunti
- Durata della prima parte della prova: un'ora
- Seconda parte (programmazione): progetto e sviluppo
sulla carta di un programma Java che fa uso di un algoritmo
studiato o di una sua variante, possibilmente con uso di qualcuna
delle funzionalità di libreria sviluppate
- È consentita la consultazione di testi e
appunti
- Durata della seconda parte della prova: due ore
- Su ciascuna delle due parti della prova
verrà assegnato un voto in
trentesimi
- 3ª prova PROGETTO (a casa)
- Sviluppo di un progetto articolato assegnato dal
docente locale, di norma in collaborazione
con un altro studente (non sono comunque
ammessi gruppi di più di 2 studenti). È
responsabilità degli studenti fissare
in fase di analisi del progetto una equa suddivisione
dei compiti, esplicitamente riportata nella documentazione
che essi produrranno a corredo del progetto stesso.
- Durata dello svolgimento: circa 3-4 settimane
- Al progetto verrà assegnato un voto in
trentesimi, che è normalmente comune ad entrambi
gli studenti: i docenti si riservano di assegnare voti
difformi in casi di evidente disparità di contributo.
A chi sosterrà positivamente tutte le prove
verrà proposto un voto,
media ponderata dei 5 voti assegnati (peso 1.5 per
il progetto, peso 1 per le altre 4 prove). Al fine di poter
proporre un voto, potranno essere assegnati alle singole
prove i voti (insufficienti) 16/30 e 17/30:
in questo caso la media viene proposta SOLO se l'altra prova omologa
risulta sufficiente. Se viene proposto un voto,
questo potrà essere registrato in occasione di uno dei due
orali della sessione di febbraio 2002, previa breve discussione
in quell'occasione sul progetto realizzato. Lo studente che, per
MOTIVATE RAGIONI, non potesse effettuare questa registrazione
in febbraio, DEVE avvisare il docente (anche per email) e indicare
la prevista data di registrazione che potrà avvenire
preferibilmente in occasione di una successiva prova orale.
Comunque, salvo deroghe decise caso per caso,
il voto proposto ha validità fino al 31/12/2002.
Il progetto
Il progetto viene assegnato dal docente locale, in una
determinata data,
prelevandolo da una lista numerata prestabilita.
La coppia di studenti assegnatari
analizzerà il tema procedendo al progetto e alla
implementazione di classi che risolvano il problema proposto.
Ci si attenga scrupolosamente alle seguenti indicazioni.
- Il Progetto viene assegnato a coppie di studenti (a singoli, in caso di integrazione): la fase di definizione delle specifiche, generali e di dettaglio, potrà essere svolta insieme; la realizzazione delle classi progettate andrà invece suddivisa tra i due studenti e nell’elaborato dovrà essere indicato il contributo specifico di ciascuno (si veda più avanti).
- Il tema di ciascun Progetto è volutamente espresso in forma generica in modo da lasciare agli studenti una certa libertà nella definizione delle specifiche: sarà pertanto oggetto di valutazione anche la completezza e consistenza delle specifiche definite nonché la ricchezza di funzionalità progettate e realizzate.
- Le classi e i metodi dovranno includere commenti esplicativi e intestazioni in formato javadoc; alla fine si provvederà a generare, con l’omonima utilità (quella della versione 1.2.x o successive), l’ipertesto descrittivo.
- Ogni Progetto include la realizzazione di un’interfaccia grafica che può costituire anche il software di collaudo delle funzionalità realizzate. La complessità relativa di questa parte del Progetto va regolata in base alle conoscenze di cui dispone la coppia di studenti in relazione all'interfaccia grafica di Java (AWT o Swing) e al tempo a disposizione, in modo da non sacrificare la parte funzionale del Progetto. È spesso possibile sviluppare in forma grafica anche il dialogo con l’utente (per l’input dei dati, per l’interpretazione di comandi ecc.).
- Conviene che la fase di studio del problema venga organizzata in 2 passi. In un primo passo (analisi) vengono individuate le classi e i metodi principali (tipicamente quelli pubblici), e le principali relazioni che legano le classi. In un successivo passo (design) si approfondisce l'analisi statica individuando eventuali package, dettagliando tutte le interfacce e i prototipi. La fase di implementazione provvede a definire tutti gli attributi e metodi (pubblici, privati, statici, ecc.) delle classi e la trasformazione delle associazioni. Queste fasi vanno sviluppate con l'ausilio del diagramma delle classi di UML, i cui schemi andranno inclusi nella documentazione finale. I ruoli di ciascuno dei 2 studenti del gruppo nelle varie fasi andranno esplicitamente indicati nella documentazione. Anche la fase di test, il cui impegno di tempo non va trascurato, dovrebbe essere suddivisa tra i 2 studenti attraverso il collaudo separato delle varie parti, cui far seguire il collaudo complessivo.
- Qualora la realizzazione si debba appoggiare su strutture di dati di tipo generale, è richiesto l'uso della libreria FI2, in particolare anche quando esista una struttura di dati analoga nella libreria base di Java. Per ogni informazione in merito si consulti il sito del corso http://linda.dei.unipd.it/fi2/.
- Alla fine gli studenti dovranno consegnare al docente locale, alle date previste nel programma del corso, (al docente ufficiale e in un momento qualsiasi, invece, nel caso di integrazione), un elaborato a stampa, e su dischetto/i 1.44Mbyte formato DOS (oppure un CD-R), eventualmente in forma zipped, il sorgente della documentazione a stampa (nel formato di scrittura scelto, preferibilmente Windows Word 97) e quello del codice Java (in formato testo ASCII DOS). In occasione degli incontri di gennaio, gli studenti faranno una breve dimostrazione di quanto realizzato in presenza del docente locale (gli studenti che sviluppano l'integrazione non sono tenuti a questo).
- L'organizzazione del contenuto del dischetto o CD dovrà essere la seguente:
- /FI2prog01.<cl>.Prog<nn>.txt
Un file di testo, ove <cl> rappresenta il centro locale (Fl, Pd, Ro, o Tv) e <nn> il numero di progetto, con il testo del progetto e il nome degli studenti che lo hanno sviluppato, secondo il seguente formato:
FI2 2001/2002
Centro di Treviso
Moro Michele matr. 998877
Stefano Lazzarini matr. 010101
Progetto n. 12 [INTEGRAZIONE se integrazione]
Testo progetto: Si realizzi bla bla
Richiede la libreria FI2: si
Si avvia con: java FI2prog00.Tv.Prog12.Vai 35 true pippo.txt
- /runme.bat
batch file che contiene il (i) comando(i) atto(i) ad avviare la applicazione,
se possibile direttamente dal floppy o CD (senza assumere alcun particolare
valore per le lettere che identificano i drive del computer);
in quest'ultimo caso, se il programma fa uso della libreria FI2, è opportuno
che venga inclusa sul floppy (o CD) quella parte
della libreria che viene utilizzata in modo
da garantire l'avviamento e il funzionamento del programma
- /src/FI2prog01/<cl>/Prog<nn>
root directory dei sorgenti: ogni programma appartiene
al package FI2prog10.<cl>.Prog<nn>.
Quindi, per esempio, per il progetto n. 12 di Rovigo, i sorgenti
si trovano nel directory /src/FI2prog01/Ro/Prog12 e
formano il package FI2prog01.Ro.Prog12.
- /classes/FI2prog01/<cl>/Prog<nn>
Analogamente al sorgente ma per i compilati.
- /docs
Directory della documentazione.
- /docs/FI2prog01.<cl>.Prog<nn>.doc
Il file contenente la documentazione scritta
(ad esempio FI2prog01.Tv.Prog12.doc)
(l'estensione del file risulta diversa se non Word)
- /docs/FI2prog01/<cl>/Prog<nn>
directory root dei file HTML generati da javadoc.
Se del caso, si potrà fornire i file, organizzati nel modo
sopra previsto, in una versione compressa (zipped) in un
unico file FI2prog01.<cl>.Prog<nn>.zip.
- Per la stesura della documentazione si adottino le seguenti istruzioni:
- NON includere i file prodotti da javadoc
(verranno forniti solo in formato elettronico).
- La documentazione deve essere prodotta con il seguente formato per il testo base:
Font | Times New Roman |
Corpo | 11 |
Spaziatura | Singola |
Margine sinistro | 2 cm |
Margine destro | 2 cm |
Margine alto | 2 cm |
Margine basso | 2 cm |
- Dovrà essere organizzata nel modo seguente:
- Copertina con l'anno di corso, il centro locale, i nomi e matricole degli studenti, il numero del progetto
- Il tema proposto seguito da un'analisi (1-2 pagine). L'analisi NON deve includere dettagli di implementazione ma solo una riflessione sul tema proposto, una definizione degli obiettivi da raggiungere, una prima idea sull'organizzazione dell'interfaccia grafica e sulla utilizzazione o meno della libreria FI2.
- Un manuale utente (3-4 pagine, non più di 6, escluse le figure), che spiega tutte le modalità operative per l'USO del software prodotto. Dovrà includere: modalità di installazione, linea di comando per l'attivazione con eventuali parametri, scopi e modalità d'uso dell'interfaccia grafica, eventuali file di supporto e/o generati dal programma.
- Un manuale di progetto e uno di implementazione (ovvero complessivamente un manuale tecnico) (in tutto 6-8 pagine, non più di 12 escluse figure e spezzoni di codice), che includano, il primo le risultanze della fase di progetto (suddivisione dei compiti, schemi UML, organizzazione delle classi, eventuali riferimenti alla teoria); il secondo commenti aggiuntivi a ciò che si può già desumere dal codice e da javadoc, con particolare riferimento alle parti più articolate e a quelle in cui la comprensione è meno immediata (si suggerisce per questa parte una suddivisione in base alle classi). NON SI DEVE includere il codice ma solo eventualmente qualche spezzone se funzionale alla spiegazione.
- Lo svolgimento del progetto e la sua discussione
con il docente sono comunque obbligatori per il superamento
dell'esame, costituendo titolo di ammissione all'orale.
Il progetto va consegnato di norma al proprio docente
locale, prima possibile, in una delle
date previste nel programma schema.
Lo studente che decide di svolgere il progetto successivamente
(o non riesce a portarlo a termine entro i tempi di consegna),
deve farlo pervenire direttamente
al docente ufficiale (software su floppy MS-DOS o CD-R,
più la documentazione
stampata) con almeno una settimana di anticipo rispetto alla
data dell'orale che intende sostenere. Se il progetto non riceve
un voto, può essere insufficiente (nel qual caso va rifatto),
oppure soggetto a discussione (con indicazione (disc), il voto
può essere assegnato in sede di discussione).
Integrazione per gli studenti provenienti da Corsi di Laurea
Gli studenti provenienti dai Corsi di Laurea, e ammessi
a seguire questo corso, possono trovarsi in varie situazioni:
- Chi deve sostenere l'integrazione di FI1, deve concordarla con il docente
di quell'esame (prof. Marcello Dalpasso). Nel caso lo studente debba sostenere
anche l'integrazione di FI2, con il docente di FI1 lo studente
potrà concordare di svolgere una sola prova di integrazione
valida per entrambi i corsi: in questo caso il tema da svolgere
sarà assegnato dal docente di FI2 e discusso, nell'ordine FI1-FI2,
con entrambi i docenti;
- Chi non ha sostenuto durante il corso di laurea l'esame di FI2 o
equivalente, deve seguire questo corso al pari
degli altri studenti di diploma;
- Chi deve sostenere un'integrazione per FI2, può evitare
di frequentare il corso e può sostenere l'esame
limitandosi a sviluppare un progetto
in Java che verrà assegnato personalmente dal docente. I docenti locali
sono disponibili a fornire un po' di assistenza in caso di bisogno, limitatamente
al periodo e ai giorni di laboratorio del corso presso i centri locali.
Il progetto va sviluppato secondo le stesse linee previste per gli
studenti 'normali' (vedi note).
Completato il progetto, lo studente dovrà farlo pervenire
al docente almeno una settimana prima della discussione orale dello stesso,
durante la quale, se lo studente lo desidera, potrà
presentare anche ogni materiale utilizzato e/o sviluppato
durante l'esame sostenuto al corso di laurea (programma, appunti, eventuale
tesina/progetto). La discussione dovrebbe aver luogo preferibilmente
in occasione degli appelli orali dell'esame, o altrimenti in data ed orario
da concordare via email con il docente. Sulla base del progetto, la prova
integrativa risulterà superata, nel qual caso
il voto assegnato nel corso di laurea sarà approvato,
oppure verranno richieste modifiche. Si fa obbligo a questo tipo
di studenti di dare avviso al docente, anche via email,
relativamente alla propria situazione
ENTRO LE PRIME DUE SETTIMANE di corso
(e comunque al più presto dopo il riconoscimento
parziale dell'esame da parte dell'apposita commissione), precisando
i propri dati identificativi, le modalità con cui
ha sostenuto l'esame alla laurea e il voto assegnato.
È altresì
facoltà dello studente di rinunciare al voto precedentemente acquisito
ai fini dell'esame in questo corso, sottoponendosi alle prove intermedie
e/o alle prove d'esame normali: in questo caso viene a tutti gli effetti
trattato come gli altri studenti 'normali', e per questo VIVAMENTE consigliato
a frequentare il corso.
Altre modalità e casi particolari
Prove di programmazione
Chi non avesse sostenuto o superato alcuna delle prove intermedie
di programmazione, ne dovrà sostenere una
in occasione di uno degli appelli scritti (si tenga
presente che, mentre il primo scritto di febbraio è in
concomitanza con la seconda prova intermedia e si
svolge presso i centri locali, gli altri si svolgono
a Padova presso il DEI, salvo avviso contrario).
Nel caso non si fosse sostenuta o superata una delle prove di programmazione,
è facoltà dello studente decidere se sostenere
una domanda di programmazione durante un appello orale oppure
sostenere un appello scritto: la domanda di programmazione
all'orale consiste della richiesta di sviluppare un segmento di
codice (ad esempio un metodo di sorting o di ricerca per una
delle strutture dati conosciute, l'utilizzazione di una classe della
libreria FI2, nel qual caso la vostra stampa della libreria è consultabile,
un trattamento di stringhe, o simile) e il tempo assegnato è di
15-20 min. Se lo studente sceglie la domanda di programmazione all'orale,
in caso di fallimento, il docente si riserva di decidere singolarmente se
mantenere valido o meno il credito acquisito nella prova intermedia
positiva. Nel caso si scelga il compito scritto, si tenga invece presente
che la CONSEGNA dell'elaborato, indipendentemente dalla
valutazione che gli verrà assegnata,
ANNULLA automaticamente qualsiasi
credito acquisito nelle prove intermedie di programmazione,
(anche se entrambe positive, nel caso lo studente valuti
la convenienza di sostenere la prova scritta, nel secondo
appello di febbraio o nella sessione autunnale, per migliorare
il voto). Si precisa che coloro che sostengono la prima prova
scritta della sessione di recupero autunnale e la falliscono,
possono sostenere la seconda prova della stessa sessione (vale
comunque la regola della 'consegna con potere annullante
per le prove precedenti' poco sopra esposta e
il fatto che un voto positivo sulla parte
di programmazione è
prerequisito per sostenere un eventuale, successivo orale).
Chi invece sostiene la prima prova scritta autunnale
con esito positivo, e deve sostenere un orale, può decidere
se farlo nell'orale di quell'appello o nell'orale dell'appello
successivo. Va da sé che se si fallisce il primo orale,
la possibilità di sostenere l'orale nell'appello successivo,
senza ripetere lo scritto, è decisa caso per caso dal docente.
Conseguentemente, chi non riesce ad ottenere un risultato
positivo entro la seconda prova di programmazione
della sessione autunnale, deve rifare scritto ed orale in uno
degli appelli di recupero che verranno previsti nell'A.A. 2002/2003
(in quanto, a partire da quell'A.A., il corso NON sarà più
tenuto): in questa ipotesi il docente si riserva,
caso per caso e su motivata richiesta della studente,
di mantenere valido o meno
l'eventuale voto acquisito nel progetto.
Prove di teoria (orali)
Chi non avesse sostenuto o superato una o entrambe
le prove intermedie di teoria, dovrà sostenere
una prova orale: nel caso di un credito positivo in
una prova di teoria intermedia, lo studente ha facoltà di
decidere se sostenere l'orale sull'intero programma (annullando
tale credito all'atto della presentazione in sede di
prova orale) oppure solo sulla parte
non coperta dalla prova intermedia positiva,
mantenendo il valore del credito. NON è ammesso
all'orale chi non abbia un voto positivo in almeno
una prova intermedia di programmazione o in una
prova scritta, e un voto positivo nel progetto.
Iscrizione agli appelli d'esame
Sia per gli appelli orali che per quelli scritti, è
richiesta l'iscrizione in bacheca elettronica
(vedi bacheca CADDI).
NON è invece richiesta l'iscrizione alle prove intermedie, essendovi
ammessi tutti gli studenti della lista che verrà costruita, e
nemmeno per la sola registrazione di un voto proposto, che comunque
deve avvenire in data apposita, se comunicata, oppure in sede d'orale.
Frequenza
I corsi del secondo anno nell'A.A. 2001/2002 NON sono più
soggetti ad alcun vincolo con riferimento all'obbligo di frequenza. Pertanto
tutti gli studenti iscritti al secondo anno possono frequentare il corso
e sostenere tutte le prove fissate, avendo come limiti solo quelli
suesposti. Studenti iscritti fuori corso o al 3^ anno che desiderassero
frequentare le lezioni e i laboratori quest'anno, verranno ammessi alla
frequenza, con priorità inferiore agli studenti in corso,
entro la capienza massima prevista per il centro locale di afferenza.
Per la posta elettronica utilizzare
l'indirizzo mike@maya.dei.unipd.it
Torna alla pagina principale