|
|
Linkear el Chaos Report en U-Cursos
Push
Pull
What is progress? IMVU add-on story?
Introducción a la Cultura Ágil Agustín Villena M. agustin.villena@chileagil.cl 19-10-2010 www.chileagil.cl
Licenciamiento agustin.villena@chileagil.cl Esta obra está publicada bajo una Atribución-No Comercial-Licenciar Igual 2.0 Chile de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-sa/2.0/cl/
Agustín Villena Moya Ingeniero Civil en Computación, U. de Chile (1998) Magister en Ciencias de la Computación, U. de Chile (2008) Emprendedor a jornada completa (1998-2002) y parcial (2003 a la fecha) Coordinador Área de Investigación y Desarrollo Microsystem Chile (2005 a 2008) Co-fundador de LeanSight (2009 a la fecha) Desde el 2002 investigo, practico y comparto mis experiencias ágiles con mis alumnos de la U. de Chile, en los cursos CC62V Taller de Metodologías Ágiles de Desarrollo de Software CC61A Proyecto de Software Impulsor de la comunidad chilena de desarrollo ágil Chile Ágil Quien Soy 19-10-2010 agustin.villena@chileagil.cl
Comunidad Libre y Abierta de los practicantes de Agilidad y Lean Thinking de Chile, quienes Desean generar real valor de negocio innovando con calidad y eficiencia Creen profundamente en el valor de las personas colaborando en equipo Quieren transformar la industria chilena en un ambiente creativo, y motivante Y han encontrado una fuente inspiradora en la comunidad ágil y lean mundial Links Blog: www.chileagil.cl Twitter: www.twitter.com/chileagil Podcast: www.chileagil.cl/tag/podcast Foro: groups.google.com/group/chileagil/ Qué es ChileÁgil 19-10-2010 agustin.villena@chileagil.cl
Uno no se baña nunca dos veces en el mismo río Heráclito Epígrafe 19-10-2010 agustin.villena@chileagil.cl
19-10-2010 agustin.villena@chileagil.cl www.chileagil.cl La realidad del desarrollo de software Fuente: “CHAOS Report”, EE.UU. The Standish Group
Pero con poca productividad 19-10-2010 agustin.villena@chileagil.cl Motivación La realidad del desarrollo de software Fuente: “CHAOS Report”, EE.UU. The Standish Group
19-10-2010 agustin.villena@chileagil.cl Motivación: En resumidas cuentas…
Y en Chile, ¿será mejor? ... 19-10-2010 agustin.villena@chileagil.cl Motivación La realidad del desarrollo de software
Porqué es difícil desarrollar software Los planos (ideales) de un proyecto agustin.villena@chileagil.cl TAREAS Plano de Negocio Plano Técnico Problema (Necesidad) Lenguaje de Negocio Lenguaje Técnico Lenguaje Común Base Funcionalidades (Soluciones) Calidad Valor Ámbito de la gestión
Porqué es difícil desarrollar software Personas en medio de un proyecto de software agustin.villena@chileagil.cl Desarrollador Desarrollador Desarrollador Desarrollador Problema en resolución: ¿Cuáles son la necesidades actuales? ¿Cuáles son prioritarias? Cliente Cliente Avance de Proyecto: - ¿Cuánto hemos avanzado realmente (en generar real valor)? ¿Cuáles y cuántas funcionalidades queda por hacer? ¿Cuánto tiempo se requerirá para dichas funcionalidades? ¿Qué defectos puede tener el producto? Método de Trabajo ¿Qué prácticas y estándares se debe seguir? ¿Qué errores no se debe repetir? ¿Qué debemos mejorar? Tecnología: ¿Cuál tecnología usar? ¿Qué sabemos hacer con la tecnología utilizada? ¿Cuáles es posible hacer (limites) con la tecnología? ¿Concuerdan? ¿Concuerdan? ? ? Equipo de Desarrollo ¿Concuerdan? ¿Concuerdan? ? Trabajo en Equipo: ¿Cómo mantener la motivación? ¿Cómo comunicarse efectivamente? ¿Hay áreas del proyecto que sólo puedan ser mantenidas por uno?
Entonces definamos todo al principio, y luego construyamos y probemos… ¿Y qué pasa con el modelo tradicional? Modelo de Cascada agustin.villena@chileagil.cl Análisis y especificación de requerimientos Diseño Codificación y Test de Módulos Integración y Test del Sistema Instalación y Mantenimiento
Y así es fácil “evaluar” a cada individuo de manera separada ¿Y qué pasa con el modelo tradicional? Modelo de Cascada agustin.villena@chileagil.cl Análisis y especificación de requerimientos Diseño Codificación y Test de Módulos Integración y Test del Sistema Instalación y Mantenimiento Toma este problemita Toma este problemita Toma este problemita Toma este problemita ¡UF!
¿Y qué pasa con el modelo tradicional? Hipótesis sin validar, comunicación cortada 19-10-2010 agustin.villena@chileagil.cl Diseños Tienes que construir esto (¿Y cómo %$@ lo vamos a hacer?) … Si, jefe
Férreo control centralizado en una pirámide jerárquica ¿Y qué pasa con el modelo tradicional? Modelos de gestión Command & Control 19-10-2010 agustin.villena@chileagil.cl
¿PROCESOS? “Buenos procesos generan buenos productos” ¿Personas? “Pero las personas vienen y van” ¿Qué es lo importante? 19-10-2010 agustin.villena@chileagil.cl
La Cultura Ágil principios, métodos y prácticas 19-10-2010 agustin.villena@chileagil.cl
Qué es la Agilidad 19-10-2010 agustin.villena@chileagil.cl Una Cultura basada en Principios Valores Prácticas ¿En qué nos enfocamos? La creación constante de valor en un entorno incierto a partir del aprendizaje colaborativo entre las personas Clientes, desarrolladores, usuarios, expertos, etc.
Principios Ágiles (2001) En 2001, Kent Beck y otros autores de enfoques similares proponen los Principios Ágiles: agustin.villena@chileagil.cl
Pocos principios fundamentales, que apoyan la toma de decisiones en terreno Base para equipos de Alto Rendimiento que enfrentan alta incertidumbre Sinónimo Inteligencia colectiva La Cultura Ágil Modelo de gestión: Organización emergente 19-10-2010 agustin.villena@chileagil.cl
La Vida emerge en el Filo del Caos Inflexibilidad Caos Empoderamiento Alineamiento + atribuciones + confianza + valores + principios Filo del Caos Sistemas Adaptativos Complejos
A propósito de Inteligencia Colectiva Tres albañiles construían un muro. Cuando les preguntaron que hacían: El 1° dijo que “pegaba ladrillos con ladrillos” El 2° digo que “construía una muralla” El 3° dijo, “construyo una catedral” Le preguntaron a una mujer de limpieza de la NASA cual era su labor, respondió: “Ayudar que el el hombre llegue a la luna” agustin.villena@chileagil.cl
¿Cómo lograr que mi equipo haga un mejor trabajo y a la vez lo “pase bien”? W. Edwards Deming propuso el “Conocimiento Profundo” y los “14 puntos” para lograrlo Adoptado por Taichi Ohno en Toyota Conocimiento profundo a.k.a Lean Thinking 19-10-2010 agustin.villena@chileagil.cl
Mary y Tom Poppendieck proponen las bases teóricas de las metodologías ágiles, a partir del lean thinking “Lean Software Development”, 2003 Hipótesis Existe un conjunto simple de principios que, al ser seguidos por un equipo de desarrollo de nuevo producto, genera un comportamiento auto-organizado Lean Software Development 19-10-2010 agustin.villena@chileagil.cl
Principios de Lean Software Development 19-10-2010 agustin.villena@chileagil.cl
¿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 Aplicando Principios Lean 19-10-2010 agustin.villena@chileagil.cl http://sivers.org/walkways http://www.uwyo.edu/tour/Prexy.asp
El ecosistema ágil 19-10-2010 agustin.villena@chileagil.cl
Prácticas técnicas concretas de planificación de negocio, trabajo en equipo o desarrollo Se explican por principios, sobre las que están basados. Principios Criterios que ayudan a tomar decisiones a las personas Prácticas y Principios 19-10-2010 agustin.villena@chileagil.cl Principios
Entorno de un proyecto de Software agustin.villena@chileagil.cl
Armonización ágil del entorno de desarrollo Producto de Software Problema de Negocio Proyecto de Software Ciclo de Gestión del Proyecto Orientada al Valor Ciclo de Gestión del Desarrollo en Equipo Ciclo de Programación de calidad Entorno de un proyecto de software XP lo organiza en ciclos de retroalimentación y aprendizaje acelerado agustin.villena@chileagil.cl
Teamwork Management Cycle Team Development Quality Oriented Incremental Development Cycle Generic Agile Framework Value Oriented Management Cycle agustin.villena@chileagil.cl
Inspirado en el enfoque de gestión de la innovación de productos de Hirotaka Takeuchi and Ikujiro Nonaka, 1986 Sutherland and Schwaber , lo presentan en OOPSLA (1995) Define un conjunto de herramientas de gestión y visualización de avance Metáfora: se requiere abarcar todas las disciplinas requeridas, tal como la formación de scrum del rugby Es una metodología para gestionar desarrollos de productos ¡Cualquier tipo de producto! Scrum (1996) 19-10-2010 agustin.villena@chileagil.cl
Teamwork Management Cycle Burn down Charts Task Board Scrum Master Role Daily Scrum Meeting Sprint Planning Meeting Scrum Agile Framework Value Oriented Management Cycle Release Planning Meeting Release Product Owner Role Development Sprint Retrospective Meeting Scrum Scoreboard Product Backlog Tasks agustin.villena@chileagil.cl
Ken Beck, 1999, “Extreme Programming Explained” Enfoque empírico e integral de un proyecto de software Equipos pequeños que incluyen al cliente Premisa Llevar las buenas prácticas de desarrollo al extremo eXtreme Programming (1998) 19-10-2010 agustin.villena@chileagil.cl
Teamwork Management Cycle Team Development Quality Oriented Incremental Development Cycle Continuous Integration Code 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 Value Oriented Management Cycle Planning Game Acceptance Tests Small Releases On Site Customer (One team) Development Definition Validation User Stories Tasks agustin.villena@chileagil.cl
Se sincroniza el problema de negocio y el desarrollo usando Kanban 看板: “Tarjeta Señal” Se disponen en un tablero que refleja el estado de cada kanban Los estados los define cada equipo A pesar de verse rústica: Enfoca al equipo Presenta rápidamente cuellos de botella Es sencilla y barata Kanban for Software Engineering (2007) 19-10-2010 agustin.villena@chileagil.cl Fuente: http://www.xqa.com.ar/visualmanagement/author/xavier/
Se limita la cantidad de Kanban en proceso, para eliminar cuellos de botella Ej.: No más de 1 kanban en Trabajo en Curso por desarrollador Quien asume la responsabilidad cambia el Kanban de estado (gestión PULL) Se mide lead time: tiempo promedio de un kanban en ser procesado Uso de Kanban 19-10-2010 agustin.villena@chileagil.cl F1 F2 F3 F4 F6 F5 F0 1
… Stage 1 Done Stage 2 Stage n … Work Items Queue In Process Queue In Process Queue In Process Gestión Tradicional Push Scheduling Fuente: Lean & kanban 101 http://availagility.wordpress.com/2009/06/11/zurich-lean-agile-scrum-slides/
… Stage 1 Done Stage 2 Stage n … Work Items Queue In Process Queue In Process Queue In Process Gestión Kanban Pull Scheduling Fuente: Lean & kanban 101 http://availagility.wordpress.com/2009/06/11/zurich-lean-agile-scrum-slides/
Desafío Kanban http://www.chileagil.cl/desafio-kanban-primer-paso-hacia-la-agilidad/ Y superarse
Manifiesto sale a la luz Marzo de 2009 Busca devolver la excelencia técnica al rango de pilar del movimiento ágil Los nuevos chicos del barrio Software Craftmanship http://manifesto.softwarecraftsmanship.org/ 19-10-2010 agustin.villena@chileagil.cl
Steve Blank Get out of the building! Good engineers understand their customers! Eric Ries Stop wasting people’s time! Lean Startup Más allá del desarrollo de software 19-10-2010 agustin.villena@chileagil.cl
1 de cada 1000 emprendimientos funciona Sólo el 20% de los fracasos se deben a razones técnicas => Hay que enfocarse en validar y desarrollar el mercado ¡Cuestiona tus suposiciones! ¡Valídalas en la realidad! Startup = experimento Lean Startup + experimentos (y aprendizaje) x dólar Customer Development 19-10-2010 agustin.villena@chileagil.cl
Waterfall Requerimientos Especificación Diseño Implementación Verificación Problema: Solucion: Desarrollo de Producto Tradicional Medida de Progreso: Avance a la siguiente Etapa agustin.villena@chileagil.cl conocido conocida Fuente: Eric Ries - Lean Startups Doing More with Less http://assets.en.oreilly.com/1/event/30/Lean%20Startups_%20Doing%20More%20with%20Less%20Presentation.pptx Mantención
Problema: Solución: “Product Owner” or cliente in situ Desarrollo Ágil de Productos Medida de Progreso: Funcionalidad Validada por el Cliente agustin.villena@chileagil.cl conocido desconocida Fuente: Eric Ries - Lean Startups Doing More with Less http://assets.en.oreilly.com/1/event/30/Lean%20Startups_%20Doing%20More%20with%20Less%20Presentation.pptx
Problema: Solución: Desarrollo de Cliente Hipótesis, Experimentos, Revelaciones Datos, Retroalimentación, Revelaciones Desarrollo de Producto en una Innovación Ágil Medidad de Progreso: Aprendizaje Validado acerca de los Clientes ($$$) agustin.villena@chileagil.cl desconocido desconocida Fuente: Eric Ries - Lean Startups Doing More with Less http://assets.en.oreilly.com/1/event/30/Lean%20Startups_%20Doing%20More%20with%20Less%20Presentation.pptx
4 Principios Ágiles 5 Valores de XP 2003 - 7 Principios Lean 16 Principios de XP 2009 – Lean Startup Simbología El stack ágil 19-10-2010 agustin.villena@chileagil.cl Ciclo de Gestión de Valor Ciclo de Gestión de Trabajo en Equipo Ciclo de Desarrollo Incremental de Calidad Maestría en el Software (Software Craftmanship) 2008 2007- Kanban for Software Engineering 1996 - Prácticas de Scrum 1998 - Prácticas de eXtreme Programming Desarrollo de Clientes
Blog: www.chileagil.cl Twitter: www.twitter.com/agustinvillena www.twitter.com/chileagil Podcast: www.chileagil.cl/tag/podcast Foro de la comunidad groups.google.com/group/chileagil Recursos 19-10-2010 agustin.villena@chileagil.cl www.chileagil.cl
Preguntas … avillena@dcc.uchile.cl
El desarrollo de software es una actividad humana Es afectada por la motivación, creencias y los instintos de las personas Valores Comunes: son los que permiten que las personas trabajen por el beneficio común antes que el propio Sincronizando a las personas Valores de XP agustin.villena@chileagil.cl
Reglas que orientan la toma de decisiones Comunicación abierta y honesta Enseñar a aprender Trabajar con los instintos de las personas Siempre asumir simplicidad Viajar con equipaje: poco, simple y valioso Cambios paso a paso Adaptar de XP a la realidad local Jugar a ganar Responsabilidad aceptada (antes que asignada) Trabajo de Calidad Atacar los problemas urgentes, dejando la mayor cantidad de opciones abiertas Retroalimentación Rápida (favorece el aprendizaje) Medir honestamente Experimentos concretos Sincronizando a las personas Principios de XP agustin.villena@chileagil.cl
Deming’s 14 points 19-10-2010 agustin.villena@chileagil.cl
| URL: |
No comments posted yet
Comments