El sitio contiene los mejores consejos, trucos y soluciones a los problemas que pueda encontrar. Secretos, trucos de la vida, historias y todo lo relacionado con la vida y las relaciones.

Qué es Agile y Scrum. ¿Qué es Scrum? Equipo Scrum

31

Definición

Agile (desarrollo de software ágil) es una familia de enfoques «ágiles» para el desarrollo de software. Estos enfoques también se denominan a veces marcos o metodologías ágiles.

Agile se originó en el entorno de TI, pero luego se extendió a otras áreas, desde la ingeniería industrial hasta la inteligencia artificial.

El significado de Agile se formula en el Manifiesto de desarrollo de software ágil: «Las personas y las interacciones son más importantes que los procesos y las herramientas. Un producto funcional es más importante que una documentación completa. La cooperación con el cliente es más importante que acordar los términos del contrato. Estar preparado para el cambio es más importante que seguir el plan original «.

El Manifiesto Ágil es el documento maestro de todos los enfoques de desarrollo ágil. Creado en 2001 por un grupo de programadores entusiastas que querían comprender qué es exactamente el núcleo del desarrollo de un producto de TI útil y codiciado, Agile asume que al implementar un proyecto, no es necesario depender únicamente de planes detallados. que se han creado de antemano. Es importante centrarse en las condiciones en constante cambio del entorno externo e interno y tener en cuenta los comentarios de los clientes y usuarios. Esto anima a los desarrolladores e ingenieros a experimentar y buscar nuevas soluciones sin verse limitados por marcos y estándares rígidos.

Los enfoques ágiles separados incluyen scrum y kanban.

Scrum es un «enfoque estructurado». En cada proyecto trabaja un equipo universal de especialistas, al que se suman dos personas más: el product owner y el scrum master. El primero conecta al equipo con el cliente y monitorea el desarrollo del proyecto; este no es un líder de equipo formal, sino más bien un curador. El segundo ayuda al primero a organizar el proceso empresarial: realiza reuniones generales, resuelve problemas cotidianos, motiva al equipo y supervisa el cumplimiento del enfoque scrum.

El enfoque Scrum divide el flujo de trabajo en sprints iguales, generalmente períodos de una semana a un mes, según el proyecto y el equipo. Antes del sprint, se formulan las tareas para este sprint, al final, se discuten los resultados y el equipo comienza un nuevo sprint. Los sprints son muy convenientes para comparar entre sí, lo que le permite administrar la eficiencia del trabajo.

Kanban es un «enfoque de equilibrio». Su tarea es equilibrar a los diferentes especialistas dentro del equipo y evitar una situación en la que los diseñadores trabajan día y noche y los desarrolladores se quejan de la falta de nuevas tareas.

Todo el equipo es uno: no hay roles de propietario de producto ni de maestro de scrum en Kanban. El proceso empresarial no se divide en sprints universales, sino en la etapa de realización de tareas específicas: «Planificado», «Desarrollado», «Probado», «Completado», etc.

El principal indicador de rendimiento en kanban es el tiempo medio que se tarda en completar una tarea en todos los ámbitos. La tarea pasó rápidamente: el equipo trabajó de manera eficiente y sin problemas. La tarea se retrasó: hay que pensar en qué etapa y por qué hubo retrasos y qué trabajo debe optimizarse.

Para visualizar enfoques ágiles se utilizan tableros: físicos y electrónicos. Le permiten hacer que el flujo de trabajo sea abierto y comprensible para todos los especialistas, lo cual es importante cuando el equipo no tiene un líder formal.

¿Qué es Agile?

Agile es un enfoque para la gestión de proyectos o el desarrollo de software. En Agile, los requisitos y las soluciones evolucionan a través de la iteración y el esfuerzo colaborativo de equipos multifuncionales y autoorganizados y usuarios comerciales. Agile da la bienvenida a los requisitos cambiantes, incluso en una etapa posterior. Los clientes, los participantes comerciales y los desarrolladores trabajan juntos durante todo el proyecto. Los equipos ágiles ajustan su comportamiento para satisfacer las necesidades cambiantes del proyecto.

