Laboratorio Specialistico 1

a.a. 2004-05

 

Progetto "E-Tech Assistant"

 

Premessa

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.

Progetto

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.

Ambiente di lavoro

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.

 

Milestone

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).

 

Punto di partenza

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.

 

A) Piano di lavoro

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:

 

B) Analisi dei requisiti

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:

 

C) Base di dati

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.

D) Definizione dell’architettura delle applicazioni e delle componenti necessarie

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.

E) Sviluppo dell’applicazione e verifiche intermedie di funzionamento (demo)

  1. Applicazione per l’amministratore del sistema
  2. Applicazione di supporto per visita virtuale
  3. Applicazione di supporto per visita in presenza
  4. Applicazione “carrello delle riparazioni”

F) Consegna finale, con piano dei test e verifica del rispetto del piano di lavoro

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.

 

Tabella dei docenti coinvolti alle varie fasi e relativi orari di spiegazione (primo semestre)

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

 

 

 

Ulteriori informazioni sulla documentazione

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.


Modulo da riconsegnare asap

Gruppo

Componenti

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)

 

  1. Applicazione per l’amministratore

 

  1. Applicazione di supporto per visita virtuale

 

  1. Applicazione di supporto per visita in presenza

 

  1. Applicazione per “carrello delle riparazioni”

 

Consegna finale