Metodologias Agiles

38
Rodrigo Corral Software Architect MVP Team System / CSM [email protected]

description

Metodologias agiles

Transcript of Metodologias Agiles

Page 1: Metodologias Agiles

Rodrigo CorralSoftware ArchitectMVP Team System / [email protected]

Page 2: Metodologias Agiles

Valoramos:

A los individuos y su interacción, por encima de los procesos y las herramientas.

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.

Page 3: Metodologias Agiles

Mejores comunicaciones Cliente, el equipo, otros equipos Se requieren “ejecutables”, se necesita menos

documentación Manejar el cambio constante

Hacerlo un derecho del usuario Iteraciones cortas Gestión más simple y estricta de requerimientos Prácticas para mitigar el riesgo▪ TDD, integración continua, etc..

Mejorar y adaptar el modo de funcionar Dar “valor” pronto, es la prioridad

Desarrollo incremental: KISS, DRY El cliente tiene más responsabilidad

Page 4: Metodologias Agiles

Formar equipo con el cliente Promocionar las comunicaciones

abiertas Trabajar con una visión común La calidad es el negocio de todos,

todos los días Mantenerse ágil, adaptarse a los

cambios Hacer del despliegue un habito Crear un flujo de valor

Page 5: Metodologias Agiles

El cliente decide la calidadOrgullo profesionalEquipo de igualesEntrega frecuenteDeseo de aprenderSer específico prontoCalidad de servicioCiudadanía

Page 6: Metodologias Agiles
Page 7: Metodologias Agiles

Program management – Entrega de la solución: Lograr entregar la solución en tiempo, coste y de acuerdo a las necesidades de los ‘stakeholders’

Architecture – El sistema desde una perspectiva amplia: Servicios, soluciones técnicas, interoperabilidad. Crecimiento futuro.

Development – Solución técnicas: soluciones pensadas, diseño claro, buenas estimaciones detalladas, código de calidad y test unitarios

Test – Calidad de la solución desde el punto de vista del cliente

Release/Operations – Facilidad de despliegue y operación

User experience – Solución más efectiva desde el punto de vista del usuario

Product management – El negocio del cliente: conocer, comprender y comunicar las necesidades de negocio del cliente

Page 8: Metodologias Agiles
Page 9: Metodologias Agiles
Page 10: Metodologias Agiles

Scenario (Escenario)QoS (Calidad de servicio)Bug (Error)Risk (Riesgo)Task (Tarea)

Page 11: Metodologias Agiles

Workstreams: Serie de actividades que ser realizan en un flujo lógico

Activities: Pequeñas tareas que se realizan durante el trabajo. Guía para realizar la división del trabajo en tareas.

Work Products (Productos de trabajo): Archivos, documentos, especificaciones, binarios, etc…. necesarios para completar las actividades y construir el producto.

Page 12: Metodologias Agiles

Calidad frente a velocidadTrabajo no planeadoVelocidadTasa de ErroresReactivaciones Indicadores de calidadTrabajo restante

Page 13: Metodologias Agiles
Page 14: Metodologias Agiles
Page 15: Metodologias Agiles
Page 16: Metodologias Agiles
Page 17: Metodologias Agiles

La velocidad es la clave Aglutina todos los aspectos del

desarrollo Imposible de sesgar Responde las grandes cuestiones▪ ¿Esta terminado ya?▪ ¿Cuánto queda?

Page 18: Metodologias Agiles
Page 19: Metodologias Agiles
Page 20: Metodologias Agiles

MetodologíaMetodología

PlanificaciónPlanificación

Gestión del Gestión del cambiocambio

EstimaciónEstimación DocumentacióDocumentaciónn

HerramientaHerramientass

ProcesosProcesos

ROIROI

EquipoEquipo

ComunicacióComunicaciónn

Involucrar al Involucrar al clientecliente

Testeo Testeo UnitarioUnitario

CalidadCalidad

Gestión de la Gestión de la configuracióconfiguració

nn

Construcción Construcción automatizadautomatizad

aa

ContratosContratos

Gestión de Gestión de requisitosrequisitos

Page 21: Metodologias Agiles

SOCORRO!Gestionar proyectos es dificilGestionar proyectos es dificil

Gestionar proyectos Gestionar proyectos ES ES POSIBLEPOSIBLE

Vengo a animaros a hacerlo… y Vengo a animaros a hacerlo… y comentar mi experienciacomentar mi experiencia

Page 22: Metodologias Agiles

Evitar reinventar la ruedaEvitar reinventar la rueda

Establecer un marco de trabajo claroEstablecer un marco de trabajo claro

Incorporar a nuestra gestión buenas prácticasIncorporar a nuestra gestión buenas prácticas

Page 23: Metodologias Agiles

Simple, de menos a másSimple, de menos a más

Natural para el desarrolladorNatural para el desarrollador

ÁgilÁgil

{SCRUM}{SCRUM}

Page 24: Metodologias Agiles

Soportar la metodología y buenas prácticas en el día Soportar la metodología y buenas prácticas en el día a díaa día

Facilitar la vida de los implicados en el proyectoFacilitar la vida de los implicados en el proyecto

Recolectar y explotar información sin burocrácia Recolectar y explotar información sin burocrácia

Page 25: Metodologias Agiles

Agnóstica respecto a la metodologíaAgnóstica respecto a la metodología

Con soporte para todas las buenas prácticas Con soporte para todas las buenas prácticas comunescomunes

IntegradaIntegrada en el día al día del desarrollador en el día al día del desarrollador

Page 26: Metodologias Agiles

A los individuos y su interacción, por encima de los procesos y las herramientas.

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.

Page 27: Metodologias Agiles

AutoorganizadoAutoorganizado

