- Certificación oficial
- ¿Qué es agile?
- Introducción a Scrum
- Roles en scrum
- Artefactos Scrum
- Entender y realizar las ceremonias
- Crecer usando scrum
https://certiprof.com/pages/scrum-foundations-professional-certificate-sfpc-spanish
Es la habilidad para crear productos y responder al cambio
- Conjunto de marcos de trabajo
- Metodologías
- Kanban
- Scrum
- TDD
- Extremme Programming
https://www.scrummanager.net/bok/index.php?title=Principales_modelos_y_marcos_%C3%A1giles
- Como colaboran y trabajan entre sí
Tradicional
- Dificultades de saber quien está trabajando en que
- Equipos grandes
- Lista grande de requerimientos
- El valor llegaba al final
Ágil
- Tiempo corto de desarrollo
- Iteraciones
- Equipos cortos
- Listas pequeñas de requerimientos, desarrollando por iteraciones
- Valor constante
- Cambios pequeños y constantes
http://agilemanifesto.org/iso/es/manifesto.html
- Satisfacción al cliente
- Entregas tempranas y continuas de software con valor
- Cambios
- Los cambios son bienvenidos en cualquier etapa del proyecto
- Software funcional
- Se entrega frecuentemente, en periodos de tiempo cortos
- Colaboración
- Negocio y desarrolladores trabajamos juntos
- Individuos motivados
- Se debe dar un buen entorno y confianza al equipo de desarrollo
- Comunicación cara a cara
- Es el método más eficiente y efectivo de comunicación con el equipo
- Progreso
- El software funcionando es la medida principal de progreso
- Desarrollo sostenible
- El ritmo de desarrollo debe ser constante de forma indefinida
- Mejora continua
- A través de excelencia técnica y buen diseño
- Simplicidad
- El arte de maximizar la cantidad de trabajo no realizado es escencial
- Autoorganización
- Las mejores arquitecturas, requisitos y diseños emergen de equipos autoorganizados
- Autoevaluación
- El equipo es capaz de ajustar y perfeccionar su comportamiento
Colaborar por un objetivo en común
Es un marco de trabajo por el cual las personas pueden abordar problemas complejos adaptativos, a la vez que entregan productos del maximo valor posible productiva y creativamente
- Software
- Educación
- Casa
- Gobierno
- Equipo pequeño de personas
- Flexible y adaptativo
- 5-7 de personas
Control de procesos empírica o empirismo. El empirismo asegura que el conocimiento procede de la experiencia y de tomar decisiones basándose en lo que se conoce
- Fases delimitadas en el tiempo
- Planeación
- Iteración
- Entrega de producto funcional
- Transparencia
- Inspección
- Adaptación
- Compromiso de los miembros para cumplir los objetivos marcados
- Corage, cualquiera tiene la capacidad de realizar una tarea y es respaldado por el equipo
- Enfoque, cada miembro está enfocado en cumplir el objetivo
- Apertura, escuchar a los miembros involucrados en el proceso
- Respeto, todos somos parte del mismo equipo, respetar las ideas y las soluciones de las demás personas
- Autoorganizado
- Multifuncional
- Dueño del producto (Product Owner)
- Responsable de maximizar el valor del producto
- Cara del cliente frente al equipo/dentro del equipo de scrum
- Scrum Master
- Responsable de promover y apoyar scrum
- Experto en Scrum
- Equipo de desarrollo (Development Team)
- Profesionales que realizan el trabajo de entregrar un incremento de producto "Terminado"
Eventos predefinidos con el fin de crear regulatidad y minimizar la necesidad de reuniones no definidas en scrum
- Sprint
- Es el corazón de Scrum donde se crea un incremento del producto
- Planificación del Sprint (Sprint planning)
- Ceremonia para definir que se hará durante el sprint
- Scrum diario (Daily Stand-Up)
- Reunión diaria de todo el equipo de desarrollo
- Revisión del sprint (Sprint review)
- Es donde se muestra el incremento desarrollado durante el sprint
- Retrospectiva de Sprint (Sprint retrospective)
- Oportunidad para aplicar mejora continua
Representan el trabajo o valor en diversas formas que son útiles para proporcionar transparencia y oportunidades para la inspección y adaptación
- Lista de producto (Product Backlog)
- Es una lista ordenada de todo lo que se conoce que es necesario en el producto
- Lista de pendientes del Sprint (Sprint Backlog)
- Elementos de la lista de producto seleccionados del sprint
Se busca optimizar la flexibilidad, creatividad y productividad
- Product Owner
- La persona que entiende los requerimientos y lo que quiere el cliente
- Gestiona los requisitos
- Atiende peticiones del cliente
- Dueño del producto
- Sabe las reglas y procesos del negocio
- Scrum master
- Sabe el proceso
- Elimina impedimientos
- Promueve y apoya scrum
- Implementa la metodología
- Equipo de desarrollo
- Realizan el trabajo a entregar
- Auto-organización
- Auto-gestión
- Incrementos constantes del producto
Se busca optener retroalimentación del cliente constantemente
- Dependencias
- Es ideal organizar los equipos pensando en minimizar las dependencias con entes externos
- Tipos de organización
- Los equipos se pueden organizar con base en funcionalidades o componentes
Formar tu equipo es muy fácil. Ten en cuenta los siguientes tips y empieza tus proyectos con el pie derecho.
- Arma tu equipo con todos los perfiles profesionales que necesitas para desarrollar tu proyecto (Dueño del producto, scrum master y equipo de desarrollo)
- Equipo de 3-9 personas, pequeño y flexible
- Asegurate de tener todos los roles de SCRUM
- Sesiones diarias de máximo 15 minutos con un objetivo específico
Es el responsable de maximizar el valor del producto resultante del trabajo del equipo de desarrollo. Representante del producto. Toma decisiones en caso de que el cliente no esté
Responsabilidades
- Expresar claramente los elementos de la lista del producto
- Dar prioridad a los elementos de la lista de producto
- Optimizar el valor del trabajo del equipo de desarrollo
- Asegurarse que la lista del producto sea visible, transparente y clara
- Asegurarse que el equipo de desarrollo conoce los elementos de la lista de producto
Las decisiones del diseño del producto se reflejan en el contenido y en la priorización de la lista del producto Nadie puede forzar al equipo de desarrollo a que trabaje con base en un conjunto diferente de requisitos
Es responsable de promover y apoyar scrum ayudando a todos a entender la teoría, práctica, reglas y valores de scrum
- Es un líder que está al servicio del Equipo de Scrum
- Ayuda a las personas externas al equipo a entender que interacciones con el equipo scrum pueden ser útiles y cuáles no
- Asegurar que los objetivos, el alcance y el dominio del producto sean entendidos por todos en el equipo de la mejor manera posible
- Entender y prácticar la agilidad
- Facilitar los eventos de Scrum según requiera o necesite
- Guiar al equipo de desarrollo en ser autoorganizado y multifuncional
- Ayuda al equipo de desarrollo a crear productos de algo valor
- Elimina impedimentos para el progreso del equipo de desarrollo
- Está al servicio de toda la organización
- Liderar y guiar a la organización en la adopción de scrum
- Trabajar con otros scrum masters para incrementar la efectividade de la aplicación de scrum en la organización
Consiste en los profesionales que realizan el trabajo de entregar un incremento de producto "Terminado" que potencialmente se pueda poner en producción al final de cada Sprint
- La organización es la encargada de estructurar y empoderar a los equipos para que organicen y gestionen su propiio trabajo
Caracteristicas
- Autoorganizados
- Multifuncionales
- No tienen títulos
- No hay subequipos
- Solo se puede modificar al terminar el sprint
Es una lista ordenada de todo lo que se conoce que es necesario en el producto.
- Es la única fuente de requisitos para cualquier cambio a realizarse en el producto
- La lista de producto nunca está completa, siempre se va desarrollando a medida que avanza el proyecto
- Los elementos en la lista más prioritarios tienen descripciones más completas
- La lista es dinámica; cambia constantemente para identificar lo que el producto necesita para ser adecuado, competitivo y útil
- Es un artefacto vivo, es decir, está cambiando constantemente y en ella residen todos los elementos necesarios para completar el producto
- Los elementos de la lista del producto se denominan como historias de usuario
- Todas las historias de usuario se pueden agrupar en elementos más grandes denominados Épicas
- Las épicas se pueden crear en base a funcionalidades o módulos del producto que se está desarollando
- Estás épicas normalmente requieren más de un Sprint para ser completadas
Son los elementos más específicos de la lista del producto, contienen la visión del usuario sobre la funcionalidad esperada del producto
- El usuario puede ser otra parte del sistema
- Título
- Descripción
- Puntos
- Criterio de aceptación
Ejemplo
La definición de completo son la lista de elementos requeridos para saber que una historia está completa
- Funcionalidad (Criterios de aceptación)
- Código subido en git
- Pruebas creadas
- Documentación
Invirtiendo en historias
- Cards (Tarjetas)
- Conversación
- Confirmación
Críterios
- Independiente
- Negociable
- Valiosa
- Estimable
- Small (Pequeña)
- Testeable (Comprobable)
Los puntos de una historia son un número que representa varias cosas:
- Complejidad de la historia
- Cantidad de trabajo requerido
- Conocimientos necesarios
- Incertidumbre
Los valores de los puntos no tienen conexión con ninguna unidad de medida específica
Sirva para que todo el equipo participe en la estimación de las historias
Puede utilizar distintas escalas:
- Fibonacci modificado (1,2,3,5,8,13,20,40,100)
- 2^n (1,2,4,8,16,32)
Velocidad
- Es el total de puntos de las historias de usuario completados por el equipo durante un sprint
Capacidad
Total de historias de usuario que se pueden completar en un sprint futuro
Video
https://platzi.com/clases/1750-scrum/24286-estimar-historias-de-usuario/
Backlog del Sprint
- Es un subconjunto de la lista del producto y contiene todos los elementos que serán desarrollados durante el Sprint
- De estos elementos dependerá el incremento a desarrollar y los objetivos del Sprint
- Este plan debe tener detalle suficiente como para que todo el equipo sea capaz de comprenderlo en los daily stand-ups (scrum diario)
- Solo el equipo de desarrollo puede aceptar que se agreguen elementos al sprint backlog
- Si un elemento se vuelve innecesario a mitad de un sprint se puede sacar de la lista de pendientes
En cualquier momento del sprint el equipo puede analizar el progreso hecho y revisar si aún se puede cumplir el objetivo planeado al inicio de la iteración
Burn Down Chart
Burn Up Chart
Cumulative flow
Es el corazón de Scrum, es un período de tiempo determinado en que se crea un incremento de producto
- Objetivo claro
- Cualquier cambio dentro del sprint debe ser negociado entre el product owner y el equipo de desarrollo
- Si los objetivos del sprint quedan obsiletos este podría ser cancelado
- Solo el product owner tiene la autoridad para cancelar un sprint
- Es muy poco común cancelar un sprint
- Se planifica todo el trabajo del sprint
- Debe estar presente todo el equipo de scrum
- No debe durar más de 8 horas (Sprints de 4 semanas)
- El scrum master organiza la ceremonia
- Nadie responde correos ni mensajes
Responder preguntas
- ¿Qué podemos entregar al final del Sprint?
- Se trabajan los elementos más prioritarios de la Lista del Producto
- Se discute también el objetivo a lograr en el sprint
- Se necesita saber la capacidad del equipo y la velocidad de la última iteración
- ¿Cómo se logrará hacer ese trabajo?
- Los elementos de la lista de producto seleccionados para el sprint se analizan y se mueven a la lista de pendientes del sprint
- Durante este proceso se hacen las estimaciones de esfuerzos
- EL product owner se encargara de aclarar cualquier duda con algún elemento del Backlog
- Pueden haber invitados que aporten valor a la discusión de las funcionalidades
- No más de 15 min del equipo de desarrollo
- utiliza para planear las próximas 24 horas de trabajo
- El scrum master ayuda a programar la reunión en el mismo lugar y hora todos los días
- Otras personas pueden estar presentes pero no participan
- Optimiza la colaboración entre los miembros del equipo
- Ayuda para medir el progreso para cumplir el objetivo del sprint
Tres prguntas
- ¿Qué hice ayer?
- ¿Qué haré hoy?
- ¿Tengo algún impedimento?
Si existen impedimentos el scrum master sera el encargado de ayudar a resolverlos Si se necesitan más detalles sobre lo discutido, el equipo puede reunirse de ser necesario
Video
https://platzi.com/clases/1750-scrum/24291-el-seguimiento-del-proyecto-daily-stand-up/
Dentro de los procesos de Scrum es altamente deseado siempre tener funcionalidad en la lista de producto listas para implementación
- Se recomienda tener al menos una sesión para refinar historias durante el sprint
- Está reunión es organizada por el scrum master y pueden participar todos los miembros del equipo dedesarrollo. El product owner siempre está presente
- El objetivo de refinamiento de historias es poder tomar las funcionalidades a trabajar en el siguiente sprint y detectar cualquier posible duda o impedimento antes de comenzar el sprint
La revisión de sprint ocurre siempre al final del sprint en ella se demuestran los avances de la iteración y el producto funcional que se contruyo
Retroalimentación rápida con el cliente
- Reunión informal y abierta al diálogo
- No es una reunión de seguimiento
- Facilitada por el scrum master
- No debe durar más de 4 horas para sprints de un mes. Para sprints más cortos la ceremonia deberá durar menos tiempo
Al final de la revisión se tendrá una lista de producto actualizada Importante, guarda las presentaciones y muestra el producto desarrollado
Oportunidades de mejora del equipo
- Positiva y productiva
- No es una reunión para buscar culpas
- No más de 3 horas para un sprint de 1 mes
- Es facilitada por el scrum master
- Participa todo el equipo de scrum
- ¿Qué hicimos bien?
- ¿Qué no hicimos tan bien?
- ¿Qué podemos mejorar?
En base a las respuestas se identifican elementos más importantes, se buscan soluciones y se crea un plan de acción para aplicar mejoras
Scrum es capaz de funcionar con proyectos de 10 personas como proyectos de 100 personas y más
La forma en como está diseñado scrum permite enfrentar proyectos de distintos niveles de complejidad
Es una reunión dónde frecuentemente se encuentran miembros de todos los equipos y que permite coordinar esfuerzos entre los distintos equipos de la organización
- Basada en roles
- Basada en tópicos