Última revisión realizada: 26/10/2020

Denominación de la asignatura

Computación en el Servidor Web
Máster al que pertenece Máster Universitario en Ingeniería de Software y Sistemas Informáticos
Materia a la que pertenece Ingeniería Web
Créditos ECTS
3
Cuatrimestre en el que se imparte
Primer cuatrimestre
Carácter de la asignatura Obligatoria

Presentación

En esta asignatura vamos a aprender cómo manejar y componer la información en el servidor utilizando del lenguaje PHP. Para poder hacerlo, aprenderemos su sintaxis básica, así como las estructuras de control y otros conceptos más avanzados para generar el contenido de la web en función de las necesidades del usuario final. Además, para almacenar esta información aprenderemos a trabajar con el sistema de gestión de bases de datos MariaDB, un software libre ampliamente utilizado en combinación con PHP.

Aunque, en otras asignaturas, se estudia cómo se trata la información desde el lado del cliente, sí veremos aquí como se realiza esta interacción con PHP centrándonos, principalmente, en cuestiones relacionadas con la forma de intercambiar la información, la identificación de usuarios y la asistencia a la navegación del usuario (cookies).

La complejidad actual de las aplicaciones web requiere independizar la lógica de negocio de la presentación que se hace al usuario. Para tratar este problema, introduciremos el patrón Modelo-Vista-Controlador.

Finalmente, aprenderemos cómo interconectar información de distintas aplicaciones, así como las aplicaciones propiamente dichas, de una manera sencilla y transparente utilizando servicios web.

Como framework de trabajo para facilitar el desarrollo en el lado del servidor, utilizaremos Pear. Este entorno incluye, entre otros muchos aspectos, mecanismos que facilitan el trabajo de autentificación y cookies en PHP, una implementación del patrón Modelo-Vista-Controlador, así como una librería para trabajar con servicios web.

Competencias

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

  • CG2.Capacidad para dirigir, planificar y supervisar equipos multidisciplinares.
  • CG5. Capacidad para la puesta en marcha, dirección y gestión de procesos de diseño y desarrollo de sistemas informáticos, con garantía de la seguridad para las personas y bienes, la calidad final de los productos y su homologación.

Competencias específicas

  • CE1. Capacidad para modelar, diseñar, definir la arquitectura, implantar, gestionar, operar, administrar y mantener aplicaciones, sistemas, servicios y contenidos informáticos.
  • CE3. Capacidad para analizar las necesidades de información que se plantean en un entorno y llevar a cabo en todas sus etapas el proceso de construcción de un sistema de información.
  • CE4. Capacidad para crear y diseñar sistemas software que resuelvan problemas del mundo real.
  • CE8. Capacidad para la creación y explotación de entornos Web.
  • CE9. Capacidad de comprender y saber aplicar el funcionamiento y organización de Internet, las tecnologías y protocolos de redes de nueva generación, los modelos de componentes, software intermediario y servicios.
  • CE10. Capacidad para diseñar, desarrollar, gestionar, distribuir y evaluar aplicaciones y contenidos basados en la Web.
  • CE11. Capacidad para conceptualizar, diseñar, desarrollar y evaluar la interacción persona-ordenador de productos, sistemas, aplicaciones y servicios informáticos usables, accesibles y adaptables.
  • CE13. Capacidad para diseñar y desarrollar arquitecturas orientadas a servicios y servicios Web.
  • CE14. Capacidad para diseñar, desarrollar e implantar sitios, servicios y sistemas basados en la Web con garantías de seguridad.
  • CE15. Conocer, comprender, seleccionar y utilizar los lenguajes, protocolos y tecnologías estándares así como las plataformas de desarrollo tanto comerciales como de dominio público.

