Prácticas Ágiles en entornos hostiles  Parte 2: De lo prescriptivo a lo adaptativo Licenciado bajo: Creative Commons 2.5 B...
Advertencia! <ul><li>Estos slides han sido elaborados como apoyo a una charla iniciada en Acis, como tal, reflejan muchas ...
Agenda <ul><li>Agilidad – Manifiesto Ágil
Procesos Ágiles
eXtreme Programming
Scrum
Lean
Kanban
El Universo Ágil </li></ul>
We are uncovering better ways of developing software by doing it and helping others do it.
Agilidad – Manifiesto Ágil <ul><li>Estamos poniendo al descubierto mejores métodos para desarrollar software, haciéndolo y...
El  software que funciona , por encima de la documentación exhaustiva.
La  colaboración con el cliente , por encima de la negociación contractual.
La  respuesta al cambio , por encima del seguimiento de un plan. </li></ul><li>Aunque hay valor en los elementos de la der...
Agilidad – Principios Ágiles (1/2) <ul><li>Nuestra principal  prioridad  es  satisfacer al cliente  a través de la  entreg...
Son   bienvenidos   los  requisitos cambiantes , incluso si llegan tarde al desarrollo. Los procesos ágiles se doblegan al...
Entregar con frecuencia  software que funcione , en periodos de un par de semanas hasta un par de meses, con preferencia e...
Las personas del  negocio  y los  desarrolladores  deben  trabajar juntos  de forma cotidiana a través del proyecto.
Construcción de proyectos en torno a   individuos motivados , dándoles la oportunidad y el respaldo que necesitan y procur...
La forma más eficiente y efectiva de comunicar información de ida y vuelta dentro de un equipo de desarrollo es mediante l...
Agilidad – Principios Ágiles (2/2) <ul><li>El  software que funciona  es la principal  medida del progreso .
Los procesos ágiles  promueven el  desarrollo sostenido . Los patrocinadores, desarrolladores y usuarios deben mantener un...
La atención continua a la  excelencia técnica  enaltece la agilidad.
La  simplicidad  como arte de maximizar la cantidad de trabajo que no se hace , es esencial.
Las mejores arquitecturas, requisitos y diseños emergen de   equipos que se auto-organizan .
En intervalos regulares, el  equipo   reflexiona  sobre la forma de ser más  efectivo  y ajusta su conducta  en consecuenc...
Agilidad – Que és un Proceso Ágil? <ul><li>Qué NO es un Proceso Ágil: </li><ul><li>Un proceso rápido y libre
No necesita requerimientos o diseño (documentación, revisión, aprobación, etc).
Requiere pocas pruebas unitarias.
Upcoming SlideShare
Loading in...5
×

Prácticas Ágiles en entornos hostiles de desarrollo (Parte 2)

1,760

Published on

