Download - Desarrollo ágil Webprendedor UC 2010
![Page 1: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/1.jpg)
DESARROLLO ÁGILPrincipios y Prácticas
![Page 2: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/2.jpg)
ABOUT MEVPoE & Co-Founder Welcu Inc.
Estudiante IngenieríaMiembro de ∞ comunidades
![Page 3: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/3.jpg)
MOTIVACIÓN
• ¿Cómo lograr que mi equipo haga un buen trabajo y a la vez lo “pase bien”?
• Hay dos tipos de trabajo• Repetir una receta conocida: “manufactura”• Crear un nuevo producto
![Page 4: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/4.jpg)
METODOLOGÍAS
![Page 5: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/5.jpg)
Team
wor
k M
anag
emen
t Cyc
le
Burn down Charts
Task Board
Scrum Master Role
Daily Scrum Meeting
Sprint Planning Meeting
SCRUMAGILE
FRAMEWORK
Valu
e O
rient
ed
Man
agem
ent C
ycle
Release Planning Meeting
ReleaseProduct
Owner Role
Development
Sprint Retrospective MeetingScrum Scoreboard
Product Backlog
Tasks
![Page 6: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/6.jpg)
Team
wor
k M
anag
emen
t Cyc
le
Team
Dev
elop
men
t
Qua
lity
Orie
nted
In
crem
enta
l Dev
elop
men
t Cy
cle Continuous
IntegrationCode Standards
Collective Code Ownership
Pair Programming(+ Move people
around)
Simple Design
Refactoring
Test Driven Development
No Overtime
Tracking / Informative Workspace
Coaching
Stand Up Meeting
Iteration Planning
EXTREME PROGRAMMING
AGILE FRAMEWORK Va
lue
Orie
nted
M
anag
emen
t Cyc
le
Planning Game
Acceptance Tests
Small Releases
On Site Customer(One team)
Development
Definition Validation
User Stories
Tasks
![Page 7: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/7.jpg)
PROPUESTA: LEAN THINKING• Inspirado en el “Conocimiento Profundo” y los “14 puntos” de W. Edwards Deming
Manufactura• Toyota Production System
Desarrollo Nuevos Productos• Toyota Product Development System
![Page 8: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/8.jpg)
LEAN SOFTWARE DEVELOPMENT• Mary y Tom Poppendieck,
“Lean Software Development”, 2003• Define las bases teóricas de las
metodologías ágiles, a partir del lean thinking• Filosofía de gestión inspirada en el Toyota Product
Development System
![Page 9: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/9.jpg)
HIPÓTESIS DE LEAN SOFTWARE DEVELOPMENT
• Existe un conjunto simple de principios que, al ser seguidos por un equipo de desarrollo de nuevo producto, genera un comportamiento auto-organizado
![Page 10: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/10.jpg)
AUTO-ORGANIZACIÓN
• Pocos principios fundamentales, que apoyan la toma de decisiones en terreno • Al compartir los principios, el equipo se auto-
organiza• Base para equipos de
Alto Rendimiento
![Page 11: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/11.jpg)
LA VIDA EMERGE EN EL FILO DEL CAOSInflexibilidad Caos
Empoderamiento Alineamiento+ atribuciones+ confianza
+ valores + principios
Filo del Caos
Sistemas Adaptativos Complejos
![Page 12: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/12.jpg)
¿CÓMO SE ORGANIZAN LAS HORMIGAS PARA BUSCAR ALIMENTO?
• ¿Así?
![Page 13: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/13.jpg)
¿CÓMO SE ORGANIZAN LAS HORMIGAS PARA BUSCAR ALIMENTO?
• Dos reglas simples• Marcar el camino
• De ida • De vuelta
• Seguir el camino con más marcas
• Reglas simples que inducen un comportamiento auto-organizado
![Page 14: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/14.jpg)
PRINCIPIOS Y PRÁCTICAS• Prácticas Ágiles• Test Driven Development• Planning Game, • Pair Programming, • etc.
• Ellas se generan a partir de principios, • sobre las que están basados
Principios
![Page 15: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/15.jpg)
Eliminar Desperdicio
s
Crear Conocimient
o
Calidad Intrínseca
Diferir el
compromiso(hasta el último
momento responsable)
Entregar rápido
Respetar a las
personas
Optimizar el todo
PRINCIPIOS DE LEAN SOFTWARE DEVELOPMENT
![Page 16: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/16.jpg)
EJEMPLOS DE APLICACIÓN DE PRINCIPIOS LEAN
![Page 17: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/17.jpg)
CURVA DE VALOR DE UN PROYECTO
• Si diferimos el compromiso hasta el último momento responsable, creamos conocimiento y entregamos rápido, la curva de valor/aprendizaje de un proyecto cambiará así
![Page 18: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/18.jpg)
¿CÓMO TENDRÍAMOS QUE TRAZAR LAS SENDAS PEATONALES SOBRE EL CÉSPED DE UN CAMPUS?
• ¡No trazar ningún sendero!• ¡Al final de año las
partes más gastadas nos indicarán las sendas a pavimentar!
• Principio: • Diferir compromiso
hasta el último momento responsable http://sivers.org/walkways
http://www.uwyo.edu/tour/Prexy.asp
![Page 19: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/19.jpg)
+ RAPIDO CON LEAN
![Page 20: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/20.jpg)
¿DÓNDE TENDREMOS UN TRÁFICO PROMEDIO MÁS RÁPIDO?
• ¿En una carretera usada por autos?
Ojo:En las carreteras los accidentes suelen
suceder
![Page 21: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/21.jpg)
¿DÓNDE TENDREMOS UN TRÁFICO PROMEDIO MÁS RÁPIDO?
• ¿Una carretera semi-llena de autos?
![Page 22: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/22.jpg)
¿CÓMO SE LLAMA A UN LUGAR LLENO DE AUTOS?
Un Estacionamiento
![Page 23: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/23.jpg)
EN RESUMENTIEMPO DE PROCESO V/S
TAMAÑO DE LOTE V/S % DE OCUPACIÓN
Fuente: Lean Software Development: An Agile Toolkit,
Mary y Tom Poppendieck, 2003
![Page 24: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/24.jpg)
ESTIMANDO EL TAMAÑO ÓPTIMO DEL LOTETamaño óptimo de lote
Costo
Tamaño del lote
Costo de Mantención
Costo TotalTamaño
óptimo
Costo de Transacción
Zona óptimaaproximada
![Page 25: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/25.jpg)
TAMAÑO LOTE ÓPTIMO ESTIMADO => PRINCIPIO LEAN: “ENTREGAR
• Cada incremento de tiempo debe generar valor apreciable para el cliente• Minimun
MarketableFeature
• Se opone a la división por actividades del modelo waterfall
![Page 26: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/26.jpg)
CÓMO GENERAR LOTES ÓPTIMOS EN PROYECTOS DE SOFTWARE
• Analizando el problema de negocio para priorizar• Invertir tiempo de ingeniería para lograr
desacoplamiento y establecer avances incrementales de valor (MMFs)• Y así será más fácil adaptarse a los cambios
![Page 27: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/27.jpg)
EFECTO DE LA MULTITAREA EN LA PRODUCTIVIDAD
• La productividad decrece cuando se asignan más de dos tareas en Trabajo en Curso • (WIP: Work In Process)
• Productividad entendida como porcentaje del tiempo dedicado a agregar valor
• => Debemos limitar la multitarea
![Page 28: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/28.jpg)
¿CUÁNDO SE DEBE CREAR LA CALIDAD?
• La calidad debe construirse junto con el sistema. • ¡No se puede agregar como un barniz final!
• Los criterios de calidad funcional los debe definir el cliente mismo• O sino, el ruido que generan los saltos interganizacionales, hace inútil
cualquier intento posterior• Esto elimina el tradeoff de calidad versus costos versus eficiencia, de
hecho los alinea• A mayor calidad, mayor eficiencia y menor costo
Sin definición de criterios de calidad
intrínsecos, los problemas se ocultan
Con criterios de calidad intrínsecos, los problemas aparecen pronto y se eliminan oportunamente
![Page 29: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/29.jpg)
BUILT-IN QUALITY
![Page 30: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/30.jpg)
CAPAS DEL TESTING EN AGILIDAD
Historia de usuario
Test de Aceptación / Funcional
/ de Integración
Componente
aisladoTest
Unitario
![Page 31: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/31.jpg)
CICLO DE PROGRAMACIÓN ÁGILDiseño Sencillo
Test: Hazlo Fallar
Implementar:Hazlo
Funcionar
Test
RefactorizarHazlo mejor
Test
![Page 32: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/32.jpg)
KANBAN PARA INGENIERÍA DE
SOFTWARE“AGILE 2.0”
• Herramienta Lean • aplicada al desarrollo de software
![Page 33: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/33.jpg)
KANBAN¿EN QUÉ CONSISTE?
• Se disponen en un tablero que refleja el estado de cada actividad de trabajo (kanban) 看板: “Tarjeta Señal”
• Se sincroniza el problema de negocio y la capacidad del equipo de desarrollo desarrollo usando Kanban
• Cada persona escoge el trabajo a realizar• Responsabilidad asumida, no
asignada (Principio de eXtreme Programming)
Fuente:http://www.xqa.com.ar/visualmanagement/author/xavier/
![Page 34: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/34.jpg)
KANBAN HERRAMIENTA LIGERA Y VALIOSA
(PRINCIPIO DE EXTREME PROGRAMMING)
• Hace visible claramente el flujo de trabajo • Responde fácilmente: ¿Dónde estamos? • Enfoca al equipo• Presenta rápidamente cuellos de botella• Es sencilla y barata
Cambiar por
![Page 35: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/35.jpg)
…
Stage 1 DoneStage 2 Stage n…Work Items
QueueIn
Process QueueIn
Process QueueIn
Process
GESTIÓN TRADICIONAL
PUSH SCHEDULING
Fuente: Lean & kanban 101
http://availagility.wordpress.com/2009/06/11/zurich-lean-agile-scrum-slides/
![Page 36: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/36.jpg)
…
Stage 1 DoneStage 2 Stage n…Work Items
QueueIn
Process QueueIn
Process QueueIn
Process
PULL SCHEDULINGPARA DE COMENZAR… ¡COMIENZA A TERMINAR!
• Vamos realizando la tarea correcta en el momento justo en que tenemos capacidad
Fuente: Lean & kanban 101
http://availagility.wordpress.com/2009/06/11/zurich-lean-agile-scrum-slides/
![Page 37: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/37.jpg)
…
Stage 1 DoneStage 2 Stage n…Work Items
QueueIn
Process QueueIn
Process QueueIn
Process
LIMITANDO LA MULTITAREA (WIP)
Fuente: Lean & kanban 101
http://availagility.wordpress.com/2009/06/11/zurich-lean-agile-scrum-slides/
![Page 38: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/38.jpg)
¿CÓMO APOYA KANBAN LA MEJORA CONTÍNUA?
STAND-UP MEETINGS
![Page 39: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/39.jpg)
¿CÓMO APOYA KANBAN LA MEJORA CONTINUA?REFLEXIÓN Y EVOLUCIÓN DEL FLUJO DE TRABAJO
• El equipo puede y debe ir revisando su flujo de trabajo
En Cola• F3• F4
En Curso• F2
Listo• F1
![Page 40: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/40.jpg)
¿CÓMO APOYA KANBAN LA MEJORA CONTINUA?REFLEXIÓN Y EVOLUCIÓN DEL FLUJO DE TRABAJO
• El equipo puede y debe ir revisando su flujo de trabajo
En Cola• F3• F4
En Curso• F2
Por Validar
Listo• F1
![Page 41: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/41.jpg)
¿CÓMO APOYA KANBAN LA MEJORA CONTINUA?REFLEXIÓN Y EVOLUCIÓN DEL FLUJO DE TRABAJO
• El equipo puede y debe ir revisando su flujo de trabajo
Por Estimar
Definir Criterio de Aceptación
Listo paraDesarrollar• F3• F4
En Curso•F2 Por
Validar
Listo•F1
![Page 42: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/42.jpg)
FUNCIONALIDADES VERSUS ENTREGABLES
Scrum Tradicional
Kanban con Iteraciones
Fuente http://www.lostechies.com/blogs/derickbailey/archive/2009/08/14/kanban-in-time-boxes-the-cadence-of-wip-and-sprints.aspx
![Page 43: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/43.jpg)
ALGUNOS EJEMPLOS DE PRINCIPIOS LEAN EN KANBAN
• Dar al equipo una visión clara de su avance• Respetar a las personas
• Revisar y mejorar el flujo de trabajo• Entregar rápido• Optimizar el todo• Crear conocimiento• Calidad intrínseca
• Limitar el Trabajo en Curso• Entregar rápido
![Page 44: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/44.jpg)
APLICANDO LOS PRINCIPIOS LEAN
• Ejercicios prácticos
![Page 45: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/45.jpg)
APLICANDO LOS PRINCIPIOS¿CUÁNTO QUEDA?
• Un ingeniero de software un día lunes evalúa una tarea que no ha comenzado y determina que el tiempo estimado para terminar es de 20 horas hábiles. El jueves él nos reporta que lleva 16 horas. • ¿Cuál es la mejor manera de
saber cuanto queda?
![Page 46: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/46.jpg)
APLICANDO LOS PRINCIPIOS
EL CASO DEL CÓDIGO • Un equipo de desarrollo de 4 personas durante la primera iteración de un proyecto
realiza un software de 5.000 líneas de código ocupando 480 horas efectivas de desarrollo.
• Un accidente hace que se borren los datos del servidor de control de versiones y no existía ninguna copia del código fuente del sistema.
• El cliente, que estaba contento con los avances, solicita al equipo que, antes de continuar agregando requerimientos, vuelva a construir el código fuente perdido del sistema, lo que el equipo realiza.
• ¿Qué esperarías tú del tamaño en código fuente del sistema y tiempo ocupado en este nuevo intento en comparación con lo obtenido en el intento original?¿Cómo explicas este fenómeno?
![Page 47: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/47.jpg)
REFERENCIAS
• Mary & Tom Poppendiecks Site• http://www.poppendieck.com
• Limited WIP Society• http://www.limitedwipsociety.org/
• Kanbandev Yahoo Group• http://finance.groups.yahoo.com/group/kanbandev/
• Lean & Kanban 101• http://availagility.wordpress.com/2009/06/11/zurich-lean-agile-scrum-slides/
• So, Now You're An Agilist, What's Next?• http://www.slideshare.net/jurgenappelo/so-now-youre-an-agilist-whats-
next-10
![Page 48: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/48.jpg)
AGRADECIMIENTOAgustín Villena y a la comunidad Chile Ágil por el 99.9% de las slides
![Page 49: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/49.jpg)
PREGUNTAS …
![Page 50: Desarrollo ágil Webprendedor UC 2010](https://reader033.vdocuments.pub/reader033/viewer/2022060122/5595a0ff1a28ab14448b46e2/html5/thumbnails/50.jpg)
PARA MAS PREGUNTAS:http://failfast.chileagil.cl