Competencias transversales

  • CT1. Analizar de forma reflexiva y crítica las cuestiones más relevantes de la sociedad actual para una toma de decisiones coherente.
  • CT2. Identificar las nuevas tecnologías como herramientas didácticas para el intercambio comunicacional en el desarrollo de procesos de indagación y de aprendizaje grupal.
  • CT3. Aplicar los conocimientos y capacidades aportados por los estudios a casos reales y en un entorno de grupos de trabajo en empresas u organizaciones.
  • CT4. Adquirir la capacidad de trabajo independiente, impulsando la organización y favoreciendo el aprendizaje autónomo.

Contenidos

Tema 1. Introducción a la programación en el servidor: PHP
Conceptos básicos de programación en el servidor
Sintaxis básica de PHP
Generación de contenido HTML con PHP
Entornos de desarrollo y pruebas: XAMPP

Tema 2. PHP avanzado
Estructuras de control con PHP
Funciones en PHP
Manejo de arrays en PHP
Manejo de cadenas con PHP
Orientación a objetos en PHP

Tema 3. Acceso a bases de datos desde PHP
Introducción a MariaDB
Trabajar con una base de datos MariaDB: el lenguaje SQL
Acceder a la base de datos MariaDB desde PHP

Tema 4. Interacción con el cliente desde PHP
Formularios PHP
Cookies
Manejo de sesiones

Tema5. Arquitectura de aplicaciones web
El patrón Modelo Vista Controlador
Controlador
Modelo
Vista

Tema 6. Introducción a los servicios web
Introducción a XML
Arquitecturas orientas a servicios (SOA): servicios web
Creación de servicios web SOAP y REST
El protocolo SOAP
El protocolo REST

Metodología

Metodología

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:

  • Trabajos. Se trata de actividades de diferentes tipos: reflexión, análisis de casos, prácticas, etc.
  • Prácticas de laboratorio. Resolución de casos prácticos en los laboratorios virtuales.
  • Participación en eventos. Son eventos programados todas las semanas del cuatrimestre: sesiones presenciales virtuales, foros de debate, test.

En la programación semanal puedes consultar cuáles son las actividades concretas que tienes que realizar en esta asignatura.

Descarga el pdf de la 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
Sesiones presenciales virtuales         8,0  
Recursos didácticos audiovisuales         3,0  
Estudio del material básico       26,25  
Lectura de material complementario       21,0  
Trabajos, casos prácticos         8,25  
Prácticas de laboratorio         8,0  
Tutorías         8,0    
Trabajo colaborativo         3,5   
Test de autoevaluación         2,0   
Examen final presencial         2,0   
Total
        90  

 

Puedes personalizar tu plan de trabajo seleccionando aquel tipo de actividad formativa que se ajuste mejor a tu perfil. El profesor-tutor te ayudará y aconsejará en el proceso de elaboración de tu plan de trabajo. Y siempre estará disponible para orientarte durante el curso.

Recomendaciones técnicas

Metodología

Para la correcta participación de los alumnos en las diferentes actividades propuestas en la asignatura se recomienda disponer de un ordenador con las siguientes especificaciones mínimas recomendadas:

  • 4 GB de RAM
  • Conexión a Internet superior a 6 Mbit/s
  • Cámara web
  • Micrófono
  • Altavoces o auriculares
  • Sistema operativo Windows o Mac OS (algunas actividades pueden presentar dificultades sobre Linux. En esta circunstancia se recomienda consultar con el profesor de la asignatura)
  • Acceso de administrador al sistema (es necesario la instalación de programas, emuladores, compiladores…)
  • Navegador web Netscape, Chrome, Safari o Firefox actualizado (versiones no actualizadas pueden presentar problemas funcionales y/o de seguridad)

Bibliografía

Bibliografía básica

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… 

Tema 1
Beati, H. (2016). El gran libro de PHP: creación de páginas web dinámicas (2ª edición, capítuloo 1). España: Marcombo, S. A. Se puede consultar este documento en el aula virtual.

