This site uses only proprietary and third party technical cookies. By continuing to browse the site you are agreeing to our use of cookies. I agree I want to find out more
Browse the Department site:
Browse the Teaching site:

Programme of Course "Web Engineering"

Development of standard-compliant Java web applications



Type of course unit:

Bachelor Degree in Computer Science curriculum General: Elective
Master Degree in Computer Science curriculum GSEEM: Elective
Master Degree in Computer Science curriculum General: Elective

Level of course unit:

Undergraduate Degrees
Postgraduate Degrees


2nd semester

Number of credits:

Bachelor Degree in Computer Science: 6 (workload 150 hours)
Master Degree in Computer Science: 6 (workload 150 hours)


Giuseppe Della Penna (GiuseppedotDellaPennaatunivaqdotit)

1. Course Objectives

The course aims to provide basic knowledge about all the kinds of web application and the technologies used to implement them. After an in-depth study of base technologies such as XML, markup languages (HTML 4 and HTML 5) and style sheets, the course will focus on server-side and client-side programming languages, in particular Java and JavaScript. Finally, we will discuss accessibility and validation issues for web applications.

2. Course Contents and learning outcomes (Dublin Descriptors)

Topics of the course include:

  • Web Standards. Accessibility and Usability: what they mean and how to achieve them. Web Content Accessibility Guidelines (WCAG). XML and markup languages.
  • Structure of web contents: HTML4, XHTML1, HTML5. Correct use of HTML and crossbrowser compatibility techniques. Accessible HTML. Rich User Applications (RIA) accessibility. Web content validation.
  • Presentation of web contents: CSS2 and CSS3. Correct use of style sheets and crossbrowser compatibility techniques. Graceful degradation of style sheets.
  • CSS stylesheets and web page layout: base techniques. Responsive design.
  • Logic of web contents, server side: Java Servlets. Sessions in Java web applications. Databases in Java web applications: JDBC, connection pooling. Dynamic content generation: Java template engines. Web application security: server-side basic techniques.
  • Logic of web contents, client side: Javascript. Javascript as an object-oriented programming language. The HTML Document Object Model. The CSS Document Object Model. The HTML event model. DOM manipulation with Javascript. Gracefully degrading Rich User Interaction with Javascript e CSS. AJAX. Introduction to JQuery.

On successful completion of this course, the student should

  • understand all the basic web development technologies
  • apply all the latest technologies to the development of web applications, develop server-side web applications in Java and create dynamic, accessible, versatile client-side interfaces
  • be able to design, implement and evaluate a computer-based system, process, component, or program to meet desired needs.
  • assess the accessibility level of a web site and choose the most suitable technologies for its development
  • be able to analyze a problem, identify and define the computing requirements appropriate to its solution.
  • be able to function effectively on teams to accomplish a common goal.
  • be able to use current techniques, skills, and tools necessary for computing practice.
  • continue learning all the evolving technologies related to the development of web applications

3. Course Prerequisites

Base knowledge of Java programming

4. Teaching methods and language

Lectures and exercises


Reference textbooks

  • Danny Goodman, JavaScript & DHTML Cookbook. O'Reilly. 2007.
  • Vincenzo Della Mea, Luca di Gaspero, Ivan Scagnetto, Programmazione web lato server, seconda edizione. Apogeo. 2010.
  • Jeffrey Zeldman, Ethan Marcotte, Sviluppare Siti Con Gli Standard Web, terza edizione. Apogeo. 2010.

5. Assessment Methods

Formative assessment: the students are encouraged to actively participate to the lectures by making questions and discussing the solutions adopted in the developed examples. Summative assessment: project development and presentation (in team) and oral exam (individual) (80:20). The project to be developed consists of a complete website, whose specifications are given by the teacher and are valid for the entire academic year of publication. The project evaluation aims to verify its level of completion and documentation (15% of total mark), the proper use of the basic web development technologies (30%), the level of client-side and server-side (Java) programming (20%), the ability to exploit the latest technologies (5%), and the crossbrowser compatibility, usability and accessibility features (30%). The oral exam starts from the discussion of the project, and aims to verify the achieved level of teamwork (20% of total mark) as well as the individual contribution to the project, with strong emphasis on the knowledge of the main technologies presented in the course (40%), the ability to apply them where and as appropriate (20%), as well as the ability to design, implement and properly present a complex web application (20%).

Course information last updated on: 22 febbraio 2019, 18:26