Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Desarrollo Ágil con Scrum
1. miticatechnology.com/index.php/blog/16-nuevas-tecnologias/68-desarrollo-agil-de-software-scrum
Desarrollo Ágil de Software: Scrum
Buenos días a tod@s,
Como ya comenté en mi primer post, "El Rincón de Joaquín" iba a ser un espacio abierto en
el que otras personas relacionadas con la tecnología aplicada a la informática pudieran
compartir sus visiones o conocimientos al respecto. Esta semana, mi compañero David
Julián (Responsable del proyecto de la plataforma de gestión de Realidad Aumentada
MiRA) nos aporta su conocimiento sobre metodologías ágiles de desarrollo de software.
Personalmente, me parece muy interesante y le agradezco que nos aporte este
conocimiento de metodologías de desarrollo de software:
"Una de las primeras cosas de las que un imberbe informático es consciente cuando se
enfrenta por primera vez a proyectos reales de gran envergadura, es la ineficacia de las
metodologías tradicionales del desarrollo de software como herramientas para la mayoría
de los proyectos actuales. Y es en ese mismo momento en el que uno se pregunta por qué
no dedicó más tiempo a los últimos temas de aquella asignatura cuyo título rezaba algo
así como Dirección y Gestión de Proyectos, temas por los que la profesora pasaba de
soslayo, apresurada por el poco tiempo con el que habitualmente llegan al último tramo del
curso.
Uno pronto se da cuenta de que estas metodologías tradicionales en muchos casos están
obsoletas para hacer frente a proyectos de software actuales. Se soportan en procesos
detallados y rigurosos propios de otras ingenierías y el principal problema de este enfoque
es el coste que suponen muchas de las actividades que se deben llevar a cabo para seguir
1/3
2. esta metodología, lo que retrasa la etapa de desarrollo. Todo se vuelve muy controlado por
políticas y normas en un proceso secuencial que va en una sola dirección y sin marcha
atrás.
Fue en los años noventa cuando surgieron metodologías de desarrollo ligeras dirigidas a
proyectos de desarrollo de software. Pero como en toda buena comunidad de vecinos,
hacía falta un documento, algo que sentara las bases de lo que debía ser y no ser. Y así
fue. El término ágil aplicado a desarrollo de software nació en febrero de 2001, en una
reunión entre diecisiete representantes de diferentes metodologías ligeras en una estación
de esquí en Utah (EEUU). Fue allí, en aquel resort, preocupados entre comidas, deporte y
relax, donde redactaron el Manifiesto del Desarrollo de Software Ágil. Este manifiesto
consta de doce principios (http://agilemanifesto.org/iso/es/principles.html) que deben
regir la vida de un responsable de un proyecto de software.
En cuanto uno se adentra en este mundo, descubre la tendencia de definir a XP y Scrum
como los métodos de desarrollo ágil más relevantes. Pese a lo que pueda parecer, XP no
hace referencia al Sistema Operativo ni a los puntos de experiencia de algún videojuego de
moda, si no a Extreme Programming, puede que la metodología ágil más conocida.
Sin embargo, no hablaré de XP, sino de Scrum. La metodología con la que más he
trabajado desde que dejé de considerarme como un imberbe informático. Su nombre no
corresponde a ninguna sigla, sino que hace referencia al rugby, a la formación requerida
para la recuperación rápida del juego ante una infracción menor.
Veamos una definición de los términos más importantes de Scrum, pero antes he
preparado el siguiente diagrama con su ciclo de vida:
2/3
3. Product Backlog: Es una lista –ordenada por valor, riesgo, prioridad y necesidad- de los
requerimientos que el dueño del producto define, actualiza y ordena. La lista tiene como
característica particular el que nunca está terminada, pues evoluciona durante el desarrollo
del proyecto.
Sprint: Corresponde a una ventana de tiempo donde se crea una versión utilizable del
producto (incremento). Cada Sprint, como en el rugby, es considerado como un proyecto
independiente. Su duración máxima es de un mes, aunque generalmente suelen
comprender el período de dos o tres semanas.
Sprint planning: En esta reunión se define el plan de trabajo: qué se va a entregar y cómo
se logrará. Es decir, el diseño del sistema y la estimación de cantidad de trabajo que el
equipo puede asumir.
Daily Scrum: Es un evento del equipo de desarrollo de quince minutos aproximadamente,
que se realiza cada día con el fin de explicar lo que se ha alcanzado desde el día anterior, lo
que se hará durante el día y los obstáculos que se han presentado. Este evento se
desarrolla mediante una reunión que normalmente es llevada a cabo de pie con los
participantes reunidos en círculo, para evitar que se extienda demasiado y para no tener la
sensación de ser una reunión excesivamente formal.
Sprint Review: Ocurre al final del Sprint y en esta reunión se revisa lo que se ha hecho a lo
largo del Sprint, se identifica lo que no se hizo y se discute acerca del Product Backlog. El
equipo cuenta los problemas con los que se encontró y muestra el producto y su
funcionamiento.
Sprint Backlog: Es un subconjunto de ítems del Product Backlog y el plan para realizar el
incremento del producto. Debido a que el Product Backlog está organizado por prioridad, el
Srpint Backlog es construido con los requerimientos más prioritarios del Product Backlog y
con aquellos que quedaron por resolver en el Sprint anterior. Una vez construido, el Sprint
Backlog debe ser aceptado por el equipo de desarrollo.
Hace tiempo que en Mítica Technology pusimos en práctica esta metodología y el
resultado ha sido un proyecto capaz de hacer frente a las necesidades de nuestros
clientes, donde existe una comunicación constante con ellos, un trabajo en equipo mucho
más eficiente y donde las entregas constantes de software hacen que nuestro producto de
Realidad Aumentada sea un producto ambicioso y fiable.
¡Espero que os haya resultado útil!
Y recuerda…
¡Sumérgete en el cambio! ;-)"
¡Hasta la semana que viene! ¡Muchas gracias David!
3/3