Você está na página 1de 4

Metodologas giles

INTRODUCCION
El esquema tradicional para abordar el desarrollo de software ha demostrado ser efectivo y necesario en proyectos de
gran tamao respecto a tiempo y recursos. Sin embargo, este enfoque no resulta ser el ms adecuado para muchos de
los proyectos actuales donde el entorno del sistema es muy cambiante, y en donde se exige reducir drsticamente los
tiempos de desarrollo pero manteniendo una alta calidad. Ante las dificultades para utilizar metodologas tradicionales
con estas restricciones de tiempo y flexibilidad. Las metodologas giles emergen como una posible respuesta para
llenar ese vaco metodolgico. 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.
Las caractersticas de los proyectos para los cuales las metodologas giles han sido especialmente pensadas se ajustan a
un amplio rango de proyectos industriales de desarrollo de software; aquellos en los cuales los equipos de desarrollo
son pequeos, con plazos reducidos, requisitos voltiles, y/o basados en nuevas tecnologas.
DEFINICION
Las metodologas agiles son aquellas que permiten adaptar la forma de trabajo a las condiciones del proyecto,
consiguiendo flexibilidad e inmediatez en la respuesta para amoldar el proyecto y su desarrollo a las circunstancias
especficas del entorno. Las empresas que apuestan por esta metodologa consiguen gestionar sus proyectos de forma
eficaz reduciendo los costos e incrementado su productividad.
METODOLOGIAS AGILES
En una reunin de expertos de la industria del software celebrada en 2001 con el objeto de esbozar valores y principios
que deberan permitir a los equipos desarrollar software rpidamente y responder a los cambios que se puedan surgir a
lo largo de proyecto tradicionales, caracterizados por ser rgidos por la documentacin que se genera en cada una de las
actividades desarrolladas nace el termino gil aplicado al desarrollo de software. Tras esa reunin naci The Agile
Alliance, una organizacin sin nimos de lucro dedicada a promover los conceptos relacionados con el desarrollo gil de
software y ayudar a las organizaciones para que adopten dichos conceptos. El punto de partida fue el Manifiesto gil,
un documento que resume la filosofa gil.
El Manifiesto gil
El Manifiesto comienza enumerando los principales valores del desarrollo gil. Se valora:

Al individuo y las interacciones del equipo de desarrollo sobre el proceso y las herramientas. Es mejor crear el
equipo y que este configure su propio entorno de desarrollo en base a sus necesidades.
Desarrollar software que funciona ms que conseguir una buena documentacin. La idea es no producir
documentos a menos que sea necesario de forma inmediata para tomar decisiones importantes. Se considera
que los elementos ms importantes para una persona nueva en el equipo son el propio cdigo y la interaccin
con el equipo.
La colaboracin con el cliente ms que la negociacin de un contrato. Se propone que exista una interaccin
constante entre el equipo de desarrollo y el cliente.
Responder a los cambios ms que seguir estrictamente un plan. La habilidad de responder a los cambios que
puedan surgir a lo largo del proyecto determina tambin el xito o fracaso del mismo. Por lo tanto, la
planificacin no debe ser estricta puesto que hay muchas variables en juego, debe ser flexible para poder

Ingeniera de Software 3 TP 1

Pgina 1

Metodologas giles
adaptarse a los cambios que puedan surgir. Una buena estrategia es hacer planificaciones detalladas para unas
pocas semanas y planificaciones muchas ms abiertas para unos pocos meses.
Los valores anteriores inspiran los doce principios del manifiesto. Estos principios son las caractersticas que diferencian
un proceso gil de uno tradicional. Los dos primeros son generales y resumen gran parte del espritu gil.
Principios bsicos de las metodologas agiles

La prioridad es satisfacer al cliente mediante tempranas y continuas entregas de software que le aporte un
valor. Un proceso es gil si a las pocas semanas de empezar ya entrega software que funcione aunque sea
rudimentario. El cliente decide si pone en marcha dicho software con la funcionalidad que ahora le proporciona
o simplemente lo revisa e informa de posibles cambios a realizar.
Dar la bienvenida a los cambios. Se capturan los cambios para que el cliente tenga una ventaja competitiva. Este
principio es una actitud que deben adoptar los miembros del equipo de desarrollo. Los cambios en los requisitos
deben verse como algo positivo. Les va a permitir aprender ms, a la vez que logran una mayor satisfaccin del
cliente. Este principio implica adems que la estructura del software debe ser flexible para poder incorporar los
cambios sin demasiado coste aadido. El paradigma orientado a objetos puede ayudar a conseguir esta
flexibilidad.

Luego existen una serie de principios que tienen que ver directamente con el proceso de desarrollo de software a
seguir.

