En esta presentación se hace una introducción para alumnos universitarios de los conceptos básicos relacionados con la agilidad. Hablamos un poco de historia, lo valioso que es y lo entretenido que puede ser.
2. Sergio Pola
@sergio_pola
Logos y marcas utilizadas bajo principios de “uso justo”. Todos los derechos reservados por sus dueños.
En esta presentación se usan láminas de otros grandes presentadores. Todas aparecen con
sus créditos correspondientes.
3. David Lay M
@davidlaym
davidlaym.com
Logos y marcas utilizadas bajo principios de “uso justo”. Todos los derechos reservados por sus dueños.
En esta presentación se usan láminas de otros grandes presentadores. Todas aparecen con
sus créditos correspondientes.
7. Respuesta larga
•Cultura de solución a problemas
•Originaria del desarrollo de software
•Basada inicialmente en un manifiesto de
4 principios y 12 prácticas
13. “Los Equipos Ágiles producen un
flujo continuo de valor, con un ritmo
sostenible, al mismo tiempo que se
adaptan a las cambiantes
necesidades del negocio.”
http://testobsessed.com/blog/2010/12/14/the-agile-acid-test/
Lámina de Agustín Villena de su charla “La cultura Ágil, principios, métodos y prácticas”
23. Manifiesto
por el Desarrollo Ágil de Software• Individuos e interacciones sobre procesos y
herramientas
• Software funcionando sobre documentación extensiva
• Colaboración con el cliente sobre negociación
contractual
• Respuesta ante el cambio sobre seguir un plan
24. Manifiesto
por el Desarrollo Ágil de Software
• Entrega temprana y continua de valor
• Aprovechar el cambio como ventaja competitiva
• Cadencia entre dos semanas a dos meses
• Se debe ser capaz de mantener un ritmo constante de forma indefinida
• Negocio y desarrollo trabajan juntos durante todo el proyecto
• Individuos motivados y empoderados
• Equipos auto-organizados
• Excelencia técnica y buen diseño
• Maximizar trabajo no realizado
• Reflexión, auto-corrección y perfeccionamiento
• Conversación cara a cara
• Software funcionando como medida de progreso
25. Lo que se logra
Lámina de Agustín
Villena de su charla
“Desde la gestión
tradicional a la Ágil”
26.
27. Lámina de Agustín Villena de su charla “Desde la gestión tradicional a la Ágil”
https://www.youtube.com/watch?v=mev0UYOGOBE
La Historia de Lean y Agile:
Desde Deming hasta Lean Startup
28. Procesos empíricos
• Verificación formal
• Diseño mediante descubrimiento:
experimentación
• Creatividad
• Retroalimentación temprana y económica
34. Retroalimentación temprana y
económica
• Bret Victor - Creadores necesitan Conexión Inmediata con
lo que están creando
• https://www.youtube.com/watch?v=FYKO27jji4s
35.
36.
37. El desarrollo de software ágil,
es la mejor forma que
conocemos de hacer software.
Me llamo Sergio Pola y estudié Ingeniería Civil en Computación en la Universidad de Chile. Llevo … muchos años en el mundo del desarrollo de software construyendo equipos de alto rendimiento con productos de alto impacto.
Soy parte de ChileÁgil hace …montón de años, es una comunidad que va a cumplir 10 años descubriendo nuevas formas de generar valor continuamente entre todos.
Trabajo en ilógica, una agencia digital, en donde me desempeño principalmente como desarrollador web, pero mis responsabilidades son con todo el producto, no solo el código.
La pregunta era…. ¿Qué es eso de la Agilidad?
Me llamo David Lay, soy un ingeniero de software de la UNAB, egresado el 2009 y tengo más de 11 años de experiencia programando. Pretendo jubilar siendo programador, si es aun es algo que se hace en esos tiempos.
Soy parte de ChileÁgil hace 7 años, es una comunidad que va a cumplir 10 años descubriendo nuevas formas de generar valor continuamente entre todos.
Trabajo en ilógica, una agencia digital, en donde me desempeño principalmente como desarrollador web, pero mis responsabilidades son con todo el producto, no solo el código.
La pregunta era…. ¿Qué es eso de la Agilidad?
Meta modelo: Un modelo que genera modelos
Procesos empíricos: procesos que están definidos de manera imperfecta y generan resultados impredecibles e irrepetibles
El resto de la presentación es la respuesta larga, pero se puede resumir en lo que sigue:
La aglidad es una cultura de solución de problemas basada originalmente en 4 principios y 12 prácticas, que nace desde el desarrollo de software, pero que se ha nutrido de muchas otras áreas durante los años y hoy se puede aplicar a toda área del trabajo del conocimiento.
Problemas que me permiten volver al estándar y los que me permiten mejorar el estándar
A partir de esta cultura nacen metodologías, técnicas y herramientas que pueden ser aplicadas en distintos contextos dependiendo de las necesidades de cada equipo o problema.Esta cultura se basa en la iteración, la experimentación, la validación constante y la excelencia técnica.
En el primer caso, a menos que seas Gokú o saltes como basquetbolista es difícil llegar a B
Para la física el trabajo es el mismo, pero para nosotros no
La aglidad es una cultura de solución de problemas basada originalmente en 4 principios y 12 prácticas, que nace desde el desarrollo de software, pero que se ha nutrido de muchas otras áreas durante los años y hoy se puede aplicar a toda área del trabajo del conocimiento. A partir de esta cultura nacen metodologías, técnicas y herramientas que pueden ser aplicadas en distintos contextos dependiendo de las necesidades de cada equipo o problema.Esta cultura se basa en la iteración, la experimentación, la validación constante y la excelencia técnica.
Hoy desarrollo de software agil, es simplemente desarrollo de software.
“Equipos Ágiles producen un flujo continuo de valor, con un ritmo sostenible, al mismo tiempo que se adaptan a las cambiantes necesidades del negocio.”
La agilidad nació en reacción a algo muy malo que estaba pasando. El desarrollo de software se veía de la siguiente manera:
Modelo de procesos definidos: Implica que se debe conocer completamente la solución antes de empezar. Un modelo definido puede ser iniciado y llevado a completitud con los mismos resultados cada vez.
En el modelo de cascada, uno choca con la realidad cuando ya no queda tiempo. Se comienza a “aprender” una vez se lanza el proyecto. Este es el origen de los atrasos, re-diseños, etc.
Muchas empresas saben esto y hoy en día usan este modelo para aprovecharse de los clientes, vendiendo un proyecto inicial muy barato pero luego cobrando cifras altísimas por cambio en especificaciones, rediseños o cosas no especificadas al inicio. Este comportamiento es anti ético y nos daña a todos los profesionales del área.
La mayoría de los proyectos estaba fallando rotundamente, saliéndose de presupuesto, fallando en las fechas de entrega o no cumpliendo con las expectativas de los clientes.
Era muy común que quienes tomaron requerimientos no estaban para el momento de hacer las implementaciones en caso de haber dudas. Se concebía que los documentos eran escenciales para la comunicación, pero la verdad es que nadie los leía o quedaban rápidamente obsoletos sin actualizaciones.
Ingeniería -> diseño -> trabajador -> producto. Esto nunca funcionó. Los “programadores” tenían que siempre ajustar el diseño.
Este paralelo refleja lo desconectado de la realidad que está la ingeniería en informática (o de desarrollo de software) que nos han enseñado.
La ingeniería en informática (o de software) es una caricatura, basada en una idea completamente desconectada de la realidad.
Waterfall fue una herramienta de promoción para el movimiento de "ingeniería en informática”, en una agenda de creación de institutos, academias y certificaciones, cuando se hacían las primeras conferencias internacionales.
Esta agenda política retrasó considerablemente el desarrollo de prácticas reales basadas en las necesidades de la profesión.
El problema con este modelo, es que si los programadores ajustaban el diseño, esto quiere decir que ellos eran los diseñadores. Además el código fuente no era el producto entregable, es solo un documento. Lo entregable es el software funcionando.
¿Qué es lo que construye entonces?....
El compilador. Es instantáneo y rápido.
¿Qué es lo más caro del proceso de arriba?
- la construcción
¿Qué es lo más económico del proceso de abajo?
- la construcción.
Esta inversión en los modelos de costo nos indica que son disciplinas completamente distintas. Si queremos realmente aplicar eficacia en el uso de recursos, tenemos que ajustar nuestro proceso
Scrum: 1996
XP: 1999
Manifiesto: 2001
Estamos descubriendo formas mejores de desarrollarsoftware tanto por nuestra propia experiencia comoayudando a terceros. A través de este trabajo hemosaprendido a valorar
Esto es, aunque valoramos los elementos de la derecha,valoramos más los de la izquierda.
En un modelo agil se opta por aprender lo antes posible para reducir el riesgo. Esto implica sacar producto a producción cuando aun está en desarrollo. La modularización y etapas de prueba son claves.
Pero no solo se gana reducción de riesgo y retoro de inversión anticipado, sino que se gana oportunidad de mejora al poder iterar en el camino.
En Chile pasó algo especial. Muchas empresas no tenían procesos, ni siquiera procesos en cascada. Esto derivó en que se crearon empresas que adoptaron agilidad desde el inicio incluso cuando aun no estaba completamente entendida y las otras que comenzaron a adoptar cascada cuando se sabía que era malo.
Obviamente, el gobierno aun no se entera, aun usa modelos de licitaciones de bases cerradas (ie: documentos de requerimiento gigantes).
Certificaciones e intentos de capturar clientes para empresas que solo existen para validar procesos.
Lean SD: 2003
Kanban: 2007
Los niños son los mejores emprendedores y con una capacidad creativa enorme
Hasta donde sabemos, nunca va a haber una forma correcta de hacer software (o una forma perfecta), pero sabemos definitivamente que lo que se hacía antes (y probablemente lo que hoy les enseñan) está profundamente equivocado.