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 CYBERSYSTEMS [002PD]
Crediti formativi 6.0
Tipo di valutazione Voto
Denominazione inglese WEB APPLICATIONS
Dipartimento di riferimento Dipartimento di Ingegneria dell'Informazione (DEI)
Sito E-Learning https://elearning.dei.unipd.it/course/view.php?idnumber=2018-IN2371-002PD-2018-INP6075457-N0
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

Mutuazioni
Codice Insegnamento Responsabile Corso di studio
INP6075457 WEB APPLICATIONS - APPLICAZIONI WEB NICOLA FERRO IN0521
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