Agile es una filosofía u orientación (Griffin). Agile se usa ampliamente como guía para acercarse al trabajo del proyecto. Agile enfatiza la iteración del desarrollo, así como las pruebas en el ciclo de vida del desarrollo de software (SDLC). Agile descompone un producto o proyecto completo en conjuntos pequeños. En la metodología ágil, el desarrollo o las pruebas ocurren al mismo tiempo. Agile admite la colaboración y la comunicación directa.

¿Qué es Scrum?

Scrum es la base para la gestión de proyectos o el desarrollo de software. Scrum es uno de los procesos ágiles. Scrum se enfoca en brindar valor comercial a los usuarios comerciales en una cantidad mínima de tiempo. Los proyectos se dividen en sprints, que suelen durar de una a tres semanas. Scrum tiene tres roles principales: scrum master, product owner y miembros del equipo.

Scrum enfatiza la autoorganización y la propiedad compartida entre los miembros del equipo. Considera la gestión de proyectos como un proceso de creación de valor compartido; y enfatiza la colaboración y el desarrollo iterativo para gestionar eficazmente el cambio y crear mejores productos para satisfacer las necesidades de los clientes. Scrum ve el tiempo como una limitación. Enfatiza el tiempo de boxeo y utiliza reuniones de revisión y planificación de sprints diarios.

Similitudes entre Agile y Scrum:

Agile y scrum están relacionados con la gestión de proyectos y el desarrollo de software. Dado que Scrum es una de las formas de implementar Agile, ambas tienen varias similitudes. Ambos enfatizan el uso óptimo de los recursos. Ambos enfatizan la gestión eficiente y eficaz de diversas tareas.

Ágil y scrum, ambos apuntan a aprovechar al máximo a los usuarios comerciales. Intentan asegurarse de que un producto o proyecto se entregue a los usuarios comerciales lo antes posible. Ambos enfatizan la mejora continua, la colaboración, la comunicación abierta, etc.

La naturaleza de Agile y Scrum:

Agile es una metodología de desarrollo basada en un enfoque incremental e iterativo; mientras que Scrum es uno de los muchos esquemas de implementación o procesos ágiles.

Scrum proporciona módulos incrementales al cliente cada semana o quincena.

Ejemplos de uso

Uno de los principios de Agile se basa en la responsabilidad personal de una persona, no en depurar procesos internos.

(De un artículo sobre VC.ru)

Cuando trabajamos con equipos profesionales usamos Scrum, la mayoría de las veces elegimos un ciclo de 2-3 semanas con reuniones retrospectivas que nos permiten mantener todo bajo control.

(De una entrevista con Vedomosti con Frank Sosier, entrenador de Freestanding Agility)

La idea principal de Kanban es la visualización del flujo de trabajo. Consiste en crear un tablero físico en el que marcar visualmente tu progreso.

(De la traducción de la columna de Forbes en Rusbase)

Si hablamos de lo ágil, me limitaría a esa frase, es un conjunto de valores en cuyo marco construimos nuestro trabajo con productos, con procesos dentro de la organización.

(Alexey Pimenov, socio gerente de ScrumTrek en un artículo sobre Rusbase)

Cómo y por qué apareció la metodología scrum

Antes de la llegada de Scrum, el enfoque en cascada se adoptó en el mundo del desarrollo de software. El trabajo en el producto se llevó a cabo de acuerdo con el siguiente plan.

  1. Defina los requisitos del producto.
  2. Planifique todo el proyecto de principio a fin.
  3. Escribe el código.
  4. Prueba el producto.

