16
  2/10/2011 Presenta | LSCA Eric Velázquez Cruz INSTITUTO TECNOLÓGICO ANÁLISIS COMPARATIVO METODOLOGÍAS ÁGILES Y TRADICIONALES 

Metodologías Agiles

Embed Size (px)

Citation preview

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 1/16

 

 

2/10/2011

Presenta | LSCA Eric Velázquez Cruz

INSTITUTO

TECNOLÓGICOANÁLISIS COMPARATIVO METODOLOGÍAS

ÁGILES Y TRADICIONALES 

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 2/16

 

 

Índice

Introducción 3

eXtreme Programming 4

SCRUM 6

Feature Driven Model FDD 8

Ágil UP 10

Tabla comparativa 12

Metodologías Tradicionales VS Agiles 13

Conclusiones 15

Bibliografía 16

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 3/16

 

 

Introducción 

De acuerdo con lo expuesto en las últimas clases por la Dra. Mirna Muños Mata en

la asignatura “Ingeniería de Software Orientada a Objetos”, en la que se examinaron los

puntos más importantes de las metodologías ágiles con mayor relevancia para esta

asignatura, entre las cuales fueron elegidas las siguientes: eXtreme Programming (XP),

SCRUM, Feature Driven Development (FDD) y Ágil UP.

En base a esto, se propuso la creación de una tabla comparativa entre dichas

metodologías basada en puntos estratégicos que permitan un entendimiento integral de las

mismas, adquiriendo conocimiento suficiente para la culminación y desarrollo de un

análisis comparativo con las metodologías tradicionales, las cuales fueron estudiadas en la

asignatura previamente estudiada titulada Ingeniería de software impartida por la M.C. Ana

María Chávez Trejo.

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 4/16

 

 

Desarrollo

Comparativa Ágil

eXtreme Programming

5 Individuos e interacciones -2 Procesos y Herramientas

Debido a que se encuentracentrado en potenciar lasrelaciones interpersonales comoclave para el éxito en el desarrollode software, así como de igualmanera promueve el trabajo enequipo y busca el que tenga unmejor entorno de desarrollo.

Aún cuando parece que XP dejade lado este punto, tienerelevancia e impacto, ya que apesar de que se puede considerarde cierta manera simple osencilla, se tiene formalidad alrealizarlo; por otra parte lasherramientas son consideradaspara apoyo en partes específicasdel proceso, siendo estodependiente del equipo dedesarrollo.

5 Software funcionando -3 Documentación extensiva

Se encuentra enfocado a pequeñasentregas funcionales, las cualeshan sido sometidas a pruebas deaceptación y cuentan con laaprobación de los clientes.

Los requerimientos sonrecabados en forma de Historiasde Usuarios y Metáfora, con loscuales se desarrollan los planesde entrega y se hace laintegración de un cronograma deactividades, con esto se crea laplanificación de la iteración y conlas pruebas de aceptación seobtiene la documentación mínimaindispensable.

5 Colaboración con el cliente -3 Negociación contractual

El cliente se involucra a un gradotal en que llega a ser considerandoun rol, el cual recaba losrequisitos al escribir las Historias

El cliente al realizar las historiasde usuario y fijar las pruebas deaceptación establece que es loque espera recibir del software, y

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 5/16

 

 

de Usuario y las pruebas defuncionales para validar su

implementación, prioriza y decidecuales se implementarán, XPpropone una retroalimentacióncontinua entre clientes y equipode desarrollo, en esta metodologíase tienen otros roles quecomplementan la colaboracióncon el cliente como es el caso delGerente (Big Boss) y elEncargado de pruebas.

al momento de recibir y aceptarlas pequeñas entregas acepta que

cumple con los requisitosestablecidos anteriormente.

5 Respuesta ante el cambio -3 Seguir un plan

Al ser el cliente el que realiza lasHistorias de Usuario, así comotener la capacidad demodificación de ellas o que seanadmitidas nuevas en cualquiermomento del desarrollo XP,demostrando su gran apertura anteel cambio, esto se logra medianteuna amplia comunicación entre el

cliente y el equipo de desarrollo.

Es cierto que la manera en que setoma la respuesta ante el cambioen XP no hace más fácil elseguimiento de un plan, pero si setiene una fase de planificación enla que se realiza el plan de accióncon el detalle de las actividadesque se van a llevar a cabo deacuerdo con los requisitos

