¿Pero qué es DevOps?

Desde el primer momento, siempre ha existido mucha confusión respecto a la definición del concepto DevOps, ¿es una serie de metodología? ¿un conjunto de herramientas? ¿una cultura? ¿es una filosofía? si a esta indefinición unimos un término con sencillo y con gancho, que rápidamente ha ganado popularidad nos encontramos con la maraña de definiciones y significados del concepto, que llega a tal punto que algunos autores definen DevOps a partir de lo que no es DevOps.

En este post vamos a explicar que es DevOps a partir de tres definiciones:

Como definición más amplia me gusta mucho la propuesta por Jennifer Davies y Katherine Daniels en su libro Effective DevOps:

DevOps is a cultural movement that seeks to improve both software development and the professional lives of the people involved in the field. 

Una definición que aporta un poco más de contexto es la proporcionada por Mandi Walls en su paper Building a DevOps Culture:

DevOps being a cultural movement combined with a number of software development practices that enable rapid development.

Estas dos definiciones nos proporcionan dos conceptos clave: por un lado estamos hablando de mejorar la calidad y la velocidad del desarrollo de software y por otro lado la de la calidad de la vida de los profesionales del sector, también estamos hablando de un movimiento cultural, estamos bastante cerca, faltan dos cosas: las herramientas y el valor que aporta al negocio, completaremos estas dos definiciones con un pequeño comentario.

DevOps es un cambio cultural y organizacional en las empresas orientado a mejorar la velocidad del desarrollo de las mismas, ese cambio se ha visto apoyado por una serie de herramientas, principalmente herramientas de automatización y servicios cloud.

¿Cual es el resultado final de mejorar la velocidad? Este punto, el más clave se entiende muy bien a partir del 3rd way of DevOps

No sólo somos capaces de poner en producción funcionalidades más rápido, también recibimos valiosa información sobre esas funcionalidades – pensemos en KPI de negocio – que nos permiten tomar mejores decisiones antes. Es en este momento donde queda patente el valor de negocio de DevOps: una vez conseguimos implementar este esquema en bucle y optimizarlo al máximo.

Resumiendo: DevOps es un conjunto de principios y herramientas orientados a mejorar la velocidad del desarrollo de software de una empresa con el objetivo de incrementar el valor de negocio generado por los equipos que crean y operan ese software.