Categoría: Educación

nfraestructura como código (IaC – «Infraestructure as Code»), identificando contenidos y utilidad y explicando el procedimiento de creación usando el lenguaje propio de una plataforma de despliegue, previa identificación de los entornos de despliegue del código, artefactos e imágenes de contenedores.
CE3.2Explicar el proceso de creación de flujos de trabajo para el despliegue del entorno «hardware», usando las credenciales proporcionadas, aplicando unas configuraciones definidas, para crear el entorno de desarrollo o producción.
CE3.3Enumerar los elementos que se especifican al configurarlas definiciones técnicas de uso de control y de seguridad para cada entorno, tales como:
–Roles de acceso del usuario.
–Roles de acceso del código.
–Acceso al almacenamiento.
–Acceso a las API («Application Programming Interface»), entre otros recursos, identificando parámetros de configuración.
CE3.4Detallar el procedimiento de creación dentro de la plataforma de la infraestructura definida en los ficheros, usando las credenciales facilitadas, para su posterior integración en los flujos de trabajo.
CE3.5En un supuesto práctico de aplicación de procedimientos de configuración de entornos de revisión, mediante ficheros de parámetros y creando flujos de trabajo, siguiendo estándares y políticas de seguridad para comprobar el despliegue:
–Crear unos ficheros de definición de infraestructura como código (IaC «Infraestructure as Code»), usando el lenguaje propio de la plataforma de despliegue, previa identificación de los entornos de despliegue del código, artefactos e imágenes de contenedores.
–Crear unos flujos de trabajo para el despliegue de infraestructura, usando las credenciales proporcionadas, aplicando las configuraciones definidas, para crear el entorno.
–Las definiciones técnicas de uso de control y de seguridad se configuran para cada entorno, especificando: roles de acceso del usuario, roles de acceso del código, acceso al almacenamiento, acceso a las API («Application Programming Interface»), entre otros recursos, para su posterior gestión.
–Crear la infraestructura definida en los ficheros al efecto dentro de la plataforma proporcionada por la entidad responsable del desarrollo, usando las credenciales facilitadas, para su posterior integración en los flujos de trabajo.
–Verificar la infraestructura creada después del despliegue, comprobando que se obtiene acceso a todos los recursos de infraestructura.
C4:Aplicar procedimientos de instalación del «software» de automatización y gestión de paquetes y dependencias y de administración de la configuración del «software», creando flujos de mantenimiento y despliegue sobre las plataformas, configurando los parámetros de uso para preparar la automatización del despliegue.
CE4.1Enumerar herramientas de automatización y gestión de paquetes y dependencias, identificando sus características y funcionalidades.
CE4.2Describir el procedimiento de instalación de las herramientas en la infraestructura seleccionada, actualizándolas según las directrices de versión y documentación del fabricante.
CE4.3Explicar el proceso de creación de flujos para mantenimiento, usando las herramientas para la automatización de la administración de la configuración del «software» y servicios de los sistemas desarrollados.
CE4.4Detallar el proceso de verificación de los flujos para mantenimiento, indicando cómo probar que las acciones automatizadas generan los resultados esperados.
CE4.5En un supuesto práctico de aplicación de procedimientos de instalación del «software» de automatización y gestión de paquetes y dependencias y de administración de la configuración del «software», creando flujos de mantenimiento y despliegue sobre las plataformas, configurando los parámetros de uso para preparar la automatización del despliegue:
–Instalar unas herramientas de automatización y gestión de paquetes y dependencias en la infraestructura seleccionada, actualizándolas según las directrices de versión y documentación del fabricante.
–Crear los flujos para mantenimiento, usando las herramientas para la automatización de la administración de la configuración del «software» y servicios de los sistemas desarrollados.
–Verificar los flujos para mantenimiento, probando que las acciones automatizadas generan los resultados esperados según la documentación del proyecto.
C5:Aplicar procedimientos de definición de las variables de trabajo de un entorno, configurándolas para ser usadas por los contenedores que tienen el código y que se crean de forma dinámica y para ejecutar la aplicación.
CE5.1Definir procedimientos de parametrización de reglas de seguridad, niveles de servicio y consumo, identificando su aplicación como configuraciones dentro de las herramientas de despliegue.
CE5.2Enumerar métricas disponibles en una plataforma, clasificándolas y definiendo su utilidad, explicando el proceso para incluirlas en las herramientas de monitorización.
CE5.3Describir el contenido de posibles informes de rendimiento y planificación («capacity planning»), indicando la información a mostrar, para anticipar el crecimiento y facilitar la gestión de los recursos que requieren las herramientas.
CE5.4Explicar el proceso de generación de acciones automáticas basadas en eventos disparados por errores, describiendo cómo se incorporan en las herramientas desplegadas, para ajustar el rendimiento y mantener los recursos utilizados en niveles óptimos.
CE5.5En un supuesto práctico de aplicación de procedimientos de definición de las variables de trabajo de un entorno, configurándolas para ser usadas por los contenedores que tienen el código y que se crean de forma dinámica y para ejecutar la aplicación:
–Aplicar reglas de seguridad, niveles de servicio y consumo como configuraciones dentro de unas herramientas de despliegue, para parametrizar la ejecución de los contenedores.
–Incluir en las herramientas de monitorización las métricas para elaborar informes de rendimiento y planificación («capacity planning»), anticipar el crecimiento y facilitar la gestión de los recursos que requieren las herramientas, previa recopilación y usando las instrucciones y facilidades de la herramienta.
–Redactar la documentación sobre el uso de los despliegues de código e imágenes de contenedores, para facilitar la reutilización de los componentes ya preparados, almacenándola en un repositorio de código para servir como guía o modelo para posteriores desarrollos y despliegues.
–Incorporar en las herramientas desplegadas las acciones automáticas basadas en eventos disparados por errores tales como fallos de trabajo en los flujos, disponibilidad de componentes de integración, fallos de acceso, estado de finalización, entre otros, usando las facilidades de cada herramienta, para ajustar el rendimiento y mantener los recursos utilizados en niveles óptimos.
C1 respecto a CE1.6; C2 respecto a CE2.3; C3 respecto a CE3.5; C4 respecto a CE4.5 y C5 respecto a CE5.5.
Otras capacidades:
Comunicarse eficazmente con las personas adecuadas en cada momento, respetando los canales establecidos en la organización.
Adaptarse a la organización, a sus cambios organizativos y tecnológicos, así como a situaciones o contextos nuevos.
Mantener una actitud asertiva, empática y conciliadora con las personas demostrando cordialidad y amabilidad en el trato.
Mostrar iniciativa en la búsqueda de soluciones y en la resolución de problemas.
Aplicar de forma efectiva el principio de igualdad de trato y no discriminación en las condiciones de trabajo entre mujeres y hombres.
Metodologías de desarrollo: Cascada («Waterfall») vs ágiles (Agile). Ciclo de vida del desarrollo.
Herramientas de gestión de proyectos de desarrollo.
Integración Continua (CI).
Despliegue continuo (CD).
Despliegue de aplicaciones en contenedores de aplicaciones. Desarrollo e integración continuas (CI/CD).
Herramientas relacionadas con el despliegue en contenedores. Objetivos, características y funcionamiento.
Herramientas de validación de calidad y seguridad del código y dependencias de librerías externas o integraciones. Características y aplicaciones.
Habilitación del acceso a los recursos y herramientas para desplegar y/o gestionar los entornos de producción. Usuarios y perfiles.
Accesos a un código fuente a través de herramientas. Configuración. Parámetros de seguridad y políticas de acceso.
Herramientas de validación del código fuente. Pruebas de calidad.
Herramientas específicas de comprobación de parámetros de seguridad del código. Parámetros de configuración. Soluciones a adoptar.
Ficheros de definición de infraestructura como código. Contenidos y utilidad. Procedimiento de creación usando el lenguaje propio de una plataforma de despliegue. Identificación de los entornos de despliegue del código, artefactos e imágenes de contenedores.
Creación de flujos de trabajo. Configuraciones para crear un entorno.
Procedimientos de configuración de las definiciones técnicas de uso de control y de seguridad para un entorno: roles de acceso de usuarios, roles de acceso del código, acceso al almacenamiento, acceso a las API («Application Programming Interface»). Parámetros de configuración.
Creación de la infraestructura definida en ficheros dentro de una plataforma. Integración en los flujos de trabajo.
Herramientas de automatización y gestión de paquetes y dependencias. Características y funcionalidades. Instalación en una infraestructura.
Creación de flujos para mantenimiento. Herramientas para la automatización de la administración de la configuración del «software» y servicios de los sistemas desarrollados.
Pruebas de verificación de los flujos para mantenimiento.
Reglas de seguridad, niveles de servicio y consumo. Parametrización y aplicación como configuraciones dentro de las herramientas de despliegue.
Métricas de monitorización. Tipos y utilidad. Uso en herramientas de monitorización.
Generación de acciones automáticas basadas en eventos disparados por errores. Tipos de error (fallos de trabajo en los flujos, disponibilidad de componentes de integración, fallos de acceso, estado de finalización, entre otros). Incorporación en herramientas desplegadas.
Los talleres e instalaciones darán respuesta a las necesidades formativas de acuerdo con el contexto profesional establecido en la unidad de competencia asociada, teniendo en cuenta la normativa aplicable del sector productivo, prevención de riesgos laborales, accesibilidad universal, igualdad de género y protección medioambiental. Se considerará con carácter orientativo como espacios de uso:
–Instalación de 2 m2por alumno o alumna.
1. Dominio de los conocimientos y las técnicas relacionados con la preparación de entornos de despliegue en contenedores, que se acreditará simultáneamente mediante las dos formas siguientes:
–Formación académica de nivel 2 (Marco Español de Cualificaciones para la Educación Superior) o de otras de superior nivel relacionadas con el campo profesional.
–Experiencia profesional de un mínimo de 3 años en el campo de las competencias relacionadas con este módulo formativo.
2. Competencia pedagógica acreditada de acuerdo con lo que establezcan las Administraciones competentes.
C1:Aplicar procedimientos de creación de la nube virtual privada («Virtual Private Cloud» –VPC–) donde se desplegará una infraestructura, mediante un hipervisor, configurando comunicaciones y seguridad, para permitir la gestión de la virtualización en todos sus niveles.
CE1.1Clasificar hipervisores, describiendo sus características y funcionalidades.
CE1.2Describir el proceso de instalación de un hipervisor, identificando las opciones que permiten la virtualización de sistemas, teniendo en cuenta sus limitaciones, sistemas operativos base, sistemas operativos soportados y capacidades de configuración.
CE1.3Describir las aplicaciones y características de una VPC (Red virtual Privada), identificando sus funcionalidades.
CE1.4Explicar el proceso de creación de una VPC, usando la consola de un hipervisor, diferenciando las VPC de los entornos, realizando aislamientos y capacidades de configuración.
CE1.5Identificar parámetros tales como IP, zona de disponibilidad en su caso y DNS, explicando cómo configurarlos para establecer comunicaciones entre las zonas de un mismo entorno.
CE1.6Explicar el nivel de exposición DMZ externa, DMZ interna y entorno interno, describiendo el proceso de configuración de capas de seguridad en función de la zona de exposición y accesos externos.
CE1.7Describir el procedimiento de ejecución de pruebas de seguridad, aislamiento y separación de clientes, garantizando que se cumplen unos requisitos y corrigiendo la configuración en su caso para alcanzarlos.
CE1.8En un supuesto práctico de aplicación de procedimientos de creación de la VPC donde se desplegará una infraestructura, mediante un hipervisor, configurando comunicaciones y seguridad, para permitir la gestión de la virtualización en todos sus niveles:
–Instalar un hipervisor, configurándolo con las opciones que permiten la virtualización de sistemas, teniendo en cuenta sus limitaciones y capacidades de configuración.
–Crear una VPC, usando la consola del hipervisor, diferenciando las VPC de los entornos, realizando aislamientos y capacidades de configuración.
–Asignar parámetros tales como IP, zona de disponibilidad en su caso y DNS, configurando las comunicaciones entre las zonas de un mismo entorno.
–Configurar la seguridad se configura, desplegando capas de seguridad dependiendo de la exposición DMZ externa, DMZ interna y entorno interno y ejecutando pruebas que la garanticen, asegurando el aislamiento y separación de clientes.
C2:Aplicar procedimientos de creación de una infraestructura como código (IaC), seleccionando la infraestructura a desplegar y creando los códigos de despliegue, para permitir la automatización mediante procesos y adaptar las aplicaciones y servicios con mayor rapidez.
CE2.1Enumerar elementos de una infraestructura a desplegar tal como almacenamiento, capacidad de cómputo, memoria, autoescalado, entre otros, identificando los valores que se ajustan a unos requerimientos en función del servicio que va a alojar.
CE2.2Identificar paradigma, estructuras de control y sentencias del código usado por la plataforma para la automatización del despliegue de la infraestructura, describiendo el proceso de programación usando un editor, en base a unos requerimientos del servicio a alojar.
CE2.3Explicar el proceso de lanzamiento de pruebas de servicio y chequeo de configuración de un código para el despliegue de la infraestructura, identificando resultados y soluciones de corrección en su caso.
CE2.4Describir el procedimiento de verificación de las configuraciones de seguridad, explicando los criterios para comprobar si el despliegue automatizado de IaC cumple unas recomendaciones de seguridad en el entorno, normativa interna/externa y recomendaciones de organismos internacionales (guías de configuración de entornos).
CE2.5En un supuesto práctico de aplicación de procedimientos de creación de una infraestructura como código, seleccionando la infraestructura a desplegar y creando los códigos de despliegue, para permitir la automatización mediante procesos y adaptar las aplicaciones y servicios con mayor rapidez:
–Seleccionar una infraestructura a desplegar tal como almacenamiento, capacidad de cómputo, memoria, autoescalado, entre otros, ajustada a unos requerimientos para el servicio que va a alojar.
–Crear un código que automatice el despliegue de la infraestructura seleccionada, usando un editor y el lenguaje fijado por la plataforma, en base a los requerimientos del servicio a alojar.
–Ejecutar el código para el despliegue de la infraestructura, lanzando pruebas de servicio y chequeo de configuración.
–Verificar las configuraciones de seguridad, comprobando si el despliegue automatizado de IaC cumple con unas recomendaciones de seguridad en el entorno.
C3:Aplicar procedimientos para desplegar el orquestador, configurando un proyecto y tareas y creando el «pipeline», para ayudar a realizar las funciones de integración continua y la automatización cuando un evento lo indica.
CE3.1Enumerar herramientas «software» de orquestador, identificando sus capacidades para llevar a cabo las pruebas de control de las variables o limitaciones del CI.
CE3.2Describir el proceso de selección e instalación de un «software» de orquestador, identificando los parámetros de configuración tales como permisos, accesos, certificados y opciones de despliegue, entre otras.
CE3.3Identificar «plugin» o complementos del orquestador para incorporar las necesidades de integración del orquestador con las tecnologías del entorno, explicando el proceso de instalación y configuración.
CE3.4Explicar el proceso de creación de un proyecto, identificando las configuraciones base del orquestador de tareas, así como las credenciales para el acceso al repositorio.
CE3.5Describir el proceso de creación de tareas a realizar dentro de un proyecto, identificando parámetros de configuración tales como nombre de la tarea, máquinas en las que se procesan los trabajos del despliegue, direccionamiento, y condiciones de ejecución del despliegue tales como aseguramiento de la calidad y seguridad.
CE3.6Detallar el procedimiento de creación de un «pipeline», identificando los parámetros para encadenar procesos de modo que el resultado del primero desencadene una acción en el nido de trabajos definidos dentro de un proyecto, definiendo las etapas, secuencias y «script» que marquen los estados del proyecto.
CE3.7Explicar el proceso de configuración de la seguridad, describiendo los pasos para asignar los permisos que garanticen la ejecución de las tareas planificadas siguiendo el principio de «mínimo privilegio».
CE3.8En un supuesto práctico de aplicación de procedimientos para desplegar el orquestador, configurando un proyecto y tareas y creando el «pipeline», para ayudar a realizar las funciones de integración continua y la automatización cuando un evento lo indica:
–Seleccionar un «software» de orquestador, escogiendo aquel con capacidad de llevar a cabo las pruebas de control de las variables o limitaciones del CI.
–Instalar y/o configurar el «software» de orquestador seleccionado, parametrizando permisos, accesos, certificados y opciones de despliegue, entre otras.
–Instalar unos «plugin» o complementos del orquestador, configurándolos para incorporar las necesidades de integración del orquestador con las tecnologías del entorno.
–Crear un proyecto, definiendo las configuraciones base del orquestador de tareas, así como las credenciales para el acceso al repositorio.
–Crear unas tareas a realizar dentro del proyecto, parametrizando las opciones tales como nombre de la tarea, máquinas en las que se procesan los trabajos del despliegue, direccionamiento, y condiciones de ejecución del despliegue tales como aseguramiento de la calidad y seguridad.
–Crear un «pipeline», parametrizándolo para encadenar procesos de modo que el resultado del primero desencadene una acción en el nido de trabajos definidos dentro de un proyecto, definiendo las etapas, secuencias y «script» que marquen los estados del proyecto.
–Probar el «pipeline» ejecutando los caminos posibles dentro del mismo, verificando que se gestionan los errores y salidas no esperadas.
–Configurar la seguridad, asignando los permisos que garanticen la ejecución de las tareas planificadas siguiendo el principio de «mínimo privilegio».
C4:Aplicar procedimientos de despliegue de la monitorización para un entorno, seleccionando y configurando el gestor de ingesta de datos y la seguridad para facilitar el control y gestión de problemas.
CE4.1Enumerar gestores de ingesta de datos, describiendo las opciones de recolección de datos y posterior visualización de estos.
CE4.2Explicar el proceso de configuración de un «software» de gestión de datos y métricas, describiendo cómo seleccionar las métricas a mostrar e identificando parámetros de configuración de paneles, alertas y envíos de los indicadores clave de rendimiento («Key Performance Indicator» –KPI–).
CE4.3Describir el proceso de configuración de la seguridad, identificando parámetros para habilitar la comunicación en tránsito segura, accesos y repositorios de datos encriptados.
CE4.4En un supuesto práctico de aplicar procedimientos de despliegue de la monitorización para un entorno, seleccionando y configurando el gestor de ingesta de datos y la seguridad para facilitar el control y gestión de problemas:
–Seleccionar un gestor de ingesta de datos, escogiendo un «software» con capacidad de recolección de datos y posterior visualización de estos.
–Configurar un «software» de gestión de datos y métricas, seleccionando el visualizador de métricas, configurando los paneles, alertas y envíos de los indicadores clave de rendimiento («Key Performance Indicator» KPI).
–Configurar la seguridad, parametrizando comunicaciones, accesos y repositorios de datos.
C1 respecto a CE1.8; C2 respecto a CE2.5; C3 respecto a CE3.8 y C4 respecto a CE4.4.
Otras capacidades:
Comunicarse eficazmente con las personas adecuadas en cada momento, respetando los canales establecidos en la organización.
Adaptarse a la organización, a sus cambios organizativos y tecnológicos, así como a situaciones o contextos nuevos.
Mantener una actitud asertiva, empática y conciliadora con las personas demostrando cordialidad y amabilidad en el trato.
Mostrar iniciativa en la búsqueda de soluciones y en la resolución de problemas.
Aplicar de forma efectiva el principio de igualdad de trato y no discriminación en las condiciones de trabajo entre mujeres y hombres.
Metodologías de desarrollo: Cascada («Waterfall»), ágiles (Agile). Ciclo de vida del desarrollo.
Herramientas de gestión de proyectos de desarrollo.
Integración Continua (CI).
Despliegue Continuo (CD).
Hipervisores. Clasificación, características y funcionalidades. Instalación.
Consola del hipervisor. Creación de VPC.
Parámetros de comunicaciones: (IP, zona de disponibilidad en su caso y DNS).
Configuración de capas de seguridad en función del nivel de exposición (DMZ externa, DMZ interna y entorno interno).
Pruebas de seguridad, aislamiento y separación de clientes.
Elementos de infraestructura a desplegar: almacenamiento, capacidad de cómputo, memoria, autoescalado, entre otros.
Automatización del despliegue de la infraestructura. Lenguajes de codificación («script») de la plataforma.
Pruebas de servicio y chequeo de configuración.
Verificación de la seguridad. Recomendaciones de organismos internacionales. Normativa aplicable.
Herramientas «software» de orquestador. Capacidades para llevar a cabo las pruebas de control de las variables o limitaciones del CI. Instalación y configuración. Parámetros (permisos, accesos, certificados y opciones de despliegue, entre otras).
«Plugin» o complementos del orquestador. Configuración.
Creación de proyectos. Configuraciones base del orquestador de tareas. Credenciales para el acceso al repositorio.
Creación de tareas a realizar dentro de proyectos. Parámetros de configuración.
Creación de «pipeline». Etapas, secuencias y «script» que marcan los estados del proyecto.
Configuración de la seguridad. Permisos. Principio de «mínimo privilegio».
Gestores de ingesta de datos. Opciones de recolección de datos y posterior visualización.
«Software» de gestión de datos y métricas. Configuración. Parámetros de configuración de paneles, alertas y envíos de los indicadores clave de rendimiento («Key Performance Indicator» –KPI–).
Configuración de la seguridad en comunicaciones, accesos y repositorios de datos encriptados.
Los talleres e instalaciones darán respuesta a las necesidades formativas de acuerdo con el contexto profesional establecido en la unidad de competencia asociada, teniendo en cuenta la normativa aplicable del sector productivo, prevención de riesgos laborales, accesibilidad universal, igualdad de género y protección medioambiental. Se considerará con carácter orientativo como espacios de uso:
–Instalación de 2 m2por alumno o alumna.
1. Dominio de los conocimientos y las técnicas relacionados con el despliegue de plataformas de ejecución de contenedores, que se acreditará simultáneamente mediante las dos formas siguientes:
–Formación académica de nivel 2 (Marco Español de Cualificaciones para la Educación Superior) o de otras de superior nivel relacionadas con el campo profesional.
–Experiencia profesional de un mínimo de 3 años en el campo de las competencias relacionadas con este módulo formativo.
2. Competencia pedagógica acreditada de acuerdo con lo que establezcan las Administraciones competentes.
C1:Aplicar técnicas de gestión de un repositorio de código fuente del «software» y de los servicios asociados a las aplicaciones de los sistemas, según las necesidades de uso, en condiciones de calidad y seguridad, para facilitar su mantenimiento, recuperación y permitir la trazabilidad del sistema.
CE1.1Enumerar repositorios de código, describiendo las funcionalidades que proveen para gestionar los cambios en un proyecto software y los interfaces de uso.
CE1.2Describir procedimientos de organización de un repositorio de código fuente, explicando cómo organizar los orígenes de modo que se permita su uso de forma consistente, definiendo ramas de código estable y validado y otras donde se recojan los cambios que están en proceso.
CE1.3Explicar el proceso de definición y configuración de parámetros de un sistema que afectan a la autenticación y autorización, ajustándolos a las necesidades de acceso, integración con herramientas y seguridad.
CE1.4Clasificar procedimientos de validación de un código fuente, para evaluar las modificaciones de manera automatizada, comprobando la sintaxis y la semántica del código, versiones de librerías externas y/o genéricas, en base a las guías de desarrollo y los flujos de trabajo y unas políticas tales como aprobación, asignación o revisión, entre otras.
CE1.5Identificar mecanismos de comprobación de la seguridad de un código, verificando mediante «software» específico que no contenga código malicioso y que no contenga vulnerabilidades.
CE1.6Aplicar procesos de copia de seguridad y recuperación del código fuente, programándolos para su ejecución de forma periódica, gestionando repositorios de gran tamaño.
CE1.7Explicar el proceso de publicación del código fuente validado en una rama estable, solucionando los conflictos que se notifiquen en el proceso, comprobando las fechas de modificación y contenidos modificados.
CE1.8En un supuesto practico de aplicación de técnicas de gestión de un repositorio de código fuente del «software» y de los servicios asociados a las aplicaciones de los sistemas, según las necesidades de uso, en condiciones de calidad y seguridad, para facilitar su mantenimiento, recuperación y permitir la trazabilidad del sistema:
–Organizar unos orígenes de código fuente con una estructura que permita su uso de forma consistente, definiendo ramas de código estable y validado, y otras donde se recojan los cambios que están en proceso.
–Configurar parámetros del sistema que afectan a la autenticación y autorización, ajustándolos a las necesidades de acceso, integración con herramientas y seguridad.
–Validar unas modificaciones sobre el código fuente, evaluando de manera automatizada la sintaxis y la semántica del código, comprobando versiones de librerías externas y/o genéricas, siguiendo las guías de desarrollo y los flujos de trabajo y unas políticas tales como aprobación, asignación o revisión, entre otras.
–Comprobar la seguridad del código, verificando mediante «software» específico que no contenga código malicioso y que no contenga vulnerabilidades.
–Publicar el código fuente validado en la rama estable, solucionando los conflictos que se notifiquen en el proceso, comprobando las fechas de modificación y contenidos modificados.
–Ejecutar un proceso de copia de seguridad y recuperación del código fuente, programándolo para aplicarlo de forma periódica, gestionando repositorios de gran tamaño.
C2:Aplicar técnicas de modificación del código fuente de integración y plantillas responsables de la creación de los servicios, definiendo los parámetros de los artefactos, en condiciones de calidad y seguridad, para simplificar la operación y la integración.
CE2.1Explicar el procedimiento de creación de servicios requeridos para las aplicaciones de forma automatizada, describiendo cómo modificarlos, en su caso, empleando línea de comandos (CLI), API («Application Programming Interface») y/o, automatismos mediante lenguajes de programación, entre otras.
CE2.2Clasificar los parámetros para el automatismo del ciclo de vida, diferenciándolos en función de los objetivos.
CE2.3Describir el proceso de definición de parámetros de los artefactos para el automatismo del ciclo de vida de los servicios, considerando características propias del despliegue de las versiones de los datos de las aplicaciones, tales como creación de bases de datos, movimiento o transformación de la información y metadatos, entre otras.
CE2.4Detallar el proceso de definición de parámetros de los artefactos para el automatismo del ciclo de vida de los servicios relacionados con las aplicaciones, considerando características propias de la integración de las versiones del «software», tales como la gestión de la configuración de las aplicaciones, entre otras.
CE2.5Enumerar parámetros de los artefactos para el automatismo del ciclo de vida de los servicios relacionados con infraestructura, explicando cómo se definen, considerando características propias de la integración de las versiones del código fuente de las aplicaciones, tales como contenedores, máquinas virtuales, máquinas físicas, scripts, código binario, entre otros.
CE2.6Enumerar parámetros de los artefactos para el automatismo del ciclo de vida de los servicios, describiendo cómo se definen, considerando elementos que permitan su reutilización en futuros despliegues, tales como nombre del servicio, región geográfica, recursos asignados, permisos, confirmando que son únicos en su caso.
CE2.7En un supuesto práctico de aplicación de técnicas de modificación del código fuente de integración y plantillas responsables de la creación de los servicios, en condiciones cumpliendo directivas de operación y en condiciones de calidad y seguridad, para simplificar la operación y la integración:
–Crear los servicios requeridos para unas aplicaciones de forma automatizada, modificándolos, en su caso, empleando línea de comandos (CLI), API («Application Programming Interface»), automatismos mediante lenguajes de programación, entre otras.
–Definir los parámetros de los artefactos para el automatismo del ciclo de vida de los servicios, considerando características propias del despliegue de las versiones de los datos de las aplicaciones, tales como creación de bases de datos, movimiento o transformación de la información y metadatos, entre otras.
–Definir los parámetros de los artefactos para el automatismo del ciclo de vida de los servicios relacionados con las aplicaciones, considerando características propias de la integración de las versiones del «software», tales como la gestión de la configuración de las aplicaciones, entre otras.
–Definir los parámetros de los artefactos para el automatismo del ciclo de vida de los servicios relacionados con infraestructura, considerando características propias de la integración de las versiones del código fuente de las aplicaciones, tales como contenedores, máquinas virtuales, máquinas físicas, scripts, código binario, entre otros.
–Definir los parámetros de los artefactos para el automatismo del ciclo de vida de los servicios, considerando elementos que permitan su reutilización en futuros despliegues, tales como nombre del servicio, región geográfica, recursos asignados, permisos, confirmando que son únicos en su caso.
–Verificar que el código fuente de la integración, plantillas declarativas del servicio o cualquier proceso responsable de esta tarea sea idempotente, siendo robusta su ejecución y proporcionando predictibilidad bajo circunstancias variables.
C3:Aplicar procedimientos de configuración de los servicios de comunicación y colaboración del grupo de personas de un proyecto según unas necesidades de uso, directivas de comunicación y adopción, para automatizar las interacciones con los repositorios de código fuente y las herramientas de gestión de proyectos.
CE3.1Enumerar plataformas de comunicación y herramientas de gestión de proyectos, describiendo cómo configurar los repositorios de código fuente de modo que permitan la recepción automática de cambios de estado y contenido.
CE3.2Describir procedimientos de configuración de unas plataformas de comunicación para notificaciones acerca de métricas, alertas o reglas definidas en los repositorios de código fuente, estados de tareas, peticiones de cambios al sistema, entre otras.
CE3.3Explicar el proceso de configuración de unas plataformas de comunicación, documentación y herramientas de gestión de proyectos, describiendo cómo conectarlas con los repositorios de código fuente, de tal modo que permitan relacionar los errores («bugs») con modificaciones de código fuente, entre otras.
CE3.4En un supuesto práctico de aplicación de procedimientos de configuración de los servicios de comunicación y colaboración del grupo de personas de un proyecto según unas necesidades de uso, directivas de comunicación y adopción, para automatizar las interacciones con los repositorios de código fuente y las herramientas de gestión de proyectos:
–Emplear unas plataformas de comunicación y herramientas de gestión de proyectos, configurando los repositorios de código fuente de modo que permitan la recepción automática de cambios de estado y contenido.
–Configurar las plataformas de comunicación empleadas para notificar acerca de métricas, alertas o reglas definidas en los repositorios de código fuente, estados de tareas, peticiones de cambios al sistema, entre otras.
–Configurar las plataformas de comunicación, documentación y herramientas de gestión de proyectos empleadas, conectándolas con los repositorios de código fuente, de tal modo que permitan relacionar errores («bugs») con modificaciones de código fuente, entre otras.
C4:Aplicar procedimientos de validación del resultado de los procesos de integración continua (CI) del código fuente de las aplicaciones desarrolladas, dentro del marco de unas directivas sobre operación, calidad y seguridad para su publicación.
CE4.1Enumerar posibles fallos de ejecución, calidad, seguridad y rendimiento de las aplicaciones del sistema, proponiendo soluciones que las resuelvan.
CE4.2Describir procedimientos de ejecución de pruebas de diagnóstico con unas herramientas integradas, proporcionando información sobre resultados y acciones a los fallos diagnosticados.
CE4.3Enumerar elementos que afectan a la integración con dependencias externas en el proceso de compilación del código fuente, tales como cobertura de código, pruebas de «software», análisis de seguridad, dependencias de librerías, entre otros.
CE4.4Definir el proceso de verificación de los parámetros del sistema que afectan a la integración con dependencias externas en el proceso de compilación del código fuente, explicando los pasos para comprobar elementos que afectan en este ámbito, tales como cobertura de código, pruebas de «software», análisis de seguridad, dependencias de librerías, entre otros.
CE4.5En un supuesto práctico de aplicación de procedimientos de validación del resultado de los procesos de integración continua (CI) del código fuente de las aplicaciones desarrolladas, dentro del marco de unas directivas sobre operación, calidad y seguridad:
–Resolver unos fallos de ejecución, calidad, seguridad y rendimiento de las aplicaciones del sistema mediante automatización, incluyendo las pruebas de diagnóstico con las herramientas integradas, proporcionando información sobre resultados y acciones a los fallos diagnosticados.
–Verificar parámetros del sistema que afectan a la integración con dependencias externas en el proceso de compilación del código fuente, comprobando elementos tales como cobertura de código, pruebas de «software», análisis de seguridad, dependencias de librerías, entre otros.
–Publicar el código fuente validado en la rama estable, solucionando los conflictos que se notifiquen en el proceso, comprobando las fechas de modificación y contenidos modificados.
C1 respecto a CE1.8; C2 respecto a CE2.7; C3 respecto a CE3.4 y C4 respecto a CE4.5.
Otras capacidades:
Comunicarse eficazmente con las personas adecuadas en cada momento, respetando los canales establecidos en la organización.
Adaptarse a la organización, a sus cambios organizativos y tecnológicos, así como a situaciones o contextos nuevos.
Mantener una actitud asertiva, empática y conciliadora con las personas demostrando cordialidad y amabilidad en el trato.
Mostrar iniciativa en la búsqueda de soluciones y en la resolución de problemas.
Aplicar de forma efectiva el principio de igualdad de trato y no discriminación en las condiciones de trabajo entre mujeres y hombres.
Metodologías de desarrollo: Cascada («Waterfall»), ágiles (Agile). Ciclo de vida del desarrollo.
Herramientas de gestión de proyectos de desarrollo.
Integración Continua (CI).
Repositorios de código. Herramientas. Características y funcionalidades.
Organización de un repositorio de código fuente. Fuentes/orígenes de código. Gestión de cambios: ramas o bifurcaciones.
Autenticación y autorización. Parámetros. Configuración. Integración.
Validación automatizada del código fuente. Comprobaciones de sintaxis y semántica del código. Comprobaciones de versiones de librerías externas y/o genéricas.
Comprobación de la seguridad del código. Herramientas «software» externas.
Procedimientos de copia de seguridad y recuperación del código fuente.
Publicación del código fuente validado. Solución de conflictos en el proceso.
Creación de servicios de forma automatizada para las aplicaciones. Línea de comandos (CLI), API («Application Programming Interface»), automatismos mediante lenguajes de programación.
Clasificación de parámetros para el automatismo del ciclo de vida, diferenciándolos en función de los objetivos.
Automatismo del ciclo de vida de los servicios. Parámetros de los artefactos. Características propias del despliegue de las versiones de los datos de las aplicaciones: creación de bases de datos, movimiento o transformación de la información y metadatos, entre otras.
Automatismo del ciclo de vida de los servicios relacionados con las aplicaciones. Parámetros de los artefactos. Características propias de la integración de las versiones del «software»: gestión de la configuración de las aplicaciones, entre otras.
Automatismo del ciclo de vida de los servicios relacionados con infraestructura. Parámetros de los artefactos. Características propias de la integración de las versiones del código fuente de las aplicaciones: contenedores, máquinas virtuales, máquinas físicas, scripts, código binario, entre otros.
Automatismo del ciclo de vida de los servicios. Parámetros de los artefactos. Elementos que permiten su reutilización: nombre del servicio, región geográfica, recursos asignados, permisos.
Plataformas de comunicación y herramientas de gestión de proyectos. Configuración de repositorios de código fuente para la recepción automática de cambios de estado y contenido.
Configuración de plataformas de comunicación para notificaciones. Métricas, alertas o reglas en los repositorios de código fuente, estados de tareas, peticiones de cambios al sistema, entre otras.
Configuración de plataformas de comunicación, documentación y herramientas de gestión de proyectos. Conexión con los repositorios de código fuente.
Fallos de ejecución, calidad, seguridad y rendimiento de las aplicaciones del sistema. Herramientas integradas. Diagnóstico y soluciones.
Integración con dependencias externas en el proceso de compilación del código fuente. Cobertura de código, pruebas de «software», análisis de seguridad, dependencias de librerías, entre otros. Parámetros del sistema que afectan a la integración.
Los talleres e instalaciones darán respuesta a las necesidades formativas de acuerdo con el contexto profesional establecido en la unidad de competencia asociada, teniendo en cuenta la normativa aplicable del sector productivo, prevención de riesgos laborales, accesibilidad universal, igualdad de género y protección medioambiental. Se considerará con carácter orientativo como espacios de uso:
–Instalación de 2 m2por alumno o alumna.
1. Dominio de los conocimientos y las técnicas relacionados con la definición de flujos de procesos («pipelines») del desarrollador en integración continua, que se acreditará simultáneamente mediante las dos formas siguientes:
–Formación académica de nivel 2 (Marco Español de Cualificaciones para la Educación Superior) o de otras de superior nivel relacionadas con el campo profesional.
–Experiencia profesional de un mínimo de 2 años en el campo de las competencias relacionadas con este módulo formativo.
2. Competencia pedagógica acreditada de acuerdo con lo que establezcan las Administraciones competentes.
C1:Aplicar procedimientos de creación de un paquete de «software» que se va a desplegar, utilizando una versión estable del código fuente, según las necesidades de uso y en condiciones de calidad y seguridad, para facilitar su despliegue y permitir la trazabilidad del sistema.
CE1.1Enumerar herramientas de comprobación de la calidad del código fuente, describiendo las capacidades de validación sintáctica y semántica y de seguridad sobre el código desarrollado y librerías de terceros asociadas.
CE1.2Describir herramientas de arquitectura para crear paquetes de «software», explicando la manera de incluir elementos requeridos tales como aplicaciones, librerías y/o «script» de instalación, entre otros, para un despliegue automático en cualquier entorno.
CE1.3Detallar procedimientos de comprobación del contenido de un paquete «software», incluyendo los pasos a seguir para verificar que contiene los elementos requeridos, tales como versión anterior de la aplicación, los «script» de instalación y los «script» para el ajuste de datos, que permitan dar marcha atrás del proceso y actualizar el «software» a la versión anterior en caso de que haya algún problema durante la validación.
CE1.4Clasificar pruebas sobre un paquete a desplegar, explicando el proceso de comprobación según el tipo (pruebas funcionales y no funcionales), indicando los pasos para verificar que incluye elementos para la ejecución de dichas pruebas.
CE1.5Describir procedimientos para almacenamiento de resultados de pruebas sobre un paquete a desplegar, describiendo su procedimiento de uso, para la posterior reutilización, seguimiento y cualquier otra actividad relacionada con el versionado.
CE1.6Enumerar aplicativos o soluciones de almacenamiento y recuperación de paquetes «software» en aplicativos, explicando cómo proceder en ambos casos, para su posterior reutilización, seguimiento y cualquier actividad que pueda ser requerida por el responsable de versionado.
CE1.7En un supuesto práctico de aplicación de procedimientos de creación de un paquete de «software» que se va a desplegar, utilizando una versión estable del código fuente, según las necesidades de uso y en condiciones de calidad y seguridad, para facilitar su despliegue y permitir la trazabilidad del sistema:
–Obtener un código fuente de la rama de trabajo del repositorio, utilizando procesos de acceso, gestión y trazabilidad.
–Validar la calidad del código, usando herramientas de comprobación semántica y sintáctica y de seguridad sobre el código desarrollado y librerías de terceros asociadas.
–Crear el paquete de «software», incluyendo todos los elementos requeridos tales como aplicaciones, librerías y/o «script» de instalación, entre otros, para un despliegue automático en cualquier entorno, utilizando herramientas de arquitectura, versionado, entornos y trazabilidad.
–Comprobar el paquete de «software», verificando que contiene los elementos, tales como versión anterior de la aplicación, los «script» de instalación y los «script» para el ajuste de datos, que permitan dar marcha atrás del proceso y actualizar el «software» a la versión anterior en caso de que haya algún problema durante la validación.
–Comprobar el paquete de «software» a desplegar, verificando que incluye elementos para la ejecución de pruebas funcionales y no funcionales.
–Almacenar los resultados de las pruebas de «software» a desplegarse en un aplicativo, para su posterior reutilización, seguimiento y cualquier actividad relacionada con el versionado.
–Almacenar el paquete de «software» a desplegar en un aplicativo para su posterior reutilización, seguimiento y cualquier actividad relacionada con el versionado.
C2:Aplicar técnicas de validación, creación o modificación de las variables de entorno requeridas, para preparar un entorno de despliegue del paquete creado para cada aplicativo o servicio.
CE2.1Describir procedimientos de validación automática por el «pipeline» de la existencia de los parámetros requeridos para desplegar en cada entorno, explicando su configuración, según los procesos definidos en la creación de la infraestructura.
CE2.2Enumerar los posibles errores que puedan producirse durante el despliegue, explicando cómo detener la «pipeline» y revertir el proceso.
CE2.3En un supuesto práctico de aplicación de técnicas de validación, creación o modificación de las variables de entorno requeridas, para preparar un entorno de despliegue del paquete creado para cada aplicativo o servicio:
–Validar la existencia de unos parámetros requeridos para desplegar en cada entorno de forma automática por el «pipeline», mediante configuración, según los procesos definidos en la creación de la infraestructura.
–Recopilar valores de los parámetros a utilizar en cada entorno, obteniéndolos de la aplicación definida durante la creación de la infraestructura.
–Verificar que los parámetros de los entornos recopilados se han incluido en el «software» a desplegar, ejecutando el despliegue y comprobando la ausencia de errores.
C3:Aplicar procedimientos para desplegar una nueva versión del «software» en un entorno, utilizando el paquete creado por el «pipeline», para que se pueda validar antes de la puesta en funcionamiento.
CE3.1Describir procedimientos de instalación de aplicaciones adicionales relacionadas y previas al despliegue como parte de un paquete o, en caso de ser algo estático, de modo que se pueda acceder al repositorio del «software» para proceder a su instalación.
CE3.2Explicar el proceso para la instalación de una nueva versión del «software» y aquellos artefactos que se requieran para realizar las tareas de integración con otros sistemas, ejecutado «script» de validación de la instalación.
CE3.3Detallar el procedimiento para las pruebas de integración, tal como ejecutar «script» de prueba, para comprobar que el «software» desplegado se integra de manera automática con el resto de las aplicaciones de la solución.
CE3.4Enumerar los posibles errores que puedan producirse durante el despliegue, explicando cómo detener la «pipeline» y revertir el proceso.
CE3.5En un supuesto práctico de aplicación de procedimientos para desplegar una nueva versión del «software» en un entorno, utilizando el paquete creado por el «pipeline», para que se pueda validar antes de la puesta en funcionamiento:
–Instalar unas aplicaciones adicionales relacionadas y previas al despliegue como parte del paquete o, en caso de ser algo estático, de modo que se pueda acceder al repositorio del «software» para proceder a su instalación.
–Instalar una nueva versión del «software» y aquellos artefactos que se requieran para realizar las tareas de integración con otros sistemas, ejecutado «script» de validación de la instalación.
–Comprobar que el «software» desplegado se integra de manera automática con el resto de las aplicaciones de la solución, ejecutado «script» de prueba que realicen la tarea.
–Recopilar los errores detectados durante el despliegue, deteniendo la «pipeline» y destruyendo todos los objetos intermedios creados hasta el instante de la ejecución.
C4:Aplicar procedimientos de validación de un nuevo «software» instalado, comprobando que cumple todos los requerimientos, efectuando pruebas no funcionales, funcionales y rendimiento, resolviendo los fallos detectados y actualizando los repositorios de versiones para garantizar un despliegue libre de errores.
CE4.1Enumerar herramientas definidas en el paquete para pruebas y validación automatizada del «software», explicando su configuración y gestión.
CE4.2Enumerar herramientas externas para pruebas y validación automatizada del «software», explicando su configuración y gestión.
CE4.3Reconocer la tipología de pruebas de verificación del «pipeline», incluyendo pruebas no funcionales, funcionales, de rendimiento y de integración con otras aplicaciones relacionadas, explicando los pasos para comprobar en cada caso que accede a los flujos de trabajo y datos de prueba de cada uno de los entornos de ejecución.
CE4.4Describir procedimientos para almacenamiento de resultados de pruebas sobre un «software» instalado, describiendo su utilización, para su acceso y posterior uso en la toma de decisiones del responsable de versionado.
CE4.5Explicar el proceso de actualización o retorno a la versión estable anterior para aplicarla en casos de fallos de validación del nuevo código, describiendo cómo efectuarla de manera automática tanto para código fuente como para los datos.
CE4.6Detallar el proceso de verificación de la monitorización del sistema desplegado, explicando el proceso para comprobar que la información que produce el «software» es supervisada.
CE4.7En un supuesto práctico de aplicación de procedimientos de validación de un nuevo «software» instalado, comprobando que cumple todos los requerimientos, efectuando pruebas no