iridis group metodologías Ágiles - unsl crystal claudio ochoa - patricio maller

37
Metodologías Ágiles - UNSL iridis group Crystal Claudio Ochoa - Patricio Maller

Upload: eduardo-parrilla

Post on 28-Jan-2016

230 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Crystal

Claudio Ochoa - Patricio Maller

Page 2: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Metodologías

• Por “metodología” se entiende generalmente “TODO acerca de cómo una organización produce y entrega sistemas: quien,

que, cuando....

• La metodología óptima varía ente proyectos• La elección de una metodología depende de

– Tamaño del equipo– Criticalidad– Prioridades

Page 3: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Componentes de una metodología

• Métodos y técnicas• Tamaño: Número de elementos de control (entregables,

standards, actividades, métricas, etc…)• Densidad: detalle y consistencia, nivel de adherencia• Tamaño del equipo• Tamaño del problema

Page 4: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Tópicos

Page 5: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Alcance

• Ciclo de vida• Roles• Actividades

Page 6: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Alcance

Page 7: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Alcance de una metodología

• Algunas metodologías cubren todos los procesos organizacionales (Big M)

• Otras solo cubren tareas de desarrollo (Small M)

Page 8: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Principio (1)

Cuanto mas gente involucrada, mayor la metodología requerida– Mas gente, mas coordinación– M mas grandes contienen mas elementos– Una metodologia “m” probablemente no resulte para

un equipo grande– M grandes no necesitan ser usadas en equipos

pequeños

Page 9: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Principios (2)

Mayor visibilidad en la correctitud (densidad) es necesaria en proyectos de mayor criticalidad– Niveles de criticalidad

• Incomodidad• Pérdidas leves ($) • Pérdidas graves ($)• Pérdida de vidas

Page 10: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Comparación de densidades

• Aplicación para generar números de Quiniela vs. Control de un tomógrafo

• Ambos equipos de desarrollo usan Use Cases• El primer team podría utilizar unas pocas oraciones en

tarjetas• El segundo, debería respetar rigurosamente la

definición de UML, usar alguna herramienta, configuration management riguroso, revisiones, contratos....

Page 11: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Principios (3)

Ala relación entre tamaño de la metodología y el costo de implementarla es exponencial– Algunas veces es necesario pagar el costo– Costos:

• Tracking, coordinación• Consistencia en documentación• Revisiones rigurosas

Page 12: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Relaciones

• Tamaño de M y tamaño de proyecto forman un feedback loop positivo– Menos gente, menos M, mas productividad, aplicaciones mas

grandes• Mas gente necesita mas coordinación -> Mas M

– M mayores, menor productividad, mas gente, mas M, hasta alcanzar un punto fijo

• Límite practico para el tamaño/criticalidad que una metodología dada puede atacar

Page 13: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Tamaño vs. Staffing

Page 14: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Principios (4)

La comunicación mas eficiente es cara-a-cara con alguna ayuda visual (pizarrón)– Cuanto mas grande una M, mas dificil

mantener comunicación cara a cara

Page 15: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Eficiencia/Efectividad de los medios

Page 16: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Prioridades del proyecto

– Time to market– Libre de defectos– Visibilidad en el proceso

• Difenetes prioridades, diferentes M óptimas

Page 17: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

La M adecuada

– Clean Room optimiza la correctitud– TSP (Humphreys) optimiza predictibilidad– XP optimiza productividad/costos– Crystal optimiza productividad y tolerancia– ASD optimiza la recepción de cambios

Page 18: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Miedos

• “Las metodologías se basan en miedos” [Beck]• El tamaño de la M se correlaciona con los riesgos• M se “tailoriza” con los miedos colectivos del equipo

Page 19: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Topología de Metodologías

Page 20: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Topología de Metodologías

El tamaño del proyecto crece en el eje X

Proyectos mas críticos en el eje Y

Page 21: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Ajustes On-the-fly