Entregar frecuentemente software que funcione desde un par de semanas a un par de meses, con el menor
intervalo de tiempo posible entre entregas. Las entregas al cliente se insiste en que sean software, no
planificaciones, ni documentacin de anlisis o de diseo.
La gente del negocio y los desarrolladores deben trabajar juntos a lo largo del proyecto. El proceso de desarrollo
necesita ser guiado por el cliente, por lo que la interaccin con el equipo es muy frecuente.
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. La gente es el principal factor de xito, todo los dems (proceso,
entorno, gestin, etc.) queda en segundo plano. Si cualquiera de ellos tiene un efecto negativo sobre los
individuos debe ser cambiado.
El dilogo cara a cara es el mtodo ms eficiente y efectivo para comunicar informacin dentro de un equipo de
desarrollo. Los miembros de equipo deben hablar entre ellos, ste es el principal modo de comunicacin. Se
pueden crear documentos pero no todo estar en ellos, no es lo que el equipo espera.
El software que funciona es la medida principal de progreso. El estado de un proyecto no viene dado por la
documentacin generada o la fase en la que se encuentre, sino por el cdigo generado y en funcionamiento.
Por ejemplo, un proyecto se encuentra al 50% si el 50% de los requisitos ya estn en funcionamiento.
Los procesos giles promueven un desarrollo sostenible. Los promotores, desarrolladores y usuarios deberan
ser capaces de mantener una paz constante. No se trata de desarrollar lo ms rpido posible, sino de mantener
el ritmo de desarrollo durante toda la duracin del proyecto, asegurando en todo momento que la calidad de lo
producido es mxima.

Finalmente los ltimos principios estn ms directamente relacionados con el equipo de desarrollo, en cuanto
metas a seguir y organizacin del mismo.

La atencin continua a la calidad tcnica y al buen diseo mejora la agilidad. Producir cdigo claro y robusto es
la clave para avanzar ms rpidamente en el proyecto.

Ingeniera de Software 3 TP 1

Pgina 2

Metodologas giles

La simplicidad es esencial. Tomar los caminos ms simples que sean consistentes con los objetivos perseguidos.
Si el cdigo producido es simple y de alta calidad ser ms sencillo adaptarlo a los cambios que puedan surgir.
Las mejores arquitecturas, requisitos y diseos surgen de los equipos organizados por s mismos. Todo el equipo
es informado de las responsabilidades y stas recaen sobre todos sus miembros. Es el propio equipo el que
decide la mejor forma de organizarse, de acuerdo a los objetivos que se persigan.
En intervalos regulares, el equipo reflexiona respecto a cmo llegar a ser ms efectivo, y segn esto ajusta su
comportamiento. Puesto que el entorno est cambiando continuamente, el equipo tambin debe ajustarse al
nuevo escenario de forma continua. Puede cambiar su organizacin, sus reglas, sus convenciones, sus
relaciones, etc., para seguir siendo gil.

Revisin de metodologas
El siguiente cuadro resume las principales diferencias respecto de las metodologas tradicionales.
Metodologas giles

Metodologas Tradicionales

Basadas en heursticas provenientes de prcticas de Basadas en normas provenientes de estndares seguidos


produccin de cdigo
por el entorno de desarrollo
Especialmente preparados para cambios durante el
Cierta resistencia a los cambios
proyecto
Impuestas internamente
desarrollo)

(por

el

equipo

Proceso menos controlado, con pocos principios

de

Impuestas externamente
Proceso mucho
polticas/normas

ms

controlado,

con

numerosas

No existe contrato tradicional o al menos es


Existe un contrato prefijado
bastante flexible
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


Grupos grandes y posiblemente distribuidos
el mismo sitio
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

Ingeniera de Software 3 TP 1

Pgina 3

Metodologas giles
CONCLUCION
Las metodologas agiles mejoran la satisfaccin del cliente dado que se involucrara y comprometer a lo largo del
proyecto. De este modo el cliente puede sumar su experiencia, se puede evitar malentendidos dado que el cliente
poseer en todo momento una completa visin del estado del producto.
Mejora la motivacin e implicacin del equipo de desarrollo. Las metodologas agiles permiten a todos los miembros del
equipo conocer el estado del proyecto en cualquier momento y las ideas de cualquiera de sus integrantes son tenidas en
cuenta.
Ahorra tiempo y costo. El desarrollo gil trabaja de un modo ms eficiente y rpido que otras metodologas. Adems
estos procesos ponen el foco en cumplir estrictamente el presupuesto y los plazos pactados a la hora de definir y
planificar el proyecto.
Se trabaja con mayor velocidad y eficiencia. Se realizan entregas parciales pero funcionales del producto. De este modo,
es posible entregar en el menor intervalo posible una versin funcional del producto.
Gracias a las entregas parciales y a la implicacin del cliente ser posible eliminar aquellas caractersticas innecesarias
del producto.
Permite mejorar la calidad del producto. La continua interaccin entre los desarrolladores y los clientes tienen como
objetivo asegurar que el producto final sea exactamente lo que el cliente quiere y necesita.
Esta metodologa permite alertar rpidamente tanto de errores como de problemas. En la etapa de planificacin, el
equipo ha presentado una hoja de ruta anticipando y dando respuesta a los principales problemas tcnicos y a la
velocidad en la que se puede trabajar.
Existen muchas metodologas agiles, cada una con sus propias caractersticas hacen hincapi en algunos aspectos ms
especficos. Segn una encuesta realizada por el sitio http://www.versionone.com/ en el ao 2013 la metodologa ms
usada fue Scrum con el 55%
BIBLIOGRAFIA

http://comunidad.iebschool.com/iebs/agile-scrum/que-es-agile/
Mtodologas giles para el desarrollo de software: eXtreme Programming (XP) - Patricio Letelier y M Carmen
Penads.
http://www.versionone.com/pdf/2013-state-of-agile-survey.pdf

Ingeniera de Software 3 TP 1

Pgina 4