Você está na página 1de 7

Metodologas tradicionales y metodologas giles

Teniendo en cuenta la filosofa de desarrollo de las metodologas, aquellas con mayor nfasis en la
planificacin y control del proyecto, en especificacin precisa de requisitos y modelado, reciben el
apelativo de Metodologas Tradicionales o Pesadas. [27]
Estas metodologas tradicionales imponen una disciplina de trabajo sobre el proceso de desarrollo
del software, con el fin de conseguir un software ms eficiente. 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 [42]. Adems, las metodologas tradicionales no se adaptan
adecuadamente a los cambios, por lo que no son mtodos adecuados cuando se trabaja en un
entorno, donde los requisitos no pueden predecirse o bien pueden variar.
Entre las metodologas tradicionales o pesadas podemos citar:
Metodologia (Alejandra)
RUP (Rational Unified Procces) (royner )
MSF (Microsoft Solution Framework) (erica)
Win-Win Spiral Model (soto)
Iconix (cristian)
Pero sin dudas adaptarse a la agitada sociedad actual implica ser gil, es decir, tener la
capacidad de proveer respuestas rpidas y ser adaptables al cambio. Ambas cualidades siempre
han sido deseables, pero en el entorno de negocio actual resultan indispensables. Este
requerimiento de agilidad en las empresas, gobiernos y cualquier otra organizacin provoca que el
software tambin deba ser desarrollado de manera gil.
Las necesidades de un cliente pueden sufrir cambios importantes del momento de contratacin de
un software al momento de su entrega; y es mucho ms importante satisfacer estas ltimas que las
primeras. Esto requiere procesos de software diferentes que en lugar de rechazar los cambios
sean capaces de incorporarlos.
Los procesos giles son una buena eleccin cuando se trabaja con requisitos desconocidos o
variables. Si no existen requisitos estables, no existe una gran posibilidad de tener un diseo
estable y de seguir un proceso totalmente planificado, que no vaya a variar ni en tiempo ni en
dinero. En estas situaciones, un proceso adaptativo ser mucho ms efectivo que un proceso
predictivo. Por otra parte, los procesos de desarrollo adaptativos tambin facilitan la generacin
rpida de prototipos y de versiones previos a la entrega final, lo cual agradar al cliente.
Las metodologas giles proporcionan una serie de pautas y principios junto a tcnicas
pragmticas que puede que no curen todos los males pero harn la entrega del proyecto menos
complicada y ms satisfactoria tanto para los clientes como para los equipos de entrega. En la
figura 1 se muestran los principios que rigen el desarrollo gil.
Figura 1: Principios del Manifiesto gil
Entre las metodologas giles ms destacadas hasta el momento se pueden nombrar:
XP (Extreme Programming)
Scrum
Crystal Clear
DSDM (Dynamic Systems Developmemt Method)
FDD (Feature Driven Development)
ASD (Adaptive Software Development)
XBreed
Extreme Modeling
En el Anexo 1 se muestra una comparacin entre las metodologas tradicionales y las giles.
.

METODOLOGAS TRADICIONALES


Hay una serie de metodologas que solemos llamar Tradicionales propuestas casi todas
ellas con anterioridad a los aos 90 que pretendan ayudar a los profesionales indicando
pautas para realizar y documentar cada una de las tareas del desarrollo del software



Otras metodologas tradicionales o pesadas podemos citar:
RUP (Rational Unified Procces)
MSF (Microsoft Solution Framework)
Win-Win Spiral Model
Iconix

