You are on page 1of 7

Scrum

Scrum
Scrum es un marco de trabajo para la gestin y desarrollo de software basada en un proceso iterativo e incremental utilizado comnmente en entornos basados en el desarrollo gil de software. Aunque Scrum estaba enfocado a la gestin de procesos de desarrollo de software, puede ser utilizado en equipos de mantenimiento de software, o en una aproximacin de gestin de programas: Scrum de Scrums.

Ciclos de desarrollo.

Historia
En 1986 Hirotaka Takeuchi e Ikujiro Nonaka describieron una nueva aproximacin holstica que incrementa la rapidez y la flexibilidad en el desarrollo de nuevos productos comerciales.[1]

Caractersticas de Scrum
Metodologa SCRUM

SCRUM es un modelo de referencia que define un conjunto de prcticas y roles, y que puede tomarse como punto de partida para definir el proceso de desarrollo que se ejecutar durante un proyecto. Los roles principales en Scrum son el ScrumMaster, que mantiene los procesos y trabaja de forma similar al director de proyecto, el ProductOwner, que representa a los stakeholders (interesados externos o internos), y el Team que incluye a los desarrolladores. Durante cada sprint, un periodo entre una y cuatro semanas (la magnitud es definida por el equipo), el equipo crea un incremento de software potencialmente entregable (utilizable). El conjunto de caractersticas que forma parte de cada sprint viene del Product Backlog, que es un conjunto de requisitos de alto nivel priorizados que definen el trabajo a realizar. Los elementos del Product Backlog que forman parte del sprint se determinan durante la reunin de Sprint Planning. Durante esta reunin, el Product Owner identifica los elementos del Product Backlog que quiere ver completados y los hace del conocimiento del equipo. Entonces, el equipo determina la cantidad de ese trabajo que puede comprometerse a completar durante el siguiente sprint.[2] Durante el sprint, nadie puede cambiar el Sprint Backlog, lo que significa que los requisitos estn congelados durante el sprint. Scrum permite la creacin de equipos autoorganizados impulsando la co-localizacin de todos los miembros del equipo, y la comunicacin verbal entre todos los miembros y disciplinas involucrados en el proyecto. Un principio clave de Scrum es el reconocimiento de que durante un proyecto los clientes pueden cambiar de idea sobre lo que quieren y necesitan (a menudo llamado requirements churn), y que los desafos impredecibles no pueden ser fcilmente enfrentados de una forma predictiva y planificada. Por lo tanto, Scrum adopta una aproximacin pragmtica, aceptando que el problema no puede ser completamente entendido o definido, y centrndose en maximizar la capacidad del equipo de entregar rpidamente y responder a requisitos emergentes. Existen varias implementaciones de sistemas para gestionar el proceso de Scrum, que van desde notas amarillas "post-it" y pizarras hasta paquetes de software. Una de las mayores ventajas de Scrum es que es muy fcil de aprender, y requiere muy poco esfuerzo para comenzarse a utilizar.

Scrum

Roles en Scrum
Roles Principales
Product Owner El Product Owner representa la voz del cliente. Se asegura de que el equipo Scrum trabaje de forma adecuada desde la perspectiva del negocio. El Product Owner escribe historias de usuario, las prioriza, y las coloca en el Product Backlog. ScrumMaster (o Facilitador) El Scrum es facilitado por un ScrumMaster, cuyo trabajo primario es eliminar los obstculos que impiden que el equipo alcance el objetivo del sprint. El ScrumMaster no es el lder del equipo (porque ellos se auto-organizan), sino que acta como una proteccin entre el equipo y cualquier influencia que le distraiga. El ScrumMaster se asegura de que el proceso Scrum se utiliza como es debido. El ScrumMaster es el que hace que las reglas se cumplan. Equipo de desarrollo El equipo tiene la responsabilidad de entregar el producto. Un pequeo equipo de 3 a 9 personas con las habilidades transversales necesarias para realizar el trabajo (anlisis, diseo, desarrollo, pruebas, documentacin, etc).