Parte2: De lo prescriptivo a lo adaptativo
Agilidad / Manifiesto Ágil / Métodos Ágiles vs Rup / eXtreme Programming / Scrum / Métodos Ágiles / El Universo Ágil / Retrospectiva.

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,760
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide
  • Lean Dev v1 YAGNI,KISS XP: YAGNI: You aren&apos;t gonna need it
  • 1989 - Ooram: OO rol analysis Method. (precursor a UML) Inicio con BabyUML pero migró a Baby IDE porque estaba por fuera de la herencia de UML. BabyIDE: Es un entorno de desarrollo que permite visualizar cómo la aplicación utiliza el DCI. V1.0 BabyIDE: Construida sin aplicar el DCI, (código no legible). V2.0 BabyIDE: Aplicando DCI (claridad en el código)
  • Transcript of "Prácticas Ágiles en entornos hostiles de desarrollo (Parte 2)"

    1. 1. Prácticas Ágiles en entornos hostiles Parte 2: De lo prescriptivo a lo adaptativo Licenciado bajo: Creative Commons 2.5 Bogotá / Colombia Luis Raul Mulato [email_address]
    2. 2. Advertencia! <ul><li>Estos slides han sido elaborados como apoyo a una charla iniciada en Acis, como tal, reflejan muchas de mis opiniones, que fuera de contexto de la charla pueden ser mal interpretadas. No tienen la intención de documentar, detallar ó aclarar los temas mencionados, tan solo servir de apoyo en algunos aspectos relevantes al tema en cuestión. </li></ul>Luis M.
    3. 3. Agenda <ul><li>Agilidad – Manifiesto Ágil
    4. 4. Procesos Ágiles
    5. 5. eXtreme Programming
    6. 6. Scrum
    7. 7. Lean
    8. 8. Kanban
    9. 9. El Universo Ágil </li></ul>
    10. 10. We are uncovering better ways of developing software by doing it and helping others do it.
    11. 11. Agilidad – Manifiesto Ágil <ul><li>Estamos poniendo al descubierto mejores métodos para desarrollar software, haciéndolo y ayudando a otros a que lo hagan. Con este trabajo hemos llegado a valorar: </li><ul><li>A los individuos y su interacción , por encima de los procesos y las herramientas.
    12. 12. El software que funciona , por encima de la documentación exhaustiva.
    13. 13. La colaboración con el cliente , por encima de la negociación contractual.
    14. 14. La respuesta al cambio , por encima del seguimiento de un plan. </li></ul><li>Aunque hay valor en los elementos de la derecha, valoramos más los de la izquierda. </li></ul>Wikipedia: http://es.wikipedia.org/wiki/Manifiesto_ágil
    15. 15. Agilidad – Principios Ágiles (1/2) <ul><li>Nuestra principal prioridad es satisfacer al cliente a través de la entrega temprana y continua de software de valor .
    16. 16. Son bienvenidos los requisitos cambiantes , incluso si llegan tarde al desarrollo. Los procesos ágiles se doblegan al cambio como ventaja competitiva para el cliente.
    17. 17. Entregar con frecuencia software que funcione , en periodos de un par de semanas hasta un par de meses, con preferencia en los periodos breves.
    18. 18. Las personas del negocio y los desarrolladores deben trabajar juntos de forma cotidiana a través del proyecto.
    19. 19. Construcción de proyectos en torno a individuos motivados , dándoles la oportunidad y el respaldo que necesitan y procurándoles confianza para que realicen la tarea.
    20. 20. La forma más eficiente y efectiva de comunicar información de ida y vuelta dentro de un equipo de desarrollo es mediante la conversación cara a cara . </li></ul>
    21. 21. Agilidad – Principios Ágiles (2/2) <ul><li>El software que funciona es la principal medida del progreso .
    22. 22. Los procesos ágiles promueven el desarrollo sostenido . Los patrocinadores, desarrolladores y usuarios deben mantener un ritmo constante de forma indefinida.
    23. 23. La atención continua a la excelencia técnica enaltece la agilidad.
    24. 24. La simplicidad como arte de maximizar la cantidad de trabajo que no se hace , es esencial.
    25. 25. Las mejores arquitecturas, requisitos y diseños emergen de equipos que se auto-organizan .
    26. 26. En intervalos regulares, el equipo reflexiona sobre la forma de ser más efectivo y ajusta su conducta en consecuencia </li></ul>
    27. 27. Agilidad – Que és un Proceso Ágil? <ul><li>Qué NO es un Proceso Ágil: </li><ul><li>Un proceso rápido y libre
    28. 28. No necesita requerimientos o diseño (documentación, revisión, aprobación, etc).
    29. 29. Requiere pocas pruebas unitarias.
    30. 30. No requiere proceso de QA.
    31. 31. No requiere Admin del Cambio y Control de versiones.
    32. 32. No requiere trazabilidad y auditoria </li></ul></ul>
    33. 33. Métodos Ágiles vs RUP <ul><li>Tipos de procesos: </li><ul><li>Prescriptivos (Mandatorios): Más reglas para seguir. </li><ul><li>100% prescriptivo significa que no necesitas pensar para hacer las cosas pues hay una regla para todo. </li></ul><li>Adaptativos: Pocas reglas para seguir. </li><ul><li>100% adaptativo significa “haga lo que quiera”, no hay reglas ni restricciones. </li></ul></ul><li>Como vemos los dos extremos son totalmente absurdos en la práctica. </li></ul>Kanban vs Scrum [1]
    34. 34. Procesos de Desarrollo Predictivos Adaptativos: Prescriptivos: [2] Agile Tales of creative customer collaboration
    35. 35. Métodos Ágiles vs RUP <ul><li>RUP>XP>Scrum>Kanban </li><ul><li>RUP: 30 roles, 20 actividades, 70 artefactos </li></ul></ul>Kanban vs Scrum [1]
    36. 36. Métodos Agiles <ul><li>XP
    37. 37. Scrum
    38. 38. Lean
    39. 39. Kanban
    40. 40. ... </li></ul>
    41. 41. eXtreme Programming [2] Extreme Programmin Rules
    42. 42. Scrum [3] An introduction to Scrum [4] Scrum Alliance
    43. 43. Scrum [5] The Classic history of the Pig and Chicken
    44. 44. Scrum <ul><li>Roles: </li><ul><li>Product Owner
    45. 45. Scrum Master (facilitador)
    46. 46. Team </li></ul><li>Método: </li><ul><li>Daily meeting
    47. 47. Scrum de Scrum
    48. 48. Spring planning meeting
    49. 49. Spring review meeting
    50. 50. Spring retrospective </li></ul></ul><ul><li>Documentos: </li><ul><li>Product backlog
    51. 51. Spring backlog
    52. 52. Burn down chart </li></ul><li>Valores: </li><ul><li>Empowerment y compromiso de las personas
    53. 53. Foco en desarrollar lo comprometido
    54. 54. Transparencia y visibilidad del proyecto
    55. 55. Respeto entre las personas
    56. 56. Coraje y responsabilidad </li></ul></ul>
    57. 57. Métodos Ágiles - Lean <ul><li>Principios: </li><ul><li>Eliminar el desperdicio (lo que no agrega valor)
    58. 58. Construir con calidad (Inspecciones, TDD)
    59. 59. Hacerlo bien la primera vez (YAGNI,KISS, Refactoring)
    60. 60. Crear conocimiento (KDB: Proceso, Negocio, Colaboración)
    61. 61. Postergar compromiso (Postergue las decisiones tanto como sea posible, hasta que puedan ser tomadas sobre hechos y no sobre supuestos y predicciones)
    62. 62. Entregas rápidas (Alta calidad, bajo costo)
    63. 63. Repetar a las personas (Líderes, Expertos,Desarrolladores, Clientes...)
    64. 64. Optimizar el todo (Piense en grande, actue en pequeño, falle rápido, aprenda rápido) </li></ul></ul>[6] Lean Principles
    65. 65. Kanban (1/4) [7] One day in the Kanban
    66. 66. Kanban (2/4)
    67. 67. Kanban (3/4)
    68. 68. Kanban (4/4)
    69. 69. El Universo Ágil <ul><li>Prácticas: </li><ul><li>Test Driven Development (TDD)
    70. 70. Behavior Driven Development (BDD)
    71. 71. Continuous Integration
    72. 72. Pair Programming
    73. 73. Planning poker
    74. 74. ... </li></ul></ul>
    75. 75. El Universo Ágil <ul><li>Otros métodos: </li><ul><li>Agile Unified Process (AUP) [8]
    76. 76. Open UP [9]
    77. 77. Ess UP [10]
    78. 78. Feature Driven Development (FDD) [11]
    79. 79. Lean Software Development [12]
    80. 80. Agile Modeling [13]
    81. 81. Dynamic System Development Method (DSDM) [14] </li></ul></ul>
    82. 82. Procesos Ágiles <ul><li>Retrospectiva: </li></ul>[7] Scrum The Silver Bullet [NOT]
    83. 83. Procesos Ágiles <ul><li>Retrospectiva: </li><ul><li>El “mejor método” es el que logre adaptar su equipo a la situación específica del proyecto: negocio/equipo/clientes/stakeholders.
    84. 84. No existen métodos infalibles (silver bullets), ni recetas mágicas , éxiten equipos, clientes, necesidades y restricciones.
    85. 85. Los métodos dependen de la cultura de la organización.
    86. 86. No todo proyecto aplica para Métodos Ágiles.( Tamaño, cultura, disciplina...) </li></ul></ul>
    87. 87. Preguntas?
    88. 88. Recursos Artículos: <ul><li>[1] Henrik Kniberg: Kanban vs Scrum (2009)
    89. 89. [2] Agile Tales of creative customer collaboration: http://www.slideshare.net/cperrone/passionate-teams-cooperative-customers-388318
    90. 90. [2] Extreme Programming Rules : http://www.extremeprogramming.org/rules.html
    91. 91. [3] An introduction to Scrum http://agileculture.net/mmastrasso/2009/03/01/an-introduction-to-scrum/
    92. 92. [4] Scrum Alliance: http://www.scrumalliance.org/
    93. 93. [5] The Classic history of the Pig and Chicken http://www.implementingscrum.com/2006/09/11/the-classic-story-of-the-pig-and-chicken/
    94. 94. [6] Lean Principles: http://en.wikipedia.org/wiki/Lean_software_development
    95. 95. [7] One day in the Kanban: http://blog.crisp.se/henrikkniberg/2009/06/26/1246053060000.html </li></ul>
    96. 96. Recursos Artículos: <ul><li>[8] Agile Unified Process : http://www.ambysoft.com/unifiedprocess/agileUP.html
    97. 97. [9] Open UP: http://epf.eclipse.org/wikis/openup/index.htm
    98. 98. [10] Ess UP (Essential UP): http://www.ivarjacobson.com/process_improvement_technology/essential_unified_process_software/
    99. 99. [11] Feature Driven Development : http://www.featuredrivendevelopment.com/
    100. 100. [12] Lean Software Institute : http://www.leansoftwareinstitute.com/
    101. 101. [13] Agile Modeling: http://www.agilemodeling.com/
    102. 102. [14] DSDM http://www.dsdm.org/
    103. 103. [7] Scrum The Silver Bullet [NOT] : http://www.implementingscrum.com/cartoons/cartoons_files/ec9c9a515aefbd7a37835d565be8d21a-4.html </li></ul>Recursos Gráficos: <ul><li>Pregunta: http://www.flickr.com/photos/pimkie_fotos/2759061117/ </li></ul>
    104. 104. GRACIAS! Luis R. Mulato [email_address] <ul><li>Scrum Master
    105. 105. Agile Coach, ALM Coach
    106. 106. M.Sc Ingenieria de Sistemas en Construcción de Software / U. de los Andes </li></ul>Ver más información en: http://www.slideshare.net/group/agile-practices Licenciado bajo: Creative Commons 2.5 Bogotá / Colombia Parque Simón Bolivar / Bogotá

    ×