INTRODUCCIÓN
CAPÍTULO 1. INTERNET
1.1 Breve historia y orig en de Internet
1.2 Principales servicios ofrecidos por Internet
1.2.1 World Wide Web
1.2.2 Correo electrónico
1.2.3 Transferencia de ficheros (ftp)
1.2.4 Otros servicios
1.3 La tecnología de Internet
1.3.1 Arquitectura TCP /IP
1.3.2 Comparación de TCP /IP con OSI
1.3.3 Protocolos de Internet: TCP , UDP , SMNP , SMTP , etc.
1.4 Redes TCP /IP
1.4.1 La capa host-red
1.4.2 La capa internet IP
1.4.3 La capa de transporte
1.4.4 La capa de aplicación
1.5 Direccionamiento IP. Evolución.
1.5.1 Dirección IP
1.5.2 Enrutamiento
1.5.3 Dominios. Jerarquía de dominios
1.5.4 Servicios de identificación de dominios: DNS
1.5.5 Ámbitos: Intranet, Internet y Extranet. Consideraciones de seguridad. Cortafuegos
1.6 Ejercicios del capítulo 1
CAPÍTULO 2. LA WORLD WIDE WEB
2.1 Breve historia de la World Wi de Web
2.2 Arquitectura general de la Web
2.2.1 Principios para el diseño de sistemas web
2.2.2 Componentes básicos de un sistema web
2.2.3 División en capas
2.3 El cliente web
2.3.1 Hardware básico. Dispositivos fijos y móviles
2.3.2 Sistemas operativos de uso común e Internet
2.3.3 Navegadores. Características y comparativa
2.3.4 Funcionalidades avanzadas: extensiones, aplicaciones específicas, etc.
2.4 Servidores web
2.4.1 Servidores web de uso común
2.4.2 Características básicas de un servidor web
2.4.3 Instalación y configuración de un servidor web Apache
2.4.4 Seguridad en servidores web
2.4.5 Funcionalidades avanzadas: extensiones, servidores virtuales, etc.
2.5 Servidores de aplicaciones
2.5.1 Concepto de servidor de aplicaciones
2.5.2 Servidor de aplicación Java EE
2.5.3 Otros servidores de aplicación
2.5.4 Características comunes
2.5.5 Usos
2.5.6 Seguridad en servidores de aplicaciones
2.5.7 Funcionalidades avanzadas
2.6 Servidores de bases de datos
2.6.1 Servidores de bases de datos para Internet de uso común
2.6.2 Características básicas de un servidor de bases de datos
2.7 Servidores complementarios en una arquitectura web
2.7.1 Servidores de correo. Características
2.7.2 Servidores de direccionamiento (DNS ). Características
2.7.3 Proxies
2.7.4 Servidores de directorio. Características de LDAP
2.7.5 Servidores de mensajería
2.7.6 Servidores de antivirus, filtrado de contenidos, etc
2.7.7 Otros servidores complementarios
2.8 Infraestructura hardware y software para servidores de Internet
2.8.1 Servicios en la nube (Cloud)
2.8.2 Tipos de servicios
2.8.3 Ventajas e inconvenientes de los servicios de infraestructura en la nube
2.8.4 Tipos de computación en la nube
2.8.5 Comparativa de los servicios de infraestructura en la nube de uso común
2.9 Ejercicios del capítulo 2
CAPÍTULO 3. APLICACIONES WEB
3.1 Evolución y tipos de aplicaciones informáticas
3.1.1 Aplicaciones de terminal. Servidores de terminales virtuales
3.1.2 Aplicaciones de escritorio
3.1.3 Aplicaciones cliente/servidor
3.1.4 Aplicaciones web
3.1.5 Ventajas e inconvenientes de las aplicaciones web frente a las de escritorio
3.2 Tecnologías de desarrollo de aplicaciones
3.2.1 Características por tipo de aplicación
3.2.2 Tipo de aplicaciones - comparativa
3.3 Tecnologías específicas para el desarrollo web
3.3.1 Portales de Internet. Características
3.3.2 Gestores de contenidos: servidores de portales y documentales
3.3.3 Servidores de contenidos multidispositivo
3.3.4 Componentes básicos en portales web. Portlets y otros componentes de uso común
3.3.5 Características de los portales web
3.4 Ejercicios del capítulo 3
CAPÍTULO 4. DESARROLLO Y DESPLIEGUE DE APLICACIONES WEB
4.1 Modelos básicos de desarrollo de aplicaciones web. El modelo vistacontrolador (MVC )
4.1.1 Arquitectura MVC
4.1.2 Model 2
4.2 Herramientas de desarrollo web de uso común
4.2.1 Herramientas de Diseño de Sitios Web.
4.3 Políticas de desarrollo y pruebas de aplicaciones web
4.3.1 Entorno de desarrollo
4.3.2 Entorno de pre-producción o pruebas
4.3.3 Entorno de producción
4.4 Organización de recursos en una aplicación web
4.5 Seguridad en una aplicación web
4.5.1 Problemas principales en la Programación de Sistemas Web
4.5.2 Clasificación de Ataques
4.5.3 Seguridad de las Aplicaciones y su relación con las Bases de Datos
4.5.4 Exposición de datos
4.5.5 Páginas Privadas y los Sistemas de Autenticación
4.5.6 Conceptos y técnicas de identificación, autenticación y autorización o control de acceso
4.5.7 Identificación y autenticación avanzada. Certificados digitales
4.5.8 Concepto de sesión. Conservación de sesiones
4.5.9 Sistemas de uso común para la conservación de las sesiones en aplicaciones web. Single Sign-on y Single Sign-out
4.6 Despliegue de aplicaciones web
4.6.1 ¿Qué es Despliegue (Deployment) de una aplicación?
4.6.2 Despliegue automático en Eclipse para desarrolladores Java EE
4.7 Ejercicios capítulo 4
CAPÍTULO 5. VERIFICACIÓN DE APLICACIONES WEB
5.1 Características de un proceso de pruebas
5.2 Tipos de pruebas
5.2.1 Funcionales
5.2.2 Pruebas de recorrido
5.2.3 Pruebas de regresión
5.2.4 Estructurales
5.2.5 Pruebas de aceptación
5.2.6 De integración con sistemas externos
5.2.7 Usabilidad y accesibilidad
5.2.8 Unitarias
5.2.9 De detección de errores. Pruebas de caja negra
5.2.10 De seguridad. Evaluación de la protección frente a los ataques más comunes
5.2.11 De rendimiento
4.2.12 De integridad de datos y base de datos
5.3 Diseño y planificación de pruebas. Estrategias de uso común
5.3.1 Alcance
5.3.2 Inventario de las pruebas
5.3.3 Resultado de la ejecución de las pruebas
5.3.4 Ciclo de la prueba
5.4 Consideraciones de confidencialidad. Pruebas con datos personales
5.4.1 Generadores de datos personales aleatorios para pruebas
5.5 Automatización de pruebas. Herramientas
5.5.1 Herramientas de validación de código html/css
5.5.2 Herramientas para poner a prueba el servicio
5.5.3 Herramientas en el navegador
5.5.4 Herramientas para pruebas automatizadas
5.6 Ejercicios del capítulo 5
CAPÍTULO 6. CONTROL DE VERSIONES
6.1 Definición
6.2 Características generales
6.3 Terminología
6.3.1 Repositorios. Gestión y administración
6.3.2 Módulo
6.3.3 Revisión ("version")
6.3.4 Rotular ("tag")
6.3.5 Línea base ("Baseline")
6.3.6 Abrir rama ("branch") o ramificar
6.3.7 Desplegar ("Check-out", "checkout")
6.3.8 "Publicar" o "Enviar" ("commit", "check-in", "install", "submit")
6.3.9 Conflicto
6.3.10 Resolver
6.3.11 Cambio ("chang", "diff", "delta")
6.3.12 Lista de cambios ("changelist", "change set", "patch")
6.3.13 Exportación ("export")
6.3.14 Importación ("import")
6.3.15 Integración o fusión ("merge")
6.3.16 Integración inversa
6.3.17 Actualización ("sync" o "update")
6.3.18 Copia de trabajo ("workspace")
6.3.19 Congelar
6.4 Formas de colaborar
6.5 Tipos de control de versiones
6.5.1 Centralizados
6.5.2 Distribuidos
6.6 Buenas prácticas en control de versiones
6.6.1 Updates
6.6.2 Commits
6.6.3 Comentarios
6.6.4 Estructura de un proyecto en SCV
6.6.5 Conflictos
6.6.6 Tags
6.7 Herramientas de control de versiones de uso común
6.7.1 Sistemas centralizados
6.7.2 Sistemas distribuidos
6.8 Caso práctico: Instalación de GIT
6.8.1 Descarga e instalación
6.8.2 Creación de un repositorio privado
6.8.3 Directorios dentro de la carpeta .git
6.8.4 El primer commit
6.8.5 El segundo commit
6.8.6 El tercer commit
6.9 Integración continua
6.10 Ejercicios del capítulo 6
CAPÍTULO 7. DOCUMENTACIÓN DE APLICACIONES WEB
7.1 Características generales de la documentación. Importancia en el ciclo de vida software
7.1.1 Características que deben presentar los requisitos
7.2 Organización y estructura básica de documentos
7.3 Gestión de versiones de documentos
7.4 Tipos de documentación
7.4.1 De requerimientos
7.4.2 De arquitectura y diseño
7.4.3 Técnica
7.4.4 De usuario: tutoriales, por temas y glosarios
7.5 Formatos de documentación
7.5.1 Documentos
7.5.2 Documentación en aplicaciones. Formatos de ayuda
7.5.3 Documentación en línea. Wikis
7.6 Estándares de documentación
7.6.1 Estandarización
7.6.2 Estándares básicos de documentación.
7.7 Herramientas de documentación
7.7.1 Dr. Explain
7.7.2 Construcción de ficheros de ayuda para Java con JavaHelp
7.7.3 Generación automática de documentación técnica para Java con Javadoc
7.7.4 Documentación de código - Comentarios
7.8 Buenas prácticas en documentación
7.8.1 Actualizaciones de documentación
7.8.2 Documentación colaborativa mediante wikis
7.8.3 Uso de herramientas multimedia. Vídeotutoriales
7.9 Ejercicios del capítulo 7
SOLUCIONARIO DE LOS TEST DE CONOCIMIENTOS
índice alfabético
El Certificado de Profesionalidad IFCD0210, Desarrollo de Aplicaciones con Tecnologías web (RD 1531/2011, de 31 de octubre modificado por el RD 628/2013, de 2 de agosto), está orientado a desarrollar documentos y componentes software que constituyan
aplicaciones informáticas en entornos distribuidos utilizando tecnologías web, partiendo de un diseño técnico ya elaborado, realizando, además, la verificación, documentación e implantación de los mismos.
Son emitidos por el Servicio Público de Empleo Estatal (SEPE) o, en su caso, por las Comunidades Autónomas, y tienen validez en todo el territorio nacional.
La formación subvencionada va a estar orientada en su mayor parte en los próximos años a través de este tipo de certificados. Un certificado de profesionalidad es un documento que acredita a un trabajador en una cualificación profesional del Catálogo Nacional de las Cualificaciones Profesionales.
Poseer un certificado de profesionalidad supone sin lugar a dudas incrementar sustancialmente su currículo profesional, ya que, al ser un documento oficial, se valora en cualquier proceso de selección que convoquen las Administraciones Públicas, y le acredita
profesionalmente ante la empresa privada.
Familia profesional del certificado al que se ajusta: Informática y Comunicaciones.
Área profesional: Desarrollo.
Nivel de cualificación profesional: 3.