DevOps

Compartir

Metodología de ingeniería de software para el desarrollo y administración ágil de sistemas; supervisa los lanzamientos con el fin de acelerar los procesos de desarrollo de software.

DevOps surge de la combinación de palabras, en idioma inglés, que significa Dev (Development) y Ops (Operations). Esta práctica de ingeniería une a personas, procesos y tecnologías para ofrecer implementaciones que agreguen valor al cliente con resultados constantes.

Tal vez has escuchado sobre los distintos ambientes de trabajo de un desarrollo de software, algunos proyectos manejan al menos tres: desarrollo, pruebas y producción. Seccionar el proyecto en distintos entornos nos beneficia, a nosotros los desarrolladores, al implementar distintos lanzamientos, que sin duda, se ha convertido en una buena práctica.

Imagínate que solo cuentas con un ambiente en el que desarrollas y al mismo tiempo funciona como producto final, el cliente probaría este lanzamiento mientras que tú estás subiendo un cambio que no ha tenido pruebas unitarias ni de seguridad o que ese cambio que acabas de subir siempre no funcionó y tumbó todo el proyecto, sería un desorden por completo y definitivamente te gusta ver el mundo arder :S. Bueno, pues implementar los distintos ambientes de trabajo se hacen para realizar estos cambios y que el cliente pueda probarlos antes de realizar el cambio real y que el entorno de producción tenga los cambios más estables y aprobados por el negocio.

Bien, ahora a todo esto agrégale tecnologías para probar la seguridad de tu producto, pruebas E2E, unitarias, etc. Con ello, la confianza en tu proyecto aumentaría cada vez más, y tendrás la seguridad de entregar al negocio un buen software y en menos tiempo.

Ciclo de vida de una aplicación

DevOps repercute en los ciclos de vida de las aplicaciones, las fases están conectadas entre sí dependiendo una de la otra, desde la planeación, desarrollo, pruebas, entrega y uso.

Plan

Los equipos de DevOps planifican, modelan y realizan especificaciones técnicas, de las aplicaciones o sistemas que crearán.

Desarrollo y Compilación

En esta fase se incluyen todos los scripts que realizan funcionalidades de tareas que fueron planeadas en un principio, estos códigos son revisados por los miembros del equipo buscando la integración continua en la compilación de estos en cada entorno de trabajo.

Pruebas

En esta fase se busca que el código creado pase mediciones de testeo, pruebas para obtener coberturas, código libre de bugs, code smell, etc. Aquí se utilizan herramientas que logren realizar estas pruebas rápida y automáticamente sin afectar la calidad, la estabilidad ni la productividad.

Lanzamiento e Implementación

Se busca entregar una versión estable de manera constante y confiable. De esta manera los equipos de DevOps establecen entradas automáticas que mueven las aplicaciones de una fase a otra hasta que están disponibles para los clientes, gestionando, aprobando y automatizando versiones. Se configura la infraestructura básica y totalmente gobernada.

Funcionamiento

Se monitorea la aplicación para encontrar y solucionar problemas que puedan afectar a la experiencia del usuario.

Y continúa con el ciclo para lograr tener una aplicación confiable y disponible todo el tiempo para el usuario final.

Ventajas de DevOps

  • Reducción en tiempo para lanzar al mercado
  • Mantenimiento a la estabilidad de la aplicación.
  • Encontrar incidencias en un lugar en específico.
  • Adaptabilidad para mover el proyecto entre fases de manera automática.
  • Etc.

bdjc

2

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *