XSL Content

Web Systems

Centre
Faculty of Engineering - Bilbao
Degree
Bachelor's Degree in Computer Engineering in Management and Information Systems
Academic course
2024/25
Academic year
3
No. of credits
6
Languages
Spanish
Basque

TeachingToggle Navigation

Distribution of hours by type of teaching
Study typeHours of face-to-face teachingHours of non classroom-based work by the student
Lecture-based3045
Applied classroom-based groups1530
Applied laboratory-based groups1515

Teaching guideToggle Navigation

AimsToggle Navigation

[C1] To know the web services architecture models.

[C2] Know the basic technologies that support the web, in particular those that facilitate the integration and exchange of information between web services.

[C3] Adopt a structured and orderly approach to design, develop and deploy web applications.

[C4] Identify and evaluate the security requirements needed in web services.



Module competences (M03-Information Systems) to which they relate:

- Ability to integrate ICT solutions and business processes to meet the information needs of organizations, enabling them to achieve their objectives effectively and efficiently, thus giving them competitive advantages. --> [C1] and [C2].

- Ability to determine the requirements of the information and communication systems of an organization taking into account security aspects and compliance with regulations and legislation in force. --> [C3] and [C4].

- Ability to actively participate in the specification, design, implementation and maintenance of information and communication systems. --> [C3]

TemaryToggle Navigation

Detailed time planning of the contents.





MASTER CLASSES AND CLASSROOM PRACTICE



WEEK 1

- Presentation of the subject and research lines of the professors.

- Installation of Burp Suite, Python, PyCharm, Wireshark, Geckodriver and View Source Chart.

- Testing of the development environment. Simple examples to get familiar with Python and PyCharm.



WEEK 2

- HTTP. Request and response. Example with Burp (Repeater tab) and Python (requests library).

- HTTP. HTTP traffic generated when loading a web page.

- HTTP. Error codes: 400 and 404. Forcing them in the previous example.

- HTTP. Redirection. Example with Burp or Python.

- HTTP. Compression. Example with Python.



WEEK 3

- HTTP. Caching.

- HTTP. Cookies. Example: Sequence of requests to enter eGela.

- HTTP. Content Length vs Transfer Encoding. Wireshark example: Analyze download img x transfer encoding.

- HTTP. Response encoding. Wireshark example: Analyze download text "Hello, Iñaki Perez!".

- HTTP. Sending data. Example with Python: DNI letter.



WEEK 4

- Web Scraping. Structure of an HTML page.

- Web Scraping. Downloaded page vs. Rendered page.

- Web Scraping. Rendering web pages: Geckodriver + Selenium. Example.

- Web Scraping. HTML parsing: BeautifulSoup library. Example.



WEEK 5

- Installation of MySQL, Java, Tomcat and IntelliJ. Testing the development environment.

- Tomcat: Directory structure.

- Tomcat: Request management mechanism (web.xml).

- Tomcat: Servlet. Examples.



WEEK 6

- Tomcat: Collection of request parameters. Example: DNI letter.

- Tomcat: Dynamic server-side web pages (JSPs).

- Tomcat: Redirects: RequestDispatcher vs sendRedirect.



WEEK 7

- Message board: Presentation and previous steps (i).

- Message board: Previous steps (ii).



WEEK 8

- Message board: Login.

- Message board: Active users.

- Message board: User session.



WEEK 9

- Message board: List messages.

- Message board: Add message.

- Message board: Update messages.



WEEK 10

- Web API concept.

- OAuth. Fundamentals.

- OAuth for mobile and desktop applications. Message flow.

- OAuth for mobile and desktop applications. Example: Listing documents in Google Drive.



WEEK 11



- OAuth for mobile and desktop applications. Example: Listing documents in Dropbox.



WEEK 13

- Presentation of evaluable task 4: Web client for transferring files from eGela to Dropbox.

- Evaluable task 4: Analysis of the skeleton of the application.



WEEK 14

- Assessable task 4: Integration with eGela.

- Assessable task 4: Integration with Dropbox.



WEEK 15

- Tutorials for evaluable task 4.





LABORATORY PRACTICES

There are three laboratory practices. Each one has a duration of 2 weeks.



Practical 1: IoT Client

Automatic upload of %CPU and %RAM to the ThingSpeak platform. Data deletion when exiting the program with Ctrl+C.



Practice 2: eGela Web Scraping

Connecting to eGela, downloading PDF files of different subjects and organizing them by folders.



Practice 3: SVG Image Manager

Develop a web application based on Tomcat to manage SVG images stored in the eXist database.