Roles Auxiliares
Los roles auxiliares en los "equipos Scrum" son aquellos que no tienen un rol formal y no se involucran frecuentemente en el "proceso Scrum", sin embargo deben ser tomados en cuenta. Un aspecto importante de una aproximacin gil es la prctica de involucrar en el proceso a los usuarios, expertos del negocio y otros interesados (stakeholders). Es importante que esa gente participe y entregue retroalimentacin con respecto a la salida del proceso a fin de revisar y planear cada sprint. Stakeholders (Clientes, Proveedores, Vendedores, etc) Se refiere a la gente que hace posible el proyecto y para quienes el proyecto producir el beneficio acordado que justifica su produccin. Slo participan directamente durante las revisiones del sprint. Administradores (Managers) Es la gente que establece el ambiente para el desarrollo del producto.

Reuniones en Scrum
Daily Scrum o Stand-up meeting
Cada da de un sprint, se realiza la reunin sobre el estado de un proyecto. Esto se llama daily standup o Stand-up meeting. El scrum tiene unas guas especficas: La reunin comienza puntualmente a su hora. Todos son bienvenidos, pero slo los involucrados en el proyecto pueden hablar. La reunin tiene una duracin fija de 15 minutos, de forma independiente del tamao del equipo. La reunin debe ocurrir en la misma ubicacin y a la misma hora todos los das.

Durante la reunin, cada miembro del equipo contesta a tres preguntas:[3] Qu has hecho desde ayer? Qu es lo que hars hasta la reunin de maana? Has tenido algn problema que te haya impedido alcanzar tu objetivo? (Es el papel del ScrumMaster recordar estos impedimentos).

Scrum

Scrum de Scrum
Cada da normalmente despus del Daily Scrum: Estas reuniones permiten a los grupos de equipos discutir su trabajo, enfocndose especialmente en reas de solapamiento e integracin. Asiste una persona asignada por cada equipo. La agenda ser la misma que la del Daily Scrum, aadiendo adems las siguientes cuatro preguntas: Qu ha hecho tu equipo desde nuestra ltima reunin? Qu har tu equipo antes que nos volvamos a reunir? Hay algo que demora o estorba a tu equipo? Ests a punto de poner algo en el camino del otro equipo?

Reunin de Planificacin del Sprint (Sprint Planning Meeting)


Al inicio del ciclo Sprint (cada 15 o 30 das), una Reunin de Planificacin del Sprint se lleva a cabo. Seleccionar qu trabajo se har Preparar, con el equipo completo, el Sprint Backlog que detalla el tiempo que tomar hacer el trabajo. Identificar y comunicar cunto del trabajo es probable que se realice durante el actual Sprint Ocho horas como lmite Al final del ciclo Sprint, dos reuniones se llevaran a cabo: la Reunin de Revisin del Sprint y la Retrospectiva del Sprint

Reunin de Revisin del Sprint (Sprint Review Meeting)


Revisar el trabajo que fue completado y no completado Presentar el trabajo completado a los interesados (alias demo) El trabajo incompleto no puede ser demostrado Cuatro horas como lmite

Retrospectiva del Sprint (Sprint Retrospective)


Despus de cada sprint, se lleva a cabo una retrospectiva del sprint, en la cual todos los miembros del equipo dejan sus impresiones sobre el sprint recin superado. El propsito de la retrospectiva es realizar una mejora continua del proceso. Esta reunin tiene un tiempo fijo de cuatro horas.

Sprint
El Sprint es el perodo en el cual se lleva a cabo el trabajo en s. Es recomendado que la duracin de los sprints sea constante y definida por el equipo con base en su propia experiencia. Se puede comenzar con una duracin de sprint en particular (2 o 3 semanas) e ir ajustndolo con base en el ritmo del equipo, aunque sin relajarlo demasiado. Al final de cada sprint, el equipo deber presentar los avances logrados, y el resultado obtenido es un producto potencialmente entregable al cliente. Asimismo, se recomienda no agregar objetivos al sprint o sprint backlog a menos que la falta de estos objetivos amenace al xito del proyecto. La constancia permite la concentracin y mejora la productividad del equipo de trabajo.

Scrum

Documentos
Product backlog
El product backlog es un documento de alto nivel para todo el proyecto. Contiene descripciones genricas de todos los requerimientos, funcionalidades deseables, etc. priorizadas segn su retorno sobre la inversin (ROI) . Es el qu va a ser construido. Es abierto y solo puede ser modificado por el product owner. Contiene estimaciones realizadas a grandes rasgos, tanto del valor para el negocio, como del esfuerzo de desarrollo requerido. Esta estimacin ayuda al product owner a ajustar la lnea temporal(KEV) y, de manera limitada, la prioridad de las diferentes tareas. Por ejemplo, si dos caractersticas tienen el mismo valor de negocio la que requiera menor tiempo de desarrollo tendr probablemente ms prioridad, debido a que su ROI ser ms alto.