Los desarrolladores coordinaron el plan de trabajo con el cliente y siguieron estrictamente los términos de referencia. Cuando el producto estuvo listo, se probó, pero ya no fue posible cambiar algo. Por lo tanto, si se detectaban errores, tenían que empezar de nuevo y aumentaba el tiempo de trabajo.

Esto fue hasta que un grupo de innovadores decidió cambiar la situación por completo. Observaron cómo funcionan los equipos exitosos: sin perder plazos y obteniendo exactamente el resultado que planearon. Resultó que el éxito estuvo en la flexibilidad del proceso.

Las lecciones aprendidas ayudaron a crear el Manifiesto de desarrollo de software ágil. Incluía solo cuatro puntos, pero cambiaron por completo el proceso.

Manifiesto de desarrollo de software ágil

1 Las personas son más importantes que las herramientas.
2 La calidad del producto es más importante que la documentación.
3 La interacción con el cliente es más importante que el contrato.
4 La preparación para el cambio es más importante que un plan establecido.

Estos cuatro puntos fueron la base para el surgimiento de Agile, el proceso de desarrollo de software flexible. Posteriormente se crearon 12 principios, que aún se utilizan en cualquier metodología ágil.

12 principios ágiles

1 Lo principal es un buen software y un cliente satisfecho.
2 Disponibilidad para el cambio en cualquier momento.
3 Software en pleno funcionamiento, con la mayor frecuencia posible.
4 La reunión de equipo es la mejor para el intercambio de información.
5 El cliente y el equipo de desarrollo deben trabajar juntos.
6 Confíe en las personas para hacer su trabajo.
7 Hay software en funcionamiento, hay progreso.
8 Procesos ágiles: desarrollo continuo.
9 La atención a la calidad fomenta la flexibilidad.
10 La simplicidad del proceso elimina el trabajo innecesario.
11 El equipo autoorganizado funciona mejor.
12 Búsqueda continua de una mayor eficiencia.

Ágil y cascada, escalas

Una de las metodologías para el desarrollo ágil de software, que se basa en principios ágiles, es Scrum.

Los creadores de Scrum, Jeff Sutherland y Ken Schwaber, han observado el trabajo del ejército estadounidense, las fuerzas especiales e incluso los jugadores de rugby durante muchos años. Y notaron que su éxito se basa en la interacción y el trabajo en equipo. Sutherland y Schwaber se dieron cuenta de que esto era exactamente lo que necesitaban los desarrolladores de software. Así apareció la metodología Scrum.

Principios básicos de Scrum

Scrum siempre está enfocado en el cliente, quien debe recibir el producto deseado a tiempo y al menor costo. Esto se puede lograr siguiendo algunos principios esenciales.

Trabajar en ciclos cortos (sprints)

Planifique un sprint, no todo el proyecto a la vez. Cada sprint es un período de tiempo durante el cual el equipo trabaja en una parte completamente terminada del producto.

Flexibilidad. «Verificar y adaptar»

Flexibilidad del proceso y prueba del producto después de cada sprint. Si algo sale mal, el equipo siempre está listo para cambiar la estrategia de desarrollo o revisar el backlog Backlog Una lista ordenada de tareas en las que el equipo scrum está trabajando al crear un producto.

Participación del cliente y usuarios en la creación del producto.

El cliente no se hace a un lado, sino que participa plenamente en el trabajo. Para ello, está el papel del propietario del producto, que lo desempeña el propio cliente o su representante. Es a través de él que el equipo interactúa con los usuarios. Dado que el desarrollo se lleva a cabo en etapas cortas, los usuarios se involucran en las pruebas casi de inmediato.

Después de la prueba inicial, se les da acceso al producto y el propietario del producto recopila comentarios. Así es como el equipo puede mejorar el resultado.

Interacción de equipo

Un equipo Scrum es un grupo de personas que trabajan por un resultado y como un todo. Todos luchan por un objetivo común.

La importancia del equipo scrum

