
Internet and Web Development Technologies
Code: 102742Credits: 6
| Degree programme | Type | Course |
|---|---|---|
| Computer Engineering | OB | 3 |
Contact lecturer
- Name :
- Francesc Auli Llinas
- Email :
- francesc.auli@uab.cat
Teaching staff
- Ana Oropesa Fisica
- Maria Carmen de Toro Valdivia
- Oriol Cortes Comellas
- Antonina Serebriakova
Group languages
You can consult this information at the end of the document.
Prerequisites
There are no prerequisites. However, students should be familiar with the most basic concepts of “Data Bases” and “Software Engineering.” It is also recommended for students to take the course “Networks” before this.
Objectives
This is the third course in the block of Software Engineering. The main goal is to provide a general vision of the developing paradigms for the Internet and Web. The main models to develop network application are described and put in practice. The main objectives of the course are the following:
- Provide a general vision of web development technologies.
- Know the main programming paradigms for web applications.
- Know technologies and programming languages for the development of web Applications.
- Know the network protocols employed for the web.
- Know other Internet network architectures and protocols.
- Provide a general vision of distributed systems.
Learning outcomes
- Design and maintain applications observing robustness and reliability criteria.
- Design applications while selecting the most suitable software development paradigm.
- Know and understand the important role of Database systems in terms of the treatment of the information in a computer, as well as the design and maintenance of applications for treating this information.
- Know and apply the client server model and service oriented architectures.
- Understand data standards and their persistence.
- Know the paradigms of web programming.
- Know and apply effective communication and negotiation methods when performing one's tasks in the profession.
- Identify, manage and resolve conflicts.
- Develop a mode of thought and critical reasoning.
- Work cooperatively.
Contents
Introduction
- Course presentation and scheduling
- Historical review
Web programming
- Web documents: HTML5 and CSS.
- Client-side programming: JavaScript and AJAX.
- Server-side programming: PHP.
- Model-view-controller architecture: description and usage.
- Security aspects: SQL injection, cross-site scripting, and cross-site request forgery.
HTTP protocol
- Architecture: client/server architecture, TCP/IP protocols, features, and message format.
- Mechanisms: negotiation, caching, security and privacy, and persistence.
- State usage: cookies.
Service protocols
- Files and messages: FTP, P2P, electronic mail, and news.
- Web services: XML, WSDL, UDDI, and SOAP.
- Representational State Transfer (REST): HTTP methods, expose directory structure, stateless, and XML/JSON.
Learning activities and methodology
| Title | Hours | ECTS | Learning outcomes |
|---|---|---|---|
| Preparing and studying | 24 | 0.96 | 1, 2, 3, 4, 5, 6 |
| Laboratory sessions | 24 | 0.96 | 1, 2, 4, 6, 7, 8, 10 |
| Supervised projects | 16 | 0.64 | 1, 2, 3, 4, 5, 6 |
| Lectures | 26 | 1.04 | 1, 2, 3, 4, 5, 6, 9 |
| Preparing tests | 30 | 1.2 | 1, 2, 3, 4, 5, 6 |
| Problem sessions | 12 | 0.48 | 1, 2, 3, 4, 5, 6, 7 |
| Laboratory sessions | 12 | 0.48 | 1, 2, 4, 6, 7, 8, 10 |
There are three parts: lectures, problem sessions, and laboratory sessions. The student should spend 50 hours in class and 100 hours preparing laboratory/problems sessions and tests. The following activities are carried out during the course:
Lectures
- Theoretical content is taught through lectures. Students are encouraged to actively participate in the resolution of examples.
Problem sessions
- A list of exercises is resolved during problem sessions. Students are encouraged to solve the problems on their own in advance and to present their solutions in class.
Laboratory sessions
- During laboratory sessions, a project is carried out with groups of 2 students. These sessions are to be prepared in advance. It is important that the project is carried by both students as a team, so the work of both will be assessed individually.
Transversal abilities
- We will work the abilities “acquire thinking habits” and “work in teams”. The former is approached in lectures and problem sessions, and in individual tests. The latter is approached in laboratory sessions.
Assessment
Continuous assessment activities
| Title | Weight | Hours | ECTS | Learning outcomes |
|---|---|---|---|---|
| Lectures and problem sessions | 0.6 | 3 | 0.12 | 1, 2, 3, 4, 5, 6, 9 |
| Laboratory sessions | 0.4 | 3 | 0.12 | 1, 2, 4, 6, 7, 8, 9, 10 |
a) Assessment
Subject assessment is carried out as follows:
- Activity A) Tests for lectures and problem sessions (60% of the final grade). Two individual partial tests that evaluate half the contents each. The student must pass each test with a grade equal or greater than 3.5 (except for students in their 3rd or 4th evaluation year), and with an average of the two tests with at least 5. Otherwise, the students will need to do the final re-assessment test (see below).
- Activity B) Assessment of laboratory sessions (40% of the final grade). It is carried out as follows:
B.1) Individual progress assessment during laboratory sessions 2, 3, 5, and 6 (2 points, 0.5 for each session).
B.2) Progress evaluation with a partial delivery at the end of session 4 (1.5 points).
B.3) Final evaluation at the end of the sessions (2 points).
B.4) Auto-evaluation in which the student will assess his/her work through a template provided by the professor (0.5 points, provided that the evaluation carried out by the student and professor differ in less than 0.5 points).
B.5) Individual test at the end of the sessions (5 points).
The maximum grade in this activity is 11, though the activity is evaluated over 10. The minimum grade to pass this activity is 5, however, it is mandatory to pass activities B.1, B.2, B.3 and B.5 separately. If the grade of B.1, B.2, B.3 or B.5 is less than 50% of the maximum corresponding grade, the grade of Activity B is computed as the minimum between 4.5 and the sum of B.1, B.2, B.3, B.4 and B.5.
b) Assessment scheduling
Dates for the tests are given the first day of the course and are available in the web of the School. Also, the dates are published on Campus Virtual and on the presentation slides, specific programming may change when necessary. Any such modification will always be communicated to students through Campus Virtual, which is the usual communication platform between lecturers and students. If the student cannot carry out an assessment activity, its rescheduling can be requested through the School of Engineering's "protocol for rescheduling assessment activities".
c) Re-assessment
Activity A can be re-assessed in the re-assessment test, which evaluates all the contents of the course.
Laboratory sessions cannot be re-assessed, so they must be carried out the following year.
d) Revisions
For all assessment activities, a place, date, and time of review will be indicated to allow the students to review the activity with the lecturer. In this context, students may discuss the activity grade awarded by the lecturers responsible for the subject. If students do not take part in this review, no further opportunity will be made available.
e) Grades
Activity A and B must be passed individually. If the grade of one of these activities is lower than 5, the final grade is computed as the minimum grade between 4.5 and the weighted average grade between A and B. To pass the course with honors, the final grade must be equal or greater than 9. Due to the number of students with this distinction cannot exceed 5% of the total enrolled in the course, this distinction will be awarded to the students with the highest final grade. In case of a tie, partial-test results will be taken into consideration. If the student does not carry out the tests and does not present the any activity of the laboratory project, the grade is “non-assessable”.
f) Plagiarism and irregularities
Notwithstanding other disciplinary measures deemed appropriate, and in accordance with the academic regulations in force, assessment activities will receive a zero whenever a student commits academic irregularities that may alter such assessment. Also, irregularities in the use of the laboratory equipment will receive a zero in the evaluation of Activity B. Assessment activities graded in this way and by this procedure will not be re-assessable. If passing the assessment activity or activities in question is required to pass the subject, the awarding of a zero for disciplinary measures will also entail a direct fail for the subject, with no opportunity to re-assess this in the same academic year. Irregularities contemplated in this procedure include, among others:
-the total or partial copying of a practical exercise, report, or any other evaluation activity
-allowing others to copy
-presenting group work that has not been done entirely by the members of the group
-presenting any materials prepared by a third party as one’s own work, even if these materials are translations or adaptations, including work that is not original or exclusively that of the student
- using Artificial Intelligence tools like Copilot, ChatGPT, or similar, to solve exercises, laboratory work, exams, or any other activity, except for those specified below
-having communication devices (such as mobile phones, smart watches, etc.) accessible during theoretical-practical assessment tests (individual exams)
-using the laboratory equipment for other purposes than those proposed by the professor
-login forgery or impersonate other students in the laboratory equipment
The final grade will be the lowest value between 3,0 and the weighted average grade, in the event of irregularities having been committed for any assessment activity (and therefore re-assessment will not be possible). These facts will be reported to (and registered by) the coordinator of the grade.
g) Use of Artificial Intelligence tools
In this course, Artificial intelligence (AI) tools can be used solely for the laboratory sessions, except for the individual test at the end of these sessions. Students must highlight the parts of the project that are carried out with AI tools and specify which tools have been used. Failure to do so will result in partial or total penalization in the grade of this activity.
h) Students that have completed the course in previous years
No special treatment will be given to students who have completed the course in previous academic years, except that the grade of Activity A or B previously obtained can be assigned to this course gradebook. At the beginning of the course, the students list with previous grades is published.
i) Single assessment
This subject does not contemplate the single assessment system.
Software
- Google Chrome: browser employed in lab sessions (mandatory)
- phpMyAdmin: web application for BD management (recommended)
- PHPstorm / Sublime / Brackets: web editors (recommended)
- Filezilla / Cyberduck: FTP clients (recommended)
- Putty: SSH client (recommended)
- Visual Studio Code (VSCode): programming environment (recommended)
Course groups and languages
The information provided is provisional until November 30. After this date, you will be able to consult the language of each group through this link. To access the information, you will need to enter the course CODE
| Type of teaching | Group | Language | Semester | Shift |
|---|---|---|---|---|
| (TE) Theory | 410 | Catalan | first semester | morning-mixed |
| (PAUL) Classroom practices | 410 | Catalan/Spanish | first semester | morning-mixed |
| (PAUL) Classroom practices | 411 | Catalan/Spanish | first semester | morning-mixed |
| (PLAB) Practical laboratories | 411 | Catalan/Spanish | first semester | morning-mixed |
| (PAUL) Classroom practices | 412 | Catalan/Spanish | first semester | morning-mixed |
| (PLAB) Practical laboratories | 412 | Catalan/Spanish | first semester | afternoon |
| (PAUL) Classroom practices | 413 | Catalan/Spanish | first semester | morning-mixed |
| (PLAB) Practical laboratories | 413 | Catalan/Spanish | first semester | afternoon |
| (PAUL) Classroom practices | 414 | Catalan/Spanish | first semester | morning-mixed |
| (PLAB) Practical laboratories | 414 | Catalan/Spanish | first semester | afternoon |
| (TE) Theory | 415 | Catalan | first semester | morning-mixed |
| (PAUL) Classroom practices | 415 | Catalan/Spanish | first semester | afternoon |
| (PLAB) Practical laboratories | 415 | Catalan/Spanish | first semester | afternoon |
| (PAUL) Classroom practices | 416 | Catalan/Spanish | first semester | afternoon |
| (PLAB) Practical laboratories | 416 | Catalan/Spanish | first semester | morning-mixed |
| (TE) Theory | 417 | Catalan | first semester | afternoon |
| (PLAB) Practical laboratories | 417 | Catalan/Spanish | first semester | afternoon |
| (PLAB) Practical laboratories | 418 | Catalan/Spanish | first semester | afternoon |
| (PLAB) Practical laboratories | 419 | Catalan/Spanish | first semester | morning-mixed |
| (PLAB) Practical laboratories | 420 | Catalan/Spanish | first semester | morning-mixed |
| (PLAB) Practical laboratories | 421 | Catalan/Spanish | first semester | morning-mixed |
| (PLAB) Practical laboratories | 422 | Catalan/Spanish | first semester | afternoon |
| (PLAB) Practical laboratories | 424 | Catalan/Spanish | first semester | morning-mixed |