Logo UAB
2022/2023

Internet and Web Development Techologies

Code: 102742 ECTS Credits: 6
Degree Type Year Semester
2502441 Computer Engineering OB 3 1

Contact

Name:
Francesc Auli Llinas
Email:
francesc.auli@uab.cat

Use of Languages

Principal working language:
catalan (cat)
Some groups entirely in English:
No
Some groups entirely in Catalan:
Yes
Some groups entirely in Spanish:
No

Teachers

Joan Giner Miguelez
Aaron Blanco Esteban
Ana Oropesa Fisica
Aitor Alsina Rodríguez

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 and Contextualisation

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.

Competences

  • Acquire thinking habits.
  • Analyse, design, build and maintain robust, safe and efficient applications, and select the most suitable programming paradigms and languages.
  • Conceive and develop centralised or distributed computer systems or architectures by integrating hardware, software and networks.
  • Have the capacity to solve problems with initiative, decision making, autonomy and creativity. Have the capacity to know how to communicate and transmit the knowledge and skills of the IT engineering profession.
  • Know and apply the functional and structural characteristics of distributed systems and computer and Internet networks, and design and implement applications based on these.
  • Work in teams.

Learning Outcomes

  1. Design and maintain applications observing robustness and reliability criteria.
  2. Design applications while selecting the most suitable software development paradigm.
  3. Develop a mode of thought and critical reasoning.
  4. Identify, manage and resolve conflicts.
  5. Know and apply effective communication and negotiation methods when performing one's tasks in the profession.
  6. Know and apply the client server model and service oriented architectures.
  7. 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.
  8. Know the paradigms of web programming.
  9. Understand data standards and their persistence.
  10. Work cooperatively.

Content

The contents of the course are structured as follows:

  • 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.

Methodology

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 first is approached in lectures and problem sessions, and in the individual tests. The latter is approached in laboratory sessions.

Annotation: Within the schedule set by the centre or degree programme, 15 minutes of one class will be reserved for students to evaluate their lecturers and their courses or modules through questionnaires.

Activities

Title Hours ECTS Learning Outcomes
Type: Directed      
Laboratory sessions 12 0.48 8, 6, 5, 2, 1, 4, 10
Lectures 26 1.04 9, 8, 6, 7, 3, 2, 1
Problem sessions 12 0.48 9, 8, 6, 7, 5, 2, 1
Type: Supervised      
Supervised projects 16 0.64 9, 8, 6, 7, 2, 1
Type: Autonomous      
Laboratory sessions 24 0.96 8, 6, 5, 2, 1, 4, 10
Preparing and studying 24 0.96 9, 8, 6, 7, 2, 1
Preparing tests 30 1.2 9, 8, 6, 7, 2, 1

Assessment

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 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) Progression assessment during laboratory sessions (3 points).

B.2) Technical assessment at the end of the sessions (5,5 points)

B.3) Auto-evaluation in which the student will assess his/her work through a template provided by the professor (1 point, provided that the evaluation carried out by the student and professor differ in less than 0,5 points).

B.4) Individual test at the end of the sessions (1,5 points).

The maximum grade in this activity is 11, though the activity is evaluated over 10. It is mandatory to pass the progression assessment (B.1), technical assessment (B.2) and the individual test (B.4) to pass this activity. If the grade of B.1, B.2 or B.3 is lower 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, and B.4.

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.

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 or not presents 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 directfail 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

-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).

 

g) 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.

Assessment Activities

Title Weighting Hours ECTS Learning Outcomes
Laboratory sessions 0.4 3 0.12 8, 6, 5, 3, 2, 1, 4, 10
Lectures and problem sessions 0.6 3 0.12 9, 8, 6, 7, 3, 2, 1

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)