Un equipo de scrum suele ser un grupo de cinco a nueve personas. Este es el número óptimo, pero a veces hay equipos de tres. Si hay más personas, se les hace más difícil interactuar entre sí, lo que interfiere con el trabajo y reduce la productividad.

Estructura de mando

  • Dueño del producto. La persona que representa el producto y es el intermediario entre el cliente, los usuarios y el equipo de desarrollo. A veces puede ser el propio cliente.

  • Scrum master. La mayoría de las veces, un empleado especialmente contratado que dirige al equipo hacia el resultado. No administra el equipo, pero supervisa la implementación de los principios básicos de Scrum. Su tarea no es presionar, no hacer todo el trabajo él mismo y no distribuir responsabilidades, sino ayudar, dirigir y resolver los problemas que obstaculizan el proceso de desarrollo.

  • Desarrolladores. Un equipo de scrum siempre tiene personas con diferentes conjuntos de habilidades. Entonces, un equipo de cinco a nueve personas lidera todo el proyecto de principio a fin. Un equipo, un producto terminado.

Cómo se ve un equipo de scrum

Distribución de roles

Scrum funciona cuando hay una distribución de roles. Hay tres de ellos.

Equipo. Este es un grupo auto-organizado de 3-9 personas. No se evalúa la contribución de un empleado individual. Solo es importante el resultado que el equipo haya logrado mediante esfuerzos conjuntos.

Dueño del producto. Suele ser un emprendedor que conoce su negocio y comprende las necesidades de los clientes. Tiene suficiente experiencia para saber cuál debería ser el producto terminado. El Product Owner es el vínculo entre el equipo, el consumidor y la producción. Trabaja con retroalimentación, toma decisiones importantes y monitorea el presupuesto del proyecto. El propietario del producto no le dice al equipo qué camino tomar, solo mira el resultado.

Scrum Master o Team Leader. El Scrum Master es responsable del éxito del equipo. No toma decisiones y no lidera. Su tarea es hacer que el equipo funcione sin influencia de la gerencia. El Scrum Master es el pegamento que mantiene unido al equipo.

Herramientas de Scrum

Scrum es una técnica de planificación flexible que se adapta a cualquier proyecto. Con su ayuda, puede aumentar la productividad de la empresa y lograr mejores resultados. Por ejemplo, el equipo solía dedicar un mes a una tarea y medio mes a mejoras. Ahora la misma tarea llevará 2 semanas y lo más probable es que no haya mejoras.

Instrucciones: cómo usar Scrum para trabajar como Ajail

Scrum es más simple que otros marcos. Él da las herramientas y sugiere en qué secuencia usarlas para lograr el resultado.

Scrum sugiere hacer esto:

  1. Para inflar la base teórica: lea libros sobre el tema y vea video conferencias. Las grabaciones de las conferencias de Agiledays están disponibles en YouTube en el canal. En la comunidad, los seguidores de Scrum comparten sus experiencias; puedes aprender de ellos.
  2. Seleccione un propietario de producto. Esta es la persona que presenta el producto terminado en detalle. También evaluará riesgos, beneficios y tomará decisiones estratégicas.
  3. Reúna un equipo de 3 a 9 personas. El equipo debe tener personas que tengan suficientes conocimientos y habilidades para trabajar en el proyecto.
  4. Designe un Scrum Master o contrate a un profesional de una agencia de consultoría.
  5. Invite al propietario del producto a escribir un trabajo pendiente y deje que el equipo lo evalúe. Es genial si el equipo lo califica no en horas, sino en unidades relativas.
  6. Programa un sprint. Debe tener una duración fija y una lista precisa de tareas que no se pueden complementar.
  7. Haz que el trabajo sea transparente. Cada miembro del equipo debe ver qué tareas ya se han resuelto y cuáles aún deben trabajarse. Para hacer esto, necesita herramientas: una tabla de scrum o un diagrama de agotamiento.
  8. Llevar a cabo reuniones diarias de todo el equipo es un Scrum diario. En las reuniones, los miembros del equipo verifican los resultados de los demás, observan en qué etapa se encuentra el proyecto y deciden cómo avanzar hacia la meta. La reunión dura 15 minutos. Si lleva más tiempo, entonces el equipo y el Scrum Master están haciendo algo mal.
  9. Termina el sprint con una revisión. Revisión de Sprint: una reunión a la que asiste cualquier persona interesada: consumidor, cliente, propietario del producto, scrum master. En la reunión, el equipo muestra el producto terminado o parte de él. No importa lo que sea, lo principal es que cumpla con su función.
  10. Realice una reunión retrospectiva inmediatamente después de la revisión del sprint. Cuando el equipo ha mostrado un producto funcional, todos se sientan a la mesa y analizan el sprint. ¿Qué salió bien? ¿Qué se puede mejorar? ¿Qué obstáculos superó el equipo? Al final de la reunión, el Scrum Master y el equipo deben pensar en cómo hacer que el próximo sprint sea aún mejor.
  11. ¡Programe un nuevo sprint de inmediato!