descritos en las Historias deUsuario, así como también setienen los planes de iteración quepermiten con la priorización delos requisitos saber qué es lo quese va a planear para cadaiteración del proyecto.

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 6/16

 

 

SCRUM

5 Individuos e interacciones -3 Procesos y Herramientas

La responsabilidad, auto-disciplina y el respeto soncaracterísticas en los miembros deun equipo, lo cual les permitetrabajar eficientemente,llevándolos a la obtención deproductos complejos y

sofisticados. En SCRUM formaparte de su filosofía lo siguiente:“Cada miembro del equipo debe

colaborar de forma abierta con

los demás, según sus habilidades

 y no según su rol o puesto” esto demuestra que este punto es muyimportante en esta metodologíaágil.

El proceso aplicado en lametodología SCRUM es muysencillo siendo el “sprint” el

núcleo central que proporciona labase de desarrollo iterativo eincremental, haciendo uso se debuenas prácticas, así como un

conjunto de herramientasgratuitas como es scrumworks,icescrum y scrum for teamsystem

5 Software funcionando -5 Documentación extensiva

SCRUM adapta su proceso para lagestión y control del productopara quitarle complejidad a estasáreas, para así poder centrarse enla construcción de software quesatisfaga las necesidades delnegocio, esto basado en undesarrollo iterativo e incremental,y se tienen sprints de cortaduración.

No maneja documentaciónextensiva, considera que ladocumentación de las historias deusuario y planeación para cadasprint, pueda ser llevada a cabomediante imágenes, odocumentos informales.

5 Colaboración con el cliente -3 Negociación contractual

Al igual que XP, la metodologíaágil SCRUM cuenta con la

Al ser manejados los requisitosmediante historias de usuario

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 7/16

 

 

inclusión del cliente como un rolmás, dentro de su proceso de

desarrollo, además de contartambién con Historias de Usuario,para SCRUM la participación delcliente es imprescindible y estáimplicada durante todo el ciclo devida del producto, observando losprogresos, aportando ideas,sugerencias o necesidades.

realizadas entre el equipo dedesarrollo y el cliente, la

negociación queda de maneraimplícita dentro de ellas con laspruebas de aceptación ydeclaración de los requisitos

5  Respuesta ante el cambio -2 Seguir un plan

Tiene gran respuesta ante elcambio debido a las buenasprácticas que realiza, tales comoel uso de Historias de Usuario einvolucración del cliente dentrode todo el ciclo de vida. Aprimera vista parece que“congelar” las HU mientras está

realizándose el sprint no cumpleal 100% este punto, sin embargo,este proceso es para tener un

mejor control de estas y agilizar eldesarrollo.

En SCRUM la parte más fuertede la planeación es llevada a cabodurante la priorización yplaneación de los sprints, loscuales gracias a que las historiasde usuario son congeladas cuandoes llevado a cabo un sprint sepermite llevar una mejorcontinuidad de planes que en XP.

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 8/16

 

 

Feature Driven Development

1 Individuos e interacciones -4 Procesos y Herramientas

Al estar enfocado más en eldesarrollo del producto que en elequipo deja un poco de lado este

punto, pero al estar enfocado soloa las fases de diseño yconstrucción se puedecomplementar con otras prácticasque ayuden a este punto, sinembargo, FDD por sí solo dejaeste punto muy abandonado.

Los procesos son sencillos ygenerales enfocados a seriterativos, admite procesos más

específicos en las fases que norealiza FDD y contempla para laparte de herramientas un rol desoporte “herramientista” el cualse encarga de los builds y publicala documentación.

5 Software funcionando -5 Documentación extensiva

El proceso de FDD se encuentra

basado en iteraciones cortas, queproducen un software que sedecide en base a su funcionalidad.

Tiene un rol para la publicación

de la documentación y un roladicional “Escritores dedocumentos técnicos” el cualcomplementa en FDD este puntoen específico.

3 Colaboración con el cliente -5 Negociación contractual

No exige la presencia del cliente,pero incluye entre los roles el de“experto de dominio”, lo cual

muestra que FDD da importanciaa este punto especifico.

