First cycle
degree courses
Second cycle
degree courses
Single cycle
degree courses
School of Engineering
Course unit
INP6075457, A.A. 2018/19

Information concerning the students who enrolled in A.Y. 2018/19

Information on the course unit
Degree course Second cycle degree in
IN2371, Degree course structure A.Y. 2017/18, A.Y. 2018/19
bring this page
with you
Degree course track CYBERSYSTEMS [002PD]
Number of ECTS credits allocated 6.0
Type of assessment Mark
Course unit English denomination WEB APPLICATIONS
Department of reference Department of Information Engineering
E-Learning website
Mandatory attendance No
Language of instruction English
Single Course unit The Course unit can be attended under the option Single Course unit attendance
Optional Course unit The Course unit can be chosen as Optional Course unit

Teacher in charge NICOLA FERRO ING-INF/05

Course unit code Course unit name Teacher in charge Degree course code

ECTS: details
Type Scientific-Disciplinary Sector Credits allocated
Educational activities in elective or integrative disciplines ING-INF/05 Data Processing Systems 6.0

Course unit organization
Period Second semester
Year 1st Year
Teaching method frontal

Type of hours Credits Teaching
Hours of
Individual study
Lecture 6.0 48 102.0 No turn

Start of activities 25/02/2019
End of activities 14/06/2019

Examination board
Board From To Members of the board
1 A.A. 2018/2019 01/10/2018 15/03/2020 FERRO NICOLA (Presidente)
AGOSTI MARISTELLA (Membro Effettivo)

Prerequisites: Suggested competencies:
- computer networks
- database management systems
Target skills and knowledge: The objective of the course is to learn the methodologies for the design and development of Web applications, practicing them through the implementation of an actual Web application.

This objective calls for:
+ a strong computer science competence on Web engineering, design methodologies and architectural alternatives
+ knowledge of the characteristics of Web 1.0 applications and Web 2.0 application (rich internet application)
+ capability of developing a Web application using Java servlets, Javascript, CSS3 and HTML5
Examination methods: Written Exam at computer:
+ questions on the topics covered during the lectures (moodle quiz)
+ Web application development and programming exercise

Project to design and develop an actual Web application, carried out in student groups via homeworks
+ oral presentation of the project outcomes
+ demo of the developed application
Assessment criteria: The evaluation will be based on the comprehension and knowledge of the notions and methodologies about Web application, on the capability of facing the different phases of the design of a Web application, on the comprehension and knowledge of the models and languages for developing a Web application, on the implementation of a project for the development of a Web application.
Course unit contents: + Design methodologies for Web applications
--- Introduction to Web engineering
--- Requirement analysis
--- Modelling Web applications (contents, hypertext, presentation)
--- Architectures for Web applications

+ Development of Web 1.0 Applications
--- Model-View-Controller (MVC) paradigm
--- Web programming (HTML5, CSS3, Javascript)
--- Web server and Web browser architecture
--- Java servlet and Java Server Pages, Apache Tomcat
--- Development tools: git for code management and maven for the build process

+ Web Services
--- REST Web services
--- SOAP Web services

+ Development of Web 2.0 Applications
--- Introduction to Rich Internet Applications (RIA) and mash-ups
--- Introduction to JSON and XML
--- AJAX and revised MVC paradigm

+ Notions on Web 3.0 applications:
--- semantic representation of the data and RDF
--- open linked data
Planned learning activities and teaching methods: + Lectures

+ Labs
--- use of git and maven
--- use of Apache Tomcat and Java servletsù
--- use of JSP pages
--- use of REST Web services
--- use of HTML and CSS
--- use of Javascript and AJAX
--- use of Javascript libraries, e.g. jQuery and D3 (for graphics)

+ Seminars of visiting colleagues on research topics and/or seminar by companies on the use and perspectives for innovative products based on Web applications, role of the engineer in a company, stage opportunities, simulation of job interviews.

+ Homeworks: there are 2 homeworks (server-side design and development; client-side design and development), to be carried out in group, in order to design and develop a "real" Web application. Homework deadlines are aligned with the contents of the lectures so that students can immediately apply the learned concepts to a case study of their own interests.

+ Oral presentation with slides and demo of the homework project
Additional notes about suggested reading: The teaching material consists of:
- reference book
- instructor's slides
- suggested readings
- examples of homeworks

Suggested readings:
+ 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.
Textbooks (and optional supplementary readings)
  • 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

Innovative teaching methods: Teaching and learning strategies
  • Lecturing
  • Laboratory
  • Problem based learning
  • Case study
  • Working in group
  • Problem solving
  • Work-integrated learning
  • Loading of files and pages (web pages, Moodle, ...)

Innovative teaching methods: Software or applications used
  • Moodle (files, quizzes, workshops, ...)
  • Latex

Sustainable Development Goals (SDGs)
Quality Education Industry, Innovation and Infrastructure