Metodologías de Desarrollo Metodologías Ágiles
En que consisten las metodologías Ágiles
●
El desarrollo ágil está centrado en la iteración, comunicación y en reducir elementos intermedios.
●
El
desarrollo
con
interacciones
se
realiza
normalmente en porciones de tiempo pequeñas denominadas desarrollarlas
“timeboxes” un
y
equipo
se
ocupará
de
multidisciplinar
autoorganizado, ellos mismo decidirán como realizar las tareas de la iteración.
Caracteristicas “El actor más importante en el desarrollo de sot!are no son las t"cnicas y las #erramientas que emplean los programadores, sino la calidad de los programadores.” $%obert. &. 'lass(. ●
&a característica realmente nue)a que aportan estas metodologías es reconocer a las personas como el principal )alor para que un proyecto consiga terminarse de orma correcta.
●
*odemos deducir que las metodologías ágiles a dierencia de las metodologías tradicionales o clásicas son más adecuadas cuando el entorno presenta una cierta incertidumbre o es cambiante.
Metodologías de Desarrollo
Scrum
Origenes En el año +- /a0euc#i y 1ona0a publicaron el artículo “/#e 1e! *roduct 2e)eloproent 3ame” el cual dará a conocer una nue)a orma de gestionar proyectos en la que la agilidad, lexibilidad, y la incertidumbre son los elementos principales. ●
4ediante obser)ación en los procesos de 5onda, 5p, 'anon, etc. donde identiicaron que no contaban con equipo especializado para cada área si no que se partía de unos requisitos muy generales y el producto lo realizaba un equipo multidisciplinar que traba6aba desde el comienzo del proyecto #asta el inal.
●
7e comparó esta orma de traba6o en equipo, con la colaboración que #acen los 6ugadores de %ugby y la utilización de una ormación denominada 7'%84.
Scrum ¿Qué es?
7crum es una metodología ágil y lexible para gestionar el desarrollo de sot!are, cuyo principal ob6eti)o es maximizar el retorno de la in)ersión para su empresa $%9:(. 7e basa en construir primero la uncionalidad de mayor )alor para el cliente y en los principios de inspección continua, adaptación, auto;gestión e inno)ación.
Donde utilizarla 7crum tambi"n se utiliza para resol)er situaciones en las que< ●
1o se está entregando al cliente lo que necesita.
●
'uando las entregas se alargan demasiado.
●
&os costes se disparan.
●
&a calidad no es aceptable.
●
'uando se necesita capacidad de reacción ante la competencia.
●
'uando la moral de los equipos es ba6a y la rotación alta.
●
'uando es necesario identiicar y solucionar ineiciencias sistemáticamente.
Proceso En 7crum un proyecto se e6ecuta en bloques temporales cortos y i6os $iteraciones de un mes natural y #asta de dos semanas, si así se necesita(. 'ada iteración tiene que proporcionar un resultado completo, un incremento de producto inal que sea susceptible de ser entregado con el mínimo esuerzo al cliente cuando lo solicite
Es decir: 7crum al ser una metodología de desarrollo ágil tiene como base la idea de creación de ciclos bre)es para el desarrollo, que com=nmente se llaman iteraciones y que en 7crum se llamarán “7prints”
Fases: *ara entender el ciclo de desarrollo de 7crum es necesario conocer las > ases que deinen el ciclo de desarrollo ágil< +( Concepto: 7e deine de orma general las características del producto y se asigna el equipo que se encargará de su desarrollo. ?( Especulación: en esta ase se #acen disposiciones con la inormación obtenida y se establecen los límites que marcarán el desarrollo del producto, tales como costes y agendas. 7e construirá el producto a partir de las ideas principales y se comprueban las partes realizadas y su impacto en el entorno. Esta ase se repite en cada iteración y consiste, en rasgos generales, en< 2esarrollar y re)isar los requisitos generales. 4antener la lista de las uncionalidades que se esperan. *lan de entrega. 7e establecen las ec#as de las )ersiones, #itos e iteraciones. 4edirá el esuerzo realizado en el proyecto.
Fases: 3) Exploración< 7e incrementa el producto en el que se añaden
las uncionalidades de la ase de especulación. 4) Revisión< El equipo re)isa todo lo que se #a construido y se
contrasta con el ob6eti)o deseado. 5) Cierre< 7e entregará en la ec#a acordada una )ersión del
producto deseado. @l tratarse de una )ersión, el cierre no indica que se #a inalizado el proyecto, sino que seguirá #abiendo cambios, denominados “mantenimiento”, que #ará que el producto inal se acerque al producto inal deseado.
Ciclo de Desarrollo
Gestión de Iteraciones 7crum gestiona estas iteraciones mediante reuniones diarias.
Componentes de Scrum
*ara entender todo el proceso de desarrollo del 7crum, se describirá de orma general las ases y los roles. 7crum se puede di)idir de orma general en 3 ases, que podemos entender como reuniones. &as reuniones orman parte de los arteactos de esta metodología 6unto con los roles y los elementos que lo orman.
!as Reuniones"
+. #laniicación del $ac%lo&: 7e deinirá un documento en el que se rele6arán los requisitos del sistema por prioridades. En esta ase se deinirá tambi"n la planiicación del 7print A, en la que se decidirá cuáles )an a ser los ob6eti)os y el traba6o que #ay que realizar para esa iteración. 7e obtendrá además en esta reunión un 7print Bac0log, que es la lista de tareas y que es el ob6eti)o más importante del 7print.
!as Reuniones"
?. Se&uimiento del Sprint< En esta ase se #acen reuniones diarias en las que las C preguntas principales para e)aluar el a)ance de las tareas serán< ●
Du" traba6o se realizó desde la reunión anteriorF
●
Du" traba6o se #ará #asta una nue)a reuniónF
●
:ncon)enientes que #an surgido y qu" #ay que solucionar para poder continuar.
!as Reuniones"
●
C. Revisión del Sprint: 'uando se inaliza el 7print se realizará una re)isión del incremento que se #a generado. 7e presentarán los resultados inales y una demo o )ersión, esto ayudará a me6orar el eedbac0 con el cliente.
Roles
&os roles se di)iden en ? grupos< cerdos y gallinas, esto surge en el c#iste sobre un cerdo y una gallina y su intención de poner un restaurante.
Roles '!(S CER(S) 7on las personas que están comprometidas con el proyecto y el proceso de 7crum. ●
#roduct (*ner: Es la persona que toma las decisiones, y es la que realmente
conoce el negocio del cliente y su )isión del producto. 7e encarga de escribir las ideas del cliente, las ordena por prioridad y las coloca en el *roduct Bac0log. ●
Scrum+aster: Es el encargado de comprobar que el modelo y la metodología
unciona. Eliminará todos los incon)enientes que #agan que el proceso no luya e interactuará con el cliente y con los gestores. ●
E,uipo e esarrollo: suele ser un equipo pequeño de unas >; personas y
tienen autoridad para organizar y tomar decisiones para conseguir su ob6eti)o. Está in)olucrado en la estimación del esuerzo de las tareas del Bac0log.
Roles '!-S .-!!/0-S) @unque no son parte del proceso de 7crum, es necesario que parte de la retroalimentación d" la salida del proceso y así poder re)isar y planear cada sprint. ●
1suarios: Es el destinatario inal del producto.
●
Sta%e2olders: &as personas a las que el proyecto les
producirá un beneicio. *articipan durante las re)isiones del 7print. ●
+ana&ers: /oma las decisiones inales participando en la
selección de los ob6eti)os y de los requisitos.
Elementos de Scrum"
&os elementos que orman a 7crum son< ●
#roduct $ac%lo&: lista de necesidades del cliente.
●
Sprint $ac%lo&: lista de tareas que se realizan en
un 7print. ●
/ncremento: parte añadida o desarrollada en un
7print, es un parte terminada y totalmente operati)a.
Ciclo de esarrollo Scrum
Ventaas ●
El cliente puede comenzar a utilizar el producto rápidamente.
●
El cliente puede decidir los nue)os ob6eti)os a realizar.
●
7e agiliza el proceso, porque se di)ide el problema en pequeñas tareas.
●
4enos probabilidad de que se den sorpresas o desarrollos inesperados porque el cliente )a )iendo poco a poco lo que se está desarrollando.
Des!entaas ●
Existe la tendencia que si se de6a una tarea sin terminar y que por las exigencias del 2ueño del *roducto se deban realizar otras nue)as. Estas tareas no terminadas puedan obstaculizar la planeación de nue)as sprints y se deba )ol)er al problema original.
●
@lto ni)el de stress de los miembros del equipo, el desgaste puede ser excesi)o y estresante lo que puede disminuir el rendimiento.
●
&a necesidad de contar con equipos multidisciplinarios puede ser un problema, porque cada integrante del equipo debe estar en capacidad de resol)er cualquier tarea y no siempre se cuenta con este peril en la empresa.
●
El equipo puede estar tentado de tomar el camino más corto para cumplir con un sprint, que no necesariamente puede ser el de me6or calidad en el desarrollo del producto.
"i#liogra$ía: #ttp