Denominación de la asignatura: Computación Cliente y Servidor
Postgrado al que pertenece: Máster Universitario en Dirección e Ingeniería de Sitios Web
Créditos ECTS: 6
Cuatrimestre en el que se imparte: Primero
Carácter de la asignatura: Obligatoria

Presentación

Las aplicaciones web en su vertiente más sencilla son aplicaciones cliente—servidor. Esta arquitectura consiste básicamente en un cliente que realiza peticiones a otro programa (el servidor) que le da respuesta. Aunque esta idea se puede aplicar a programas que se ejecutan sobre una sola computadora es más ventajosa en un sistema operativo multiusuario distribuido a través de una red de computadoras. En esta arquitectura la capacidad de proceso está repartida entre los clientes y los servidores, aunque son más importantes las ventajas de tipo organizativo debidas a la centralización de la gestión de la información y la separación de responsabilidades, lo que facilita y clarifica el diseño del sistema.

Las aplicaciones web utilizan este paradigma cliente-servidor para construir aplicaciones a las que se puede acceder desde un navegador web. En esta materia se estudiarán las diferentes capacidades de procesamiento que pueden utilizarse desde el punto de vista del cliente y del servidor.

Conoceremos cómo un servidor web es un programa informático que procesa una aplicación del lado del servidor realizando conexiones bidireccionales y/o unidireccionales y síncronas o asíncronas con el cliente generando o cediendo una respuesta en cualquier lenguaje o Aplicación del lado del cliente. Veremos cómo el código recibido por el cliente suele ser compilado y ejecutado por un navegador web.

Competencias básicas

  • CB6. Poseer y comprender conocimientos que aporten una base u oportunidad de ser originales en el desarrollo y/o aplicación de ideas, a menudo en un contexto de investigación.
  • CB7. Que los estudiantes sepan aplicar los conocimientos adquiridos y su capacidad de resolución de problemas en entornos nuevos o poco conocidos dentro de contextos más amplios (o multidisciplinares) relacionados con su área de estudio.
  • CB8. Que los estudiantes sean capaces de integrar conocimientos y enfrentarse a la complejidad de formular juicios a partir de una información que, siendo incompleta o limitada, incluya reflexiones sobre las responsabilidades sociales y éticas vinculadas a la aplicación de sus conocimientos y juicios.
  • CB9. Que los estudiantes sepan comunicar sus conclusiones y los conocimientos y razones últimas que las sustentan a públicos especializados y no especializados de un modo claro y sin ambigüedades.
  • CB10. Que los estudiantes posean las habilidades de aprendizaje que les permitan continuar estudiando de un modo que habrá de ser en gran medida autodirigido o autónomo.

Competencias generales

  • CG1. Diseñar y elaborar proyectos relacionados con el entorno de la elaboracion de aplicaciones web e implementarlos y desarrollarlos mediante los métodos y los procesos adecuados.
  • CG2. Tener la capacidad técnica necesaria para ejercer las funciones profesionales requeridas para el diseño, implementación y dirección de sitios web.
  • CG4. Disponer de habilidades para la creación de sitios web seguros, usables, accesibles, adaptables y elaborados de acuerdo a estándares.
  • CG5. Evaluar y asesorar sobre las técnicas y tecnologías de desarrollo web aplicados en el diseño e implementación de un sitio web, de acuerdo a unos requisitos establecidos.

Competencias específicas

  • CE2. Seleccionar las tecnologías adecuadas de acuerdo a unos requisitos funcionales y de presentación para la implementación de una aplicación web.
  • CE3. Evaluar las necesidades de un sitio web para asesorar sobre la necesidad de incluir computación basada en cliente o en servidor.
  • CE4. Diseñar una arquitectura de información consistente que incluya módulos funcionales tanto en el cliente como en el servidor para un funcionamiento equilibrado de una aplicación web.