AutogestionadoAutogestionado

MultifuncionalMultifuncional

Page 28: Metodologias Agiles

Dificultades

AccionesAcciones

ResultadosResultados

Page 29: Metodologias Agiles

Crear un producto backlogEntender y formar el equipo

multidisciplinarCrear el product backlog

Estimación

Seguir la reglas de ScrumSeguir la reglas de ScrumImplementar buenas prácticasImplementar buenas prácticas

Aprender a estimarAprender a estimar

Trabajamos metódicamente continuamenteTrabajamos metódicamente continuamenteNuestra velocidad de desarrollo mejora Nuestra velocidad de desarrollo mejora

contínuamentecontínuamenteHemos conseguido los objetivos marcadosHemos conseguido los objetivos marcados

La calidad del producto a mejorado enormementeLa calidad del producto a mejorado enormementeLa rotación en el equipo es nulaLa rotación en el equipo es nula

Page 30: Metodologias Agiles

Falta de comprensión de las ventajasFalta de pericia al escribir pruebas

Pereza al escribir pruebasProblemas de rendimiento de las

pruebasLas pruebas unitarias no son opcionalesLas pruebas unitarias no son opcionales

Pragmatismo: cobertura suficiente = pruebas Pragmatismo: cobertura suficiente = pruebas suficientessuficientes

Mantenimiento contínuo de las pruebasMantenimiento contínuo de las pruebasCapacidad de mejorar la base de código con Capacidad de mejorar la base de código con

libertadlibertadPercepción general de mejora de la calidad de Percepción general de mejora de la calidad de

desarrollodesarrolloFlexibilidad para implementar cambios con rapidezFlexibilidad para implementar cambios con rapidez

Código más mantenibleCódigo más mantenibleMejor diseñoMejor diseño

+ 1600 pruebas “sin esfuerzo”+ 1600 pruebas “sin esfuerzo”Ya nadie discute la utilidadYa nadie discute la utilidad

Page 31: Metodologias Agiles

DifícilMuy ambiciosos

La complejidad de la construcción crece más que la complejidad del proyecto

Utilizar una figura de Release ManagerUtilizar una figura de Release ManagerMantenimiento continuo de los scripts de Mantenimiento continuo de los scripts de

construcciónconstrucciónReutilización de tareas de tercerosReutilización de tareas de terceros

Todo componente tiene su instaladorTodo componente tiene su instalador

El despliegue ha dejado de ser un dolorEl despliegue ha dejado de ser un dolorPodemos hacer test de humoPodemos hacer test de humo

Detección muy temprana de problemasDetección muy temprana de problemasMuchas menos incidenciasMuchas menos incidencias

Page 32: Metodologias Agiles

Exigen burocraciaExigen seguimiento

Exigen control

Seleccionar métricas suficientes pero no Seleccionar métricas suficientes pero no excesivasexcesivas

Vigilarlas a diario en el Daily ScrumVigilarlas a diario en el Daily ScrumHacerlas pieza central de la gestión del Hacerlas pieza central de la gestión del

proyectoproyectoAnalizarlas con visión de medio plazoAnalizarlas con visión de medio plazo

Mantener la burocracia bajo controlMantener la burocracia bajo controlGestionar en base a datosGestionar en base a datos

GuiarGuiar en base a en base a fundamentosfundamentos laslas actividadesactividades paralelasparalelas al al desarrollodesarrollo

Hacer visible el progreso, la velocidad de desarrolloHacer visible el progreso, la velocidad de desarrolloMejorar la gestión de recursos y personalMejorar la gestión de recursos y personal

Page 33: Metodologias Agiles

Problemas de comunicación habitualesObsolescencia de la documentación

Cambios no informadosAsegurar un extraordinario ROI

Utilizar extensivamente las capacidades de WSSUtilizar extensivamente las capacidades de WSSMantener la documentación estrictamente Mantener la documentación estrictamente

necesarianecesariaUsar otras formas de documentaciónUsar otras formas de documentación

Compartir información a diarioCompartir información a diarioInformar ‘hacia afuera’ y promocionar el Informar ‘hacia afuera’ y promocionar el

feedbackfeedback

Extraordinario lead time de los proyectosExtraordinario lead time de los proyectosExtraordinario ROIExtraordinario ROI

Clientes satisfechosClientes satisfechosBajo riesgo por rotaciónBajo riesgo por rotación

Confianza en la documentaciónConfianza en la documentación

Page 34: Metodologias Agiles

La calidad no es importanteLa falta de calidad daña la agilidad y la velocidad

Nosotros no elegimos la calidadDejar la calidad para el final

Pruebas de aceptación y de humoPruebas de aceptación y de humoTest de carga puntualmenteTest de carga puntualmente

Sprint Reviews: vigilar la calidad percibidaSprint Reviews: vigilar la calidad percibidaBetas públicas: automatización del despliegueBetas públicas: automatización del despliegue

Mantener el nivel de calidad es más barato que Mantener el nivel de calidad es más barato que alcanzarloalcanzarlo

Agilidad ante cambiosAgilidad ante cambiosTiempo de despliegue minimizadoTiempo de despliegue minimizadoDetección temprana de problemasDetección temprana de problemas

Page 35: Metodologias Agiles

No es fácilEs posible

EquipoMetodologíaBuenas prácticasHerramientas adecuadasEquivocaciones o conocimiento

Los resultados son espectaculares

Page 36: Metodologias Agiles

¡Haced algo!

… os podemos ayudar

Page 37: Metodologias Agiles

Mi blog: http://geeks.ms/blogs/rcorralwww.scrumforteamsystem.com [email protected]

Page 38: Metodologias Agiles

¡Gracias!