Conceptos Basicos Introduccion Agil
Conceptos Basicos Introduccion Agil
Conceptos Basicos Introduccion Agil
5. Bibliografía de interés
Individuos e interacciones
sobre procesos y herramientas
Software funcionando
sobre documentación extensiva
Los individuos y sus interacciones por sobre los procesos y las herramientas. En
un mundo lleno de computadores y comunicaciones, las herramientas de software
priman. Pero ¿cuál es el verdadero impacto de las herramientas en el negocio? Retardos,
herramientas que se usan para lo que no se deben usar; herramientas de software que
pretenden optimizar la comunicación y que finalmente son más un obstáculo para una
comunicación efectiva. ¿Cuál es la comunicación más enriquecida y de impacto más
positivo? En la parte más baja de la escala tenemos los email, seguidos por el chat
escrito, y luego por software que permita ver a la otra persona tipo GoogleTalk, Skype,
FaceTime, etc. Luego viene el celular, que sigue siendo una excelente herramienta,
aunque aún no tengamos la imagen de la otra persona, y en la cúspide de la escala está
la comunicación presencial cara a cara, aquella que nos deja ver la cara del otro e
identificar sus expresiones, sus deseos, sus desaciertos; aquella que nos permite
identificar si la persona está o no está realmente involucrada en una comunicación; esa
misma que me deja a mi saber si la persona realmente se siente cómoda conmigo, o
está triste, o feliz; esa que me deja identificar el tipo de reacciones que pueden estar
teniendo mis palabras. Los individuos interactúan y eso supera cualquier tipo de
documento escrito, o de chat. Si pretende resolver un problema rápidamente, empiece
por usar el celular si no puede hacer una comunicación directa. El chat es una gran
alternativa si todas estas interacciones ricas no son posibles. En particular evite el email
para comunicarse y úselo sólo para llevar registro o para enviar documentos que no son
interactivos. Hoy no se puede ser ágil si nos fundamos en el uso de herramientas.
Adaptarse al cambio por sobre seguir un plan. Los ciclos de vida rígidos, como el
cascada, dificultan la incorporación del cambio como una ventaja en los procesos de
desarrollo de software. De hecho, hablar de cambios continuos sobre las
especificaciones del producto, es visto por muchas empresas de desarrollo de software
como algo complejo de incorporar. Es la posibilidad de adaptarse al cambio de las
organizaciones lo que hace la calidad del software, incluso durante fases tardías de
desarrollo. El software debe evolucionar según las circunstancias, por lo que el cambio
es bienvenido. No se trata tampoco de generar desorden. Se trata de aprender a abordar
el cambio. El agilismo persigue siempre esta característica en todo aspecto.
12 principios del Manifiesto Ágil
En el caso de los equipos de desarrollo de software pasa algo similar. También pueden
montarse en un tren o ritmo sostenido basado en iteraciones del mismo tamaño, de tal
forma que entre las reuniones de planeación y revisión siempre haya el mismo lapso, lo
que permitirá alta predictibilidad del proceso.
Debemos hacer software de forma evolutiva para garantizar que sabremos darnos
cuenta cuándo estamos haciendo software de valor para la empresa, y no incurrir en
malgastos de software sin valor. Debemos ser cuidadosos de dónde aplicamos
demandas de procesos establecidos, y determinar cuándo dichos procesos son una
carga innecesaria para la empresa. Debemos ser muy críticos para poder identificar
aquellos puntos donde el desperdicio se puede dar o se dará. Todo esto hará que
hagamos el trabajo mucho más simple.
2001: 17 agilistas se juntaron a discutir y firmar el Manifesto Ágil con los cuatro
valores y doce principios.
2001: Se publica el primer Libro sobre Scrum: "Agile Software Development with
Scrum". (Ken Schwaber, Mike Beedle)
2002: Ken Schwaber, Mike Cohn y Esther Derby fundan la ScrumAlliance y crean
la Certificación de Scrum Master. Además se crean las técnicas de Test Driven
Development (Kent Beck) y Planning Poker (James Grenning)
6. ROLES SCRUM:
Rol - Scrum Master (Líder del proyecto): Es la persona que vela por la mejora
continua en los equipos de trabajo. Busca además que el equipo entienda el
proceso y lo aplique correctamente. Busca estrategias que incrementen la calidad
del equipo. Y es el responsable de asegurar que Scrum es entendido y adoptado
por la organización, el equipo (team) y el dueño del producto (product owner).
Algunas características que debe tener son:
Ser un líder que está al servicio del Equipo Scrum.
Ayudar a las personas externas al Equipo Scrum a
entender qué interacciones con el Equipo Scrum
pueden ser de ayuda y cuáles no.
Ayudar a todos a modificar las interacciones para
maximizar el valor creado por el Equipo Scrum.
7. EVENTOS SCRUM:
Sprint Review (Revisión): Al final del Sprint se lleva a cabo una Revisión de
Sprint para inspeccionar el Incremento y adaptar la Lista de Producto si fuese
necesario.
8. ARTEFACTOS SCRUM:
2. Para que Sirve: Esta técnica se utiliza para controlar el avance del trabajo,
en el contexto de una línea de producción. Su objetivo es gestionar de manera
general como se van completando tareas.
Calidad garantizada. Todo lo que se hace debe salir bien a la primera, no hay
margen de error. De aquí a que en Kanban no se premie la rapidez, sino la calidad
final de las tareas realizadas. Esto se basa en el hecho que muchas veces cuesta
más arreglarlo después que hacerlo bien a la primera.
Reducción del desperdicio. Kanban se basa en hacer solamente lo justo y
necesario, pero hacerlo bien. Esto supone la reducción de todo aquello que es
superficial o secundario (principio YAGNI).
Mejora continua. Kanban no es simplemente un método de gestión, sino también
un sistema de mejora en el desarrollo de proyectos, según los objetivos a
alcanzar.
Flexibilidad. Lo siguiente a realizar se decide del backlog (o tareas pendientes
acumuladas), pudiéndose priorizar aquellas tareas entrantes según las
necesidades del momento (capacidad de dar respuesta a tareas imprevistas).
Control del Flujo: Además de visualizar el flujo de trabajo hay que controlar su
funcionamiento, ver en todo momento si las piezas están funcionando o si alguien
tiene problemas y solucionarlos.
5. Metricas Recomendadas:
Lead Time: Es el tiempo que se tarda en terminar cada tarea. El “lead time” cuenta
desde que se hace una petición hasta que se hace la entrega. Con el “lead time”
se mide lo que ven los clientes y lo que esperan.
Cicle Time: Mide desde que el trabajo sobre una tarea comienza hasta que
termina. Con el “cycle time” se mide más el rendimiento del proceso.
Medir el tiempo en cada fase del flujo, para ver oportunidades de mejora.
6. Herramientas virtuales
KanbanFlow - https://kanbanflow.com/
Kanbanize - https://kanbanize.com/?a=6&utm_expid=117602265-
20.57PkQaRZRAmjuljlUB4Fpw.1
Trello - https://trello.com/
KanbanPad
LeanKit - https://leankit.com/
QUE ES, PARA QUE SIRVE Y COMO SE DESARROLLA EL IMPACT MAPPING
3. Como se hace: Es una reunión donde deben estar todos los interesados y se deben
hacer las preguntas correctas para lograr determinar con precisión qué es aquello que
debe conseguirse para lograr las metas deseadas. Todo se combina, luego, a través de
una visualización muy simple y efectiva de la información que permite realizar un análisis
adecuado. Cuatro preguntas conducen la técnica:
¿Por qué?
¿Quién?
¿Cómo?
¿Qué?
5. Herramientas virtuales
Mindmup - https://app.mindmup.com/
QUE ES, PARA QUE SIRVE Y COMO SE DESARROLLA UN
INCEPTION
2. Para que Sirve: Agile Inception no es una garantía para conseguir el consenso,
pero ayuda mucho a conseguirlo. De hecho, uno de los resultados esperables de
la misma es que el proyecto no es viable o demasiado arriesgado para iniciarlo.
1. Que es el User Story Mapping: Jeff Patton ideó una herramienta muy usada en
metodologías ágiles llamada User Story Mapping, que permite generar una
representación visual del sistema completo. Ofrece una vista general de todas las
funcionalidades que lo componen de punta a punta. Permite identificar las
Historias de Usuario faltantes en el Backlog, planificar Releases partiendo en
rebanadas (Slicing), visualizar cómo se distribuyen las funcionalidades de acuerdo
a las diferentes áreas del sistema.
2. Para qué sirve: Al construir el User Story Map al principio del proyecto, sirve para
tomar decisiones y provocar muchas conversaciones que posteriormente serán
útiles durante la construcción. Durante el resto del proyecto es muy útil para no
perder el horizonte sobre lo que se pretende construir.
También se puede implementar para:
Descubrir el proceso.
Identificar las funcionalidades del sistema.
Segmentar el product backlog en releases.
Un buen momento para hacer el User Story Map es al final de la Agile Inception
4. Algunos Conceptos:
The Walking Skeleton: Con las activities y la primera fila de User Stories
obtenemos lo que Jeff Patton denomina "The Walking Skeleton" (el esqueleto que
camina) porque está completo y funciona, aunque sea en su forma más elemental.
Nuestro producto en este estado puede ser identificado como la versión MVP
(Minimum Viable Product).
Releases (Entregas): El User Story Mapping permite planificar las próximas
versiones o releases del producto representando de manera visual en qué partes
de nuestros sistemas estamos dedicando mayor esfuerzo para generar
Incremento de Producto.