Metodologías ágiles

Artefactos

Lean:
No hay artefactos estandar, lo que se busca es seguir los principios lean para evitar la acumulación de basura, fomentando la recolección de la misma.

Kanban:
Un tablero "kanban" con diferentes secciones para hacer trazabilidad de las tareas y subtareas que se están haciendo

XP:
Sistemas de integración continua y pruebas unitarias. Historias de Usuario. Iteraciones cortas.

Scrum:
Backlog. Historias de usuario. Sprint.

Ideas Centrales

Lean:
Reducir la basura, lo extra, las cosas que sobran y consumen tiempo sin agregar valor.

Kanban:
Minimizar y trazar el trabajo que sobra (altamente ligada a lean)

XP:
Hacer incrementos pequeños de calidad que puedan ser validados por los expertos en el producto. La calidad se obtiene de las pruebas unitarias y la integración continua (iteración continua).

Scrum:
Hacer planeación y desarrollo de requerimientos de manera estable, teniendo en cuenta a los expertos de producto, la calidad del mismo y los descubrimientos del equipo de desarrollo. Planear es fundamental (estimar) para comunicar efectivamente lo que se quiere construir y lo que se puede.

Cuando usarlo

Lean:
Funciona inicialmente en proceso de fábrica que tiene fase de implementación y de diseño. También se puede aplicar al software pero con algunos cambios (pues el software es un diseño perpetuo)

Kanban:
Para detectar cuales son las tareas que más nos bloquean y tomar acciones al respecto.

XP:
Para aumentar la capacidad y la calidad del código de un equipo de desarrollo.

Scrum:
Para organizar procesos (no siempre de desarrollo de software) teniendo en cuenta lo cambiantes que son y las capacidades que se tienen para lograr los objetivos.

Roles

Lean:
No hay roles explícitos, sólamente hay principios.

Kanban:
No hay roles explícitos

XP:
El equipo de desarrollo, los expertos de producto.

Scrum:
Product Owner, Scrum Master, Equipo de desarrollo.

Técnicas / Prácticas

Lean:
No hay prácticas explícitas.

Kanban:
Usar un tablero Kanban para haccer el seguimiento de las actividades que se tienen que hacer.

Scrum:
Ceremonias de Scrum.
Backlog (con su monitoreo y re-priorización contínua)
Planeación del Sprint
Creación de Historias de usuario
Responsabilidades del Product Owner, Scrum Master y el equipo de desarrollo

XP:
- Iteraciones cortas.
• Programaciones de parejas.
• Historias de Usuario.
• Refactorización.
• Espacio abierto (para que haya osmosis de conocimiento).
• Integración contínua.
• Hacer las pruebas primero (TDD).

Principios

Lean:
Principio 1, eliminar el desperdicio, es el más importante.
Principio 2, ampliar el aprendizaje, dirige al proyecto a buscar calidad en todo momento y a los programadores a aprender de la experiencia.
Principio 3, decidir lo más tarde posible.
Principio 4, entregar lo más rápido posible.
Principio 5, empoderar al equipo..
Principio 6, construir de manera íntegra.
Principio 7, ver el todo

Kanban:
No hay principio explícitos mas que los de Lean, es un marco de implementación de estos mismos.

XP:
Los mismos de lean, pero con unos llevados mas al extremo:
Principio 2: Pair programming
Principio 6: TDD
Principio3: Iteraciones cortas con Historias de usuario

Scrum:
Los mismos que Lean y XP pero con detalles:
Congelar los requerimientos por Sprint.
Tener una separación explícita de roles
Ceremonias de Scrum