Metodologas
tradicionales vs
giles
IN T E GRAN T E S
ARV IZU B RC E N AS L AU RA C E C ILIA
M ARTN E Z AR RRE OL A JOS AN TO N IO
TRADICIONALES:
Se centran especialmente en el control del proceso,
estableciendo
rigurosamente
las
actividades
involucradas, los artefactos que se deben producir, y
las herramientas y notaciones que se usarn.
GILES:
Se centran en otras dimensiones, como por ejemplo el
factor humano o el producto software.
Introduccin
sta dcada ha comenzado con un creciente inters en
metodologas de desarrollo. Hasta hace poco el proceso de
desarrollo llevaba asociada un marcado nfasis en el control
del proceso mediante una rigurosa definicin de roles,
actividades
y
artefactos,
incluyendo
modelado
y
documentacin detallada.
Por estar especialmente orientadas para proyectos
pequeos, las metodologas giles constituyen una solucin
a medida para ese entorno, aportando una elevada
simplificacin que a pesar de ello no renuncia a las prcticas
esenciales para asegurar la calidad del producto.
LaMetodologatradicional usa procesos definidos,
larecopilacindeinformacinse realiza al inicio del
proyecto, es tan cuadriculado que poseecierta
resistencia al cambio durante el desarrollo, el cliente
solo se comunica con el equipo de desarrollo por
medio de reuniones establecidas.
Por todo lo mencionado sepuede deducir que realizar
unacorreccindurante el desarrollo ser mas caro.
stas metodologas tradicionales o pesadas son aquellas
que cuentan con mayor nfasis en la planificacin y
control del proyecto, en especificacin precisa de
requisitos y modelado.
Para ello, se hace nfasis en la planificacin total de todo
el trabajo a realizar y una vez que est todo detallado,
comienza el ciclo de desarrollo del producto software. Se
centran especialmente en el control del proceso,
mediante una rigurosa definicin de roles, actividades,
artefactos, herramientas y notaciones para el modelado y
documentacin detallada.
Entre las metodologas tradicionales o pesadas
podemos citar:
Metodologas en cascada
Metodologa en espiral
Metodologa de prototipos
Historia de las metodologas
agiles.
En febrero de 2001, tras una reunin
celebrada en Utah-EEUU, nace el trmino
gil aplicado al desarrollo de software
tras esta reunin se cre The Agile Alliance
dedicada a promover los conceptos
relacionados con el desarrollo gil de
software y ayudar a las organizaciones
para que adopten dichos conceptos.
Objetivo metodologas agiles.
Su objetivo fue disear los valores y
principios que deberan permitir a los
equipos
desarrollar
software
rpidamente y respondiendo a los
cambios que puedan surgir a lo largo
del proyecto.
Objetivo metodologas agiles.
Se pretenda ofrecer una alternativa
a los procesos de desarrollo de
software tradicionales, caracterizados
por ser rgidos y dirigidos por la
documentacin que se genera en
cada
una
de
las
actividades
desarrolladas
Valores de metodologa gil.
Al individuo y las interacciones del
equipo de desarrollo sobre el proceso
y las herramientas.
Valores de metodologa gil.
Desarrollar software que funciona ms
que conseguir una buena
documentacin
Valores de metodologa gil.
La colaboracin con el cliente ms que
la negociacin de un contrato.
Valores de metodologa gil.
Responder a los cambios ms que
seguir estrictamente un plan
Manifiesto metodologa gil.
1. La prioridad es satisfacer al cliente
mediante tempranas y continuas
entregas de software que le aporte
un valor.
Manifiesto metodologa gil.
2. Dar la bienvenida a los cambios.
Se capturan los cambios para que el
cliente
tenga
una
ventaja
competitiva.
Manifiesto metodologa gil.
3. Entregar frecuentemente software
que funcione desde un par de
semanas a un par de meses, con el
menor intervalo de tiempo posible
entre entregas
Manifiesto metodologa gil.
4. La gente del negocio y los
desarrolladores deben trabajar juntos
a lo largo del proyecto.
Manifiesto metodologa gil.
5. Construir el proyecto en torno a
individuos motivados. Darles el
entorno y el apoyo que necesitan y
confiar en ellos para conseguir
finalizar el trabajo.
Manifiesto metodologa gil.
6. El dilogo cara a cara es el mtodo
ms eficiente y efectivo para
comunicar informacin dentro de un
equipo de desarrollo.
Manifiesto metodologa gil.
7. El software que funciona es la
medida principal de progreso.
Manifiesto metodologa gil.
8. Los procesos giles promueven un
desarrollo sostenible. Los promotores,
desarrolladores y usuarios deberan
ser capaces de mantener una paz
constante.
Manifiesto metodologa gil.
9. La atencin continua a la calidad
tcnica y al buen diseo mejora la
agilidad.
Manifiesto metodologa gil.
10. La simplicidad es esencial.
Manifiesto metodologa gil.
11.
Las
mejores
arquitecturas,
requisitos y diseos surgen de los
equipos organizados por s mismos.
Manifiesto metodologa gil.
12. En intervalos regulares, el equipo
reflexiona respecto a cmo llegar a
ser ms efectivo, y segn esto ajusta
su comportamiento.
Metodologas giles
Metodologas Tradicionales
Basadas en heursticas provenientes
de prcticas de produccin de cdigo
Basadas en normas provenientes de
estndares seguidos por el entorno
de desarrollo
Especialmente preparados para
cambios durante el proyecto
Cierta resistencia a los cambios
Impuestas internamente (por el
equipo)
Impuestas externamente
Proceso menos controlado, con pocos
principios
Proceso mucho ms controlado, con
numerosas polticas/normas
No existe contrato tradicional o al
menos es bastante flexible
Existe un contrato prefijado
El cliente es parte del equipo de
desarrollo
El cliente interacta con el equipo de
desarrollo mediante reuniones
Grupos pequeos (<10 integrantes) y
trabajando en el mismo sitio.
Grupos grandes y posiblemente
distribuidos
Pocos artefactos
Ms artefactos
Pocos roles
Ms roles
Menos nfasis en la arquitectura del
software
La arquitectura del software es
esencial y se expresa mediante
modelos
Tener metodologas diferentes para aplicar de
acuerdo con el proyecto que se desarrolle resulta
una idea interesante.
De esta manera podramos tener una metodologa
para cada proyecto, la problemtica sera definir
cada una de las prcticas, y en el momento preciso
definir parmetros para saber cual usar.
Por qu usar metodologas
giles?
Tomando las ideas de la Tabla N 1 podemos decir que
las metodologas tradicionales presentan los siguientes
problemas a la hora de abordar proyectos:
Existen unas costosas fases previas de especificacin de
requisitos, anlisis y diseo. La correccin durante el
desarrollo de errores introducidos en estas fases ser
costosa, es decir, se pierde flexibilidad ante los cambios.
El proceso de desarrollo
documentos firmados.
est
encorsetado
por
El desarrollo es ms lento. Es difcil para los
desarrolladores entender un sistema complejo en su
Existe algn mtodo o forma de
pasar de una metodologa a
otra?
El cambio se puede dar de manera parcial o radical (presentando un
proyecto piloto).
Cambio
parcial
consta
en
agregar
algunas
caractersticasdemetodologagila lametodologatradicional.
Cambio radical, muchos jefes de proyectos o gerentes pueden
resistirse al cambio aduciendo que como todo marcha bien para
que cambiar, por ello una alternativa seria presentar un software
piloto basado enmetodologaAgile para observar la diferencia con
el desarrollo de otro software.
En
realidad
el
cambio
o
implementacin
de
ambastecnologasdepende mucho de la empresa y no tanto de los
programadores. pero si se presenta una buena propuesta puede ser
Conclusiones
No existe una metodologa universal para hacer frente con xito a
cualquier proyecto de desarrollo de software.
Las metodologas tradicionales histricamente han intentado
abordar la mayor cantidad de situaciones del contexto del proyecto,
exigiendo un esfuerzo considerable para ser adaptadas, sobre todo
en proyectos pequeos y de requisitos cambiantes.
Las metodologas giles ofrecen una solucin casi a medida para
una gran cantidad de proyectos.
Las metodologas giles se caracterizan por su sencillez, tanto en su
aprendizaje como en su aplicacin; sin embargo, gozan tanto de
ventajas como de inconvenientes.
Las metodologas giles permiten a los pequeos grupos de
desarrollo concentrarse en la tarea de construir software
fomentando prcticas de fcil adopcin y en un entorno ordenado
que permiten que los proyectos finalicen exitosamente.
Se pueden distinguir dos rangos distintos de conjuntos de metodologas
giles. Por un lado estn las metodologas ms declarativas y
programticas como XP, Scrum, LD, entre otras; y por otro lado se
encuentran las metodologas finamente elaboradas como DSDM, Cristal,
etc.
XP es una de las metodologas giles ms extendidas y populares, adems
es considerada como una metodologa posmoderna cuyas grandes
capacidades se generan a travs de procesos emergentes.
Scrum implementa en sus prcticas de desarrollo una estrategia de caos
controlado, permitiendo maximizar la realimentacin sobre el desarrollo
pudiendo corregir problemas y mitigar riesgos de forma temprana.
A pesar de las continuas criticas que las metodologas giles sufren, son
usadas por muchas grandes empresas y se han utilizado en grandes
sistemas, lo que hace prever que estas metodologas han llegado para
quedarse.