La unión de Scrum y DevOps representa un nuevo enfoque para la entrega de software. ScrumOps está diseñado para transformar las organizaciones de TI en la era de trabajo ágil de próxima generación.

Si bien en otra entrada ya hemos hablado brindado algunos tips para sacar el máximo provecho a la metodología Scrum y lograr una administración ágil de proyectos, evitando así el desperdicio de esfuerzos en el proceso de desarrollo de software, en las próximas líneas exploraremos el concepto de ScrumOps.

ScrumOps es la combinación entre Scrum, que significa Agile, y DevOps, que significa entrega continua. Según Scrum.org, esta metodología no se oponen entre si, sino que se benefician mutuamente para una entrega continua de software seguro.

Según sus fundadores, este nuevo modelo muestra cómo los negocios, el desarrollo, la entrega, la seguridad y las operaciones se unen para respaldar el valor continuo de una manera controlada”.

Antes de profundizar en los aspectos clave de ScrumOps, recordaremos algunas nociones básicas de Scrum y DevOps.

Introducción a Scrum

Scrum es un marco de desarrollo de agilidad empresarial a escala y apto para todo tipo de compañías, presentado como un conjunto de procesos en OOPSLA ’95.

Esta organización co-creada por Ken Schwaber y Jeff Sutherland ofrece capacitación, evaluación y certificaciones basadas en “los valores y principios de Scrum y el Manifiesto Ágil.

Principales características de Scrum

  • Adoptar una estrategia de desarrollo incremental, en lugar de la planificación y ejecución completa del producto.
  • Basar la calidad del resultado más en el conocimiento tácito de las personas en equipos auto organizados, que en la calidad de los procesos empleados.
  • Solapamiento de las diferentes fases del desarrollo, en lugar de realizar una tras otra en un ciclo secuencial o en cascada.

Por otro lado, los roles principales de este marco son el ‘Scrum Master, que procura facilitar la aplicación de scrum y gestionar cambios, el Product Owner, que representa a los stakeholders (interesados externos o internos), y el Team (equipo) que ejecuta el desarrollo y demás elementos relacionados con él.

Para profundizar en Scrum, te recomiendo visitar este sitio o visitar la web de Scrum Alliance, la organización sin ánimo de lucro que se encarga de difundir Scrum para todo tipo de negocios.

¿Cómo funciona DevOps?

Por otro lado nos encontramos con el mundo del DevOps, quienes ponen su mayor dedicación a la entrega del producto y a la automatización de las tareas pertinentes.

“Cuando unimos las prácticas y las ideologías de Scrum y DevOps, realmente podemos dar forma a la organización de TI de extremo a extremo”

Jayne Groll, CEO del Instituto DevOps

Jayne Groll dirige el Instituto DevOps (DOI), que se describe a sí mismo como una “comunidad de aprendizaje global en torno a las prácticas emergentes de DevOps”. DOI se especializa en capacitación y certificaciones en torno a DevOps de nivel empresarial “.

Principales características de DevOps

Entre las características principales de DevOps resaltan:

  • Es una metodología para creación de software.
  • DevOps se basa en la integración entre desarrolladores software y administradores de sistemas.
  • Permite fabricar software más rápidamente, con mayor calidad, menor coste y una altísima frecuencia de releases.

Vale la pena resaltar que la consigna del DevOps es “Automatizar, automatizar, automatizar”. Considerando esto, podríamos volver a replantearnos lo siguiente: ¿entonces ahora sí que tenemos un producto de calidad?

Ejecución ágil de proyectos: ¿en qué consiste?

Con la creciente utilización de las metodologías ágiles, la creación de equipos conformados por “células ágiles” y la utilización de Scrum como “marco de referencia”, nos vemos inmersos no sólo en la vorágine de la ejecución ágil de los proyectos.

De igual manera, en las entregas en sprints cada vez más acotados y, en general, en entrega de productos de “más calidad” y con mejor respuesta a los cambios que van surgiendo durante el proyecto.

¿Cuáles son las ceremonias de Scrum?

Siguiendo las ceremonias de Scrum (Sprint Planning, Daily Scrum, Sprint Review, Sprint Retrospective y Sprint Grooming o Refinement), ponemos énfasis en lograr una perfecta interacción entre los miembros del equipo promoviendo una adecuada comunicación.

Ahora bien, en esta etapa surge un importante interrogante: ¿entonces ahora tenemos un producto de calidad? La verdad es que esto no es suficiente. En las próximas líneas explicaremos porqué.

Diferencias clave entre DevOps y Scrum

Para redondear un poco las ideas, nos podemos dar cuenta que Scrum hace hincapié en la interacción del equipo, la cultura y los valores. Mientras que DevOps pone todo su esfuerzo en la automatización de los pipelines de la entrega del producto y sus flujos.

Pero, si nos detenemos un momento, nos podemos dar cuenta que Scrum también se ve beneficiado con la automatización. Así como DevOps puede ser potenciado con la comunicación y cultura.

Desde la reflexión anterior surge el concepto de ScrumOps, el cual no es nuevo, puesto que ya viene desarrollándose desde antes del 2017 y del cual ahondaremos a continuación.

¿Qué significa ScrumOps?

ScrumOps es un método para mejorar la entrega de software. Por tanto, Scrum y DevOps no son rivales. Desde la misma compañía, señalan que la combinación de estos dos conceptos puede ayudar a los equipos de TI a entregar continuamente software seguro, y utilizar herramientas mejoradas para medir el éxito de la entrega.

En términos generales, el objetivo de ScrumOps es proporcionar una forma para que los equipos entreguen continuamente software seguro y funcional mientras miden el éxito.

ScrumOps y la revolución de la entrega de software

ScrumOps se puede aplicar a cualquier organización de TI. Sin embargo, una de las principales falencias de DevOps, es que carece de una adecuada dirección. Por otro lado, Scrum carece de una base para ser más escalable.

Sin embargo, ScrumOps pretender ayudar a los equipos de Scrum a realizar la entrega de software de forma más eficiente y le proporciona la escalabilidad que necesita.

Mientras que Scrum puede ayudar a los equipos de DevOps a ser mucho más efectivos en cuanto a las tareas a realizar.

“Es un concepto erróneo total que DevOps y Scrum no podían combinar para crear la estrategia completa de desarrollo de software.

Dave West, CEO de  Scrum.org

Scrum proporciona un “marco” para la entrega de software, mientras que DevOps entrega la cultura, las técnicas de automatización y las herramientas adecuadas para garantizar dicha entrega.

Scrum capacita a los equipos y proporciona un marco ligero para realizar el trabajo, y DevOps proporciona la automatización, el pensamiento sistémico y las prácticas lean para entregar y respaldar el trabajo. Unir ambos ayuda a construir organizaciones receptivas.

¿Qué posibilidades pueden aparecer con ScrumOps? ¡Cuéntanos en los comentarios!


Posts recomendados