Capacidades y criterios de evaluación
C1: Establecer los procesos de instalación y distribución de la aplicación en distintos ambitos de implantación.
- CE1.1 Determinar las diferentes fases, procesos y tecnologías informáticas que intervienen en la instalación y distribución de la aplicación web.
- CE1.2 En supuestos prácticos, en el que se pide instalar y distribuir la aplicación web en los ámbitos de internet, intranet y extranet:
– Establecer los requisitos de instalación y distribución de la aplicación.
– Definir la estructura de directorios en el entorno servidor para ubicar los documentos y componentes software desarrollado en la aplicación web.
– Identificar los recursos afectados por el desarrollo realizado.
– Indicar los servicios necesarios en el entorno servidor para poder ejecutar la aplicación web.
– Especificar los parámetros de configuración adecuados en el entorno del servidor y cliente.
– Establecer los parámetros de seguridad de la aplicación web.
– Crear y configurar los paquetes de instalación de manera adecuada.
– Verificar el buen funcionamiento del proceso de instalación y distribución.
C2: Elaborar y mantener la documentación aplicación web utilizando herramientas de generación de documentación y controlando las versiones.
- CE2.1 Identificar las diferentes herramientas de generación de documentación y control de versiones existentes.
- CE2.2 En un supuesto práctico en el que se pide elaborar y mantener la documentación de la aplicación web evaluar que:
– Los documentos y componentes software han sido documentados según las normas de documentación y calidad de la organización.
– La documentación se desarrolla y actualiza teniendo en cuenta el control de versiones.
– La documentación se elabora utilizando las herramientas de documentación existentes en la organización empresarial.
C3: Seleccionar y emplear métodos y juegos de pruebas para verificar las funcionalidades y las especificaciones de rendimiento de la aplicación web.
- CE3.1 Clasificar los diferentes métodos a utilizar para verificar el buen funcionamiento de la aplicación web desarrollada.
- CE3.2 En un supuesto práctico en el que se pide verificar las funcionalidades y las especificaciones de rendimiento de la aplicación web utilizando juegos de pruebas, los elementos siguientes:
– Los documentos desarrollados utilizando lenguajes de marcas en el entorno cliente.
– Los componentes software desarrollados en el entorno cliente utilizando lenguajes de guión.
– La usabilidad y accesibilidad en el desarrollo de interfaces de usuario en el entorno cliente.
– La integración de componentes software ya desarrollados en la aplicación web.
– Los componentes software desarrollados en el entorno servidor utilizando lenguajes de programación orientados a objetos.
– Los componentes software de accesos a bases de datos u otras estructuras.
– La utilización de servicios web de la aplicación web.
– El rendimiento del servidor en función de la aplicación web desarrollada y el número de usuarios que en un momento dado utilizan dicha aplicación.
– La optimización de la aplicación web en función de los parámetros obtenidos en la validación de las pruebas.
Contenidos
1. Internet
– Breve historia y origen de Internet.
– Principales servicios ofrecidos por Internet.
– World Wide Web.
– Correo electrónico.
– Transferencia de ficheros (ftp).
– Otros servicios.
– La tecnología de Internet.
– Arquitectura TCP/IP. Comparación con OSI.
– Protocolos de Internet: TCP, UDP, SMNP, SMTP, etc.
– El protocolo HTTP.
– Redes TCP/IP.
– El direccionamiento IP. Evolución.
– Dominios. Jerarquía de dominios.
– Servicios de identificación de dominios: DNS.
– Ámbitos: Intranet, Internet y Extranet. Consideraciones de seguridad. Cortafuegos.
2. La World Wide Web
– Breve historia de la World Wide Web.
– Arquitectura general de la Web.
– Principios para el diseño de sistemas web.
– Componentes básicos de un sistema web.
– División en capas.
– El cliente web.
– Hardware básico. Dispositivos fijos y móviles.
– Sistemas operativos de uso común e Internet.
– Navegadores. Características y comparativa.
– Funcionalidades avanzadas: extensiones, aplicaciones específicas, etc.
– Servidores web.
– Servidores web de uso común.
– Características básicas de un servidor web.
– Configuración de servidores web.
– Seguridad en servidores web.
– Funcionalidades avanzadas: extensiones, servidores virtuales, etc.
– Servidores de aplicaciones.
– Concepto de servidor de aplicaciones.
– Características de los servidores de aplicaciones.
– Comparativa de servidores de aplicaciones de uso común.
– Configuración de un servidor de aplicaciones.
– Seguridad en servidores de aplicaciones.
– Funcionalidades avanzadas: conceptos de escalabilidad, balanceo de carga, alta disponibilidad, etc.
– Servidores de bases de datos.
– Servidores de bases de datos para Internet de uso común.
– Características básicas de un servidor de bases de datos.
– Funcionalidades avanzadas: conceptos de escalabilidad, alta disponibilidad, etc.
– Servidores complementarios en una arquitectura web.
– Servidores de correo. Características.
– Servidores de direccionamiento (DNS). Características.
– Proxies.
– Servidores de directorio. Características de LDAP.
– Servidores de mensajería.
– Servidores de antivirus, filtrado de contenidos, etc.
– Otros servidores complementarios.
– Infraestructura hardware y software para servidores de Internet.
– Servicios en la nube (Cloud).
– Tipos de servicios: infraestructura como servicio, plataforma como servicio y aplicación como servicio.
– Ventajas e inconvenientes de los servicios de infraestructura en la nube.
– Comparativa de los servicios de infraestructura en la nube de uso común.
3. Aplicaciones web
– Evolución y tipos de aplicaciones informáticas.
– Aplicaciones de terminal. Servidores de terminales virtuales.
– Aplicaciones de escritorio.
– Aplicaciones cliente/servidor.
– Aplicaciones web.
– Ventajas e inconvenientes de los tipos de aplicaciones. Comparativa.
– Tecnologías de desarrollo de aplicaciones.
– Características por tipo de aplicación.
– Comparativa según el tipo de aplicación.
– Tecnologías específicas para el desarrollo web.
– Portales de Internet. Características.
– Gestores de contenidos: servidores de portales y documentales.
– Servidores de contenidos multidispositivo.
– Componentes básicos en portales web. Portlets y otros componentes de uso común.
– Características y comparativa de los portales web de uso común.
4. Desarrollo y despliegue de aplicaciones web
– Modelos básicos de desarrollo de aplicaciones web. El modelo vista-controlador (MVC).
– Herramientas de desarrollo web de uso común.
– Características.
– Comparativa.
– Políticas de desarrollo y pruebas de aplicaciones web.
– Entorno de desarrollo.
– Entorno de pre-producción o pruebas.
– Entorno de producción.
– Organización de recursos en una aplicación web.
– Programas.
– Hojas de estilos.
– Ficheros de configuración.
– Imágenes.
– Documentos.
– Bibliotecas de componentes (librerías).
– Otros archivos.
– Seguridad en una aplicación web.
– Niveles de seguridad. Estándares.
– Conceptos y técnicas de identificación, autenticación y autorización o control de acceso.
– Identificación y autenticación avanzada. Certificados digitales.
– Concepto de sesión. Conservación de sesiones.
– Sistemas de uso común para la conservación de las sesiones en aplicaciones web. Single Sign-on y Single Sign-out.
– Despliegue de aplicaciones web.
– Características del proceso de despliegue.
– Definición del proceso de despliegue de aplicaciones web. Verificación.
5. Verificación de aplicaciones web
– Características de un proceso de pruebas.
– Tipos de pruebas.
– Funcionales.
– Estructurales.
– De integración con sistemas externos.
– Usabilidad y accesibilidad.
– De detección de errores. Pruebas de caja negra.
– De seguridad. Evaluación de la protección frente a los ataques más comunes.
– De rendimiento. Pruebas de carga o estrés. Estadísticas.
– De integridad de datos.
– Diseño y planificación de pruebas. Estrategias de uso común..
– Consideraciones de confidencialidad. Pruebas con datos personales.
– Automatización de pruebas. Herramientas.
6. Control de versiones
– Definición.
– Características generales.
– Tipos de control de versiones.
– Centralizados.
– Distribuidos.
– Mecanismos de control de versiones
– Repositorios. Gestión y administración.
– Publicación de cambios («check-in» o «commit»). Operaciones atómicas
– Tipos de desprotección, despliegue o «check-out»: exclusivos y colaborativos.
– Ramificaciones («branching»).
– Fusiones («merging»).
– Etiquetado («tagging»).
– Líneas de base («baseline»).
– Actualizaciones.
– Congelaciones.
– Gestión de conflictos.
– Buenas prácticas en control de versiones.
– Herramientas de control de versiones de uso común.
– Características.
– Comparativa.
– Integración del control de versiones en herramientas de uso común.
7. Documentación de aplicaciones web
– Características generales de la documentación. Importancia en el ciclo de vida software
– Organización y estructura básica de documentos
– Gestión de versiones de documentos
– Tipos de documentación.
– De requerimientos.
– De arquitectura y diseño.
– Técnica.
– De usuario: tutoriales, por temas y glosarios.
– Comercial.
– Formatos de documentación.
– Documentos.
– Documentación en aplicaciones. Formatos de ayuda.
– Documentación en línea. Wikis.
– Estándares de documentación.
– Herramientas de documentación.
– Generación automática de documentación técnica.
– Documentación de código.
– Buenas prácticas en documentación.
– Actualizaciones de documentación.
– Documentación colaborativa mediante wikis.
– Uso de herramientas multimedia. Vídeotutoriales.