Description
In the process of designing and implementing an application, be it web, mobile or desktop, we will find ourselves with the need to obtain data from a text file, from a database or an XML. So far, no problem, for instance, the web application gets its data from a database hosted in the server, the mobile application can retrieve its data from a text file found on the device, or even the desktop applications can read the XML file from the system file. But, what happens if we want those three applications access and modify the same data? We need to centralize this data and have a tool that solves this problem: Online services. In this subject, from a practical point of view, we will study the existing online services architectures, what communication protocols are been used, how the data is transferred, what features they have, etc.
Type Subject
Optativa
Semester
Second
Credits
6.00

Titular Professors

Previous Knowledge
Objectives

The main objectives of the subject are:
• Learn the different online services architectures and when to use them.
• Develop online services
The secondary objectives are:
• Know the client-server architecture.
• Know the HTML protocol.
• Know XML and JSON data exchange languages.
• Know JavaScript and ECMA18.

Learning Outcomes of this subject are:
RA.01 It is possible to develop computer applications based on client / server architectures, web and mobile devices.
RA.02 It gives the necessary knowledge to use design patterns.
RA.03 Knowledge for develop database access applications.

Contents

• Client/server architecture.
• Server technologies.
• Online services
• Object-oriented programming.
• Development using design patterns.

Methodology

F01. Master Class
The teacher transmits knowledge/concepts to the students through an oral presentation, often the explanation is supported with contents on a blackboard and/or audiovisual.

F02. Solving problems and exercises
The teacher proposes a set of problems and/or exercises with the aim that the students put into practice and/or complement the knowledge they have acquired previously.

F03. Personal study
The student studies the contents of the subject on his own. This study may involve content analysis, comprehension, and/or memorization.

F04. Evaluation activities
The student takes tests that assess the acquisition of skills and knowledge. In classes and/or to work non-school hours, the teacher asks for problems/exercises in order to evaluate them and give feedback to the student.

F05. Practice or project
The student solves a practical case by applying the knowledge covered in class, may also include the acquisition and application of new knowledge independently and/or guided by teachers. Normally the student can consult material on the topics / knowledge required by the practice or project.

F07. Tutorials
The teacher gives a reference and/or provides documentation to the student that indicates step by step the operation of a work tool or a process in order to achieve a certain result.

F08. Specialized tutoring
The teacher guides and supervises a student or a small group of students in the development of an activity specific to the contents of the subject.

F13. Portfolio
The student collects works, practices and/or projects carried out in various subjects of the University Degree. These works denote the personal process followed by the student, allowing him and those interested to see their progress in achieving the knowledge of the Degree.

Evaluation

Final mark of the subject is calculated according to the expression:

NFinal = 0,9 * Nepp + 0,1 * Nportfoli

The exercises, problems and practices mark (Nepp) is calculated as 30% of the average of practical exercices (Nexercicis) and 70% of the mark obtained in the practice (Npractica). Npractica must be equal o greater than 5, otherwise the subject will not be passed. So:

Nepp = 0,3*Nexercises + 0,7*Npractice

Evaluation Criteria
Basic Bibliography

• THOMAS FIELDING, R. (2000) Architectural Styles and the Design of Network-based Software Architectures. Disponible online: https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm

• RUBY S.; RICHARDSON L, RESTful Web Services: Web Services for the Real World, May 8th, 2007, O'Reilly Media.

• https://graphql.org/learn/

• https://grpc.io/

Additional Material