Competencias transversales

  • CT1. Organizar y planificar las tareas aprovechando los recursos, el tiempo y las competencias de manera óptima.
  • CT2. Identificar las nuevas tecnologías como herramientas didácticas para el intercambio comunicacional en el desarrollo de procesos de indagación y aprendizaje.
  • CT4. Adquirir la capacidad de trabajo independiente, impulsando la organización y favoreciendo el aprendizaje autónomo.

Tema 1. Introducción a las Aplicaciones Web

  • Sitios web estáticos y dinámicos
  • Computación en el cliente y en el servidor
  • Lenguajes y tecnologías

Tema 2. Computación en el Servidor (I)

  • Evolución histórica del paradigma de trabajo
  • Lenguajes y tecnologías
  • PHP: Instalación y configuración
  • PHP: Entornos de desarrollo y depuración
  • Elementos básicos del lenguaje PHP
  • Funciones y programación orientada a objetos en PHP

Tema 3. Computación en el Servidor (II)

  • Características generales
  • Librerías
  • Manejo de fechas
  • Manejo de ficheros
  • Formularios
  • Cookies y sesiones
  • Bases de datos

Tema 4. Computación en el Cliente (I)

  • Tipos de scripts de cliente
  • ECMAScript
  • El lenguaje Javascript

Tema 5. Computación en el Cliente (II)

  • JQuery
  • AJAX
  • HTML 5

Tema 6. Uso conjunto de Computación en Cliente y Servidor

  • Arquitectura básica
  • Reparto de funcionalidades entre cliente y servidor
  • Comunicación entre cliente y servidor
  • Ejemplo de estructura para una aplicación web

Las actividades formativas de la asignatura se han elaborado con el objetivo de adaptar el proceso de aprendizaje a las diferentes capacidades, necesidades e intereses de los alumnos.

Las actividades formativas de esta asignatura son las siguientes:

  • Trabajo. Se trata de actividades de diferentes tipos: reflexión, análisis de casos, prácticas, etc.
  • Comentario de lecturas. Es un tipo de actividad muy concreto que consiste en el análisis de textos de artículos de autores expertos en diferentes temas de la asignatura.
  • Casos prácticos. Situarán al alumno ante situaciones reales que tendrán que analizar y tras ello tomar decisiones, evaluar consecuencias y alternativas.
  • Participación en eventos. Son eventos programados todas las semanas del cuatrimestre: sesiones presenciales virtuales, foros de debate.
Descargar programación

Estas actividades formativas prácticas se completan, por supuesto, con estas otras:

  • Estudio personal
  • Tutorías. Las tutorías se pueden articular a través de diversas herramientas y medios. Durante el desarrollo de la asignatura, el profesor programa tutorías en días concretos para la resolución de dudas de índole estrictamente académico a través de las denominadas “sesiones de consultas”. Como complemento de estas sesiones se dispone también del foro “Pregúntale al profesor de la asignatura” a través del cual se articulan algunas preguntas de alumnos y las correspondientes respuestas en el que se tratan aspectos generales de la asignatura. Por la propia naturaleza de los medios de comunicación empleados, no existen horarios a los que deba ajustarse el alumno.
  • Examen final presencial

Las horas de dedicación a cada actividad se detallan en la siguiente tabla:

ACTIVIDADES FORMATIVAS HORAS POR ASIGNATURA % PRESENCIAL
Sesiones presenciales virtuales 10 horas 100%
Lecciones magistrales 5 horas 0
Estudio del material básico 50 horas 0
Lectura del material complementario 35 horas 0
Trabajos, casos prácticos, test 25 horas 0
Tutorías 16 horas 0
Trabajo colaborativo 7 horas 0
Examen final presencial 2 horas 100%
Total 150 horas -

Bibliografía básica

Recuerda que la bibliografía básica es imprescindible para el estudio de la asignatura. Cuando se indica que no está disponible en el aula virtual, tendrás que obtenerla por otros medios: librería UNIR, biblioteca...

