PROGETTO DI SISTEMI WEB
Anno accademico e docente
Non hai trovato la Scheda dell'insegnamento riferita a un anno accademico precedente?
Ecco come fare >>
- English course description
- Anno accademico
- 2015/2016
- Docente
- ALBERTO LEONE
- Crediti formativi
- 6
- Periodo didattico
- Primo Semestre
- SSD
- ING-INF/05
Obiettivi formativi
- Il corso ha lo scopo di fornire allo studente gli strumenti e le abilità necessarie per la progettazione di applicazioni e sistemi WEB: tecnologie, architetture, modelli e metodologie, integrati con la capacità di valutare, selezionare, analizzare, integrare.
E' necessaria una profonda conoscenza del vasto e mutevole panorama di tecnologie.
Le principali conoscenze acquisite saranno:
- protocolli, linguaggi e formati di base;
- soluzioni tecnologiche disponibili per la realizzazione delle componenti server e di quelle client;
- tecnologie e architetture, per lo sviluppo delle applicazioni più semplici, di complesse applicazioni multi-pagina, applicazioni su singola pagina fino ad applicazioni mobile: i framework e i pattern di progettazione utilizzabili;
- metodi e strumenti utilizzabili nella progettazione, realizzazione e gestione dei sistemi WEB: modelli, metodi di analisi e sviluppo delle specifiche, gestione di progetto.
Le principali abilità (ossia la capacità di applicare le conoscenze acquisite) saranno:
- capacità di analizzare un sistema web comprendendone le caratteristiche generali, individuando le soluzioni tecnologiche utilizzate e, quando presenti, le peculiarità e le eccezionalità
- capacità di progettare un'applicazione web definendone tecnologie e funzionalità
- capacità di governare la realizzazione del progetto gestendone rischi e imprevisti Prerequisiti
- Nessuno
Contenuti del corso
- Parte Prima - Panoramica dei Servizi e delle Tecnologie (32 ore)
Introduzione
Sistemi Web. Definizioni generali. Esempi e modelli significativi
Tecnologie di base: HTTP, HTML, CSS, Javascript
Evoluzione tecnologica: HTML5, CSS3, le nuove API HTML5, evoluzione del linguaggio javascript, framework javascript
Tecnologie server side: SSI, CGI, Server API, PHP, framework PHP, Coldfusion, ASP.NET (Web Form, MVC, Web pages), JEE (JSP, Servlet, JSF)
Web services: XML-RPC, SOAP, REST
Parte seconda - progettazione di sistemi WEB (16 ore)
Ingegneria del WEB
Metodologia e gestione progetto: pianificazione e gestione di progetto. Tecniche per il controllo di progetto. Supporto metodologico (standard di progetto, documentazione).
Modelli per il progetto di sistemi WEB: UML, UML-WE e IFML
Progettazione di sistemi WEB: specifica dei requisiti, progettazione del modello dei dati, progettazione dell'ipertesto, progettazione dell'architettura (Modelli di traffico e dimensionamento). Metodi didattici
- Il corso prevede la presentazione di tutti gli argomenti teorici in aula;
su ogni argomento è prevista un'esercitazione basata sull'analisi o sulla stesura di frammenti di codice o sulla predisposizione di prototipi mirati a sperimentare ed utilizzare le diverse tecnologie.
Le esercitazioni vengono condotte in aula illustrando e modificando il codice; gli studenti possono accedere a tutti gli esempi di codice tramite github. Modalità di verifica dell'apprendimento
- La valutazione finale viene effettuata attraverso un esame mirato a valutare il livello di apprendimento degli elementi teorici e pratici previsti dal programma.
L'esame è articolato in due prove svolte in giorni differenti:
Prova scritta consistente in
- Domande a risposta multipla (non è ammesso l'utilizzo delle dispense o altro materiale)
- Frammenti di progetto/esercizi
Prova orale
- Approfondimenti sui contenuti teorici,
La prova scritta viene valutata con un voto nell'intervallo da 0 a 33. La prova orale, accessibile solo a chi ottiene un voto allo scritto di almeno 18/30, consente di confermare il voto dello scritto o ritoccarlo di più o meno 3/30.
La prova orale può essere eseguita anche in appelli o sessioni d'esame successivi a quelli dello scritto.
Il superamento dell'esame sottintende l'acquisizione delle conoscenze e delle abilità specificate negli obiettivi formativi dell'insegnamento. Testi di riferimento
- Tutto il materiale utilizzato a lezione (slide e codice) è reso disponibile agli studenti.
Testi di riferimento:
Programming the World Wide Web, R. W. Sebesta, Addison-Wesley, 7 edizione (2012), ISBN 978-0132665810 (tecnologie web)
Web Engineering: The Discipline Of Systematic Development Of Web Applications, G. Kappel et al (a cura di), John Wiley & Sons Inc, 2006, ISBN 978-0470015544 (ingegneria dei sistemi web)
Interaction Flow Modeling Language - Model-Driven UI Engineering of Web and Mobile Apps with IFML, M. Brambilla, P. Fraternali, The MK/OMG Press, 2015, ISBN 978-0-12-800108-0 (modellazione di applicazioni web)
Approfondimenti:
Applicazioni Web con UML, J. Conallen, Pearson, 2002, ISBN: 978-8871921907 (sul W-UML)
Scaling for E-Business: Technologies, Models, Performance, and Capacity Planning, D.A. Menasce, V.A.F. Almeida, Prentice Hall, 2000, ISBN 0-13-086328-9 (approfondimento sui modelli di traffico e dimensionamento)
Sito del World Wide Web Consortium, http://www.w3c.org