Qué puede evaluarse
RA1: Prepara el entorno de desarrollo y los servidores de aplicaciones Web instalando e integrando las funcionalidades necesarias.
Stack tecnológicoFrontendBackendServidor WebServidor de Base de DatosEntorno de EjecuciónProcesamiento cliente-servidorServidor de Bases de DatosVirtual HostXAMPP
RA2: Implanta gestores de contenidos seleccionándolos y estableciendo la configuración de sus parámetros.
CMSCódigo AbiertoLicencia PropietariaWordPressJoomlaPrestaShopE-commerceBlogTemasPlugins
RA3: Administra gestores de contenidos adaptándolos a los requerimientos y garantizando la integridad de la información.
CMS (Content Management System)Módulo / Plugin / Extensión (terminología según CMS)Rol de usuario y principio de mínimo privilegioPlantilla / Tema y personalización visualConfiguración inicial del sitio (ajustes generales)Base de datos e interfaz de administraciónMódulo/Plugin/ExtensiónRequerimiento de FuncionalidadShortcodeWidget
RA4: Gestiona aplicaciones de ofimática Web integrando funcionalidades y asegurando el acceso a la información.
Ofimática web (SaaS)Edición colaborativa simultáneaModelo de despliegue: externo vs autoalojadoSuite completa vs herramienta específicaCoste total de propiedadAuto-alojado (On-premise)Proxy inversoSSL/TLSIntegración LDAP/ADContenedores Docker
RA5: Genera documentos Web utilizando lenguajes de guiones de servidor.
Lenguaje de guiones de servidorProcesamiento en servidorProcesamiento en clienteHTML dinámicoPetición/Respuesta HTTPFramework webSintaxis PHPVariablesTipos de datosOperadores
RA6: Genera documentos Web con acceso a bases de datos utilizando lenguajes de guiones de servidor.
SGBD Relacional (SQL)SGBD No Relacional (NoSQL)Driver/Extensión de base de datos (ej. PDO, mysqli, pgsql)Stack LAMP/LEMPphpinfo()PDO (PHP Data Objects)DSN (Data Source Name)CRUD (Create, Read, Update, Delete)Inyección SQLConsultas Preparadas (Prepared Statements)
RA7: Realiza modificaciones en gestores de contenidos adaptando su apariencia y funcionalidades.
Estructura de directorios CMSFicheros coreTemas/PlantillasPlugins/Módulos/ExtensionesFicheros de configuraciónFicheros de código (PHP, JS)Ficheros de estilo (CSS)Ficheros de plantilla (HTML)Requisitos funcionalesAdaptación de funcionalidades
Trampas habituales antes del examen
- Confundir servidor web con servidor de aplicaciones: La causa es no entender la delegación de tareas. La corrección es visualizar el flujo de una petición: navegador -> servidor web -> servidor de aplicaciones -> base de datos.
- Desconocer la necesidad de validación en ambos lados (cliente y servidor): La causa es subestimar la seguridad o la experiencia de usuario. La corrección es implementar validaciones en el cliente para UX y en el servidor para seguridad y robustez.
- Usar configuraciones por defecto en producción: Causa: Desconocimiento de riesgos de seguridad y optimización. Corrección: Siempre aplicar hardening, configurar virtual hosts, y revisar permisos.
- No entender la diferencia entre entornos de desarrollo y producción: Causa: Falta de visión del ciclo de vida del software. Corrección: Utilizar plataformas integradas para desarrollo y configuraciones manuales/automatizadas para producción, adaptando la seguridad y el rendimiento.
- Usar `root` de BD para la aplicación: Causa: Riesgo de seguridad masivo. Corrección: Crear usuarios de BD específicos con permisos granulares.
- No instalar módulos PHP necesarios: Causa: Errores de 'función no definida'. Corrección: Revisar la documentación de la aplicación y los logs de errores para identificar los módulos faltantes.
- No configurar un gestor de procesos para Node.js/Python: Causa: La aplicación se cae al cerrar la terminal o al fallar. Corrección: Usar PM2, Gunicorn, uWSGI o systemd para gestionar el ciclo de vida de la aplicación.
- Dejar puertos abiertos innecesariamente en el firewall: Causa: Desconocimiento de los servicios que escuchan o pereza. Corrección: Revisar `netstat -tuln` y cerrar todo lo que no sea esencial.
- No usar HTTPS: Causa: Complejidad percibida o falta de conciencia de seguridad. Corrección: Implementar Let's Encrypt es sencillo y gratuito, y es un estándar de seguridad.
- Documentación inexistente o desactualizada: Causa: Falta de disciplina. Corrección: Integrar la documentación como parte del proceso de trabajo, usar herramientas que faciliten su mantenimiento (ej. Git para control de versiones de la documentación).
- Elegir un CMS sin analizar las necesidades: Seleccionar un CMS solo por su popularidad sin considerar si se ajusta a los requisitos funcionales del proyecto. Corrección: Realizar un análisis de requisitos detallado (funcionalidades, escalabilidad, presupuesto, equipo) antes de la selección.
- Confundir CMS con constructor web: Pensar que un CMS es solo una herramienta visual para arrastrar y soltar elementos. Corrección: Entender que un CMS es una plataforma completa de gestión de contenido, que puede incluir constructores visuales, pero va mucho más allá en gestión de usuarios, bases de datos, etc.