Los textos necesarios para el estudio de la asignatura han sido elaborados por UNIR y están disponibles en formato digital para consulta, descarga e impresión en el aula virtual.

Bibliografía complementaria

  • Ayoze Castillo, A. (2017). Curso de Programación Web: JavaScript, Ajax y jQuery (2.ª ed.). Createspace Independent Publishing Platform.
  • Flanagan, D. (2011). JavaScript. ThedefinitveGuide. Estados Unidos: O’Reilly
  • Gauchat, J.D. (2013). El gran libro de HTML5, CSS3 & JavaScript. Barcelona: Marcombo.
  • Holzner, S. (2011). HTML5 in 10 Minutes. Estados Unidos: Sams.
  • Kuryanovich, E., Salom, S., Goldenberg, R. et al. (2012). Desarrollo de juegos en HTML 5. España: Anaya.
  • Lubbers, P., Albers, B. y Salim, F. (2010). Pro HTML5 Programming. PowerfulAPIsFOR RicherInternet ApplicationDevelopment. Estados Unidos: Apress.
  • Moncur, M. (2007). JavaScript in 24 Hours. Estados Unidos: Sams
  • Rollet, O. (2015). Aprender a desarrollar un sitio web con PHP y MySQL. Barcelona: ENI.
  • Rowell, E. (2011). HTML 5 CanvasCookbook. Reino Unido: PacktPublishing.
  • Stefanov, S. (2008). Object-OrientedJavaScript. Reino Unido: PacktPublishing.
  • Suehring, S. y Valade, J. (2013). PHP, MySQL, JavaScript & HTML. All-in-oneforDummies. Estados Unidos: John Wiley& SonsInc.
  • Zakas, N. C. (2016). Understanding ECMAScript 6: the definitive guide for JavaScript developers. USA: Random House.

El sistema de calificación se basa en la siguiente escala numérica:

0 - 4, 9 Suspenso (SS)
5,0 - 6,9 Aprobado (AP)
7,0 - 8,9 Notable (NT)
9,0 - 10 Sobresaliente (SB)

La calificación se compone de dos partes principales:

El examen se realiza al final del cuatrimestre y es de carácter PRESENCIAL y OBLIGATORIO. Supone el 60% de la calificación final y para que la nota obtenida en este examen se sume a la nota final, es obligatorio APROBARLO.

La evaluación continua supone el 40% de la calificación final. Este 40% de la nota final se compone de las calificaciones obtenidas en las diferentes actividades formativas llevadas a cabo durante el cuatrimestre.

Ten en cuenta que la suma de las puntuaciones de las actividades de la evaluación continua permite que realices las que prefieras hasta conseguir el máximo puntuable mencionado. En la programación semanal de la asignatura, se detalla la calificación máxima de cada actividad o evento concreto puntuables.

Sistema de evaluación Ponderación min - max
Trabajos (trabajos y casos prácticos) 10% - 30%
Eventos (sesiones, test y foros) 5% - 10%
Lecturas complementarias (análisis de texto) 10% - 30%
Examen final presencial 60% - 60%

Javier Cubo Villalba

Formación académica: Acreditado Ayudante Doctor por ANECA. Reúne dos trienios de investigación. Ha escrito más de medio centenar de artículos, incluyendo más de quince revistas especializadas en el ámbito de la Ingeniería del Software, Servicios Web, Redes de Sensores. Ha participado en multitud de congresos, es autor de un libro sobre técnicas de Adaptación Software, y de otros dos capítulos de libros sobre Servicios Web y Smart Cities.