¿Para quién es Agile?

Agile está cambiando la forma en que enfocamos la vida y el espíritu empresarial. Te enseña a responder rápidamente a las circunstancias y a adaptarte a ellas.

Agile trabaja en todas partes: en gestión, comercio, servicios. Alguien lo usa para administrar sus propias vidas y mantenerse al día con todo.

Pero nadie puede garantizar que ayudará a una empresa en particular. Si la empresa es pequeña, es más fácil cambiar la opinión de las personas. Las grandes corporaciones lo encuentran más difícil: cuando hay varios departamentos y cada uno tiene su propio líder, la implementación de Agile puede retrasarse. El equipo se resistirá al cambio. Para hacerlo más fácil, estas empresas invitan a coaches ágiles.

Agile no es adecuado para quienes han estado fabricando un producto típico durante muchos años seguidos. Es más rentable para estas empresas fabricar miles de sillas iguales a la vez: todavía habrá pedidos. Pero tan pronto como aparece un cliente con deseos especiales, necesita exactamente la misma silla, pero deje que las patas sean más anchas y la tapicería sea más brillante: se necesita Agile.

Unas palabras a los expertos

Dependiendo de las tareas, aplicamos diferentes métodos dentro de la filosofía: ágil, scrum, kanban.

Scrum le permite desarrollar las cualidades necesarias en los empleados: proactividad, independencia, organización, habilidades de comunicación y previsión. El punto principal del método es realizar tareas en equipos autoorganizados, donde todos tienen su propio rol y todos son responsables de su parte del trabajo. Usando scrum, realizamos encuestas al personal, elaboramos gráficos de la velocidad esperada de finalización de las tareas.

Usamos Agile en las comunicaciones internas. Recientemente, realizamos otro sprint para eliminar las tardanzas de los empleados. Todos los jefes y especialistas involucrados en el proyecto pasaron todo el día en la reunión, discutiendo los logros, desafíos y próximas tareas en el nuevo sprint.

Ahora estamos introduciendo activamente el método kanban en la empresa. El objetivo de la implementación de kanban es aumentar la flexibilidad de producción y adaptarse mejor a las cambiantes demandas del mercado. En la práctica, el método nos ayudó a lograr una correspondencia entre el stock del almacén y los productos realmente utilizados en la producción.

Un punto importante: la metodología ágil es una dirección general, y kanban y scrum ya son sus variedades.

Usamos el paquete scrum + cascada y también refinamos la tabla ágil durante el año. Razón principal de uso: transparencia y sencillez. De hecho, esto resulta ser el mismo conducto de Henry Ford: la transición de una tarea de un estatus a otro con un cambio de ejecutante, por lo tanto, el principio fundamental para el tablero ágil en sí ya es la simplicidad.