Eslava Muñoz, V.J. (2013). El nuevo PHP paso a paso (páginas 26 a 43). España: Bubok. Se puede consultar este documento en el aula virtual.

Tema 2
Beati, H. (2016). El gran libro de PHP: creación de páginas web dinámicas (2ª Edición) (Capítulo 3). España: Marcombo, S. A. Se puede consultar este documento en el aula virtual.

Welling, L. y Thomson, L. (2017). Desarrollo Web con PHP y MySQL (5ª edición). Madrid: Anaya multimedia.

Tema 3
Beati, H. (2016). El gran libro de PHP: creación de páginas web dinámicas (2ª Edición) (Capítulos 11 y 13). España: Marcombo, S. A. Se puede consultar este documento en el aula virtual.

Eslava Muñoz, V. J. (2013). El nuevo PHP. Conceptos avanzados (páginas 9 a 25). España: Bubok. Se puede consultar este documento en el aula virtual.

Tema 4
Beati, H. (2016). El gran libro de PHP: creación de páginas web dinámicas (2ª Edición) (Capítulos 5 y 7). España: Marcombo, S. A. Se puede consultar este documento en el aula virtual.

Cibelli, C. (2012). PHP. Programación web avanzada para profesionales (páginas 121-129) y (páginas 129-140). España: Editorial Macombo. Se puede consultar este documento en el aula virtual.

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

Tema 6
Welling, L. y Thomson, L. (2017). Desarrollo Web con PHP y MySQL (5ª edición). Madrid: Anaya multimedia.

Bibliografía complementaria

Cobo, A., Gómez, P., Pérez, D., Rocha, R. (2007). PHP y MySQL: tecnologías para el desarrollo de aplicaciones web. España: Ediciones Díaz de Santos.

Ganzábal García, X. (2019). Desarrollo web en entorno servidor (Informática y comunicaciones). España: Informática y comunicaciones.

Mitchel, L. J. (2013). PHP Web Services. EE. UU. : O’Reilly Media, Inc.

Rollet, O. (2015). Aprender a desarrollar un sitio web con PHP y MySQL. España: ENI.

Silberschatz, A., Korth, H. F. y Sudarshan, S. (2014). Fundamentos de Bases de Datos. España: McGraw-Hill Interamericana de España S.L..

Welling, L. y Thomson, L. (2017). Desarrollo Web con PHP y MySQL (5ª edición). Madrid: Anaya multimedia.

evaluación

Evaluación y calificación

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:

calificación

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. En ella se detalla la calificación máxima de cada actividad o evento concreto puntuables.

SISTEMA DE EVALUACIÓN

PONDERACIÓN
MIN

PONDERACIÓN
MAX

Participación del estudiante

0

10

Trabajos, proyectos, laboratorios y casos

20

30

Test de autoevaluación

0

10

Examen final presencial

60

60

 

Profesorado

Javier Cubo Villalba

Doctor en Informática por la Universidad de Málaga UMA. Profesor Asociado en UNIR. Investigador Colaborador en UMA. Ha trabajado en más de 15 proyectos de investigación (de ámbito nacional, europeo y EEUU), tanto en la academia como en la industria.

Formación
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.

Orientaciones para el estudio

Orientación para el estudio

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 personal con tu profesor-tutor.
  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. Lee siempre el primer apartado, ¿Cómo estudiar este tema?, porque allí te especificamos qué material tienes que estudiar. Consulta, además, las secciones del tema que contienen material complementario (Lo + recomendado y + Información).
  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 profesor-tutor 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: Ideas clave, Lo + recomendado, + Información, Actividades y Test.

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 profesor tutor.
  • Recuerda que no estás solo: consulta todas tus dudas con tu profesor-tutor utilizando el correo electrónico. Si asistes a las sesiones presenciales virtuales también podrás preguntar al profesor sobre el contenido del tema. 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 y asiste a las sesiones presenciales virtuales. 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!