Experiencia: El doctor Javier Cubo cuenta con experiencia docente desde 2008 y de investigación desde 2002, antes de terminar sus estudios de Ingeniería Informática, con experiencia también fuera del ámbito académico. Ha sido Researcher State University of New York SUNY, Tecnólogo Torres Quevedo en la Fundación CITIC, Becario FPI UMA, Investigador Predoctoral en la University College London UCL, y Contratado Postdoctoral en UMA y en la Università di Pisa UNIPI. También ha sido Profesor Sustituto Interino en UMA. Tiene experiencia en la preparación de propuestas de Proyectos Europeos, así como en la coordinación de equipos de trabajo, llevando la coordinación técnica de varios proyectos de investigación.

Líneas de investigación: Ha integrado la Investigación en el Grupo MUX, Mobility & User eXperience, centrado en movilidad, experiencia de usuario y accesibilidad, perteneciente a UNIR. Por otra parte, ha colaborado en el Grupo GISUM, Ingeniería del Software de UMA. Sus líneas de investigación están centradas en Ingeniería del Software, Servicios Web, Cloud Computing, Internet of Things, Smart Cities, Big Data, Open Data y Marketing Digital.

Obviamente, al tratarse de formación online puedes organizar tu tiempo de estudio como desees, siempre y cuando vayas cumpliendo las fechas de entrega de actividades, trabajos y exámenes. Nosotros, para ayudarte, te proponemos los siguientes pasos:

  1. Desde el Campus virtual podrás acceder al aula virtual de cada asignatura en la que estés matriculado y, además, al aula virtual del Curso de introducción al campus virtual. Aquí podrás consultar la documentación disponible sobre cómo se utilizan las herramientas del aula virtual y sobre cómo se organiza una asignatura en la UNIR y también podrás organizar tu plan de trabajo con tu tutor personal.
  2. Observa la programación semanal. Allí te indicamos qué parte del temario debes trabajar cada semana.
  3. Ya sabes qué trabajo tienes que hacer durante la semana. Accede ahora a la sección Temas del aula virtual. Allí encontrarás el material teórico y práctico del tema correspondiente a esa semana.
  4. Comienza con la lectura de las Ideas clave del tema. Este resumen te ayudará a hacerte una idea del contenido más importante del tema y de cuáles son los aspectos fundamentales en los que te tendrás que fijar al estudiar el material básico. Consulta, además, las secciones del tema que contienen material complementario.
  5. Dedica tiempo al trabajo práctico (sección Actividades y Test). En la programación semanal te detallamos cuáles son las actividades correspondientes a cada semana y qué calificación máxima puedes obtener con cada una de ellas.
  6. Te recomendamos que participes en los eventos del curso (sesiones presenciales virtuales, foros de debate…). Para conocer la fecha concreta de celebración de los eventos debes consultar las herramientas de comunicación del aula vitual. Tu profesor y tu tutor personal te informarán de las novedades de la asignatura.

En el aula virtual del Curso de introducción al campus virtual encontrarás siempre disponible la documentación donde te explicamos cómo se estructuran los temas y qué podrás encontrar en cada una de sus secciones.

Recuerda que en el aula virtual del Curso de introducción al campus virtual puedes consultar el funcionamiento de las distintas herramientas del aula virtual: Correo, Foro, Sesiones presenciales virtuales, Envío de actividades, etc.

Ten en cuenta estos consejos...

  • Sea cual sea tu plan de estudio, accede periódicamente al aula Virtual, ya que de esta forma estarás al día de las novedades del curso y en contacto con tu profesor y con tu tutor personal.
  • Recuerda que no estás solo: consulta todas tus dudas con tu tutor personal utilizando el correo electrónico. Además, siempre puedes consultar tus dudas sobre el temario en los foros que encontrarás en cada asignatura (Pregúntale al profesor).
  • ¡Participa! Siempre que te sea posible accede a los foros de debate. El intercambio de opiniones, materiales e ideas nos enriquece a todos.
  • Y ¡recuerda!, estás estudiando con metodología on line: tu esfuerzo y constancia son imprescindibles para conseguir buenos resultados. ¡No dejes todo para el último día!