4.1 ¿Qué es Scrum?
Ya entendiste que todo lo relacionado con el desarrollo está estandarizado. ¿Y si te digo que absolutamente todo está estandarizado? Y no solo estamos hablando de los nombres de variables y funciones, aunque ellos también lo están🤦♂️.
Existe una metodología de desarrollo llamada Agile y su implementación popular es Scrum. Scrum también se llama framework, ya que define todos los procesos en un equipo. Cuándo deben realizarse reuniones, quién debe estar presente, qué se debe discutir, cuáles deben ser los resultados de las reuniones y cómo deben registrarse.
"¿Pero por qué tanta estandarización?", preguntarás. Bueno, en primer lugar, trabajas en un sector de alta tecnología, high-tech y todo eso. En segundo lugar, es más fácil trabajar juntos. Y en tercer lugar, en el nombre de tu profesión Python Fullstack Software Engineer, presta atención a la última palabra: ingeniero. Y entenderás de dónde viene todo esto.
4.2 Cómo es trabajar con Scrum
Scrum es una metodología ágil de gestión de proyectos, frecuentemente utilizada en el desarrollo de software. Basada en procesos iterativos e incrementales.
Scrum divide los proyectos en ciclos de desarrollo llamados sprints, que usualmente duran de una a cuatro semanas. Cada sprint comienza con la planificación de tareas que deben completarse y termina con una presentación donde el equipo muestra los resultados alcanzados.
Los elementos clave de Scrum incluyen roles, eventos y artefactos.
Los roles principales son el Product Owner, quien define los requisitos del producto, el Scrum Master, que apoya el proceso de acuerdo con las reglas de Scrum, y el equipo de desarrolladores, que realiza el trabajo.
Los eventos principales son reuniones diarias (daily meetings o daily stand-ups), planificación de sprints, retrospectivas y demostraciones de resultados del trabajo. Los artefactos incluyen el backlog del producto (lista de tareas), el backlog del sprint y el incremento del producto.
¡No te asustes! Aunque la regulación de todo parezca un poco intimidante, trabajar "con Scrum" es fácil y agradable. Scrum resolvió el conflicto principal entre los desarrolladores y los clientes/propietarios del producto.
Los desarrolladores siempre pedían que los dejaran en paz para trabajar tranquilamente. Y los propietarios del producto necesitaban con urgencia añadir nuevas características, cambiar algo, o realizar algún experimento.
Scrum dividió el desarrollo en períodos estables — sprints (usualmente de 2 semanas). Durante un período, los desarrolladores solo realizan las tareas que estaban planificadas para el sprint actual. Si el cliente necesita hacer algo urgentemente, añade esas características al próximo sprint.
4.3 Sprint y Scrum Board
Sprint es el ciclo de desarrollo principal en Scrum, con una duración de una a cuatro semanas. Como ya mencionamos, durante este período el equipo trabaja en completar un conjunto específico de tareas del backlog del producto.
Al inicio de cada sprint se realiza una planificación, donde el equipo selecciona tareas del backlog del producto y se compromete a realizarlas. El sprint termina con una demostración del trabajo realizado y una retrospectiva, donde el equipo analiza el proceso de trabajo sobre el sprint y busca maneras de mejorar el siguiente sprint. Este enfoque permite actualizar regularmente el producto y reaccionar rápidamente a los cambios en los requisitos y prioridades.
Durante el sprint actual, los desarrolladores y el propietario del producto deben reunirse en una reunión y discutir las tareas para el próximo sprint.
Backlog, o backlog, es la lista de todas las tareas que deben completarse. En Scrum se distingue entre el backlog del producto, que incluye todos los requisitos del producto (características), y el backlog del sprint, que consta de tareas seleccionadas para realizar en el sprint actual. El backlog es un documento vivo que se actualiza y revisa regularmente para asegurar su alineación con los objetivos de negocio actuales y las condiciones del mercado.
El backlog del sprint actual se suele representar en forma de Scrum Board, un tipo de tablero con tareas y estatus. El tablero se divide en columnas que generalmente representan etapas de realización de tareas, como "Por hacer", "En proceso", "En revisión" y "Hecho". Esto permite a todo el equipo ver el progreso y identificar fácilmente cualquier obstáculo en el proceso de trabajo.
GO TO FULL VERSION