¿Cuándo hay que utilizar metodologías ágiles?

Lo primero que hay que tener en cuenta, es que seguir una metodología ágil, no significa no tener un plan, procesos o documentación que seguir para ir más rápido. De hecho, todas estas «cosas» siguen formando parte, de los proyectos en los que se aplican, pero con un peso menor, en favor de otros valores como las personas, la colaboración y la experiencia.

Todas las metodologías ágiles se basan en el MANIFIESTO ÁGIL , cuyos principios se agrupan en 4 valores:

  • Los individuos y su interacción, por encima de los procesos y las herramientas.
  • El software que funciona, frente a la documentación exhaustiva.
  • La colaboración con el cliente, por encima de la negociación contractual.
  • La respuesta al cambio, por encima del seguimiento de un plan.
Carlos Benítez
Carlos BenítezScrum Master Viewnext

Estos valores intentan reflejar con mayor realismo los problemas a los que nos solemos enfrentar en un proyecto. De hecho, las metodologías ágiles combaten uno de los enemigos de un proyecto software, la incertidumbre, desmitificando el concepto de producto perfecto: se entiende que es imposible definir el producto perfecto de antemano sin que se haya ido validando y puliendo gracias al contacto con el entorno real.

En un proyecto ágil no hay precio por algo fijo, ya que las necesidades se van definiendo a lo largo del mismo, y, además, necesitamos una presencia fuerte de los clientes a lo largo del proyecto. Este tipo de metodologías se suelen emplear, de hecho, en proyectos poco definidos y muy cambiantes.

En función de cómo sea el proyecto se pueden adoptar distintos tipos de metodologías o frameworks (mezclar varias es lo habitual):

  • SCRUM: es un marco de trabajo que nos proporciona una serie de herramientas y roles para, de una forma iterativa, poder ver el progreso y los resultados de un proyecto.
  • KANBAN: se basa en una idea muy simple: que el trabajo en curso (Work In Progress, WIP) debería limitarse y sólo deberíamos empezar con algo nuevo cuando un bloque de trabajo anterior haya sido entregado o ha pasado a otra función posterior de la cadena.
  • XP: se centra en potenciar las relaciones interpersonales como clave para el éxito en desarrollo de software, promoviendo el trabajo en equipo, preocupándose por el aprendizaje de los desarrolladores y propiciando un buen clima de trabajo.

Scrum

En Viewnext utilizamos Scrum en muchos de nuestros proyectos. Scrum es un modelo de desarrollo ágil caracterizado por:

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

Scrum se puede adoptar de forma técnica, aplicando reglas definidas (ideal para comenzar un proyecto o con un equipo nuevo), o pragmática, adoptando los valores originales Scrum pero con reglas personalizadas. Una vez iniciados en agilidad, y con el conocimiento que el propio equipo acumula a través de las retrospectivas, se pueden ir “rompiendo” las reglas y adoptar Scrum pragmático, personalizado y más adecuado a las propias circunstancias del propio equipo, del proyecto y sobretodo del cliente y la compañía.

El objetivo es pues alcanzar una organización ágil en su conjunto, capaz de responder en escenarios de trabajo que evolucionan rápidamente, o tienen dosis altas de incertidumbre por las que no cuentan con requisitos estables al concebir nuevos productos o servicios. Se trata de empresas que necesitan empezar a usar un producto lo antes posible y mejorarlo de forma continua. De productos en los que la innovación es un valor clave. Es en este escenario donde aplicar Scrum debería ser obligatorio.

2019-08-06T08:32:14+02:0011 julio, 2016|

¡Compártelo en tus redes sociales!

Ir a Arriba