A la hora de tratar de aplicar una metodología ágil a nuestros proyectos es habitual que nos preguntemos si es una decisión acertada, si es el proyecto adecuado para utilizar esta manera de trabajar. A través de este artículo, vamos a tratar de dar algunas claves para identificar si nuestro proyecto es capaz de exprimir todos los beneficios de la utilización de este tipo de metodologías.
Categorización de Proyectos
En alguna ocasión todos nosotros nos hemos preguntado si el nuevo proyecto que vamos a comenzar sería mejor realizarlo utilizando una metodología ágil o continuar trabajando como lo venimos haciendo hasta ahora. Quizás las características de nuestro proyecto o del cliente nos hacen dudar sobre la efectividad de realizar este esfuerzo. Porque tengámoslo claro: cualquier cambio en nuestra forma de trabajar lleva implícito un coste.
Existen diferentes maneras de clasificar los proyectos. Una de estas formas radica en la utilización de dos características principales: la volatilidad de los requisitos y la complejidad técnica del proyecto. En función de cada una de ellas y dependiendo del nivel, podemos establecer si nuestro proyecto es estable, inestable o se encuentra sumido en el más absoluto de los caos.
Cuando el cliente tiene una idea bastante aproximada de lo que quiere y la tecnología que vamos a utilizar forma parte del dominio de conocimiento del equipo que lo va a desarrollar, podemos considerar el proyecto como estable.
En el caso de que nos enfrentemos a un proyecto en el que se producen cambios de requisitos por parte del usuario de manera bastante habitual (aproximadamente el 50% de ellos), y además el equipo va a utilizar algunas tecnologías sobre las que no tiene un dominio claro o incluso desconoce, nos encontramos en un escenario en el que los proyectos se consideran inestables, ya que tienen un nivel de incertidumbre relativamente alto.
Por último, están aquellas situaciones en las que no se sabe lo que se quiere y además la tecnología que hay que utilizar para su desarrollo es nueva o prácticamente desconocida. Ante esta situación nos encontramos inmersos en la más profunda de las incertidumbres y las probabilidades de salir con éxito del proyecto son bastante bajas.
Indicación Metodologías Ágiles
Una de las características principales de las metodologías ágiles es la adaptabilidad ante los cambios que surgen en los proyectos. Por ello, el terreno en el que se encuentran más cómodas y son capaces de explotar al máximo su potencial, se encuentra en lo que hemos denominado anteriormente como proyectos inestables. Es más, cuanto más cerca de la frontera con el caos, mejor.
Así, la especificación de los requerimientos en forma de historias de usuario y su gestión en forma de Product Backlog, permitirá gestionar los requerimientos de una manera flexible y rápida, permitiendo la entrada y salida de nuevas funcionalidades de una manera mucho más ágil. Las entregas periódicas de software funcionando darán feedback temprano al cliente y usuarios sobre las funcionalidades implementadas, permitiendo tomar mejores decisiones de cara a nuevas versiones. Las reuniones de retrospectiva que se realizan permitirán disponer de un proceso de mejora continua que ayudarán al equipo.
¿Esto quiere decir que no podemos aplicarlo en proyectos estables? Por supuesto que sí podemos utilizarlo. Simplemente no aprovecharemos por completo todos los beneficios que nos ofrece. Ahora bien, la utilización y aplicación de los valores y principios ágiles redundará en que dispondremos de equipos más motivados, y una mejor comunicación y transparencia con nuestros clientes. Además, el hecho fundamental de aportar valor de manera continua mediante entregas constantes de software funcionando es un factor que deberíamos tener en cuenta y aplicar en todos y cada uno de nuestros proyectos independientemente de la metodología utilizada.
Estas son las razones fundamentales por las que en decide apostamos por aplicar estas metodologías de trabajo en nuestros proyectos. Por otra parte, no conozco ningún proyecto en el que no se produzcan cambios y modificaciones con respecto a las especificaciones iniciales. Por eso, el uso de estas metodologías nos permiten adaptarnos y responder de una manera flexible a las nuevas necesidades de negocio.
¿Te interesa saber más sobre metodologías de proyectos software?
Si quieres saber más sobre decide, y mantenerte al tanto de futuros webinar o acciones, síguenos en las redes sociales (Linkedin, Twitter, Youtube).