Scrum Developers - El Comercio 2012

Preview:

Citation preview

SCRUM DEVELOPER

Rosa María Orellana MaldonadoCSM – CSD por Scrum Alliance

MARZO - 2012

PLATAFORMA DIGITAL – ElComercio.pe

Principios Ágiles

Satisfacer al cliente mediante una entrega temprana y frecuentede software que le brinde valor.

Organizar proyectos alrededor de gente motivada, apoyarlos yconfiar en que pueden hacer el trabajo.

El medio de comunicación más efectivo es una conversacióncara‐a‐cara.

El software que se ejecuta correctamente es la medida principalde progreso.

Promover un ritmo de desarrollo sostenible. Una atención continua a la excelencia técnica y el buen diseño

potencia la agilidad. No complicarse innecesariamente.

PLATAFORMA DIGITAL – ElComercio.pe

Principios de Scrum

Patrones de Ciclo de Desarrollo

PLATAFORMA DIGITAL – ElComercio.pe

Takeuchi y Nonaka - The New Product Development Game (1986)

¿Qué es Scrum?

“Scrum es unframework,quepermitecrearunprocesopropio para el desarrollo de nuevos

productos”

“Scrum no es una metodología”

PLATAFORMA DIGITAL – ElComercio.pe

¿Qué es Scrum?

Las reglas de Scrum son simples y directas de entendimiento, más no de dominación.

Involucra valores como:Coraje

Transparencia

Confianza

PLATAFORMA DIGITAL – ElComercio.pe

Artefactos de Scrum

Visión de Producto

Product Backlog

Objetivos del Sprint

Backlog del Sprint (tareas)

Lista de Empedimentos (disminuyen la prod.)

Burndownchart (trabajo restante)

PLATAFORMA DIGITAL – ElComercio.pe

Roles de Scrum

Product Owner (visión del producto, prioriza)

Scrum Master (líder al servicio del equipo)

Equipo (3 a 10 personas , auto-organizado)

User (usuarios del sistema)

Stakeholder (hace posible el proyecto)

Mangers (establecen el ambiente para el desarrollo)

PLATAFORMA DIGITAL – ElComercio.pe

SPRINT

Sinónimo de iteración.

Tiene una duración aproximada de 4 semanas.

Una vez iniciado no varia la duración.

Incluye todas las fases necesarias para que el desarrollo de un requerimiento este completo.

Permite un desarrollo continuo.

Permite un desarrollo potencial.

PLATAFORMA DIGITAL – ElComercio.pe

Reuniones

Planeamiento

Reunión Diaria

Revisión

Retrospectiva

PLATAFORMA DIGITAL – ElComercio.pe

Reuniones Diarias

Durán 15 minutos

Cada miembro del equipo responde a 3 preguntas:

¿Qué hice?

¿Que voy hacer?

¿Que impedimento tengo para realizar mi trabajo?

No es un reunión de reporte.

No resuelve problemas, los identifica.

PLATAFORMA DIGITAL – ElComercio.pe

Seguimiento del Sprint

TO Do

En Progreso

Listo

Objetivo del Sprint

No planificado

PLATAFORMA DIGITAL – ElComercio.pe

Seguimiento del Sprint

PLATAFORMA DIGITAL – ElComercio.pe

DONE!!!!!

SRUMEsquema del Ciclo de Desarrollo de Scrum

PLATAFORMA DIGITAL – ElComercio.pe

INTEGRACIÓN CONTINUA

by: Martín Fowler

Metodología Informática que consiste como su nombre lo indica realizar “integraciones”

automáticas de un proyecto para detectar con mayor facilidad y rapidez fallos.

PLATAFORMA DIGITAL – ElComercio.pe

INTEGRACIÓN CONTINUA

El Proceso se ejecuta cada cierto tiempo, pueden ser intervalos de horas.

Se descarga las fuentes desde el gestor de versiones.

Se compila.

Se ejecutan los test.

Finalmente se generan los informes.

PLATAFORMA DIGITAL – ElComercio.pe

INTEGRACIÓN CONTINUA

PLATAFORMA DIGITAL – ElComercio.pe

Referencia: http://angellazaro.wordpress.com

INTEGRACIÓN CONTINUA

PLATAFORMA DIGITAL – ElComercio.pe

Se requieren integrar herramientas como: Controlador de Versiones

Git

CVS

Mercurial

Subversión

Sistemas de Construcción y Gestores de Proyectos

Ping

Servidores de Integración Continua

Hudson

Xinc

CruiseControl

Continuum

Principales prácticas de IC

