Ir al contenido principal

Introducción a Kanban, XP y Lean

Hay muchas metodologías Agile populares que siguen vigentes desde los años 90, cuando se inventó Agile. Estas metodologías comparten valores y principios de Agile, pero tienen prácticas y aplicaciones muy específicas. En esta publicación, se mencionarán algunas de las más populares, además de Scrum.

En primer lugar, está Kanban, esta es una metodología que se puede aplicar de una manera muy sencilla o se puede utilizar para impulsar todo el proyecto. El nombre Kanban proviene de dos palabras japonesas. Kan, que significa “signo”, y ban, que significa “tablero”. Es posible que ya hayas utilizado un tablero Kanban, porque es la función más famosa adoptada por la mayoría de los entusiastas de Agile. La razón por la que Kanban es tan popular es que proporciona comentarios visuales transparentes a todos los que puedan estar interesados en el estado del trabajo en curso. Los tableros o gráficos Kanban muestran el progreso de un proyecto como si estuviera en curso y terminado. De esta manera, también existen herramientas de software que crean tableros Kanban digitales para ti. 

El método Kanban garantiza que el equipo del proyecto solo acepte una cantidad sostenible de trabajo en curso. Esto significa que la cantidad de tareas en curso se limita a lo que el equipo puede realmente manejar durante una determinada cantidad de tiempo. Esto se denomina límite de trabajo en curso o límite WIP. El límite WIP lo decide el equipo. Esto es igual a Agile en el sentido de que los equipos se auto-organizan y están empoderados, además de que operan a un ritmo sostenible. Los miembros del equipo agregan nuevas tareas que se realizarán solo después de que terminen la tarea anterior y estén por debajo del límite WIP. Este enfoque significa que, una vez que se comienza a trabajar en una tarea, terminarla se vuelve una prioridad para todo el equipo. Gracias a que se concentran en menos trabajo, este se hace más rápido. El objetivo de tratar de maximizar la eficiencia se llama flujo, que es un principio central de Kanban. 

Otra metodología Agile es Extreme Programming o XP. Fue nombrada así porque llevó las actividades de desarrollo de software tradicional a un nivel extremo. Pero también es porque surgió al mismo tiempo que los deportes extremos, como el snowboard. Dado que XP surgió de la industria del software, incluye términos y actividades de software específicos, como codificación y programación, pero el método XP también se puede usar en muchos entornos que no son de software. La metodología XP tiene como objetivo mejorar la calidad del producto y la capacidad para responder a las necesidades cambiantes de los clientes. Lo hace llevando las prácticas recomendadas del proceso de desarrollo a niveles extremos. Por ejemplo, una práctica recomendada consiste en comprobar el desarrollo primero. Esto significa probar partes del producto antes de construirlas por completo. A menudo, solo se prueban las funciones más importantes, lo cual sigue siendo bueno, pero significa que es posible que se pierdan algunos detalles. XP lleva esta práctica al extremo encontrando formas de probar más funciones menores del producto para obtener aún más comentarios. 

Hay cuatro actividades básicas que se realizan durante el proceso de desarrollo del producto que el método XP intenta potenciar. Diseño: en el desarrollo de software, es cuando redactas un documento de diseño en el cual se describen las partes del código o las instrucciones del producto y cómo funcionará. En otras industrias, consistiría en describir las diversas piezas y partes de lo que sea que estés tratando de entregar. Por ejemplo, si estás entregando una campaña publicitaria, tal vez las piezas principales sean las ilustraciones, el texto y el anuncio según el plan. Con XP, te aseguras de que todas las piezas del producto encajen correctamente. Por lo tanto, se hace énfasis en la simplicidad.

Comienza con un diseño simple para cumplir los requisitos más básicos e importantes. Los diseños simples también llevan menos tiempo. Una vez diseñado y probado el modelo básico, puedes pensar en agregar otras características. 

Codificación: el código es el lenguaje que se utiliza para escribir programas de software. Son las instrucciones que le dicen a la computadora qué hacer. En la escritura de desarrollo de software el código claro es crucial. Al igual que la escritura clara es crucial en cualquier situación en la que quieres que te entiendan. XP exige usar un código claro y conciso, para que otros puedan leer y entender el programa fácilmente. Esto facilita la resolución de problemas y la búsqueda de soluciones. En otras industrias, el código sería similar a escribir procesos o instrucciones de forma clara y concisa sobre cómo construir o usar tu producto. 

