Hola chicos, les quiero compartir esta pequeña publicación donde estaremos hablando sobre la calidad del software por medio de SCRUM. 

 

Quisiera iniciar con algunos puntos que se llevan a cabo en los proyectos exitosos; decimos que un proyecto exitoso es aquel que cuenta con la participación del usuario, tiene el apoyo de los directivos en todo tiempo, los requisitos están bien definidos, tiene una buena planeación, el proyecto se divide en metas cortas, tiene un equipo de trabajo comprometido y también tiene personas con las habilidades(skills) exactas que el proyecto necesita, que el equipo de desarrollo se sienta parte del proyectos es muy importante para que el proyecto tenga éxito; por ejemplo, el darles la opción a los colaboradores del proyecto en realizar estimaciones del proyecto eso sería hacerlos parte del proyecto y entre otros puntos importantes el tener la visión y los objetivos claros del proyecto.

Ahora bien, cuando hablamos de desarrollo Ágil nos estamos refiriendo a un enfoque interactivo, manejado por tiempos controlado para construir y entregar software de manera incremental desde el inicio del proyecto, en lugar de esperar entregar todo hasta el final. 

También hay otra definición donde se dice que el desarrollo ágil es el conjunto de metodologías de desarrollo de software.

Ahora bien, en el año 2001 hubo un grupo de Ingenieros y críticos que se reunieron para llevar a cabo una plática sobre cómo sería un mejor camino para manejar proyectos de software y ellos concluyeron en un “Manifiesto ágil” que decía: “Estamos descubriendo  formas de mejorar el desarrollo de software tanto para nuestra propia experiencia cómo ayuda a terceros”. A través de este trabajo declararon que los siguientes puntos son importantes sobre cualquier otra cosa: 

1.- Individuos e interacciones sobre procesos y herramientas.
2.- Software que funciona sobre documentación exhaustiva.
3.- Colaboración con el cliente sobre negociación de contratos. 
4.- Responder al cambio sobre el seguimiento de un plan. 

Entrando en materia la palabra ágil cómo tal quiere decir; veloz, adaptable, compacto.

¿Qué es SCRUM?

Es un marco de trabajo dentro del cuál se pueden atender problemas complejos, proponiendo soluciones creativas y productivas con el fin de entregar producto del mayor valor posible. SCRUM es ligero, fácil de entender y dificil de dominar. 

SCRUM es útil para trabajar con requerimientos cambiantes, proyectos donde se necesita obtener prontos resultados.

Las empresas que actualmente utilizan SCRUM son Microsoft, Disney, Nokia, Google, Time Warner, Amazon, Yahoo, Blizzard, entre muchas más. 

Los criterios más importantes para aplicar SCRUM es la tecnología y el requerimiento. Se dice que el método de software en cascada no es SCRUM.

La metodología tradicional: método de cascada, el tamaño del proyecto es bastante amplio y el liderazgo es control y comando.

La metodología ágil: Es por interacciones, proceso iterativo. La perspectiva de cambio es adaptable al retorno de inversión y a través del desarrollo del proyecto se van viendo los resultados del mismo.

Ciclo de vida de SCRUM el desarrollo es iterativo(sprints) en SCRUM cómo bien lo mencionamos, aquí se prioriza cada uno de los desarrollos en base a las necesidades del cliente.

Los pilares del SCRUM son la transparencia, adaptación e inspección.

pilares.png

Los elementos del SCRUM

El equipo de SCRUM es el Product Owner, el SCRUM Master y el Development team. 

A continuación describiré cada uno de los integrantes del equipo de SCRUM

Product Owner: Es el representante de todas las personas interesadas en el resultado del proyecto, actúa cómo interlocutor único ante el equipo con la actividad.

productowner.jpg

SCRUM Master: Es aquella persona que elimina los impedimentos que limitan al proyecto en desarrollo, es un moderador, apoya las técnicas y prácticas del SCRUM.

scrummaster.jpg

Nota: Se recomienda que los PM(Project Managers) se certifiquen en SCRUM Master. 

Development team(equipo de desarrollo): Son aquellas personas autodirigidas, aquellas personas que conforman un equipo multidisciplinario, SCRUM nos dice que todas las personas del equipo pueden colaborar en las diversas actividades y pueden realizar sus propias estimaciones dentro del proyecto. 

developmentTeam.jpg

SCRUM también tiene los siguientes conceptos:

Product backlog que no es nada más que una lista ordenada de todo lo que debe contener el producto(solución). 

Sprint Backlog son todos los conceptos acordados durante el sprint.

Sprint Planning meeting es una reunión en la que se planean las metas del sprint, duración del sprint y se definen las historias que el sprint contendrá. 

Daily SCRUM es una pequeña reunión de 15 minutos donde se pregunta a cada uno de los participantes del proyecto: ¿Que hiciste ayer?, ¿Qué harás hoy? y ¿Qué problemas has tenido? - Estos registros quedan anotados por el SCRUM Master. 

En las revisiones de los Sprint se presenta el objetivo inicial del sprint a presentar y los resultados obtenidos en ese sprint al cliente, la demostración del requerimiento completado en forma real. Aquí es donde el Product Owner toma nota de todos los errores o cambios vistos por el cliente, se mencionan algunos errores solucionados, se identifican cambios. Lo más importante en esta revisión es que se le presentan avances al cliente. 

Hay otro termino que SCRUM define cómo Sprint retrospective que es una pequeña reunión con todos los integrantes del equipo donde se analiza que se hizo bien y que se puede mejorar. 

Para finalizar esta publicación se dice estadísticamente que desde el 2009, 73.68% de las empresas han adoptado metodologías ágiles y 2 de cada 3 usuarios están dispuestos a cambiarse a metodologías ágiles, todo esto para producir un mejor resultado de proyectos y que el cliente quede satisfecho con el proyecto y no nada más visualize porcentajes de avances. 

Fuente: "Administración de Proyectos Tradicional vs Administración Ágil" - ENEVASys

@telecristy. 


 

¿Te gustaría ser nuestro Patreon? https://www.patreon.com/codejobs

¿Te gustó esta publicación? Márcala como favorita