Mantener un único repositorio de código fuente Automatizar la construcción del proyecto Hacer que la construcción del proyecto ejecute sus propios tests Entregar los cambios a la línea principal todos los días Construir la línea principal en la máquina de integración Mantener una ejecución rápida de la construcción del proyecto Probar en una réplica del entorno de producción Hacer que todo el mundo pueda obtener el último ejecutable de

forma fácil Publicar qué está pasando Automatizar el despliegue

PLATAFORMA DIGITAL – ElComercio.pe

VENTAJAS DE USAR IC

Los desarrolladores pueden detectar y solucionar problemas de integración de forma continua.

Ejecución inmediata de la pruebas unitarias.

Disponibilidad constante de una build para pruebas

Permite monitoreas constantemente la calidad de código.

Potencia la agilidad, la flexibilidad y la calidad de software.

Monitorización continúa de las métricas de calidad del proyecto.

PLATAFORMA DIGITAL – ElComercio.pe

¿Que es TDD?

Es una práctica de programación que involucra:

Escribir Pruebas (Pruebas Unitarias)

Refactorizar

Objetivo: Lograr un código limpio y que

funcione.

PLATAFORMA DIGITAL – ElComercio.pe

¿Que es TDD?

Elegir un requisito

Escribir una prueba

Verificar que la prueba falla.

Escribir la implementación

Ejecutar las pruebas automatizadas

Eliminación de duplicación.

Actualización de la lista de requisitos

PLATAFORMA DIGITAL – ElComercio.pe

¿Qué es la PP?

• La Programación en Pares (PP) o colaboración en la programaciónde a dos es cuando los programadores desarrollar software del ladoa lado en un ordenador.

• A través de entrevistas y controlando experimentos, los autoresinvestigaron los costos y beneficios de la programación en parejas.

• Se encontró que para un coste de desarrollo de tiempo deaproximadamente 15%, la programación en parejas mejora lacalidad del diseño, redujo los defectos, redujo el riesgo de personal,mejora las habilidades técnicas, mejora la comunicación de losequipos y se considera más agradable en estadística nivelessignificativos.

PLATAFORMA DIGITAL – ElComercio.pe

Programación a Pares aplicando TDD con Ruby & Rails

PLATAFORMA DIGITAL – ElComercio.pe

“Ball Point Game” (Dinámica)

Creador: Boris Gloger

Permite la introducción y el entendimiento de Scrum en nuevos equipos ágiles.

Ball Point Game será denominado = BPG

Materiales:

Una caja de pelotas

Plumones para Papel

Paleógrafos

PLATAFORMA DIGITAL – ElComercio.pe

¿En que consiste BPG?

El juego consiste en pasar el mayor número de bolas posibles a través de cada miembro del equipo en 2 minutos.

El Equipo obtiene 1 punto por cada pelota que pasó por todos los miembros del equipo, siempre que la primera persona en tocar la pelota sea la última.

Hay 5 Iteraciones.

Antes de comenzar cada iteración el equipo estima cuantas pelotas creen que van a pasar.

Al final de cada iteración se registra el número real de puntos.

PLATAFORMA DIGITAL – ElComercio.pe

PlayBook – Libreto de BPG

2 minutos de reglas

2 minutos de tiempo para la preparación del 1 Sprint

El punto de partida debe ser el mismo punto del final.

Las iteraciones durán 2 minutos

Entre iteraciones 1 minuto

Se realizan 5 iteraciones

Obtener el estimado del equipo

2 minutos de iteración

1 minuto al equipo para estimar mejoras

10 minutos de interrogantes.

PLATAFORMA DIGITAL – ElComercio.pe

Reglas para el Juego BPG

Ustedes son un gran Equipo

La pelota debe tener un tiempo en el aire

No puede pasar la pelota a su vecino “directo”

El punto de partida debe ser el mismo punto del final.

Las iteraciones durán 2 minutos

Entre iteraciones 1 minuto

Se realizan 5 iteraciones

PLATAFORMA DIGITAL – ElComercio.pe

Conclusiones del Juego

Los Sistemas tienen una velocidad natural para mejorar significativamente el sistema requiere cambiar el proceso. Deming -Scrum: “avanzar y adaptar” .

Es importante detectar los cuellos de botella, difícilmente se obtendrá eficiencia si se mejoran puntos que nos son el cuello de botella.

Aprendemos más de nuestros fracasos.

Es importante ver los cuales son las reglas, desafiar las limitaciones para obtener el máximo rendimiento.

Se obtienen buenos resultados con las iteraciones.

Es importante la comunicación cara a cara.

Un mejor no ayuda el trabajo es en EQUIPO.

PLATAFORMA DIGITAL – ElComercio.pe

Puede escribirme a:

e-mail: rorellana@comercio.com.pe

twitter: @assoritam

GRACIAS

PLATAFORMA DIGITAL – ElComercio.pe

Recommended