FDD no toma en cuenta este temaen particular al no estar enfocadoen las fases en las que haceénfasis pero propone utilizar otrastécnicas y/o buenas prácticas queayuden a resolver este puntoespecifico.

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 9/16

 

 

3  Respuesta ante el cambio -5  Seguir un plan

Su proceso es iterativo lo cualpermite tener respuesta ante elcambio entre cada iteración

No requiere un modelo especificode proceso, expone entre susprincipios que un proceso simpley bien definido trabaja mejor, ysus pasos deben ser lógicos conmerito obvio para cada miembro.

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 10/16

 

 

Ágil UP

5Individuos e interacciones

-1Procesos y Herramientas

El Administrador de laconfiguración está involucradocon este punto en particular,debido a que está encargado decrear el medio ambiente para elequipo de desarrollo, aunque elAdministrador de proyecto es elrol más relevante ya que tiene a sucargo las siguientes actividades:administración de miembros delos equipos de trabajo, creaciónde relaciones con losinvolucrados, coordinar lasinteracciones con éstos así comoenmarcar las prioridades ymantener al equipo enfocado.

Al ser una adaptación de unametodología tradicional Ágil UPtiene procesos y herramientasbien definidos, los cuales hansido adaptados para coincidir conel enfoque que se tiene en lasmetodologías agiles.

4 Software funcionando -2 Documentación extensiva

El objetivo de la fase deconstrucción es desarrollar

software funcional en una baseregular e incremental.

La documentación entregada esdefinida por los artefactos, los

cuales están bien definidos deacuerdo a las fases e iteracionesnecesarias.

3 Colaboración con el cliente -1 Negociación contractual

La colaboración es con losinvolucrados que son un rol enÁgil UP, sin embargo este puedeser usuario directo, usuarioindirecto, administrador de

usuarios, administrador, miembrode equipo de operación o soporte,desarrolladores que trabajan enotros sistemas que se integran ointeractúan con el sistemaimplementado; por lo cual a veceshace un poco más difícil la

En el modelado se tiene comometa entender el negocio de laorganización, el dominio delproblema que el proyecto abordae identificar una solución viable

para abordar el dominio delproblema; lo cual ayuda lanegociación.

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 11/16

 

 

colaboración. Pero este rol seencuentra presente en varias

disciplinas, modelado,implementación, pruebas,desarrollo y administración delproyecto.

3  Respuesta ante el cambio -1  Seguir un plan

La aceptación de los cambios derequisito solo se puede hacerdespués de generar los artefactosespecíficos en cada entrega, lo

cual le resta puntos encomparación con otrasmetodologías agiles, pero acomparación de su contrapartetradicional es mucho mayor surespuesta ante el cambio.

Tiene un plan bien definido, alhacer la conversión a unametodología ágil, se conservomuy bien su planeación.

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 12/16

 

 

Individuose

interacciones

Procesos yHerramient

as

Softwarefuncionand

o

Documentación

extensiva

Colaboración con el

cliente

Negociación

contractual

Respuestaante elcambio

Seguir unplan

XP 5 -2 5 -3 5 -3 5 -3SCRUM 5 -3 5 -5 5 -3 5 -2FDD 1 -4 5 -5 3 -5 0 0Ágil UP 5 -1 4 -2 3 -1 3 -1

-6

-4

-2

0

2

4

6

Comparativa Ágil

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 13/16

 

 

Metodologías

Agiles vs Tradicionales

Lo expuesto anteriormente permite tener una idea más clara acerca de las metodologíasagiles, las metodologías tradicionales han tenido gran trascendencia en los desarrollos.

A primera vista las metodologías agiles no parecen estar muy enfocadas a los procesos encomparación con las tradicionales, sin embargo, algunas metodologías agiles tienenprocesos establecidos, para abordar cada fase del ciclo de desarrollo; las metodologíastradicionales llevan ventaja en este punto contra las metodologías ágiles por su amplia

trayectoria y que algunas metodologías tradicionales son enfocadas a los procesos más queal individuo y/o al producto final.

