Laboratorio Specialistico 1
a.a. 2004-05
Progetto "E-Tech Assistant"
Il testo di questa esercitazione è volutamente poco tecnico per simulare
l’interazione con un committente, che non è interessato ai dettagli tecnici, ma
solo al risultato finale; quindi non definisce interamente un’unica
applicazione e viene pertanto lasciata una certa libertà nel proporre una
soluzione. Inoltre, non è un progetto ex-novo, ma si basa su un lavoro di tesi
che occorre estendere. Ciò richiede di dover capire quello che è già stato
realizzato e individuare dove “mettere le mani” per ottenere il nuovo
obiettivo.
Il giudizio finale
si basera’ su:
·
la maggiore o minore
ricchezza dell’applicazione proposta,
·
la capacità di
estendere un lavoro già realizzato,
·
la quantità di aiuto
richiesto, o errori corretti da un docente, durante lo sviluppo
·
la comprensibilità e
chiarezza della documentazione
·
l’effettivo
funzionamento del programma.
Scopo del progetto è sviluppare un’applicazione ad uso del personale DISI (tecnici HW, tecnici SW, personale addetto agli arredi, amministrativi, ecc.) per visionare e gestire il materiale hardware, software e gli arredi contenuti nei locali del DISI (uffici, laboratori, magazzini, aule, ecc.). Inoltre, l’applicazione deve coadiuvare il personale amministrativo nell’assegnazione delle aule e laboratori per le attività didattiche e seminariali. Infine, l’applicazione deve monitorare i materiali che vengono inviati per riparazione a ditte specializzate o nei laboratori dell’Università.
L’applicazione richiesta deve fornire sia supporto per visite virtuali (da web) sia informazioni ausiliarie ad una visita in presenza. Mentre il primo caso e' abbastanza ovvio, nel secondo caso si ipotizza che grazie ad un palmare o cellulare 3G un addetto che si trova all'interno del DISI possa ricevere informazioni sul locale che sta man mano visitando. Le informazioni dipendono sia dal locale visitato che dai permessi associati all’addetto (un tecnico HW può visionare il materiale hardware di un ufficio, ma non gli arredi dell’ufficio, un amministrativo può assegnare un’aula ad un docente).
Le parti fondamentali richieste per lo sviluppo di quest’applicazione sono:
· un’applicazione client che interagisce da web (per visita virtuale),
· un’applicazione client che interagisce da palmare/cellulare (con gli ovvi vincoli dovuti alla povertà di questo tipo di client, per visita in presenza).
· Una documentazione tecnica che descrive in dettaglio l’applicazione realizzata.
MS .Net , con Visual Studio e C# , SQL Server
Accessibile dai laboratori DISI: SW2.
Ciascun gruppo può indicare l’orario preferito di utilizzo per prenotare una macchina nel laboratorio, ma non è richiesto che lo sviluppo dell’applicazione avvenga tutto nel laboratorio del DISI. È permesso lavorare a casa, fermo restando che l’applicazione consegnata deve funzionare nel nostro laboratorio e che nessuno, in particolare i tecnici, deve essere coinvolto nell’installazione e/o funzionamento su macchine private del sistema e/o applicativi necessari allo svolgimento del progetto.
Per monitorare l’andamento del lavoro dei vari gruppi, in modo da evitare dispersioni, verranno fissate delle milestone il cui rispetto verrà valutato in fase di correzione finale.
Per evitare inutili rigidità, ciascun gruppo fisserà le proprie, con i seguenti vincoli:
Ciascuna fase di lavoro verrà seguita in particolare da alcuni docenti; si richiede a ciascun gruppo di presentarsi un congruo numero di volte ai docenti interessati in ciascuna fase in modo da permettere di verificare la sensatezza del prodotto durante lo svolgimento, finché c’è tempo per modificarlo, invece che in fase di valutazione finale.
La tabella dei docenti coinvolti nella supervisione delle varie parti è riportata al termine del documento.
Ciascun gruppo deve indicare via email settimanalmente se ha o no intenzione di presentarsi durante le ore di spiegazione a ciascun docente coinvolto nella fase di progetto che si sta sviluppando (come da piano del lavoro).
La realizzazione del progetto si basa su una tesi di laurea svolta da Davide Rizzo sotto la supervisione della Prof.ssa Barbara Catania. Davide Rizzo ha realizzato un applicazione Web (uso di SQL server e Php) per la gestione di procedure dipartimentali.
Il gruppo di lavoro partirà dalla base di dati sviluppata in tale tesi e dovrà estenderla per garantire le funzionalità che verranno descritte in maggior dettaglio nel seguito.
Si richiede di suddividere il monte ore previsto per l’esame (150 ore) per ciascun membro del gruppo fra le varie attività richieste per lo svolgimento. Si noti che per i gruppi formati da più di un individuo la somma totale delle ore risulterà maggiore di 150, perché gran parte delle attività non richiedono la partecipazione di tutti i membri del gruppo.
Le date di consegna delle varie parti verranno
scelte liberamente dal gruppo, con il vincolo che la fase B termini entro il 1
novembre e la fase C entro il 1 dicembre. Si suggerisce di lavorare prevalentemente
nel primo semestre, ma e’ consentito anche ritardare le ultime fasi, purche’ si
concludano prima del 20-9-2005. Una volta stabilite le
scadenze, il loro mancato rispetto portera’ ad una
penalizzazione sul voto finale.
Il voto finale non potra’ essere assegnato fino al completamento del laboratorio, neppure per chi eventualmente non partecipasse alle fasi ancora da completare. Chi dopo la consegna avesse urgenze o problemi per la registrazione del voto si regoli di conseguenza, avvisando per tempo i docenti.
Documento da consegnare:
1.
Base di Dati
Si richiede un documento che descrive la base di dati di partenza e specifica le modifiche che si ritengono necessarie al fine di ottenere il risultato richiesto. Inoltre, il documento deve riportare i ruoli che un utente può ricoprire e le viste e le operazioni che il ruolo permette di effettuare sui dati.
2.
Funzionalità
delle applicazioni
Si suggerisce di raccogliere requisiti relativi alle funzionalità ragionevoli per l’applicazione documentandosi sulla tesi di Davide Rizzo. Tutte le funzionalità del sistema sviluppato da Davide Rizzo si devono ritrovare in “E-Tech Assistant”. Inoltre, devono essere integrate tutte le nuove funzionalità previste da questo documento.
A titolo esemplificativo, si elencano alcune operazioni che non possono mancare.
Operazioni possibili:
- collegamento e autenticazione
- inserimento di materiale in un’aula/ufficio
- rimozione di materiale da un’aula/ufficio (questa è da considerarsi un’operazione definitiva)
- cambiamento di destinazione di un locale (un aula che diventa un’ufficio)
Operazioni possibili:
- catalogo generale dei locali presenti al DISI
- catalogo dei materiali per tipo (HW,SW,arredi)
- catalogo per immatricolazione
- catalogo organizzato per locali
- catalogo delle aule libere in un certo momento (giorno-ora)
- prenotazione di aule
Cliccando su un elemento di un catalogo si visualizzano le informazioni supplementari sull’elemento stesso (numero di immatricolazione, anno di acquisto, indirizzo IP, ecc.), comprese le informazioni sullo stato (in funzione, in riparazione…).
Operazione per difetto: viene richiesto il numero del locale in cui ci si trova (simulazione della visita), viene visualizzato l’elenco dei materiali presenti nel locali ed eventualmente si possono avere maggiori dettagli cliccando su un elemento. La vista dei materiali dipende dal ruolo che ricopre l’addetto che effettua la visita.
Altre operazioni come da web, organizzando eventualmente le schermate in modo più ragionevole per lo schermo del palmare e tenendo conto dei limiti computazionali del mezzo.
· Carico/scarico materiale in riparazione.
Sia da Web che da palmare si vuole simulare l’azione del tecnico che gira per uffici/aule/laboratori del DISI e visionando i pezzi di sua competenza decide se inviarli in riparazione. Alla fine del suo giro il tecnico si troverà il “carrello delle riparazioni”. Se i pezzi sono in garanzia, questi vengono inviati alle ditte di competenza mantenendone traccia in una tabella apposita, altrimenti il pezzo viene assegnato ad un tecnico. Si vuol tener traccia dei contenuti dei carrelli fintanto che tutti i pezzi ritornano dalla riparazione.
Documenti da consegnare: sono due diversi documenti:
Il modello ER e il modello relazionale della base di dati è già stato sviluppato nella tesi di Davide Rizzo. In questa parte del progetto occorre individuare i ruoli che gli utenti possono ricoprire e i dati e le operazioni che possono accedere in base ai loro ruoli. Inoltre, dal momento che ci sono due possibili rappresentazioni dei dati (su terminale e su palmare) occorre specificare come si vuole affrontare il problema di due distinte rappresentazioni.
Documento da consegnare: descrizione concisa delle modifiche che si vogliono apportare alla base di dati con relativa giustificazione. Descrizione dei ruoli che gli utente possono ricoprire, dei dati che possono vedere e delle operazioni che possono effettuare su tali dati. Descrizione dell’approccio alla rappresentazione dei dati su i due diversi tipi di dispositivi.
Documento da consegnare: descrizione concisa dell’architettura del sistema complessivo, indicando da quali applicazioni è composto(eg, client(s), server..) e dell’architettura interna di ciascuna di esse precisando quali componenti vengono usate, quali ne sono le interfacce ecc.
Il progetto sarà concluso all’atto della consegna complessiva degli applicativi realizzati, completi dei piani di test individuati come significativi (e sperabilmente superati dall’applicazione consegnata), nonché di un diario dei partecipanti indicante le attivita’ svolte nel corso dell’effettivo sviluppo del progetto, e quante ore sono state dedicate a ciascuna attività. Quest’ultimo documento sarà utile soprattutto per la pianificazione dei laboratori prossimi venturi.
Si ricorda che è necessario inviare a ciascun docente un messaggio indicante se si ha o no intenzione di incontrarsi per ciascun suo giorno di spiegazione che cada nel periodo previsto per lo svolgimento di un’attività nella cui supervisione sia coinvolto.
|
|
Dodero |
Gianuzzi |
Mesiti |
|
|
Mer. 14-16 |
Lu. 14-16 |
Gi. 16-18 |
|
A |
X |
|
X |
|
B |
|
|
X |
|
C |
|
|
X |
|
D |
X |
X |
|
|
E.1 |
X |
|
|
|
E.2 |
|
X |
|
|
E.3 |
|
X |
|
|
E.4 |
|
|
X |
|
F |
X |
|
|
Avendo riscontrato
in passato notevoli carenze nella fase di stesura
della documentazione in generale, quest’anno si e’ deciso di far precedere le
attivita’ di laboratorio vere e proprie (che NON si svolgeranno in aula) da
alcune lezioni in aula che verranno svolte da G.Dodero nelle prime settimane
del corso.
Verra’
fornito inoltre un testo di riferimento, sviluppato dai docenti del Politecnico
di Torino, precisante le regole cui attenersi nella stesura di documentazione tecnica.
La
difformita’ dei documenti consegnati in una qualsiasi fase, rispetto alle
regole ivi contenute, “pesera’” per circa un credito nella valutazione del laboratorio.
Informazioni sull’orario del corso
Tranne che nella
fase di illustrazione delle regole per la scrittura
tecnica, in cui si svolgera’ regolarmente lezione, le ore di lezione presenti
in orario sono da considerarsi puramente indicative dell’impegno da dedicare al
laboratorio.
Gruppo
Cognome |
Nome |
Login |
email |
|
|
|
|
|
|
|
|
|
|
|
Milestones |
Consegna entro il |
|
Piano di lavoro |
|
|
Analisi dei requisiti |
|
|
Base di dati |
|
|
Definizione dell’architettura dell’applicazione e delle componenti necessarie |
|
|
Verifiche intermedie di funzionamento (demo) |
|
|
|
|
|
|
|
|
|
|
Consegna finale |
|