Qu es una metodologa de desarrollo?
Segn la definicin de la wikipedia: Una metodologa de desarrollo de software se
refiere a un framework que es usado para estructurar, planear y controlar el
proceso de desarrollo en sistemas de informacin.
No hay que confundir una metodologa con un modelo de desarrollo. El modelo de
desarrollo puede ser el mismo con una metodologa Agile o tradicional y no debera influir
en el resultado. Con modelo de desarrollo nos solemos referir a los modelo en cascada,
prototipado, incremental, espiral, etc.
1. Qu consideramos una metodologa tradicional?
Cuando nos referimos a metodologas de software tradicionales estamos hablando de
aquellas que han surgido basando sus objetivos en la definicin y el control del trabajo.
Estas metodologas se suelen caracterizar por:
Roles muy definidos por los participantes
Equipos de trabajo grandes
Fases con marcos de trabajo muy definido
Rigidez en las fases y fechas de entrega
Comunicacin escasa con el cliente
Excesiva documentacin durante la vida del proyecto
Algunas de estas metodologas tradicionales:
RUP (Rational Unified Process)
EUP (Enterprise Unified Process)
METRICA 3
1. Que consideramos una metodologa agile?
Podemos considerar una metodologa como Agile cuando est enfocada a minimizar las
tareas innecesarias en el desarrollo de software mediante equipos auto-organizados y
multidisciplinarios. Las caractersticas que podemos encontrar en una metodologa Agile
son:
Equipos de desarrollo multidisciplinares y auto-organizados.
Focalizacin en el trabajo a corto plazo.
Valoracin de la comunicacin entre el cliente.
Valoracin de la respuesta al cambio.
Aportacin de valor al software desarrollado.
Organizacin temporal mediante entregas constantes de trabajo
Flexibilidad en la gestin
Proyectos poco documentados debido a la minimizacin de tareas que no contribuyen al
desarrollo de software.
Algunas de las metodologas giles son:
Scrum
Kanban
Lean
XP (Extreme Programming)
1. Cuando Utilizar una metodologa Agile?
Una metodologa Agile no siempre es aplicable a un proyecto, es importante que el
proyecto presente ciertas caractersticas para no encontrarnos con una mala experiencia
Agile:
Si tu equipo es pequeo y esta formado mayoritariamente por gente con talento y
experiencia
Si el cliente final est involucrado y no impone barreras de comunicacin
Si los requisitos son altamente cambiantes
Cuando se dan estas tres caractersticas en el proyecto es recomendable usar una
metodologa Agile. Esto no implica que no se pueda utilizar en proyectos que no cumplan
alguna de estas caractersticas, pero es posible que no sea necesario aplicar todas las
herramientas que proporciona una metodologa Agile. Por ejemplo, si los requisitos no
cambian, es posible que no necesites las reuniones de estimacin ms que para dividir el
proyecto en Sprints, y que no necesites hacer entregas al cliente al final de cada Sprint.
No hay que ver una metodologa Agile como algo esttico. Podemos coger solo aquellas
herramientas de la metodologa que nos resultan tiles para el proyecto en concreto, lo
cual hace que sea perfectamente compatible usar una mezcla de una metodologa de
trabajo tradicional y una Agile, incluso modificar una metodologa gile para que se
adapte a nuestro proyecto en concreto.
Modelos de ciclo de vida en desarrollo de software

Hugo F. Arboleda Jimnez MSc.

En el contexto de la industria colombiana de software.

La evolucin de la disciplina de ingeniera de software ha trado consigo propuestas
diferentes para mejorar los resultados del proceso de construccin. Las metodologas
tradicionales haciendo nfasis en la planeacin, y las metodologas giles haciendo
nfasis en la adaptabilidad del proceso, delinean las principales propuestas presentes
en la literatura. De manera paralela, el tema de modelos para el mejoramiento de los
procesos de desarrollo ocupa un lugar importante en la bsqueda de la metodologa
adecuada para producir software de calidad en cualquier contexto de desarrollo.

Metodologas tradicionales en el desarrollo


Se caracterizan por exponer procesos basados en planeacin exhaustiva. Esta
planeacin se realiza esperando que el resultado de cada proceso sea determinante y
predecible. La experiencia ha mostrado que, como consecuencia de las caractersticas
del software, los resultados de los procesos no son siempre predecibles y sobre todo,
es difcil predecir desde el comienzo del proyecto cada resultado. Sin embargo, es
posible por medio de la recoleccin y estudio de mtricas de desarrollo lograr realizar
estimaciones acertadas en contextos de desarrollo repetibles.
Remontndose a la historia, el modelo de cascada fue uno de los primeros modelos de
ciclo de vida (MCV) que formaliz un conjunto de procesos de desarrollo de software.
Este MCV describe un orden secuencial en la ejecucin de los procesos asociados. El
modelo espiral se postul como una alternativa al modelo de cascada. La ventaja de
este modelo radica en el perfeccionamiento de las soluciones encontradas con cada
ciclo de desarrollo, en trminos de dar respuesta a los requerimientos inicialmente
analizados. El modelo de cascada y el modelo espiral suponen, de manera general, que
los requerimientos del cliente no cambian radicalmente en el transcurso del desarrollo
del sistema.

Por otro lado, la realizacin de prototipos es una herramienta en la que se apoyan
diferentes MCV. Un prototipo debe tener el objetivo de mostrar al cliente o a la
gerencia del proyecto el resultado que se obtendr de la implementacin de cada uno
de los requerimientos del cliente una vez terminado el desarrollo. Con los prototipos se
tiene la posibilidad de obtener retroalimentacin de manera temprana.

