OPSDO01ILTGestión de la relación entre desarrollo y operación
Introducción a DevOps
16 Presencial-Remoto €0.00
Descripción
Este curso permite a los asistentes conocer los procesos, patrones y técnicas que ofrece la filosofía DevOps para reducir el tiempo medio de ciclo, esto es, el tiempo transcurrido desde la concepción de una idea hasta su puesta en producción.
Objetivos
A la finalización de la acción formativa, los asistentes podrán:
• Saber lo que es DevOps y qué patrones seguir para poder entregar el SW con plazos menores y mayor calidad.
• Aplicar técnicas para mejorar la colaboración entre los equipos de desarrollo y operaciones.
• Unificar procesos e incentivos con el objetivo de tener unas metas compartidas por todos los equipos.
• Integrar varias herramientas para soportar el ciclo de vida completo de un proyecto.
• Agilizar el proceso de entrega de SW.
• Saber lo que es DevOps y qué patrones seguir para poder entregar el SW con plazos menores y mayor calidad.
• Aplicar técnicas para mejorar la colaboración entre los equipos de desarrollo y operaciones.
• Unificar procesos e incentivos con el objetivo de tener unas metas compartidas por todos los equipos.
• Integrar varias herramientas para soportar el ciclo de vida completo de un proyecto.
• Agilizar el proceso de entrega de SW.
Audiencia
Todos los perfiles de los equipos de desarrollo y explotación de Sistemas Software: Ingenieros Software, Programadores, Responsables y técnicos de los sistemas software en producción, Responsables de mejora de procesos TI.
Prerrequisitos
Conocimientos de programación y construcción de Software.
Temario
CAPITULO 1. 8
IDENTIFICACIÓN DE LA
PROBLEMÁTICA O SITUACIÓN ACTUAL
• Existencia de silos.
• Objetivos distintos entre distintos equipos.
• Procesos optimizados pero no alineados.
• Metodologías ágiles no aplican al equipo de
operaciones.
• Métricas usadas que entran en conflicto.
• Actualizaciones poco frecuentes y batch size elevado.
• Tiempo de c8iclo muy alto.
• Búsqueda de culpables si algo no va bien.
CAPITULO 2.
¿QUÉ BENEFICIOS SE PUEDEN OBTENER APLICANDO DevOps?
• Liberar recursos gracias a la automatización.
• Tener objetivos y métricas compartidos por los todos los departamentos implicados en el proceso de delivery.
• Evitar la existencia de silos.
• Gestionar el cambio de forma unificada.
• Tener un batch size reducido.
• Explotar antes el SW desarrollado.
• Mitigar el riesgo en las actualizaciones.
• Alta reducción en la necesidad de mantener complejos procesos de rollback.
• Eliminar tareas manuales (proceso de releasing y provisioning automatizado).
CAPITULO 3.
CÓMO CONSEGUIR LOS BENEFICIOS DE APLICAR DevOps
• Describiendo patrones para compartir y alinear metas e incentivos.
• Redefiniendo el concepto de calidad y aplicando técnicas para mejorarla.
• Automatizando los procesos de release:
• Delivery pipelines
• Creación y uso de Baselines
• Versionado de artefactos
• Packaging tools
• Independizar configuración
• Task-Based development
• Almacén de binarios y trazabilidad a tareas
• Scripts de BDD y gestión de ChangeSets
• Gestionando la infraestructura como código.
• Provisioning con Puppet
• Definiendo pruebas de aceptación:
• Acordando criterios de aceptación
• Automatizando con Thucydides
• ATDD
CAPITULO 4. EJEMPLO PRÁCTICO
• Se utilizarán varias herramientas OpenSource o de uso libre para modelar el proceso de delivery de SW y hacerlo de forma automatizada, eliminando tantos
procesos manuales como sea posible.
• Se construirá una tool-chain utilizando:
• JIRA
• FishEye
• Subversion
• Eclipse
• TestLink
• Jenkins
• Maven
• Artifactory
• XLRelease
• XLDeploy
• Puppet
• MCollective
• Se utilizará una aplicación de ejemplo sobre la que se crearán nuevas versiones (código, base de datos, configuración, infraestructura) y se promocionarán de forma automatizada entre distintos entornos.
IDENTIFICACIÓN DE LA
PROBLEMÁTICA O SITUACIÓN ACTUAL
• Existencia de silos.
• Objetivos distintos entre distintos equipos.
• Procesos optimizados pero no alineados.
• Metodologías ágiles no aplican al equipo de
operaciones.
• Métricas usadas que entran en conflicto.
• Actualizaciones poco frecuentes y batch size elevado.
• Tiempo de c8iclo muy alto.
• Búsqueda de culpables si algo no va bien.
CAPITULO 2.
¿QUÉ BENEFICIOS SE PUEDEN OBTENER APLICANDO DevOps?
• Liberar recursos gracias a la automatización.
• Tener objetivos y métricas compartidos por los todos los departamentos implicados en el proceso de delivery.
• Evitar la existencia de silos.
• Gestionar el cambio de forma unificada.
• Tener un batch size reducido.
• Explotar antes el SW desarrollado.
• Mitigar el riesgo en las actualizaciones.
• Alta reducción en la necesidad de mantener complejos procesos de rollback.
• Eliminar tareas manuales (proceso de releasing y provisioning automatizado).
CAPITULO 3.
CÓMO CONSEGUIR LOS BENEFICIOS DE APLICAR DevOps
• Describiendo patrones para compartir y alinear metas e incentivos.
• Redefiniendo el concepto de calidad y aplicando técnicas para mejorarla.
• Automatizando los procesos de release:
• Delivery pipelines
• Creación y uso de Baselines
• Versionado de artefactos
• Packaging tools
• Independizar configuración
• Task-Based development
• Almacén de binarios y trazabilidad a tareas
• Scripts de BDD y gestión de ChangeSets
• Gestionando la infraestructura como código.
• Provisioning con Puppet
• Definiendo pruebas de aceptación:
• Acordando criterios de aceptación
• Automatizando con Thucydides
• ATDD
CAPITULO 4. EJEMPLO PRÁCTICO
• Se utilizarán varias herramientas OpenSource o de uso libre para modelar el proceso de delivery de SW y hacerlo de forma automatizada, eliminando tantos
procesos manuales como sea posible.
• Se construirá una tool-chain utilizando:
• JIRA
• FishEye
• Subversion
• Eclipse
• TestLink
• Jenkins
• Maven
• Artifactory
• XLRelease
• XLDeploy
• Puppet
• MCollective
• Se utilizará una aplicación de ejemplo sobre la que se crearán nuevas versiones (código, base de datos, configuración, infraestructura) y se promocionarán de forma automatizada entre distintos entornos.