En los últimos años, las metodologías ágiles revolucionaron el mundo de la gestión de proyectos y del desarrollo de software. Más que un método que brinda rapidez y flexibilidad a la hora de llevar adelante un proyecto, “Agile” es una filosofía que implica una forma diferente de trabajar y organizarse. Su objetivo es crear productos y servicios de calidad que se ajusten a las necesidades y metas de los clientes, las que cambian a una velocidad cada vez mayor.
En Syloper trabajamos con diferentes aplicaciones de estás metodologías. La que más utilizamos es Scrum, un marco de trabajo Agile que nos permite tomar decisiones con más rapidez y flexibilidad, y nos evita consumir tiempo en variables que ya sabemos de antemano que pueden modificarse.
Metodologías ágiles vs metodologías tradicionales
Las metodologías ágiles de trabajo surgieron en el seno de la industria del desarrollo de software, cuando las empresas de este sector comprendieron que la forma de trabajo tradicional retrasaba mucho la entrega del producto final.
Las metodologías tradicionales se apoyan en un contrato fijo, cerrado, sin comunicación entre los trabajadores, y esto conducía a demoras y a entregas de mala calidad. Habitualmente los procesos se basaban en una planificación detallada: cronograma de entregas, diagramas de Gantt, presupuestos, etc. Esta planificación consumía mucho tiempo del proyecto en sí. Luego venía la ejecución, y si aparecía algún cambio en el proceso, había que invertir mucho tiempo en modificar el plan y volver a empezar.
En resumen, cuando se comenzaba a desarrollar un proyecto nuevo, se ponía en marcha un proceso lineal que podía demorar uno o dos años hasta lograr entregar el producto, con un alto riesgo de que este ya no se adaptara a la demanda del cliente. Cuando esto sucedía, en la mayoría de los casos, se optaba por soluciones de urgencia o incluso por comenzar nuevamente el proyecto desde cero.
Mientras que el sistema tradicional se centra en la planificación inicial, dándole importancia a factores como costos, alcance y tiempo, las metodologías ágiles priorizan la flexibilidad, el equipo de trabajo y la colaboración con el cliente. Es un modelo de mejora continua que se enfoca en el feedback del cliente y en las versiones continuas que se van dando en cada iteración a lo largo de cada proyecto.
Lo esencial detrás del desarrollo de software ágil es que se hace foco en los cambios evolutivos y en la colaboración del equipo para obtener resultados, en lugar de llevar adelante un proceso predefinido. Se busca reaccionar rápido sobre el cambio, sobre lo que irrumpe, y poder ser flexibles sin sacrificar la estabilidad del proyecto. Y eso es lo principal: saber combinar la estabilidad del proyecto con la flexibilidad ante el cambio.
Ventajas de las metodologías ágiles
Las metodologías ágiles para la gestión de proyectos nos brindan innumerables ventajas. Algunas de ellas son:
- Productos de mejor calidad: el modo de trabajar pensando siempre en la mejora continua del producto mejora considerablemente el resultado final. Además, se fomenta un enfoque más proactivo de los integrantes del equipo, pensando en la búsqueda de la excelencia del producto.
- Mayor satisfacción del cliente: al verse integrado, involucrado y comprometido a lo largo de todo el proceso de desarrollo, el cliente se encuentra más satisfecho. Va viviendo en tiempo real las mejoras que se van realizando en el proceso mediante demostraciones y entregas parciales del desarrollo.
- Más control y capacidad de predicción: al tener la oportunidad de revisar y adaptar el producto a lo largo de todo el proceso de desarrollo, los miembros del equipo pueden ejercer un mayor control sobre su trabajo, lo que a la vez permite mejorar la capacidad de predicción en lo que respecta a tiempo, costos y eventualidades.
- Reducción de costos: este tipo de metodologías evitan la posibilidad del fracaso absoluto de los proyectos, debido a que los errores se van solucionando y los cambios se realizan en el transcurso del proceso de trabajo. No se espera a que el producto esté terminado y la inversión total realizada.
- Trabajo más organizado y colaborativo: el trabajo se divide en distintos equipos y roles. A esto se suman las reuniones frecuentes y una mayor comunicación entre los integrantes del grupo. El resultado de esto es una organización del trabajo optimizada y una mayor fluidez en la colaboración entre los miembros del equipo.
Scrum: una de nuestras elegidas para la gestión ágil de proyectos
Existen distintas aplicaciones específicas de metodologías ágiles: Scrum, Kanban, Programación extrema (XP), Lean Startup, etc.
En Syloper trabajamos con todas estas aplicaciones en mayor o menor medida. La que más utilizamos es Scrum, un marco de trabajo Agile que se ha ganado el reconocimiento en el rubro por incentivar a la toma de decisiones y evitar el consumo de tiempo en variables que ya están destinadas al cambio. Se centra en la satisfacción del cliente y que utiliza los recursos disponibles con el fin de acelerar el desarrollo de software en cada una de sus etapas.
Scrum se utiliza para el desarrollo de software, aunque en realidad se puede aplicar a cualquier desarrollo de proyectos. Es una metodología que se utiliza para fabricar productos complejos, en la que se aplican un conjunto de buenas prácticas para trabajar en equipo y obtener el mejor resultado posible en el menor tiempo posible. Siempre aceptando las necesidades y modificaciones que puedan surgir en el proceso.
Scrum es lo suficientemente flexible como para adaptarse a cada proyecto en particular, y es el marco de trabajo ideal para proyectos en entornos complejos, donde se necesita resultados rápidos y los requisitos son cambiantes.
Los valores de Scrum
Según la Guía Oficial de Scrum, para que el uso de esta metodología sea exitoso es necesario que el equipo se guíe por cinco valores: compromiso, enfoque, franqueza, respeto y coraje.
Estos valores le dan una dirección al grupo en lo que respecta a su trabajo, sus acciones y su comportamiento.
Es vital que las personas comprendan e interioricen este sistema de valores. Es lo que permite unificar los comportamientos del equipo y conformar un grupo de trabajo altamente efectivo.
Cuando eso sucede, los pilares empíricos de Scrum de transparencia, inspección y adaptación cobran vida y generan confianza, tanto entre los integrantes como en su ecosistema (managment, comunidad, clientes, etc.).
Beneficios de Scrum
Son muchos los beneficios que nos brinda este marco de trabajo. Enumeramos algunos de ellos:
- Adaptación y flexibilidad ante las necesidades del cliente y en lo que respecta a los cambios del mercado, cada vez más veloces.
- La posibilidad y capacidad de ofrecer resultados anticipados, antes de que el proyecto esté finalizado por completo.
- Aumento de la calidad del producto y de la productividad, debido a que el equipo va mejorando continuamente la forma de trabajar.
- Impulsa la creación de equipos motivados.
El equipo Scrum
El equipo Scrum suele ser pequeño, y dentro del mismo no hay sub-equipos ni jerarquías. Es una unidad formada por profesionales enfocados en un objetivo a la vez, que a la larga constituirán el producto final.
Una de sus características principales es la de ser multifuncional, ya que todos los miembros tienen las habilidades necesarias para crear valor en cada Sprint. También es autogestivo, ya que las personas que lo integran deciden internamente quién, cómo y cuándo se realiza cada tarea. Están estructurados y facultados por la organización para gestionar su propio trabajo.
El equipo Scrum es responsable de todas las actividades relacionadas con el producto a desarrollar. Esto incluye la investigación, la experimentación, el desarrollo, la operación, la verificación, el mantenimiento, la colaboración de todas las partes interesadas, y cualquier otra cosa que sea necesaria. La responsabilidad de crear un incremento valioso y útil en cada Sprint es de todo el grupo en su totalidad.
Los roles en Scrum
Para una mejor organización, dentro del equipo Scrum se definen tres roles principales:
• El Product Owner: representa al cliente y determina la visión del producto. También define las prioridades a la hora de ejercer las tareas.
• El Scrum Master: es el facilitador del equipo, potencia su productividad y supervisa y garantiza el buen uso de Scrum.
• Developers (Desarrolladores): tienen la responsabilidad de la calidad del proyecto y de las entregas parciales y final del producto. Es un equipo auto-organizado.
Los eventos de Scrum
Para trabajar de manera ágil, la metodología Scrum opera a través de eventos. Estos son bloques de tiempo que poseen una duración máxima predeterminada y cuya finalidad es crear regularidad y consistencia.
El ciclo de trabajo de Scrum se compone de los siguientes eventos:
Sprint
El desarrollo del producto se realiza en iteraciones sucesivas llamadas Sprint. Son bloques temporales cortos y fijos. Suelen durar entre dos y cuatro semanas y su contenido no se puede cambiar.
Cada Sprint debe tener un objetivo definido y entregar una muestra que incremente el valor del producto. Su duración es fija y siempre se inicia apenas finaliza el anterior, sin que quede tiempo muerto entre ambos.
Todo es fijo en la ejecución de un Sprint: la duración, las personas que trabajan y el alcance. Por lo tanto, no permite alteraciones de ningún tipo. Pero al ser iteraciones cortas, sí permiten cambiar el rumbo del proyecto.
Sprint Planning
Es una reunión que se realiza para definir el objetivo del Sprint y los ítems del backlog que serán desarrollados o ejecutados. En ella participa todo el equipo de Scrum y entre todos determinan qué se puede entregar en la iteración que comienza y cómo se realizará el trabajo necesario para lograrlo.
Una reunión de Sprint Planning no debería durar más de dos horas por cada semana de Sprint y en ella se abordan temas como el valor de la iteración que comienza, qué se puede realizar en ella y cómo se llevará adelante ese trabajo.
Daily Scrum
Conocida comúnmente como “La Daily”, el Daily Scrum es una reunión diaria de quince minutos de duración en la que participa el equipo de desarrollo. Se realiza todos los días a la misma hora y en el mismo lugar.
Está orientada a realizar una inspección y adaptación a través de la auto-organización del equipo. En ella cada integrante debe referirse a tres puntos esenciales:
- lo que logró hacer el día anterior.
- lo que realizará el día de la fecha.
- los obstáculos que le impiden avanzar.
Sprint Review
La Revisión de Sprint una reunión cuyo propósito es inspeccionar el resultado del Sprint y determinar futuras adaptaciones. Se revisa el trabajo realizado por el equipo de desarrollo, se presentan los resultados ante las partes interesadas y se discute cómo continuará el progreso hacia el objetivo final. La retroalimentación que surge en esta revisión puede afectar el backlog con nuevos ítems, modificaciones o eliminaciones.
El Sprint Review es el penúltimo evento del Sprint y posee un límite de tiempo de cuatro horas para un Sprint de un mes de duración, aproximadamente.
Sprint Retrospective
La Retrospectiva de Sprint es una reunión que busca optimizar el desempeño del equipo. Su objetivo es reflexionar y planificar formas de aumentar la calidad y la eficacia. En ella se analiza cómo fue el último Sprint en lo que respecta a personas, interacciones, procesos, herramientas y resultado final. El equipo reflexiona sobre lo que salió mal, los problemas que encontraron y cómo se resolvieron (o no) esos problemas.
La Sprint Retrospective concluye el Sprint. Tiene un tiempo que se limita a un máximo de tres horas para un Sprint de un mes. Para Sprints más cortos, el evento suele ser más corto.
Los artefactos de Scrum
En el marco de trabajo Scrum, los artefactos representan trabajo o valor, y están diseñados para aumentar la transparencia de la información.
Los tres siguientes son los artefactos principales:
Product Backlog
Es un inventario de todo lo que se necesita para mejorar el producto: requerimientos, casos de uso, tareas, funcionalidades, etc. Es la principal fuente de información sobre el proyecto en Scrum. Se trata de una lista realizada en cualquier formato, y debe ser siempre gestionada por el Product Owner.
Sprint Backlog
Es una lista de todos los elementos en los que hay que trabajar durante el Sprint. Sirve para poder visualizar las tareas a realizar en cada etapa y está gestionado por el equipo de desarrollo. Su finalidad es mantener la transparencia durante el proceso de desarrollo. Se va actualizando durante toda la iteración, especialmente a partir de la información que aportan los Daily Scrums.
Incremento
Se trata del resultado del Sprint. Es la suma de todas las tareas y elementos que se desarrollaron durante la iteración. Cada incremento se suma a todos los anteriores y se verifica cuidadosamente para garantizar que todos los incrementos funciones juntos.
Para poder proporcionar valor, cada incremento debe ser utilizable.
Conclusiones
En el mundo actual, todas las organizaciones operan en un contexto marcado por la incertidumbre y la complejidad. Los cambios son constantes y veloces y el ciclo de vida de los productos es cada vez menos duradero.
Para poder mantener el valor competitivo, es imprescindible que las empresas tengamos la capacidad de acomodarnos en este nuevo entorno. Adoptar formas de trabajo que faciliten la reacción y la adaptación al cambio siempre tendrá como resultado la innovación, la simplicidad, la autonomía y la calidad. Y en este sentido, las metodologías ágiles constituyen una gran herramienta de cara al cliente, al negocio y al mercado.
En Syloper adoptamos la filosofía Agile porque se ajusta perfectamente a nuestros objetivos y valores. Una de nuestras prioridades es poner al alcance de todos las oportunidades que nos brinda esta nueva era digital. Y eso se refleja en nuestros valores: el cliente en un lugar central, nuestro equipo como un todo y la innovación digital.
Y las metodologías ágiles encajan perfectamente con nuestros tres pilares. Nos ayuda a organizarnos, a tener claras las prioridades y a alinear las fuerzas de las distintas áreas de nuestra empresa. Y por sobre todo, nos permite funcionar integradamente como equipo, poner al cliente en primer lugar e innovar, aportando valor de forma global.
✚ Seguí leyendo:
- ITop: gestión de servicios e infraestructura
- Todo lo que deberías saber sobre XaaS
- Accesibilidad web: un camino hacia la inclusión
↓↓↓
⏏ El futuro es hoy. ¿Estás listo para innovar?
❤ Somos Syloper y queremos acompañarte en tu viaje hacia la transformación digital.
✉ Comunicate con nosotros.