• Una metodología para cada proyecto• La ubicación inicial del proyecto es solo una estimación• Entegas incrementales ayudan a cambiar de ubicación un proyecto

Page 22: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Resumen

• M tienen roloes, habilidades, actividades, técnicas, herramientas, entregables, estándares, métricas...

• Varias metodologías pueden ser apropiadas• Factores de la elección: tamaño, criticalidad, prioridades

Page 23: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Resumen: Principios

1. M mas grandes para equipos mas grandes2. M mas densas para proyectos mas críticos3. M mas grandes implican mayores costos (operativos)

Page 24: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Factores humanos

• Comunicación sensitiva a tiempo y modalidad • Inconsistencia

Page 25: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Metodologías Just-in-Time

• Tailoring• Tratar de preservar las caracteristicas mas ágiles• Considerar las carácterísticas humanas locales

Page 26: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Crystal

• Principio: Comunicación y entregables “livianos”• Graduación por criticalidad• Graduación por tamaño del equipo• Código de colores

Page 27: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Crystal Family

Crystal/Clear es el área mas similar a XP

Page 28: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Crystal Orange

• Proyectos medianos/aplicaciones industriales• 10-40 personas• 1-2 años de duración• Time-to-market es importante• Rotación de personal• No tienen riego de vida

Page 29: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Crystal Orange (D40)

• Un solo lugar físico• Mas estructura y coordinación• sub-equipos• Verificaiones pueden no ser rigurosas• Puede extenderse hasta E50

Page 30: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Crystal Orange (D40)

• Roles: sponsor, business expert, usage expert, tech facilitator, business analyst/designer, project manager, architect, design mentor, designer/programmer, lead designer/programmer, reuse point, writer, tester, UI designer

• Equipos de planeamiento, monitoreo, arquitectura, infraestructura, testing• Poíticas y estándares: SQA, milestones, testing automatizado (regresion)• Las políticas deben respetarse, pero las implementaciones pueden variar

Page 31: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Crystal Orange (D40)

• Entregables: requirements doc, release sequence, schedule, status reports, UI design doc, common object model, inter-team specs, user manual, source code, test cases.

• Los entregables son suficientemente detallados para permitir comunicación (sin otros medios) dentro del equipo. Peer reviews.

• Templates

Page 32: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Crystal Clear (C6, D6)

• 6 personas, un espacio compartido• Sin subteams• Menos coordinación• Puede usarse hasta E08

Page 33: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Crystal Clear (C6, D6)

• Un solo equipo

• Roles : sponsor, senior designer, designer/programmer, user (at least part-time)

• Los roles se distribuyen entre los miembros del equipo

• También hay políticas

Page 34: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Crystal Clear (C6, D6)

• Entregables: release sequence; schedule of user viewings and deliveries; annotated use cases; design sketches and notes; screen drafts; common object model; running code; test cases; user manual.

l• Templates, estándares de codificación, estándares de UI

• Los miembros del equipo tienen cierta discrecionalidad en las técnicas que aplican

Page 35: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

XP vs. Crystal Clear

• XP es un miembro válido de la familia Crystal Clear• Ambos tienen

– Entregas frecuentes– Foco en comunicación– Compromiso del usuario/cliente– Test de regresión automático– Preocupación por la motivación

Page 36: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

XP vs. Crystal Clear

• Diferencia: disciplina y tolerancia• XP spocos entregables y estándares rigurosos

– Estándares de diseño y codificación– Pair programming– 100% unit test pass– El coach es necesario para mantener la disciplina

Page 37: Iridis group Metodologías Ágiles - UNSL Crystal Claudio Ochoa - Patricio Maller

Metodologías Ágiles - UNSLiridis group

Just-in-time M Tuning

• Obtener información histórica (aunque sea por entrevistas)• Seleccionar un metodología del M-space• Durante el primer incremento

– Post mortems– Cambiar lo que no funciona

• Luego de cada incremento– Team workshop– Definir best practices, oportunidades de mejora