Prueba: como se ha explicado anteriormente, significa revisar el producto para detectar fallas, para que no terminen en el producto final. En XP, más es mejor. Entonces, si una prueba mínima puede eliminar algunas fallas, muchas pruebas eliminarán aún más. El objetivo es probar y eliminar cualquier falla en una característica antes de construirla y seguir haciéndolo. Probar también significa verificar para asegurarte de que las características del producto cumplan los requisitos del cliente. Lo que nos lleva a escuchar, que significa escuchar al cliente y garantizar que sus requisitos estén integrados en el producto. Esto guarda similitud con Agile, porque también valora la colaboración con el cliente, la comunicación regular y los comentarios frecuentes. 

XP presenta algunas otras prácticas innovadoras que se utilizan en muchos equipos de metodología Agile, independientemente de la metodología que se utilice. 

En primer lugar, está la programación en pareja, que es cuando dos miembros del equipo trabajan juntos al mismo tiempo en una tarea. Por lo general, esto se hace en la misma ubicación física, pero con el uso de herramientas de colaboración digital, también se puede hacer de forma remota. Otra práctica es la integración continua y la refactorización continua. Esta es la práctica de fusionar los cambios del producto en una versión compartida varias veces al día para obtener comentarios rápidos sobre la calidad del código o producto. Luego, está el evitar hacer un diseño complejo al principio. Se relaciona con el diseño y significa que el bosquejo debe bastar para comenzar y se debe mejorar continuamente a medida que el producto evoluciona. 

Y, finalmente, están las pruebas de escritura, no los requisitos. Esto significa que, en lugar de escribir un documento con los requisitos del producto para luego escribir un plan de prueba, tu plan de prueba puede servir para dos propósitos: A: decirle al equipo qué generar y B: comparar lo que hicieron con lo que se suponía que se tenía que hacer. 

Bien, entonces tenemos Scrum, Kanban y XP. Exploremos uno más. En el contexto de Lean 6 Sigma, la metodología Lean consta de cinco principios que sirven como receta para mejorar los resultados del proyecto. Estos son: definir el valor, mapear el flujo de valor, crear el flujo, establecer un sistema pull y perseguir la perfección. 

Analicémoslos. Definir el valor significa identificar y concentrarse en lo que el cliente quiere e incluir al cliente en el proceso. El valor de un producto es la suma de todas las cosas que el cliente quiere. Mapear el flujo de valor significa mapear el proceso o flujo incluyendo todos los pasos involucrados en la producción de valor para el cliente. También significa cuestionar cualquier paso que pueda considerarse inútil o innecesario. Crear el flujo significa garantizar la transición del producto a través de la cadena de valor, seguido de la eliminación de residuos a lo largo del ciclo. Trabaja para eliminar las interrupciones, los retrasos y los obstáculos del flujo de trabajo. En cuanto al sistema pull (jalar), es como pedirle a alguien que saque algo de un estante. Quieres asegurarte de que el cliente “jale” el producto o lo solicite a lo largo de la cadena de valor. Podría jalar o solicitar funciones y entregas incrementales. La idea es hacer que tu proceso sea lo más sencillo posible para que el cliente pueda jalar el producto en cualquier momento, para que puedas presentar tu trabajo o agregar una función solicitada. Finalmente, está perseguir la perfección. Esto significa presionar a tu equipo para que mejore continuamente los primeros cuatro pasos del proceso. 

Entonces, ¿Qué relación guarda con la metodología Agile? Bueno, Agile surgió después de Lean, y los inventores de Agile se inspiraron para aplicar los principios de la manufactura Lean (o esbelta) al desarrollo de software. Al igual que Agile, Lean es un conjunto de principios y un sistema de valores. Muchas de las diferencias están en realidad en la terminología. 


Fuente:
Coursera-Gestión de Proyectos de Google.

Comentarios

Entradas más populares de este blog

Cultura Olmeca

La 1° cultura (al menos de la que se tiene un registro) en aparecer en Mesoamérica, y que es conocida como la "cultura madre", es la de los olmecas , civilización de la cual, en esta lámina que se comparte, se puede ver un poquito de su historia y de los principales elementos que la caracterizaron.

Cultura Romana

En esta sección dedicada a compartir aquellas láminas, textos o infografías relevantes , en esta ocasión, es turno de compartir un material en el que de forma gráfica se observan diferentes pasajes y aspectos de la cultura romana, una de las principales civilizaciones que tuvo un amplio dominio en su época de apogeo.

25 Trabalenguas de Naturaleza

En esta entrega de los “queridísimos” trabalenguas, se da una lista de esos ejercitadores de la lengua que tienen a algún elemento de la Naturaleza (que no sea un animal) en sus enunciados. Aclarado este asunto, disfruten la entrada de esta ocasión.