Introducción a scrum

43
Introducción a SCRUM Ing. Eddie Malca Vicente [email protected] [email protected] [email protected] @emalca /iluminatic

description

Introducción de Metologías Ágiles y SCRUM

Transcript of Introducción a scrum

Page 1: Introducción a scrum

Introducción a SCRUM

Ing. Eddie Malca [email protected]

[email protected]@gmail.com

@emalca

/iluminatic

Page 2: Introducción a scrum

Problemas existentes en los proyectos de Software

• Requerimientos del usuario fuera de control• No se cumplen los tiempos planificados inicialmente• Estimaciones deficientes• Trabajo excesivo• Baja calidad del producto final• Costos excedidos en lo original• Clientes insatisfechos• Miembros del equipo insatisfechos

Page 3: Introducción a scrum

Metodologías Ágiles

• Se entiende como Desarrollo ágil de Software a un paradigma de Desarrollo de Software basado en procesos ágiles.

Page 4: Introducción a scrum

Procesos Ágiles de Desarrollo

• Intentan evitar los tortuosos y burocráticos caminos de las metodologías tradicionales enfocándose en la gente y los resultados.

Page 5: Introducción a scrum

El Manifiesto Ágil

• El 17 de febrero de 2001, 17 críticos de los modelos de mejora del desarrollo de SW bajo la batuta de Kent Beck, se reunieron en Snowbird, Utah para tratar sobre técnicas y procesos para desarrollar software.

• En la reunión se acuñó el término “Métodos Ágiles” para definir a los métodos que estaban surgiendo como alternativa a las metodologías formales a las que consideraban excesivamente “pesadas” y rígidas por su carácter normativo y fuerte dependencia de planificaciones detalladas previas al desarrollo.

• Los integrantes de la reunión resumieron los principios sobre los que se basan los métodos alternativos en cuatro postulados, lo que ha quedado denominado como Manifiesto Ágil.

www.agilemanifiesto.org

Page 6: Introducción a scrum

Manifiesto por el Desarrollo Ágil de Software

• Individuos e interacciones sobre procesos y herramientas.

• Software que funciona sobre documentación exhaustiva.

• Colaboración con el cliente sobre negociación de contratos.

• Responder ante el cambio sobre seguimiento de un plan.

Page 7: Introducción a scrum

SCRUM

La palabra SCRUM procede del vocabulario del rugby y significa melé; es decir, que los compañeros del equipo se amontonan, forman una piña y empujan todos en la misma dirección.

www.scrumalliance.org

Page 8: Introducción a scrum

SCRUM

Scrum es un proceso iterativo e incremental que puede ser utilizado para desarrollar cualquier producto o administrar cualquier trabajo. Sus principales atributos son:

• Un enfoque orientado a que los equipos desarrollen sistemas y productos de manera.

• iterativa e incremental cuando los requerimientos cambian de manera rápida.

• Un proceso que controla el caos de conflictos de intereses y necesidades.

Page 9: Introducción a scrum

SCRUM

• Una manera de mejorar las comunicaciones y maximizar la cooperación.

• Una manera de maximizar la productividad.• Escalable a múltiples proyectos y toda la organización.• Una forma que todos se sientan bien con su trabajo,

entendiendo que cada uno con sus contribuciones hizo lo mejor que podía hacer.

Page 10: Introducción a scrum

Diferencias entre metodologías

Metodologías Ágiles• Basadas en heurísticas

provenientes de prácticas de producción de código.

• Especialmente preparados para cambios durante el proyecto.

• Impuestas internamente (por el equipo).

• Proceso mucho más controlado, con numerosas políticas/normas.

• No existe contrato tradicional o al menos es bastante flexible.

Metodologías tradicionales• Basadas en normas provenientes

de estándares. • Seguidos por el entorno de

desarrollo. • Cierta resistencia a los cambios • Impuestas externamente.

• Proceso menos controlado, con pocos principios.

• Existe un contrato prefijado.

Page 11: Introducción a scrum

Metodologías Ágiles

• El cliente interactúa con el equipo de desarrollo.

• Grupos pequeños (<10 integrantes) y trabajando en el mismo sitio.

• Pocos artefactos.• Pocos roles.• Menos énfasis en la arquitectura

del software.

Metodologías tradicionales• El cliente es parte del equipo de

desarrollo mediante reuniones.• Grupos grandes y posiblemente

distribuidos. • Más artefactos. • Más roles. • La arquitectura del software es

esencial y se expresa mediante modelos.

Diferencias entre metodologías

Page 12: Introducción a scrum

Roles

• Financiación del proyecto.• Define funcionalidad requerida.• Retorno de la inversión del proyecto.• Lanzamiento del proyecto.• Toma las decisiones de priorización.• Representa a todos los interesados en el producto final.

Page 13: Introducción a scrum

Roles

• Auto - gestionado• Auto – organizado• Multifuncional• Transforman los requerimientos en funcionalidades.

Page 14: Introducción a scrum

• Formación y entrenamiento de procesos.• Incorporación de Scrum en la cultura del equipo.• Garantía de cumplimiento de roles y responsabilidades.• Remueve impedimentos.• Facilitador.• Asegura que se cumpla Scrum.

Roles

Page 15: Introducción a scrum

Product Owner

•Representa los intereses del cliente dentrode la empresa.

•Es el nexo entre el cliente y el equipo.

• Tiene la visión global del producto buscado..

• Es el encargado de armar y priorizar el Product Backlog (Lista priorizada de requerimientos).

Page 16: Introducción a scrum

Pila de producto -- Requisitos priorizados.-- Listado con los requisitos

del sistema.

Selección de laPila de producto

(Product Backlog)-- Funcionalidades