En cuanto a los roles y responsabilidades tanto las metodologías tradicionales como lasagiles abordan este punto, ya que al tenerlo definido correctamente facilita lacomunicación, permite abordar de una mejor manera el desarrollo y cierra la brecha entre elcliente y el equipo de desarrolladores; en cuanto a las practicas las metodologías agilesproponen la utilización de estas para atacar problemas específicos y son mas abiertas aincluir nuevas y algunas incluso se enfocan a partes del ciclo de vida dejando a criterio delequipo como abarcar aquellas que no son tomadas en cuenta por la metodología, dando al

equipo de desarrollo a la vez una gran responsabilidad y una versatilidad que lasmetodologías tradicionales no suelen dar.

Viendo desde las experiencias y la adaptación las metodologías tradicionales y lasmetodologías agiles tienen una meta en común, el utilizarlas como apoyo a la hora de quese van a realizar nuevos proyectos e inclusive para no cometer errores que se tuvieron dedesarrollos del mismo dominio o de dominios similares, obteniendo con esto un gransoporte y retroalimentándolas a la vez.

El entorno de uso varía dependiendo de cada una de las metodologías ya sean tradicionaleso agiles, pero principalmente las metodologías agiles son adoptadas para desarrollospequeños o medianos, sin embargo han sido adoptadas para proyectos de gran envergaduraobteniendo resultados impresionante como es el caso de XP, SCRUM y CRYSTAL.

Teniendo en cuenta el ciclo de vida tanto las metodologías tradicionales como ágiles hanido apostando por ser iterativas e incrementales.

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 14/16

 

 

Tanto las metodologías agiles como las tradicionales se encuentran de manera activa y con

soporte inclusive algunas siguen en desarrollo para abarcar fases que no incluyen en estemomento.

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 15/16

 

 

Conclusiones

De acuerdo con lo expuesto en este trabajo podemos llegar a varias conclusiones entre lascuales destacan las siguientes:

En la primera parte donde se expusieron las metodologías agiles haciendo una comparativa

enfocada a las partes del manifiesto ágil a las cuales dan mayor importancia y que fases son

las que principalmente son realizadas, así como algunos roles principales en estas

metodologías. Se pudo observar que no es necesario que una metodología ágil intente

abarcar todas las fases del ciclo de desarrollo como lo es el caso del Modelado Dirigido por

Características (FDD por sus siglas en ingles), y que inclusive las metodologías

tradicionales pueden ser adaptadas y enfocadas a un desarrollo ágil como vimos con Ágil

UP que retoma lo bueno de dos mundos teniendo todo un proceso definido y teniendo una

visión más fresca del desarrollo como lo es el Manifiesto Ágil, dándole la versatilidad de la

configuración obteniendo así un soporte impresionante para desarrollos muy grandes con su

versión tradicional y ajustado para proyecto medianos e incluso pequeños con

características que solo una metodología ágil podría abordar de una manera tan veloz.

En la segunda parte podemos observar que aun cuando surgen en tiempos diferentes y

enfocados a desarrollos distintivos las metodologías agiles y tradicionales tienen sus

ventajas y desventajas, dependiendo de los equipos de desarrollo, el tamaño del proyecto e

inclusive las características del mismo.

Expuesto lo anterior podemos concluir de manera general que aun cuando las metodologías

tradicionales puedan parecer a algunos una solución obsoleta, estas pueden adaptarse oconfigurarse para tener un enfoque más ágil como pudimos observar con Ágil UP, ya que

estas metodologías han tenido gran trascendencia a lo largo del tiempo recabando buenas

prácticas y ajustándose o mejorándose conforme el desarrollo de software lo ha ido

requiriendo.

5/10/2018 Metodologías Agiles - slidepdf.com

http://slidepdf.com/reader/full/metodologias-agiles-559e0453bfc1c 16/16

 

 

REFERENCIAS BIBLIOGRAFICAS

 Palmer, S.R. “ A Practical Guide to Feature-Driven Development .” Prentice Hall.

REFERENCIAS ELECTRÓNICAS

Metodología Ágil UP tomado de: http://cgi.una.ac.cr/AUP/index.html

Metodología Ágil SCRUM apoyado en :

http://www.unbugalavez.net/2008/03/herramientas-para-scrum.html

MEMORIAS DEL CURSO “INGENIERIA DE SW ORIENTADA A OBJETOS” 

Metodologías Ágiles, Dra. Mirna Ariadna Muñoz Mata, Agosto del 2011