Gestión Ágil de Proyectos – Parte 2
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Gestión Ágil de Proyectos – Parte 2
EL MANIFIESTO ÁGIL
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 1
Gestión Ágil de Proyectos – Parte 2
www.agilemanifesto.org – El manifiesto ágil es el compromiso público de 17 profesionales, expertos en el desarrollo de software, de buscar nuevas y mejores formas de desarrollar software poniendo énfasis en las personas y sus interacciones, la colaboración y la respuesta continua al cambio, explorando nuevas formas de hacer las cosas, y compartiendo experiencias — dando origen a una nueva comunidad de profesionales que explora sistemáticamente nuevas alternativas frente al modo tradicional de desarrollar software. Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 2
Gestión Ágil de Proyectos – Parte 2
PRINCIPIOS Se basa en estos 4 principios: – Valorar a los individuos y su interacción (desarrolladores y clientes), por encima de los procesos y las herramientas. – Desarrollar 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 ante el cambio, por encima del seguimiento de un plan Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 3
Gestión Ágil de Proyectos – Parte 2
PRINCIPIOS ÁGILES APLICADOS A LA GESTIÓN DE PROYECTOS Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 4
Gestión Ágil de Proyectos – Parte 2
PRINCIPIOS ÁGILES (I) 1. 2.
3.
4. 5. 6.
Nuestra mayor prioridad es satisfacer al cliente mediante la entrega temprana y continua de software con valor. Aceptar que los requisitos cambien, incluso en etapas tardías del desarrollo. Los procesos Ágiles aprovechan el cambio para proporcionar ventaja competitiva* al cliente. Entregamos software funcional frecuentemente, entre dos semanas y dos meses, con preferencia al periodo de tiempo más corto posible. Los responsables de negocio y los desarrolladores trabajamos juntos de forma cotidiana durante todo el proyecto. El dialogo es la mejor forma para transmitir la información dentro del equipo. Los proyectos se desarrollan en torno a individuos motivados. Hay que darles el entorno y el apoyo que necesitan, y confiarles la ejecución del trabajo.
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 5
Gestión Ágil de Proyectos – Parte 2
PRINCIPIOS ÁGILES (II) 7. 8.
El software funcionando es la medida principal de progreso. Los procesos ágiles promueven el desarrollo sostenible*. Los promotores, desarrolladores y usuarios debemos ser capaces de mantener un ritmo constante de forma indefinida. 9. La atención continua a la excelencia técnica y al buen diseño mejora la Agilidad. 10. La simplicidad, o el arte de maximizar la cantidad de trabajo no realizado, es esencial. 11. Las mejores arquitecturas, requisitos y diseños emergen de equipos auto-organizados. 12. A intervalos regulares el equipo reflexiona sobre cómo ser más efectivo para a continuación ajustar y perfeccionar su comportamiento en consecuencia (feedback).
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 6
Gestión Ágil de Proyectos – Parte 2
ENFOQUE DE GESTIÓN Y APLICACIÓN DE LAS METODOLOGÍAS ÁGILES Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 7
Gestión Ágil de Proyectos – Parte 2
OBJETIVOS • Las metodologías ágiles intentan evitar los largos caminos de los métodos tradicionales, en ocasiones, excesivamente burocráticos • Ponen el foco en: – la gente y – los resultados (añadir valor)
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 8
Gestión Ágil de Proyectos – Parte 2
CARACTERÍSTICAS • Iteraciones:
– Ciclos propios completos – Objetivo: Avanzar en el PMV (producto mínimo viable)
• Son “adaptables” en lugar de “predictivos” • priorización de las tareas por parte del equipo • Promueve la creatividad • Trabajo en equipo Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 9
Gestión Ágil de Proyectos – Parte 2
CARACTERÍSTICAS • Desarrollo incremental • Menores costes y mayores resultados • Implican al cliente – mayor valor agregado • Aceptación real del cambio (dan por hecho que siempre van a existir cambios en los requisitos)
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 10
Gestión Ágil de Proyectos – Parte 2
CUANDO, CÓMO Y PORQUÉ APLICARLAS • La gestión ágil de proyectos es necesaria como respuesta a los mercados actuales ya que tiene como objetivos dar garantías a las cuatro demandas principales de la industria en la que se ha generado – – – –
Valor, Reducción del tiempo de desarrollo, Agilidad Fiabilidad
• dando el mayor valor posible al producto/servicio en referencia al mercado sobre el que se trabaja, adaptando el curso del desarrollo a la evolución de los requisitos y a las circunstancias del entorno.
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 11
Gestión Ágil de Proyectos – Parte 2
CUANDO, CÓMO Y PORQUÉ APLICARLAS
• Entregas incrementales del producto o del proyecto (para que genere beneficios y retornos positivos desde el principio del proyecto y no solo al final) • Cono de incertidumbre • Brindan visibilidad y transparencia: facilita las áreas de mejora y un marco de trabajo de mejora continua. • Equipos pequeños • Mejor manejo de riesgos e incertidumbres • Mejora de la productividad Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 12
Gestión Ágil de Proyectos – Parte 2
FACTORES DE ÉXITO Factor
Discriminadores ágiles
Discriminadores formales
Tamaño
Dependencia y escalabilidad limitada por el porcentaje alto de conocimiento tácito. Apropiado para equipos y productos pequeños.
Escalabilidad y conocimiento explícito. Apropiado para productos y equipos grandes. Duro de mantener en pequeños proyectos.
Criticidad
La simplicidad en la documentación y el diseño dificulta los planes de pruebas. No aconsejado para sistemas con niveles de criticidad altos (IEEE 1012)
Rigor de requisitos y diseño adecuados para procesos de pruebas, verificación y validación. Duros de gestionar en proyectos de escasa criticidad
Dinamismo
“Re-factorizar” desde un diseño básico hasta el producto final es un método ideal para entornos dinámicos e in-novadores, pero muy caro por el “re-trabajo” para entornos estables o conocidos
En sistemas estables y conocidos, partir de requisitos completos y diseños detallados permite trazar y seguir un plan completo y “hacerlo bien a la primera”.
Personal
Los métodos de trabajo ágiles requieren una masa crítica de técnicos con niveles de experiencia medios-altos, capaces de comprender y adaptar los métodos y las técnicas empleadas. Más apropiado para culturas de “empowerment” responsabilidad y horquilla de decisión y libertad personal.
Aunque es aconsejable contar con personas expertas en las fases de definición del proyecto, luego pueden ejecutarse con menor masa crítica de expertos.
Cultura
Más apropiado en culturas en las que las personas se sienten seguras con un marco de tareas y responsabilidades bien definido. Adaptado de Barry Bohem y Richard Turner
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 13
Gestión Ágil de Proyectos – Parte 2
DIFERENTES METODOLOGÍAS ÁGILES • Recogen técnicas,
•
•
“buenas prácticas” contrastadas por profesionales reconocidos. Cada una tiene sus características propias y cubre un rango de áreas de procesos más o menos amplio: Tendencia a combinarlas para dar mayor cobertura en el ciclo de vida. Han surgido de entornos reales de desarrollo de software.
Metodologías Ágiles
5. Procesos primarios
6. Procesos de soporte
5.1 Adquisición
6.1 Documentación
5.2 Suministro
6.2 Gestión de la configuración
6.3 Control de calidad
5.3 Operación
6.4 Verificación
6.5 Validación
5.3 Desarrollo 6.6 Reuniones 5.3 Mantenimiento
6.7 Auditoría
6.8 Resolución de problemas
7. Procesos organizacionales 7.1 Gestión
7.2 Infraestructura
7.3 Mejora
7.4 Formación
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 14
Gestión Ágil de Proyectos – Parte 2
DIFERENTES METODOLOGÍAS ÁGILES Metodología Adaptive Software Development Agile Modeling
Acrónimo ASD
Creación Highsmith 2000
AM
Ambler 2002
Crystal Methods
CM
Cockburn 1998
Agile RUP
dX
Dynamic Solutions Delivery Model Evolutionary Project Management Extreme Programming Feature-driven development Lean Development
DSDM
Booch, Martin, Newkirk 1998 Stapleton 1997
Evo
Gilb 1976
XP
Beck 1999
FDD
Microsoft Solutions Framework Rapid Development
MSF
De L¿uP cae& Cn oao d 1998 ro Palmer & Felsing 2002 C dheacreítatem 20o 01s, q Mu are yy ené diteo ckdo eTroam uPonppm Microsoft 1994
RAD
McConnell 1996
Rational Unified Process Scrum
RUP
Kruchten 1996
“Forma de pensar” – Modelo logístico Lineamientos, Disciplinas, Prácticas Survey de técnicas y modelos Proceso unificado
Scrum
Sutherland 1994 Schwaber 1995
“Proceso” (framework de management)
Metodologías Ágiles
LD
en Espiral?
Tipo de modelo Prácticas + Ciclo de vida “Metodología basada en la práctica” “Familia de metodologías” Framework / Disciplina
Framework / Modelo de ciclo de vida Framework adaptativo “Disciplina en prácticas de ingeniería” “Metodología”
Característica Inspirado en sistemas adaptativos complejos Suministra modelado ágil a otros métodos MA con énfasis en modelo de ciclos XP dado vuelta con artefactos RUP Creado por 16 expertos en RAD Primer método ágil existente Método ágil radical Método ágil de diseño y construcción Metodología basada en procesos productivos Framework de desarrollo de soluciones Selección de best practices, no método Método (¿ágil?) con modelado Complemento de otros métodos, ágiles o no
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 15
Gestión Ágil de Proyectos – Parte 2
XP (EXTREME PROGRAMMING) • Fundador: Kent Beck, 1996 (impulsor del manifiesto ágil) • Incluye practicas y recomendaciones muy técnicas (aunque era criticado porque parecía “de vagos”) • Solo se aplica a desarrollo de software • Su objetivo es que los costes del proyecto sean estables en todo el proceso (minimizar riesgos) • A veces se usa como complemento a SCRUM • Diseñada para equipos de no más de 20 personas Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 16
Gestión Ágil de Proyectos – Parte 2
XP (EXTREME PROGRAMMING) • La comprobación continua como fundamento del desarrollo • Diseño disciplinado, con foco a presente no a futuro
• Sistema simple basado en las iteraciones continuas Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 17
Gestión Ágil de Proyectos – Parte 2
LAS 12 PRÁCTICAS XP (I) 1.- Reunión de Planificación 2.- Pequeñas entregas 3.- Pruebas de Aceptación del Cliente 4.- Diseño Simple
5.- Programación “por Parejas” 6.- Desarrollo guiado por las pruebas (TDD)
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 18
Gestión Ágil de Proyectos – Parte 2
LAS 12 PRÁCTICAS XP (II) 7.- Refactorización del código (rehacemos el código para simplificarlo)
8.- Integración continua 9.- Propiedad compartida del código 10.- Estándares de codificación 11.- Metáfora del sistema 12.- Ritmo sostenible
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 19
Gestión Ágil de Proyectos – Parte 2
SIMPLICIDAD
VALORES DE XP
• Solo lo que se necesita para ahora. Nos fijamos en el “presente”, no en el “futuro” • Simplicidad del código fuente Continua refactorización • Simplicidad de la documentación. El código fuente simple es el mejor autodocumentado
COMUNICACIÓN • El cliente se integra en el equipo Detección inmediata de requerimientos que no aportan valor. • Código autodocumentado y simple como la mejor forma de comunicar al equipo.
FEEDBACK rápido y continuo • Opinión inmediata del cliente • Los fallos se localizan pronto • Reajuste continuo
CORAJE • Reparar el error cuando se detecta
RESPETO • La refactorización del código y el alto nivel de interacción hace necesario un máximo respeto por las virtudes, defectos y errores de los compañeros. Todos tienen el mismo objetivo: optimizar el código.
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 20
Gestión Ágil de Proyectos – Parte 2
XP – PRÁCTICAS AGRUPADAS Prácticas de codificación • Simplicidad del código y el diseño • Reingeniería continua • Estándares de codificación • Vocabulario común
Prácticas de negocio • El cliente integrado en el equipo • Entregas frecuentes • Ritmo de trabajo sostenible • Planificación en el presente
Practicas de desarrollo • Integración continua • Método de desarrollo basado en pruebas ( reducción de errores) • Propiedad colectiva del desarrollo (equipo) • Programación y trabajo en equipo (parejas)
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 21
Gestión Ágil de Proyectos – Parte 2 PROGRAMADOR
ROLES EN XP
•Diseña, genera el código del sistema y escribe las pruebas unitarias.
CLIENTE •Escribe las historias de usuario y las pruebas funcionales para validar su implementación. Asigna la prioridad a las historias de usuario y decide cuáles se implementan en cada iteración centrándose en aportar el mayor valor a su negocio.
TESTER •Ayuda al cliente a escribir las pruebas funcionales. •Ejecuta pruebas regularmente, difunde los resultados en el equipo y es responsable de las herramientas de soporte para pruebas.
TRACKER •Es el encargado de seguimiento. Proporciona realimentación al equipo. Debe verificar el grado de acierto entre las estimaciones realizadas y el tiempo real dedicado, comunicando los resultados para mejorar futuras estimaciones.
ENTRENADOR (COACH) •Responsable del proceso global. Guía a los miembros del equipo para seguir el proceso correctamente.
CONSULTOR •Es un miembro externo del equipo con un conocimiento específico en algún tema necesario para el proyecto. Ayuda al equipo a resolver un problema específico.
GESTOR (BIG BOSS) •Es el dueño del equipo y el vinculo entre clientes y programadores. Su labor esencial es la coordinación.
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 22
Gestión Ágil de Proyectos – Parte 2
SCRUM* • Scrum es uno de los métodos ágiles más populares en todo el mundo ya que funciona muy bien en situaciones en que las necesidades no están definidas completamente y sabemos que pueden cambiar. • Scrum utiliza un proceso iterativo donde se mantiene cada iteración (también conocido como Sprint) lo más corta posible, manteniendo a un ritmo parejo en el paso por la planificación, la ejecución y la reflexión. • Su éxito ha llevado a extender su aplicación fuera del ámbito del software.
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 23
Gestión Ágil de Proyectos – Parte 2
KANBAN* • Es un método de gestión ágil de proyectos que propone reducir el trabajo en proceso o WIP (Work In Progress) para obtener en el equipo de desarrollo de software un estado de flujo que maximice la productividad del equipo y calidad del software entregado. • Se usa muy unido al paradigma de operaciones JIT (Just In Time) • Permite detectar problemas, impedimentos y • demoras muy rápidamente, estimulando la mejora continua.
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 24
Gestión Ágil de Proyectos – Parte 2
LEAN* • Iniciado por Bob Charette en 1990, se inspira en el éxito del proceso industrial Lean Manufacturing conocido en la producción automotriz y en manufactura desde la década de 1980 • Solo se tienen en cuenta las cosas que añaden valor al producto: su precepto principal es la eliminación de ”residuos” para que el producto salga lo más perfecto posible. Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 25
Gestión Ágil de Proyectos – Parte 2
APLICACIÓN PRÁCTICA
METODOLOGÍAS HÍBRIDAS ENFOQUE PRAGMÁTICO (Ágil puro)
Metodologías Ágiles
ENFOQUE TEÓRICO (Mayor carga de Ingeniería Metodológica)
BUSCAREMOS NUESTRO PROPIO EQUILIBRIO SEGÚN LAS NECESIDADES DEL PROYECTO
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 26
Gestión Ágil de Proyectos – Parte 2
MODELO HÍBRIDO PARA METODOLOGÍAS ÁGILES – Ejemplos de buena aplicación de metodologías híbridas. Si queremos: • Tener un buen control del diseño de los productos o servicios que se sacan al mercado. • Testar el mercado con productos reales realizados de manera rápida. – Para poder probar sin incurrir en muchos costes, – Ser el primero en sacar al mercado un producto o tecnología
• Capacidad de reutilización de diseños y productos. Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 27
Gestión Ágil de Proyectos – Parte 2
METODOLOGÍAS HIBRIDAS Enterprise XP (DSDM + XP) - Mike Griffiths XP@Scrum - Scrum Xbreed (XP+Scrum) - Mike Beedle Industrial XP - Industrial Logic Dispersed Extreme Programming (DXP) - Michael Kircher, Siemens • Dispersed Development - Alan Cameron Wills (MS), FastnLoose - Patrones para desarrollo ágil distribuido • Grizzly (“Large Agile”) - Motorola • Evo+XP, Evo+UP, Evo+Scrum, XP+UP, UP+Scrum • • • • •
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 28
Gestión Ágil de Proyectos – Parte 2
CONCLUSIONES
Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 29
Gestión Ágil de Proyectos – Parte 2
CONCLUSIONES • La confianza es la clave, y para generarla, es fundamental las entregas rápidas y continuas de valor (desarrollo guiado por valor). • El desarrollo de nuevos productos es acelerado y competitivo. • Los contratos legales importan poco en el plano del día a día. Si se colabora, nadie los va a mirar. Si las cosas van mal y recurres a ellos, tienes tal follón, que todo el mundo evitará llegar a juicio. • El product-backlog debe ser una herramienta de colaboración fundamental. Transparencia total. • La visión compartida desde el inicio del proyecto es muy importante. A todos los niveles: riesgos, personas-equipos, expectativas,... es una herramienta muy poderosa. El cliente y el equipo deben tener claro qué implica trabajar con estas metodologías. Metodologías Ágiles
Materiales propiedad de Hito Master Dap. Queda prohibida su reproducción según lo dispuesto en el Código Penal vigente
Nro. 30