Pila del sprint Nueva funcionalidad

• Product Owner(modificar cuidando la

inversión).• Stakeholders (usuario,

soporte técnico, administradores,etc )

Product Backlog

Page 17: Introducción a scrum

• Listado con los requisitos del sistema. Listado de todas las a implementar. Es dinámico. Mientras exista un producto, el Product Backlog también existe.

Product Backlog

Page 18: Introducción a scrum

Product Backlog

Page 19: Introducción a scrum

Sprint Planning Meeting(Reunion de Planeamiento del Sprint)

Page 20: Introducción a scrum

Sprint Planning

• Los Sprints duran, idealmente, menos de un mes.• Se seleccionan los requerimientos del Product Backlog que

entrarán en el sprint.• Se hace un listado de todas las tareas necesarias para

terminar el sprint backlog, indicando el esfuerzo de cada una.• Se asignan responsables a las tareas.

Page 21: Introducción a scrum

Se divide en 2 partes y son:

• Las primeras cuatro horas se dedican al ProductOwner.

• Las segundas cuatro horas el equipo planea su propio Sprint.

Page 22: Introducción a scrum
Page 23: Introducción a scrum

23

Pila del sprint (Sprint Backlog)Pila del sprint (Sprint Backlog)

• Trabajo o tareas determinadas por el equipo para realizar en un sprint y lograr al final del mismo un incremento de la funcionalidad.

• Se recomienda que las tareas reflejadas tengan una duración comprendida entre las 4 y las 16 horas de trabajo.

• Las de mayor duración deben intentar descomponerse en sub-tareas de ese rango de tiempo.

Page 24: Introducción a scrum
Page 25: Introducción a scrum

25

Es el periodo de tiempo durante el que se desarrolla un incremento de funcionalidad. Constituye el núcleo de Scrum, que divide de esta forma el desarrollo de un proyecto en un conjunto de pequeñas “carreras”.•Duración máxima: 30 días.

•Durante el sprint no se puede modificar el trabajo que se ha acordado en el Backlog.

•Sólo es posible cambiar el curso de un sprint, abortándolo, y sólo lo puede hacer el Scrum Master si decide que no es viable por alguna de las razones siguientes:

•La tecnología acordada no funciona.

•Las circunstancias del negocio han cambiado.

•El equipo ha tenido interferencias.

SPRINTSPRINT

Page 26: Introducción a scrum

El Sprint

Page 27: Introducción a scrum

El Sprint

Page 28: Introducción a scrum

Al final del Sprint, se realiza una reunión de revisión de Sprint,

llamada Sprint Review

El Sprint

Page 29: Introducción a scrum

Fin del Sprint: Sprint review4 horas

• Reunión donde se presenta al product owner y a los implicados todas las funcionalidades implementadas.

• El Product owner trata con los asistentes y con el team las posibles modificaciones en la pila de producto.

• Al final de la reunión se interroga individualmente a todos los asistentes para recabar impresiones, sugerencias de cambio y mejora, y su relevancia.

Page 30: Introducción a scrum
Page 31: Introducción a scrum

Después del Sprint review y antes de la proxima Sprint planning

meeting, el ScrumMaster convoca a una

Sprint retrospective del Sprintcon el Team.

Fin del Sprint: Sprint review4 horas

Page 32: Introducción a scrum

Sprint retrospective3 horas

• El ScrumMaster hace que el Team revise, su proceso de desarrollo Scrum, para hacerlo más eficaz y eficiente para el próximo Sprint.

• El ScrumMaster no proporciona respuestas, sino que ayuda al equipo a encontrar la mejor forma de trabajar con Scrum.

En conjunto, Sprint planning meeting, Daily Scrum, Sprint review, y el Sprint retrospective, constituyen la inspección empírica y prácticas de

la adaptación del Scrum.

Page 33: Introducción a scrum
Page 34: Introducción a scrum

Pila de producto: son la funcionalidad del sistema priorizada

Page 35: Introducción a scrum
Page 36: Introducción a scrum

SPRINT

Page 37: Introducción a scrum

Sala de Desarrollo

Page 38: Introducción a scrum
Page 39: Introducción a scrum
Page 40: Introducción a scrum

El manifiesto Ágil y su incidencia en el desarrollo de software

• En febrero de 2001, tras una reunión celebrada en Utah-EEUU, nace el término “ágil” aplicado al desarrollo de software. En esta reunión participan un grupo de 17 expertos de la industria del software, incluyendo algunos de los creadores e impulsores de metodologías de software.

• El punto de partida fue el Manifiesto Ágil, un documento que resume la filosofía “ágil”.

• Según el Manifiesto se valora:

Page 41: Introducción a scrum

• Al individuo y las interacciones del equipo de desarrollo sobre el proceso y las herramientas.

• Es más importante construir un buen equipo.

• Desarrollar software que funciona más que conseguir una buena documentación.

• “No producir documentos a menos que sean necesarios de forma inmediata para tomar un decisión importante”.

El manifiesto Ágil y su incidencia en el desarrollo de software

Page 42: Introducción a scrum

• La colaboración con el cliente más que la negociación de un contrato.

• Se propone que exista una interacción constante entre el cliente y el equipo de desarrollo. Esta colaboración entre ambos será la que marque la marcha del proyecto y asegure su éxito.

• Responder a los cambios más que seguir estrictamente un plan.

• Se debe ser hábil en responder a los cambios y a los fracasos, la planificación no debe ser estricta sino flexible y abierta.

El manifiesto Ágil y su incidencia en el desarrollo de software

Page 43: Introducción a scrum

Introducción a SCRUM

Ing. Eddie Malca [email protected]

[email protected]@gmail.com

@emalca

/iluminatic