La solucin a algunos de los problemas presentados por las metodologas tradicionales
se logra con una gran evolucin del modelo espiral. El proceso unificado propone la
elaboracin de varios ciclos de desarrollo, donde cada uno finaliza con la entrega al
cliente de un producto terminado. Este se enmarca entre los conocidos modelos
iterativo-incremental.

Metodologas giles

Grupos de desarrollo han experimentado soluciones que basan su fundamento en la
adaptabilidad de los procesos de desarrollo, en lugar de seguir esperando lograr
resultados predecibles de un proceso que no evoluciona. Esta comunidad de
desarrolladores e investigadores han nombrado su trabajo bajo lo que conocemos
como metodologas giles. Las metodologas giles como puede entenderse mal, no
estn en contra de administrar procesos de desarrollo. Por el contrario promueve la
formalizacin de procesos adaptables.

La compilacin de los principios y valores que resaltan las metodologas giles fue
formalizada en el manifiesto para el desarrollo de software gil. Este documento
desarrollado por los representantes de cada una de las metodologas que en el
momento se presentaban como giles, logra resumir en un conjunto de ideas las
prcticas que una metodologa de este estilo debe llevar a cabo. Como caracterstica
fundamental, la habilidad de responder al cambio es la principal caracterstica de las
metodologas giles.

XP, una de las ms difundidas, es una metodologa de desarrollo de software gil que
define pocas reglas y pocas prcticas. XP promueve la adaptabilidad de los procesos de
desarrollo basndose en los principios y prcticas que presenta. Quienes trabajan
usando XP deben seguir procesos disciplinados, pero ms que eso, deben combinar la
disciplina con la adaptabilidad necesaria del proceso.

Las metodologas de Cristal se basan en el principio de que tipos diferentes de
proyectos requieren tipos diferentes de metodologas. La metodologa escogida debe
depender de dos factores: el nmero de personas en el proyecto, y las consecuencias
de los errores. Conforme al principio de las metodologas giles, Scrum recalca la
imposibilidad de encontrar procesos definidos y repetibles cuando no existen
problemas, personas, ni ambientes definidos y repetibles.

Metodologas giles o metodologas tradicionales?


En las metodologas tradicionales el principal problema es que nunca se logra planear
bien el esfuerzo requerido para seguir la metodologa. Pero entonces, si logramos
definir mtricas que apoyen la estimacin de las actividades de desarrollo, muchas
prcticas de metodologas tradicionales podran ser apropiadas. El no poder predecir
siempre los resultados de cada proceso no significa que estamos frente a una disciplina
de azar. Lo que significa es que estamos frente a la necesidad de adaptacin de los
procesos de desarrollo que son llevados por parte de los equipos que desarrollan
software.

Tener metodologas diferentes para aplicar de acuerdo con el proyecto que se
desarrolle resulta una idea interesante. Estas metodologas pueden involucrar prcticas
tanto de metodologas giles como de metodologas tradicionales. De esta manera
podramos tener una metodologa por cada proyecto, la problemtica sera definir cada
una de las prcticas, y en el momento preciso definir parmetros para saber cual usar.

Es importante tener en cuenta que el uso de un mtodo gil no es para todos. Sin
embargo, una de las principales ventajas de los mtodos giles es su peso inicialmente
ligero y por eso las personas que no estn acostumbradas a seguir procesos
encuentran estas metodologas bastante agradables.

En el contexto colombiano

Los primeros desarrollos de software en Colombia iniciaron de manera artesanal.
Incrementalmente, y con la llegada de nuevas tecnologa, plataformas de desarrollo, y
programas de formacin superior bien estructurados, se inici un proceso de
mejoramiento de procesos entre los que se incluye el tema de la planeacin y
seguimiento de los proyectos de software.

El modelo de cascada fue en ese entonces, y tal vez lo sigue siendo, el modelo ms
usado por los desarrolladores de software que recin constituyen sus empresas de
desarrollo. Modelos de desarrollo sin alto nivel de complejidad como el espiral, o el
orientado a prototipos, siguen siendo los ms usados. Sin embargo, estos modelos
siguen siendo interpretados en algunos casos de manera errnea. Es el caso de
equipos de desarrollo que por tener ciclos de desarrollo iterativo y/o incremental,
aseguran seguir un modelo espiral, sin realizar un anlisis de riesgo bien soportado.

Você também pode gostar