Corsi di Laurea Corsi di Laurea Magistrale Corsi di Laurea Magistrale
a Ciclo Unico
Scuola di Ingegneria
ICT FOR INTERNET AND MULTIMEDIA - INGEGNERIA PER LE COMUNICAZIONI MULTIMEDIALI E INTERNET
Insegnamento
WEB APPLICATIONS - APPLICAZIONI WEB
INP6075457, A.A. 2018/19

Informazioni valide per gli studenti immatricolati nell'A.A. 2018/19

Principali informazioni sull'insegnamento
Corso di studio Corso di laurea magistrale in
ICT FOR INTERNET AND MULTIMEDIA - INGEGNERIA PER LE COMUNICAZIONI MULTIMEDIALI E INTERNET
IN2371, ordinamento 2017/18, A.A. 2018/19
N0
porta questa
pagina con te
Curriculum INTERNATIONAL MOBILITY [005PD]
Crediti formativi 6.0
Tipo di valutazione Voto
Denominazione inglese WEB APPLICATIONS
Dipartimento di riferimento Dipartimento di Ingegneria dell'Informazione (DEI)
Obbligo di frequenza No
Lingua di erogazione INGLESE
Sede PADOVA
Corso singolo È possibile iscriversi all'insegnamento come corso singolo
Corso a libera scelta È possibile utilizzare l'insegnamento come corso a libera scelta

Docenti
Responsabile NICOLA FERRO ING-INF/05

Mutuante
Codice Insegnamento Responsabile Corso di studio
INP6075457 WEB APPLICATIONS - APPLICAZIONI WEB NICOLA FERRO IN2371

Dettaglio crediti formativi
Tipologia Ambito Disciplinare Settore Scientifico-Disciplinare Crediti
AFFINE/INTEGRATIVA Attività formative affini o integrative ING-INF/05 6.0

Organizzazione dell'insegnamento
Periodo di erogazione Secondo semestre
Anno di corso I Anno
Modalità di erogazione frontale

Tipo ore Crediti Ore di
didattica
assistita
Ore Studio
Individuale
LEZIONE 6.0 48 102.0

Calendario
Inizio attività didattiche 25/02/2019
Fine attività didattiche 14/06/2019
Visualizza il calendario delle lezioni Lezioni 2019/20 Ord.2019

Commissioni d'esame
Commissione Dal Al Membri
1 A.A. 2018/2019 01/10/2018 15/03/2020 FERRO NICOLA (Presidente)
AGOSTI MARISTELLA (Membro Effettivo)
DI NUNZIO GIORGIO MARIA (Supplente)
SILVELLO GIANMARIA (Supplente)

Syllabus
Prerequisiti: Conoscenze suggerite:
- reti di calcolatori
- basi di dati
Conoscenze e abilita' da acquisire: L'obbiettivo dell'insegnamento è imparare le metodologie per la progettazione e sviluppo di applicazioni Web, sperimentandole tramite la realizzazione di una applicazione Web effettiva.

Il conseguimento di questo obbiettivo prevede:
+ acquisizione di una solida competenza informatica di base riguardante il settore della Web Engineerg, le tecniche di analisi dei requisiti, le metodologie di modellazione e progettazione, nonché le alternative architetturali;
+ conoscenza delle caratteristiche, proprietà e funzionamento di applicazioni Web 1.0 e applicazioni Web 2.0 (Rich Internet Applications);
+ acquisizione della capacità di sviluppare un progetto reale di applicazione Web utilizzando il linguaggio di programmazione Java, le Java servlet e le principali tecnologie Web (Javascript, CSS3, HTML5)
Modalita' di esame: Prova scritta al calcolatore
+ domande sugli argomenti svolti a lezione (moodle quiz)
+ esercizio di sviluppo e programmazione di un’applicazione Web

Sviluppo di un progetto effettivo di applicazione Web, svolto a gruppi di studenti tramite homework
+ presentazione finale dei risultati del progetto tramite slide
+ presentazione (demo) dell’applicazione sviluppata
Criteri di valutazione: La valutazione dello studente si baserà sulla comprensione e conoscenza dei concetti e metodologie proposte, sulla capacità di affrontare le diverse fasi della progettazione di una applicazione Web, sulla comprensione dei modelli e linguaggi per sviluppare un’applicazione Web, sulla realizzazione di un progetto di applicazione Web.
Contenuti: + Metodologia per la progettazione di applicazioni Web
--- Introduzione a Web Engineering
--- Analisi dei requisiti per applicazioni Web
--- Modellazione per applicazioni Web (contenuti, ipertesto, presentazione)
--- Architetture per applicazioni Web

