Checking date: 04/04/2024

Course: 2024/2025

Web Applications
Bachelor in Data Science and Engineering (Plan: 392 - Estudio: 350)

Coordinating teacher: ARIAS FISTEUS, JESUS

Department assigned to the subject: Telematic Engineering Department

Type: Compulsory
ECTS Credits: 6.0 ECTS


Requirements (Subjects that are assumed to be known)
- Programming - Data structures and algorithms - Computer Networks - Data bases - Data protection & cybersecurity
The objective of this course is that the student learns to develop complete Web applications with databases, understanding the main protocols used on the Web (HTTP, TLS), applying the main client-side technologies (HTML, CSS, JavaScript) and using a server-side framework combined with an object-relational mapping system for data access.
Skills and learning outcomes
Description of contents: programme
1.- The World Wide Web and related protocols - Transport Layer Security (TLS) - Hypertext Transfer Protocol (HTTP) - Introduction to Web applications 2.- Client-side - Content presentation languages (HTML and CSS) - Client-side programming languages 3.- Server-side - The Model-View-Controller pattern - The model layer (access to relational and non-relational databases, object-relational mapping systems) - The controller layer - The view layer 4.- Other aspects in the development of Web applications - Security - Scalability - Advanced technologies
Learning activities and methodology
Learning activities: THEORETICAL-PRACTICAL CLASSES: In them, the knowledge that students should acquire is presented. Students receive class notes and basic references to help them to follow classes and do subsequent work. Practical exercises and problems will be solved by the students, and tests will be held to assess they have acquired the necessary skills. TUTORING: Individualized assistance to students by the teacher. INDIVIDUAL OR GROUP STUDENT WORK. LABORATORIES: Practical computer exercises. FINAL EXAM. The knowledge, skills and abilities acquired throughout the course will be assessed globally. Methodology: LECTURES: The teacher presents contents with support of computer and audiovisual media. The main concepts of the subject are developed and materials and bibliography are provided to complement students' learning. PRACTICES: Resolution of practical cases, problems, etc. proposed by the teacher, individually or in groups. TUTORING: Individualized assistance to students by the teacher. LABORATORY PRACTICES: Applied / experimental teaching in laboratories under the supervision of a tutor.
Assessment System
  • % end-of-term-examination 30
  • % of continuous assessment (assigments, laboratory, practicals...) 70
Calendar of Continuous assessment
Extraordinary call: regulations
Basic Bibliography
  • Dafydd Sttutard, Marcus Pinto. The Web Application Hacker's Handbook, 2nd ed.. John Wiley & Sons. 2011
  • David Flanagan. Javascript: The Definitive Guide, 6th Edition. O'Reilly Media Inc.. 2011
  • Miguel Grinberg. Flask Web Development, 2nd Edition. O'Reilly Media, Inc.. 2018
  • Rob Larsen. Beginning HTML and CSS. Wrox. 2013
Additional Bibliography
  • Andrew Hoffman. Web Application Security, 2nd Edition. O'Reilly Media, Inc.. 2024
  • David Flanagan. jQuery Pocket Reference. O'Reilly Media, Inv.. 2010
  • David Wong. Real-World Cryptography. Manning Publications. 2021
  • Douglas Crockford. JavaScript: The Good Parts. O'Reilly Media, Inc.. 2008
  • Martin L. Abbott, Michael T. Fisher. Scalability Rules: 50 Principles for Scaling Web Sites. Addison-Wesley Professional; 1 edition . 2011
  • Shameer Kunjumohamed, Hamidreza Sattari, Alex Bretet, Geoffroy Warin. Spring MVC: Designing Real-World Web Applications. Packt Publishing. 2016
  • Simon Harris. HTML5 Unleashed. Sams. 2013

The course syllabus may change due academic events or other reasons.