Metodologías agiles más usadas

Los continuos cambios en el mundo de los negocios y la tecnología a provocado que surjan y se consoliden nuevas formas de gestionar proyectos e implementar software. A continuación daremos una vista rápida a las 3 metodologías de desarrollo ágil más usadas en la actualidad.

Hoy en dia existe en el mercado diferentes opciones ágiles entre las cuales podemos destacar las siguientes: Scrum , programación extrema ( XP ) y Kanban , siendo estas las alternativas más utilizadas. Es importante mencionar, que todas las metodologías ágiles cumplen con el Manifiesto ágil, el cual se encuentra compuesto por doce (12) principios agrupado en cuatro (04) valores fundamentales:

  1. Individuos e interacciones sobre procesos y herramientas.
  2. Software funcionando sobre documentación extensiva.
  3. Colaboración con el cliente sobre negociación contractual.
  4. Respuesta ante el cambio sobre seguir un plan.

Scrum

Scrum es uno de los métodos ágiles más populares. Es un framework adaptable, iterativo, rápido, flexible y eficaz, diseñado para ofrecer un valor considerable en forma rápida a lo largo del proyecto. Scrum garantiza transparencia en la comunicación y crea un ambiente de responsabilidad colectiva y de progreso continuo.

Esta metodología, trabaja con el ciclo de vida iterativo e incremental , donde se va liberando el producto por pares de forma periódica, aplicando las buenas prácticas de trabajo colaborativo (en equipo), facilitando el hallazgo de soluciones óptimas a los problemas que pueden ir surgiendo en el proceso de desarrollo del proyecto. Una fortaleza clave de Scrum radica en el uso de equipos interfuncionales, autoorganizados y empoderados que dividen su trabajo en ciclos de trabajo cortos y concentrados llamados Sprints.

El ciclo de Scrum empieza con una reunión de stakeholders, durante la cual se crea la visión del proyecto. Después, el Product Owner desarrolla una Backlog del Productoque contiene una lista requerimientos del negocio y del proyecto por orden de importancia en forma de una historia de usuario. Cada sprint empieza con una reunión de planificación del durante la cual se consideran las historias de usuario de alta prioridad para su inclusión en el sprint. Un sprint generalmente tiene una duración de una a cuatro semanas durante las cuales el Equipo Scrum trabaja en la creación de entregables en incrementos del producto. Durante el sprint, se llevan cabo las Reuniones diarias de Scrum muy breves y concretos, donde los miembros del equipo discuten el progreso diario. Al final del sprint, se lleva a cabo una Reunión de Revisión del Sprint en la cual se proporciona una demostración de los entregables al Product Owner y a los stakeholders relevantes. El Product Owner acepta los entregables sólo si cumplen con los criterios de aceptación predefinidos. El ciclo del sprint termina con una Reunión de Retrospectiva del Sprint donde el equipo analiza las formas de mejorar los procesos y el rendimiento a medida que avanzan al siguiente sprint.

Roles en Scrum

Los roles principales que se requieren para crear el producto o servicio en Scrum son:

  • El Product Owner, representa la voz del cliente, y es el encargado de elabora el backlog del producto priorizado así como definir los criterios de aceptación. El product Owner adicional es el responsable de comunicar los requerimientos empresariales priorizados al equipo Scrum.
  • El Scrum Master es un facilitador que asegura que el Equipo Scrum cuente con un ambiente propicio para completar el proyecto con éxito. El Scrum Master guía, facilita y enseña las prácticas de Scrum a todos los involucrados en el proyecto; elimina los impedimentos que pueda tener el equipo y se asegura de que se estén siguiendo los procesos de Scrum.
  • El Equipo Scrum es el grupo o equipo de personas responsables de entender los requisitos especificados por el Product Owner y de crear los entregables del proyecto.

Programación extrema (XP)

XP es una metodología basada en un conjunto de reglas y buenas prácticas para el desarrollo de software en ambientes muy cambiantes con requisitos imprecisos, por ende está enfocada en la retroalimentación continua entre el equipo de desarrollo y el cliente.

Es por esto que iniciando el proyecto se deben definir todos los requisitos, para luego invertir el esfuerzo en manejar los cambios que se presenten y así minimizar las posibilidades de error. XP tiene como base la simplicidad y como objetivo la satisfacción del cliente.

Características de XP:

Las principales características de XPson:

  • Desarrollo iterativo e incremental.
  • Programación en parejas.
  • Pruebas unitarias continuas.
  • Corrección periódica de errores.
  • Integración del equipo de programación con el cliente.
  • Simplicidad, propiedad del código compartida y refactorización del código.

Ventajas y desventajas de XP:

XP optimiza los tiempos y se adapta al desarrollo de sistemas grandes y pequeños sin mayor documentación, el código es claro y simple, así mismo complementa los conocimientos entre los miembros del equipo, gracias a la programación en parejas. Sin embargo, una desventaja de esta metodología ágil, es que luego de cada entrega el sistema puede ir creciendo según sean las peticiones del cliente.

Kanban

Kanban proveniente de una palabra japonesa que significa “tarjetas visuales”, donde Kan es “visual”, y Ban corresponde a “tarjeta”.

Esta metodología es muy sencilla, se puede actualizar y los equipos de trabajo la pueden asumir sin problema. Al ser un método visual permite que a golpe de vista se conozca el estado de los proyectos y asignar nuevas tareas de manera muy efectiva. Para aplicarlo, es necesario un tablero de tareas con el que poder mejorar el trabajo y tener un ritmo sostenible.

Para el desarrollo de software, gracias a su sencillez KANBAN , simplifica la planificación y la asignación de responsabilidades, en un tablero se representan los procesos del flujo de trabajo , cómo mínimo deben existir tres columnas (Pendiente, En Progreso, Terminado), la cantidad de tarjetas en estatus pendiente forma parte de lo solicitado por el cliente, aquellas colocadas en progreso dependerán de la capacidad del equipo de trabajo. Las tarjetas Kanban , se deben desplazar por cada una de las diversas etapas de su trabajo hasta su finalización.

Ventajas de la metodología Kanban

Entre las ventajas de esta metodología destacan las siguientes:

1. Transparencia

Los tiempos de entrega son más cortos y hay una mayor fiabilidad en los mismos. Todo el mundo sabe cuál es su tareay en qué momento está de su ciclo.

2. Evita tareas ineficientes

Se evita la sobreproducción y la limitación de los recursos, lo que supone una mayor disponibilidad de materiales.

3. Control de las tareas

El tiempo de producción es más rápido, por tanto se reduce el control del esfuerzo y se mejora la planificación. Lo que afecta a la mayor productividad en el área de compras, abastecimiento y control. Aumenta la rotación de los inventarios y se necesita una menor capacidad de almacenamiento.

4. Flexibilidad

Como todo el equipo sabe perfectamente cuál es su tarea y la realiza con eficacia, si surge alguna imprevista existe una capacidad de respuesta que permite atenderla.

En definitiva, la metodología Kanban está indicada para las empresas que necesiten cierta flexibilidad a la hora de manejar nuevas entradas de tareas y poder realizar un buen seguimiento de las mismas. Además, permite priorizar, realizar informes precisos y supervisar adecuadamente el trabajo en equipo.

Fuente: Yanina Muradas

Deja una respuesta

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

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.