15/05/2019 AdministradorCEC_Des

DevOps

Foto Efraim bn

Por Efraim E. Vázquez

Quizá hayas escuchado esta peculiar palabra que últimamente se esta poniendo de moda, pero… ¿Que es DevOps?

Según Wikipedia DevOps es un acrónimo inglés de development (desarrollo) y operations (operaciones), que se refiere a una metodolgía de desarrollo de software que se centra en la comunicación, colaboración e integración entre desarrolladores de software y los profesionales de sistemas en las tecnologías de la información (IT), pero va mucho más allá de solo unificar los términos y las responsabilidades.

Esta corriente va muy de la mano de la metodología Agile ya que fue concebido a partir de estas y se recomienda que se implementen juntas.

DevOps es una metodología con la que se cambia el modo en el que se gestiona el ciclo de desarrollo de software, a nivel tecnológico, pero sobre todo a nivel cultural. Los equipos de desarrollo y de Operaciones (o sistemas) eliminan el trabajo en silos y comienzan a trabajar de una manera colaborativa y bidireccional. Entre todos cubren el ciclo completo de desarrollo de software.

Para conseguirlo, se introducen nuevas herramientas que contribuyen a la automatización de tareas repetitivas y al trabajo en equipo, ayudando a agilizar los procesos para evitar trabajo duplicado y la introducción de nuevos errores.

El objetivo final de DevOps es minimizar el riesgo de los cambios que se producen en las entregas y dar así un mayor valor tanto a los clientes como al propio negocio.

El ciclo de vida DevOps

Planear y hacer un seguimiento

Se identifican las actividades para después mantener un seguimiento de estas mediante prácticas y procesos como los paneles kanban y la metodología ágil. Cuando se hace un seguimiento visual del trabajo, las partes interesadas obtienen una conclusión clara de la capacidad del equipo de desarrollo para planear y clasificar mejor las tareas por orden de prioridad, para así evitar situaciones de urgencia innecesarias.

Desarrollar

Escribir código usando modernos sistemas de control de versiones, como GIT, para integrarlo de forma continua y segura en la rama principal. Cuando se completa una característica, el desarrollador envía una solicitud de incorporación de cambios, una vez aprobada, los cambios se fusionan mediante combinación en una rama maestra, luego la rama anterior se elimina.

Compilar y probar

La inserción de código en GIT u otro sistema de control de versiones inicia un proceso de compilación automatizado. El código se prueba y se válida para asegurar que los errores se detectan rápido en el proceso de desarrollo, cuando aún están recientes en la mente del desarrollador y cuesta menos corregirlos. Este proceso de automatizar la compilación y las pruebas se denomina integración continua (CI). Un artefacto que se puede implementar en el entorno de producción es el resultado de una compilación y una integración satisfactorias, lo que permite llevar a cabo una entrega continua (CD), es decir, la capacidad de implementar en producción en cualquier momento.

Implementar

Una vez probado y validado, cada cambio se puede implementar en el entorno de producción. Si se utilizan prácticas de entrega continua, la implementación final en producción es una decisión empresarial controlada manualmente.

Con la implementación continua, todo el proceso, desde que se confirma el código hasta que se implementa en producción, es automático. Cuando el código se implementa de forma automática, los clientes acceden a las nuevas características tan pronto como están listas para usarlas.

Supervisar y controlar

Cuando la aplicación ya está activa en el entorno de producción, la supervisión ofrece información sobre su rendimiento y patrones de uso. Se obtienen datos de diagnóstico completos de inmediato, para que el equipo pueda tomar medidas rápido y ofrecer así alta disponibilidad. Se mitigan posibles problemas para los usuarios y la recopilación de datos que permitan tomar decisiones empresariales informadas sobre la actividad de desarrollo a futuro.

Beneficios de DevOps

• Despliegan 200 veces más frecuentemente
• Sus tiempos de entrega son 2,555 más rápidos
• Tiempos de recuperación 24 veces mejores y 3 veces menos errores provocados por cambios
• Los equipos IT de alto rendimiento pasan un 50% de tiempo menos resolviendo incidencias de seguridad
• Y un 22% menos de tiempo resolviendo errores y problemas

Finalmente, después de todo lo mencionado podemos llegar a la conclusión de que DevOps es una metodología de desarrollo de software que integra desarrolladores y administradores de sistemas, en el cual los desarrolladores se enfocan en solo codificar para realizar liberaciones continuas, más rápidas, con mas flexibilidad y a un menor coste.

PONTE EN CONTACTO

Con gusto te ofreceremos más información de nuestros servicios