Sprint backlog
El sprint backlog es un documento detallado donde se describe el cmo el equipo va a implementar los requisitos durante el siguiente sprint. Las tareas se dividen en horas con ninguna tarea de duracin superior a 16 horas. Si una tarea es mayor de 16 horas, deber ser dividida en otras menores. Las tareas en el sprint backlog nunca son asignadas, son tomadas por los miembros del equipo del modo que les parezca oportuno.

Burn down chart


La burn down chart es una grfica mostrada pblicamente que mide la cantidad de requisitos en el Backlog del proyecto pendientes al comienzo de cada Sprint. Dibujando una lnea que conecte los puntos de todos los Sprints completados, podremos ver el progreso del proyecto. Lo normal es que esta lnea sea descendente (en casos en que todo va bien en el sentido de que los requisitos estn bien definidos desde el principio y no varan nunca) hasta llegar al eje horizontal, momento en el cual el proyecto se ha terminado (no hay ms requisitos pendientes de ser completados en el Backlog). Si durante el proceso se aaden nuevos requisitos la recta tendr pendiente ascendente en determinados segmentos, y si se modifican algunos requisitos la pendiente variar o incluso valdr cero en algunos tramos.

Scrum aplicado al desarrollo de software


Aunque surgi como modelo para el desarrollo de productos tecnolgicos, tambin se emplea en entornos que trabajan con requisitos inestables y que requieren rapidez y flexibilidad; situaciones frecuentes en el desarrollo de determinados sistemas de software. Jeff Sutherland aplic el modelo Scrum al desarrollo de software en 1993 en Easel Corporation (Empresa que en los macro-juegos de compras y fusiones se integrara en VMARK, luego en Informix y finalmente en Ascential Software Corporation). En 1995 lo present junto con Ken Schwaber como proceso formal, tambin para gestin del desarrollo de software en OOPSLA 95. Ms tarde, en 2001 seran dos de los promulgadores del Manifiesto gil. En el desarrollo de software scrum est considerado como modelo gil por la Agile Alliance.

Scrum

La ficha adjunta incluye una descripcin sinptica del proceso y sus elementos que son: Roles: Propietario del producto, Gestor o Manager del Scrum, Equipo e Interesados. Componentes del proceso: Pila del producto (Product Backlog), Pila del sprint (Sprint Backlog), Incremento. Reuniones: Planificacin del sprint, Revisin diaria, Revisin del sprint. Sprint

Notas
[1] Takeuchi and Nonaka: The New New Product Development Game (Harvard Business Review, Jan-Feb 1986) [2] Agile Project Management with Scrum, Ken Schwaber, Microsoft Press, January 2004, 163pp, ISBN 0-7356-1993-X [3] page 135

