Descripción
En esta asignatura se imparten conceptos básicos que acompañarán al alumno durante el transcurso del Máster y serán necesarios para muchas de las asignaturas. Como resultado de esta asignatura el alumno será capaz de desplegar un entorno de desarrollo y producción donde poder desarrollar un proyecto web.
Tipo asignatura
Primer - Obligatoria
Semestre
Primero
Curso
1
Créditos
5.00
Conocimientos previos

No necesarios, aunque se recomienda estar familiarizado con entornos Linux.

Objetivos

En esta asignatura se explica qué son los entornos de desarrollo y para qué sirven. Se presenta el concepto de virtualización y se estudian las diferentes tecnologías de virtualización. Con este fin, se explica la herramienta Vagrant y los conceptos básicos de Linux necesarios para su manipulación. Se continúa con los sistemas de control de versiones, especialmente Git. También se imparte un conocimiento de nivel intermedio de Ansible hasta el punto de poder crear módulos propios reutilizables.

En esta asignatura se presenta el Sistema DNS (Domain Naming System), cómo funciona a grandes rasgos y cómo están estructurados los nombres de dominio de internet.

Como parte final de la asignatura se enseña a gestionar la configuración de un entorno de instancias Amazon EC2 (o equivalente).

Contenidos

¿Qué es y en qué consiste un entorno web?
Virtualización (máquinas virtuales)
Vagrant
Sistemas de Control de Versiones (Git)
Introducción a Linux
Ansible
Entornos de producción y preproducción
Cloud Hosting EC2
Naming & Domain
Despliegue de configuración de servidores

Metodología

Las clases combinan explicaciones teóricas por parte del profesorado con otras más prácticas, donde el alumno tendrá la posibilidad de aprender cómo desplegar un entorno de desarrollo real. La mayoría de prácticas y ejercicios de esta asignatura se desarrollan de manera individual, pues se considera clave que el alumno pueda por si solo preparar un entorno de este tipo.

Evaluación

Se realizarán ejercicios para una evaluación continuada.
Se realizará un examen teórico y práctico al final de la asignatura donde se pondrán en práctica todos los conceptos aprendidos.

Criterios evaluación

Los resultados de aprendizaje de esta asignatura son los siguientes:

[RA1] El alumno comprende y sabe gestionar correctamente todo el ciclo de vida de un proyecto de web.
[RA2] El alumno aprende a configurar las diferentes máquinas utilizadas en un equipo de desarrollo e instalar el software necesario para la programación de proyectos web.
[RA6] El alumno sabe analizar y dimensionar correctamente las máquinas necesarias para un proyecto web, así como analizar su rendimiento con el fin de optimizarlo.

Bibliografía básica
Material complementario