Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 6-1
Metodologas giles: Scrum Metodologa Hbrida: Fast V-Model Taller: Creacin de un Backlog Scrum Mtodo de Gestin de Proyectos Ken Schwaber & Jeff Sutherland Bastante usado Scrum Master certificados 2005: 800 2006: 10.000 2007: 18.000 (estimado) Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-2 198 cursos de certificacin en 2007 Es un proceso emprico en lugar de definido, y por lo tanto se debe poner ms hincapi en el control que en la prediccin Flexibilidad Adaptabilidad Productividad Scrum Sprint: Iteracin de 30 das que produce cdigo potencialmente entregable No hay prcticas de ingeniera especficas Muchos usan Scrum @ XP Equipos auto-organizados LOS QUE SABEN DE RUGBY LOS QUE SABEN DE RUGBY LOS QUE SABEN DE RUGBY LOS QUE SABEN DE RUGBY LOS QUE NO SABEN LOS QUE NO SABEN LOS QUE NO SABEN LOS QUE NO SABEN EN EL MUNDO T.I. EN EL MUNDO T.I. EN EL MUNDO T.I. EN EL MUNDO T.I.
Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-3 LOS QUE SABEN DE RUGBY LOS QUE SABEN DE RUGBY LOS QUE SABEN DE RUGBY LOS QUE SABEN DE RUGBY LOS QUE NO SABEN LOS QUE NO SABEN LOS QUE NO SABEN LOS QUE NO SABEN EN EL MUNDO T.I. EN EL MUNDO T.I. EN EL MUNDO T.I. EN EL MUNDO T.I.
QUE QUE QUE QUE ES ES ES ES SCRUM SCRUM SCRUM SCRUM ? ?? ? Dos tipos de roles: chanchos y gallinas NO S. CMO SE NO S. CMO SE NO S. CMO SE NO S. CMO SE LLAMARA? LLAMARA? LLAMARA? LLAMARA? OYE CHANCHO,ESTABA PENSANDO OYE CHANCHO,ESTABA PENSANDO OYE CHANCHO,ESTABA PENSANDO OYE CHANCHO,ESTABA PENSANDO QUE DEBERAMOS ABRIR UN QUE DEBERAMOS ABRIR UN QUE DEBERAMOS ABRIR UN QUE DEBERAMOS ABRIR UN RESTAURANTE RESTAURANTE RESTAURANTE RESTAURANTE QUE QUE QUE QUE TAL TAL TAL TAL JAMN JAMN JAMN JAMN CON CON CON CON HUEVO? HUEVO? HUEVO? HUEVO? NO, GRACIAS. YO ESTARA NO, GRACIAS. YO ESTARA NO, GRACIAS. YO ESTARA NO, GRACIAS. YO ESTARA COMPROMETIDO Y T SLO COMPROMETIDO Y T SLO COMPROMETIDO Y T SLO COMPROMETIDO Y T SLO INVOLUCRADO INVOLUCRADO INVOLUCRADO INVOLUCRADO Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-4 Roles en Scrum: Los Chanchos Equipo de Scrum 5 a 10 personas a dedicacin completa Auto-organizados Cambios de miembros slo al final del sprint Propietario del producto Cliente o usuario del proyecto Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-5 Cliente o usuario del proyecto Toma decisiones de priorizacin Scrum Master No es exactamente el jefe de proyecto Remueve obstculos Asegura que se usen los valores del Scrum Scrum Meeting y backlog Scrum Meeting: reuniones cortas donde cada miembro del equipo expone: Qu ha hecho desde la ltima reunin Qu problemas ha tenido Qu va a hacer hasta la prxima reunin Backlog: Lista priorizada de tareas Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-6 Backlog: Lista priorizada de tareas Reemplaza a la carta Gantt Backlog de producto (product backlog) Backlog de iteracin (sprint backlog) Proceso de Scrum Jerga de Scrum Sprint = iteracin Scrum = reunin rpida diaria Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-7 Grfico de horas quemadas Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-8 Elija Scrum si... ... los requisitos son cambiantes o emergentes ... usted est dispuesto a dejar que los equipos se organicen solos ... usted necesita un modelo de gestin ms que un conjunto Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-9 gestin ms que un conjunto de prcticas ingenieriles ... usted necesita un proceso gil probado y escalable Fuente: Michael Cohn. Selecting an Agile Process, 21 Septiembre 2004. Una Metodologa Hbrida: Fast V-Model Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 6-10 Un Mtodo Hbrido: Fast V-Model Desarrollado por Motorola en Chile Probado slo en dos proyectos con varias iteraciones Mezcla un ciclo de vida riguroso con un esquema tipo time-box Toma ideas de XP: integracin continua, pruebas automticas Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-11 automticas Relaja restriccin de slo usar productos estables (baselined) introduciendo concepto de actividades prospectivas (look-ahead) Fast V-Model MIL_01 Reqs. Gathering and Planning MIL_02 Design MIL_03 Code & UT MIL_04 MIL_05 Test Execution and Release 3s 2s 4s 3s Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-12 Test Development 5s 1s 3s 3s Look Ahead Activities Look Ahead Activities Atributos del Fast V-Model Representa un proceso de software maduro con activos de procesos apropiados Se puede completar en ciclos de 12 semanas Fomenta el desarrollo iterativo con la consecuente disminucin de riesgos tecnolgicos y comerciales Esta basado tanto en documentos como en Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-13 Esta basado tanto en documentos como en comunicaciones interpersonales Es un hbrido entre los mtodos llamados giles y mtodos rigurosos, tradicionalmente usados por organizaciones maduras Es compatible con CMM nivel 3 Requiere de baja rotacin de personal durante el proyecto, pero permite una alta rotacin en la organizacin debido a que los proyectos son de alta calidad y adecuadamente documentados Fast V-Model: Versin comprimida a 9 semanas MIL_01 Reqs. Gathering and Planning MIL_02 Design MIL_03 Code & UT MIL_04 MIL_05 Test Execution and Release 2s 2s 3s 2s Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-14 Test Development 3s 1s 2s 2s Look Ahead Activities Look Ahead Activities Cuando usar y cuando no Cuando usar Fast V-Model Se requiere de un nivel alto de calidad consistente El cliente valora una rpida salida al mercado El cliente puede utilizar versiones incompletas del producto Se trabaja con requisitos inmaduros Se prevn cambios tecnolgicos y en el mercado Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-15 Cuando no usar Fast V-Model Se tiene requisitos maduros cuya implementacin no se puede abordar en dos o tres meses El tiempo de salida al mercado del nuevo producto no es crtico No hay valor en tener una entrega parcial antes de la entrega final Se requiere una cobertura de pruebas muy alta Recursos XP www.extremeprogramming.org FDD www.featuredrivendevelopment.com Scrum www.controlchaos.com www.scrumalliance.org Crystal http://alistair.cockburn.us Evo www.result-planning.com Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-16 Evo www.result-planning.com Agile www.agilealliance.org Serguei Khramtchenko, Comparing eXtreme Programming and Feature Driven Development in academic and regulated environments, Harvard University, May 17, 2004. Taller Creacin de un Backlog Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 6-17 Creacin de una lista de trabajo (backlog) Objetivo: Aprender a crear una lista de trabajo Entradas Idea muy preliminar de un sistema/problema Salidas Una lista de trabajo priorizada escrita en los trminos del cliente Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-18 Una lista de trabajo priorizada escrita en los trminos del cliente Tareas Escuchar y analizar la descripcin preliminar Preparar lista de preguntas para entrevistar al cliente Entrevistar al cliente Proponer una solucin en trminos de lista de trabajo descrita con cuentos de usuario Conclusiones Qu aprendimos? Qu fue lo ms difcil del ejercicio? Qu fue lo ms inesperado del ejercicio? Qu haramos diferente? Introduccin a la Gestin de Calidad de Software 2004-2008 Pablo Straub Pgina 1-19
EVOLUCIÓN METODOLÓGICAS DE DESARROLLO DE SOFTWARE Desde 1940 El Software Ha Evolucionado Hasta Convertirse en Una Profesión Que Se Ocupa de Cómo Crear Software y Maximizar Su Calidad