MethodologyToggle Navigation

LECTURES: Development of the syllabus through presentations and practical exercises carried out by the professor.



CLASSROOM PRACTICES: Development of the syllabus through directed tasks carried out by the students individually or in groups with the help of the professor.



LABORATORY PRACTICES: Development of the syllabus through directed tasks carried out by the students individually or in groups without the teacher's help.

Assessment systemsToggle Navigation

The weighting of the different evaluation instruments in the final grade is detailed below.





EVALUABLE TASKS ESTABLISHED THROUGHOUT THE COURSE:



* First evaluable assignment (10%).

Type: Individual

Description: Practical 1 (see the section "theoretical-practical contents" of this teaching guide).



* Second evaluable assignment (10%)

Type: Individual

Description: Practical 2 (consult the "theoretical-practical contents" section of this teaching guide) * Third evaluable assignment (10%)



* Third evaluable task (10%)

Type: Individual

Description: Practical 3 (consult the "theoretical-practical contents" section of this teaching guide) * Fourth evaluable assignment (10%)



* Fourth evaluable task (10%)

Type: Group

Description: See week 13 in the "theoretical-practical contents" section of this teaching guide.





TEST ESTABLISHED IN THE OFFICIAL EXAM PERIOD:



* Written test (60%)

Type: Individual

Description: Solve a series of questions and exercises that collect the theoretical and practical aspects studied during the course.





NOTES:



(1) It is necessary to pass the written test to pass the course. If the written test is not passed, the final grade will be the one obtained in the evaluable tasks established throughout the course.



(2) However, students will have the right to be evaluated only by means of the written test, regardless of whether or not they have completed the evaluable tasks established throughout the course. To do so, the student must submit in writing to the professor responsible for the subject the waiver to the evaluation of the evaluable tasks established throughout the course, for which he/she will have a period of 9 weeks from the beginning of the term.



(3) If the student does not present any of the graded activities, the final grade will be "NOT PRESENTED".

Compulsory materialsToggle Navigation

All resources (slides, exercise statements and solutions, program code and supporting videos) used in class will be posted on eGela.

BibliographyToggle Navigation

Basic bibliography

Information Architecture for the World Wide Web, Morville P. & Rosenfeld L., Ed. O¿Reilly

In-depth bibliography

Ajax and REST Recipes: A Problem-Solution Approach, Gross C., Ed. Apress

Journals

WORLD WIDE WEB-INTERNET AND WEB INFORMATION SYSTEMS (ISSN: 1386-145X)

IEEE INTERNET COMPUTING (ISSN: 1089-7801)

GroupsToggle Navigation

01 Teórico (Spanish - Mañana)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
20-32

11:00-13:00

34-35

11:00-13:00

Teaching staff

Classroom(s)

  • P4I 10A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P4I 10A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II

01 Applied classroom-based groups-1 (Spanish - Mañana)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
20-32

13:00-14:00

34-35

13:00-14:00

Teaching staff

Classroom(s)

  • P4I 10A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P4I 10A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II

01 Applied laboratory-based groups-1 (Spanish - Mañana)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
20-20

09:00-10:00

21-21

09:00-11:00

23-23

09:00-11:00

25-25

09:00-11:00

27-27

09:00-11:00

29-29

09:00-11:00

32-32

09:00-11:00

34-34

09:00-11:00

Teaching staff

Classroom(s)

  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II

01 Applied laboratory-based groups-2 (Spanish - Mañana)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
20-20

10:00-11:00

22-22

09:00-11:00

24-24

09:00-11:00

26-26

09:00-11:00

28-28

09:00-11:00

30-31

09:00-11:00

35-35

09:00-11:00

Teaching staff

Classroom(s)

  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II

31 Teórico (Basque - Mañana)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
20-20

09:00-11:00

21-32

09:00-11:00

34-35

09:00-11:00

Teaching staff

Classroom(s)

  • P3I 2A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P3I 2A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P3I 2A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II

31 Applied classroom-based groups-1 (Basque - Mañana)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
20-31

08:00-09:00

32-32

08:00-09:00

34-35

08:00-09:00

Teaching staff

Classroom(s)

  • P3I 2A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P3I 2A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P3I 2A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II

31 Applied laboratory-based groups-1 (Basque - Mañana)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
21-21

11:00-13:00

23-23

11:00-13:00

25-25

11:00-13:00

27-27

11:00-13:00

29-29

11:00-13:00

32-32

11:00-13:00

34-34

11:00-13:00

35-35

11:00-12:00

Teaching staff

Classroom(s)

  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II
  • P6I 10L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II