Referencias
(PDF) Rising, L., Janoff, N.S. (2000). The Scrum Software Development Process for Small Teams (http:// members.cox.net/risingl1/Articles/IEEEScrum.pdf) Retrieved March 15, 2007 (PDF) Schwaber, K. Advanced Development Methods. SCRUM Development Process (http://jeffsutherland. com/scrumpapers.pdf) Retrieved July 01, 2010 (video) Jeff Sutherland in Scrum Tuning: Lessons learned from Scrum implementation at Google (http://www. youtube.com/watch?v=9y10Jvruc_Q) Retrieved 2007-12-15 (video) Ken Schwaber in Scrum et al. (http://www.youtube.com/watch?v=IyNPeTn8fpo) Retrieved 2008-01-19

Enlaces externos
Comunidades o grupos de usuarios
Asociacin Agile-Spain (http://www.agile-spain.org) : la comunidad agilista en Espaa giles (http://agiles.org) : la comunidad agilista latinoamericana ScrumManager (http://www.scrummanager.net/ok) : Plataforma profesional de conocimiento libre Comunidad gil Colombia (http://www.agilespin.com) : Comunidad agilista Colombia

Libros originales o traducciones al espaol


Libro gratuito sobre Scrum (http://www.navegapolis.net/content/view/694/61/) Traduccin de "The Scrum Primer" (http://scrumtraininginstitute.com/library) "Scrum y XP desde las trincheras", traduccin de "Scrum and XP from the trenches" por Henrik Kniberg (http:// www.proyectalis.com/2008/02/26/scrum-y-xp-desde-las-trincheras/)

Scrum

Portales temticos y blogs


Scrum Manager: Comunidad gil de habla hispana. Cursos online gratuitos (http://www.scrummanager.net) proyectosAgiles.org: base de conocimiento gratuita de Scrum en espaol (http://www.proyectosagiles.org) Metodologa de gestin de proyectos basada en Scrum (http://navegapolis.metocube.com/) Artculos sobre Scrum de Rodrigo Corral (http://geeks.ms/blogs/rcorral/archive/tags/Scrum/default.aspx) Blog de Scrum en Espaol (http://scrumenespanol.blogspot.com) Thinking-in-process (http://b-efficient.blogspot.com.es) Blog sobre procesos, gestin de proyectos y Scrum

Artculos y otros recursos


Hoja Excel para grficos de progreso scrum (http://www.navegapolis.net/index.php?option=com_content& task=view&id=268&Itemid=84) Artculo de introduccin a Scrum (http://www.chuidiang.com/ood/metodologia/scrum.php) Explicando Scrum a mi abuela por Jorge Serrano (http://geeks.ms/blogs/jorge/archive/2007/05/09/ explicando-scrum-a-mi-abuela.aspx) Artculo sobre Scrum en Espaol (http://swsaber.com/scrum/) PPT reutilizable de introduccin a Scrum, original de Mike Cohn, traduccin de Ernesto Grafeuille (http://www. mountaingoatsoftware.com/system/asset/file/66/SpanishRedistributableIntroToScrum.ppt) Sencillo generador online de grficas burndown (http://www.burndowngenerator.com/) Herramientas y Software para Scrum (http://www.unbugalavez.net/2008/03/herramientas-para-scrum.html) Una comparacin entre Scrum y DevOps (http://b-efficient.blogspot.com.es/2012/09/ introduccion-devops-el-siguiente-paso.html) Scrum en 1 pgina (http://www.scribd.com/doc/134880180/SCRUM-La-guia-de-1-pagina) Scrum Teora revolucionara, Amortizando los errores para controlarlos Analizarlos y solucionarlo al momento <3

Fuentes y contribuyentes del artculo

Fuentes y contribuyentes del artculo


Scrum Fuente: http://es.wikipedia.org/w/index.php?oldid=70749121 Contribuyentes: Alex of Bcn, Alexav8, Aquileaaquilea, Arturo.Van, C lamarque, Caskete, Diamondland, Dieguen, Diegusjaimes, Dodo, EGA Futura, Ecelan, Edc.Edc, Fpablos, Fran.naranjo, Fritz11, Hcquinteroz, Henaldog, Hhiroshi, Hprmedina, J.M.Domingo, Jacorream, Jago84, Jdemarcos, Jgalgarra, Jkbw, Jmbeas, Jmdmmx, Juan.palacio, Julie, Kamusclown, Kijote, Leoparra86, Mac1800, Maldoror, Mansoft, Martingala, Maxie Ayala, Mescalier, Mhidalgolache, Moises003, Mpeinadopa, Mushii, N.garbezza, Obed.mx, Oscar ., Parlamento, Penelopina, Poco a poco, Qwertyytrewqqwerty, RNL89, Raggha, Ralgis, Ray iceman, Santiagobas, Saulnoelm, Savh, Sindestino, Solde, Susibel, Technopat, Tokvo, Xavier Albaladejo, Ynnek, 207 ediciones annimas

Fuentes de imagen, Licencias y contribuyentes


Archivo:Ciclos de desarrollo.png Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Ciclos_de_desarrollo.png Licencia: Creative Commons Attribution-ShareAlike 3.0 Unported Contribuyentes: Juan.palacio, WikipediaMaster File:Scrumm.PNG Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Scrumm.PNG Licencia: Creative Commons Attribution-Sharealike 3.0 Contribuyentes: User:Maxie Ayala Archivo:Ficha scrum.png Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Ficha_scrum.png Licencia: Creative Commons Attribution-Sharealike 2.5 Contribuyentes: Juan.palacio, KTo288

Licencia
Creative Commons Attribution-Share Alike 3.0 //creativecommons.org/licenses/by-sa/3.0/