+ Sviluppo di applicazioni Web 1.0
--- Paradigma Model-View-Controller (MVC)
--- Programmazione Web (HTML5, CSS, JavaScript)
--- Architettura browser e server Web
--- La tecnologia Java Servlet e Java Server Pages, Apache Tomcat
--- Strumenti per lo sviluppo: git per la gestione del codice e maven per il processo di compilazione

+ Web Services
--- Web Services di tipo REST
--- Web Services di tipo SOAP

+ Sviluppo di applicazioni Web 2.0
--- Introduzione a Rich Internet Application (RIA) e mash-up
--- Introduzione a JSON e XML
--- AJAX e rivisitazione paradigma MVC

+ Nozioni su applicazioni Web 3.0
--- rappresentazione semantica dei dati e RDF
--- open linked data
Attivita' di apprendimento previste e metodologie di insegnamento: + Lezioni frontali in aula

+ Laboratorio:
--- utilizzo di git and maven
--- utilizzo di Apache Tomcat e Java servlet
--- utilizzo di pagine JSP
--- utilizzo di servizi Web di tipo REST
--- utilizzo di HTML e CSS
--- utilizzo di Javascript e AJAX
--- utilizzo di librerie Javascript, ad esempio jQuery e D3 (per la grafica)

+ Seminari, effettuali da colleghi in visita, su tematiche di ricerca e/o incontri con aziende sull'uso e prospettive per prodotti innovativi basati su applicazioni Web, ruolo dell'ingegnere in azienda, opportunità di stage, simulazione colloqui di lavoro.

+ Homework: sono previsti 2 homework (progettazione e sviluppo server-side; progettazione e sviluppo client-side) riguardanti lo sviluppo di un'applicazione Web "reale" da svolgere a gruppi. Le scadenze degli homework sono allineate con i contenuti del corso in modo tale che gli studenti possano immediatamente applicare i contenuti appresi ad un caso i studio di loro interesse

+ Presentazione orale con slide e demo del progetto realizzato tramite homework
Eventuali indicazioni sui materiali di studio: Il materiale di studio consiste di:
+ testo di riferimento
+ lucidi del corso messi a disposizione degli studenti
+ letture consigliate e di approfondimento
+ esempi di homework svolti

Tutto il materiale di studio è disponibile sulla piattaforma Moodle (elearning.dei.unipd.it).

Letture consigliate:
+ Casteleyn, S., Daniel, F., Dolog, P., and Matera, M. (2009). Engineering Web Applications. Springer-Verlag Berlin Heidelberg
+ Johnson, D.C., White, A., and Charland, A. (2007). Enterprise AJAX: Strategies for Building High Performance Web Applications. Prentice Hall.
+ Møller, A. and Schwartzbach, M. I. (2006). An Introduction to XML and Web Technologies. Addison-Wesley.
+ Rossi, G., Pastor, O., Schwabe, D., and Olsina, D., editors (2008). Web Engineering: Modelling and Implementing Web Applications. Springer-Verlag, London, UK.
+ Tanenbaum, A. S., and M. Van Steen (2006). Distributed Systems: Principles and Paradigms (2nd Edition). Prentice Hall.
Testi di riferimento:
  • Kappel, G., Pröll, B., Reich, S., and Retschitzegger, W., Web Engineering. The Discipline of Systematic Development of Web Applications. New York, USA: John Wiley & Sons, 2006. Cerca nel catalogo
  • Shklar, L. and Rosen, R., Web Application Architecture: Principles, Protocols and Practices. New York, USA: John Wiley & Sons, 2009. Cerca nel catalogo

Didattica innovativa: Strategie di insegnamento e apprendimento previste
  • Lecturing
  • Laboratory
  • Problem based learning
  • Case study
  • Working in group
  • Problem solving
  • Work-integrated learning
  • Files e pagine caricati online (pagine web, Moodle, ...)

Didattica innovativa: Software o applicazioni utilizzati
  • Moodle (files, quiz, workshop, ...)
  • Latex

Obiettivi Agenda 2030 per lo sviluppo sostenibile
Istruzione di qualita' Industria, innovazione e infrastrutture