Tecnologie Web: Come fare il progetto (Standard o Complesso)
|
|
Home/
Teaching
|
A.A. 2004/2005
Ci sono due tipi di progetto:
Progetto Standard
Il progetto Standard è il progetto richiesto secondo la normale modalità d'esame, che
prevede una prova scritta (Esame Scritto) e un progetto.
Tutti gli studenti, tranne casi eccezionali (vedi Progetto Complesso), devono svolgere questo tipo di progetto.
Lo scopo del progetto è di dimostrare che lo studente ha acquisito le
conoscenze di base delle tecnologie presentate e ha capito come integrarle in un sistema coerente. Per questo motivo si chiede di utilizzare esclusivamente
le tecnologie trattate durante il corso e non altre.
In pratica, come si procede?
- Innanzitutto, bisogna fare molte prove. Rifare gli esempi mostrati a lezione, provare a modificarli, guardare
la documentazione per cercare altri comandi/istruzioni. I dubbi si chiariscono solo facendo queste prove, correggendo gli errori e verificando
soluzioni alternative.
- Procedete con ordine, imparando ad usare le tecnologie presentate durante il corso.
- Iniziate fin da subito a immaginare un possibile caso applicativo nel quale integrare le varie tecnologie. Ricordate
che l'obiettivo è dimostrare di avere capito tutti gli aspetti importanti, non di presentare un sistema simil-commerciale.
Il caso applicativo può anche essere semplice, non cercate per forza un caso complicato.
- Assicuratevi di essere in grado di spiegare nei dettagli ogni parte del progetto che presentate. Questo vale per tutti i componenti del gruppo (quindi non sono accettate risposte come "questa parte non la conosco perchè non l'ho fatta io").
- Consegnate codice e relazione riguardante il progetto entro le date prefissate.
Requisiti indispensabili del progetto - Il progetto deve presentare le seguenti caratteristiche:
- HTML/XHTML
- Le pagine possono essere sviluppate sia in formato HTML che XHTML. Se usate HTML, dovete sapere cosa fare per convertirle in XHTML.
- Tutte le pagine HTML/XHTML devono essere validate.
- Il layout delle pagine deve essere sviluppato con CSS. Scegliete un template adeguato che preveda comunque la definizione di almeno
due colonne, header e footer. Strutturate i menù e arricchite le pagine con alcune delle soluzioni grafiche più' diffuse. I siti di riferimento indicati nel Materiale Didattico
rappresentano riferimenti molto utili per questo.
- XML/XML Schema/XSLT/XPath/XQuery
- Il progetto deve prevedere dati definiti come documenti XML (ad esempio, prevedere la ricerca in un archivio o catalogo di prodotti, documenti, oggetti).
- Tali documenti devono rappresentare istanze di strutture dati definite utilizzando XML Schema (obbligatorio) e DTD (facoltativo).
- Tutti i documenti XML devono essere ben-formati e validati (mostrare la validazione o comunque, a richiesta, sapere come fare e cosa usare).
- Prevedere la visualizzazione di tali documenti attraverso trasformazione XSLT (da XML a HTML/XHTML) e applicazione di CSS.
- Progettare funzionalità che richiedano l'impiego di espressioni XPath e l'uso di XQuery.
- JSP
- Il progetto deve implementare JSP (Java Server Pages) per la creazione dinamica di contenuti.
- Le JSP devono essere utilizzate per accedere a dati residenti in un database o descritti da documenti XML. (ATTENZIONE: anche se NON viene utilizzato un database, occorre conoscere comunque le modalità di accesso via JDBC.)
- Come database può essere utilizzato lo stesso database MySQL impiegato nel corso di "Laboratorio di Informatica Applicata" del Prof. Sassi.
- Utilizzate Tomcat come JSP container e come Web Server. Non è necessario utilizzare Apache.
- Si suggerisce Eclipse quale tool per lo sviluppo e il deployment delle JSP.
Progetto Complesso
A chi realizza un progetto di questo tipo non è richiesto di sostenere l'esame scritto. Il motivo di ciò è
che la complessità sia della progettazione che delle tecnologie sono decisamente maggiori rispetto la modalità normale.
Questa modalità di esame, quindi, è consigliata a chi:
- Possiede conoscenze tecniche superiori rispetto la media del corso (e in particolare conosce Java e lo sviluppo di applicazioni Web);
- Desidera impegnarsi in un lavoro più impegnativo (ma più formativo) rispetto a quanto farebbe svolgendo la normale procedura di esame.
Requisiti indispensabili del progetto - Il progetto deve presentare le seguenti caratteristiche:
- Tutti i punti elencati per il Progetto Standard.
- J2EE EJB (Enterprise Java Beans)
- Come framework J2EE si chiede di utilizzare JBoss (salvo precedenti esperienze con altri framework commerciali quali IBM WebSphere, BEA Weblogic, etc.)
- L'architettura del sistema deve essere strutturata in 3 livelli chiaramente distinti (Presentation, Application, Data)
- Devono essere messe in evidenza le caratteristiche peculiari degli EJB quali la differenza tra Session EJB ed Entity EJB, la gestione degli aspetti transazionali, persistenza, sicurezza (obbligatori) e del connection pooling (facoltativo).
- I dati acceduti devono risiedere su di un database relazionale.
- Devono essere messe in evidenza e costituirà oggetto di discussione le differenze (vantaggi e svantaggi) tra JSP/Servlet ed EJB, come scegliere una soluzione rispetto l'altra nello sviluppare funzionalità del sistema, che impatto ha questa scelta sul sistema e sul progetto.
Testi e Documentazione di Riferimento (tutti i testi sono presenti in Biblioteca di Dipartimento o accedibili via Web)
Iscrizione all'esame dei progetti e Consegna materiale
Gli studenti che intendono presentare un progetto devono comunicarlo al docente almeno 7 giorni prima della data di esame dei progetti.
Sempre entro 7 giorni dalla data di esame dei progetti, tutto il materiale relativo al progetto (codice, descrizione) deve essere consegnato al
docente. Eventuali modifiche apportate dopo la consegna del materiale devono essere documentate (scrivere quali modifiche sono state fatte)
e verranno discusse in sede d'esame. Le modifiche devono essere di lieve entità.
Il termine di 7 giorni (comunicazione nominativi e consegna materiale) è TASSATIVO, non chiedete deroghe.