Usamos Agile como parte directa de nuestro flujo de trabajo, por lo que todos los proyectos, desde el desarrollo de la marca y el sitio web hasta nuestra IA y la startup de publicidad nativa NativeOS, se llevan a cabo en Chernika exactamente de acuerdo con este flujo de trabajo.

Un producto funcional es más importante que la documentación detallada. Esto no significa que no mantengamos ninguna documentación, no. Más bien, es una mirada hacia la eficiencia con un golpe a la burocracia innecesaria.

Scrum aportó ritmo y comprensión a nuestro equipo, ya sea que lleguemos a tiempo o no. Vemos la velocidad del trabajo del equipo, no hay sensación de follar constantemente. Anteriormente, había situaciones en las que antes de los lanzamientos duros el scrum desaparecía en algún lugar y todos comenzaban a darse cuenta; ahora lo hemos perdido, hay una sensación constante de que estamos a tiempo. Si surgen riesgos, los discutimos con PD desde el principio, ajustamos el plan o reducimos el alcance de las tareas de alguna manera.

El trabajo se volvió más transparente, la jornada laboral comenzó a ajustarse a la norma de las 8 horas y parecía que empezábamos a hacer más. Entendemos que cuando tiene la sensación de que no está haciendo lo suficiente, siente que necesita trabajar más duro; esto tiene un efecto muy negativo en la productividad, debe deshacerse de él.

Para mayor claridad y apertura del trabajo del departamento de desarrollo, colocamos un tablero especial marcado como «por hacer», «en progreso», «revisar», «probar», «hecho», donde todos los miembros del equipo pegan pegatinas con las tareas (en la columna «por hacer»), y a medida que se completan, se mueven a los puntos siguientes, y un final feliz es el final «hecho». Esto ayuda a tener una visión general y permite ver lo que es cada participante trabajando en.

Un punto muy importante del método (y organización del flujo de trabajo): después de la aprobación de todas las tareas («por hacer»), la lista se bloquea para su inserción. Por lo tanto, las nuevas tareas entrantes no distraen del proceso y no ralentizan el trabajo.

Todos los participantes también evalúan cada tarea en términos de tiempo y costos de materiales que deberán completar. Y la cereza en la cima son las reuniones diarias en un momento específico (Daily Scrum), donde cada miembro del equipo habla brevemente sobre lo que va a hacer hoy, lo que hizo ayer (y si enfrentó algún obstáculo). Esto es importante en el camino hacia los objetivos a largo plazo; así es como puede comprender a tiempo que es hora de cambiar su estrategia.

Implementamos Scrum en dos intentos porque todos, desde el equipo hasta los usuarios, quieren un resultado más predecible. Esta es una ventaja de la metodología: los ritmos claros agilizan el equipo y aumentan el nivel general de conocimiento sobre el proyecto. Como resultado, el resultado se vuelve más predecible, incluso para nuestras «partes interesadas»: los usuarios.

El trabajo en equipo también aumenta la responsabilidad: todos reciben una bonificación solo si el equipo ha completado las tareas establecidas en una determinada etapa.

Inga Koryagina
Agile es una filosofía, scrum es una estructura, la cascada es un método, kanban es un sistema de gestión. Scrum y kanban son opciones ágiles, pero tienen algunas diferencias claras. Scrum requiere roles fijos, mientras que kanban carece de los roles requeridos. Scrum se basa en iteraciones que combinan planificación, optimización de procesos y lanzamiento. En Kanban, puede hacer esto con regularidad o cuando lo necesite. El equipo de scrum requiere una evaluación de su trabajo, mientras que el equipo de kanban no.

Fuentes utilizadas y enlaces útiles sobre el tema: https://rb.ru/story/agile-scrum-kanban/ https://ru.esdifferent.com/difference-between-agile-and-scrum https: // skillbox. ru / media / management / kak_ponyat_scrum / https://allo.tochka.com/agile-scrum

Fuente de grabación: lastici.ru

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More