METODOLOGÍAS DE DESARROLLO ÁGIL.
Hemos estado describiendo
las metodologías de desarrollo de software que han ido evolucionando a lo largo
del tiempo. Cabría preguntarse:
• ¿Qué nuevas
metodologías se están desarrollando?,
• ¿Siguen todas las
metodologías los modelos tradicionales o están apareciendo otras posibilidades?
Algunos desarrolladores
creen que las metodologías tradicionales generan demasiada burocracia y exigen
demasiado esfuerzo, sobre todo para empresas de desarrollo pequeñas y en
desarrollos de proyectos pequeños. Por otro lado, el mercado competitivo actual
de los productos tecnológicos, no sólo exige
calidad, coste e innovación, sino también rapidez y flexibilidad. En este
contexto, el mercado necesita ciclos de desarrollo más cortos.
Para solucionar estos
problemas se han propuesto una serie de principios y valores que
aligeren la carga de las metodologías tradicionales. Con el desarrollo de estas
ideas y conceptos han aparecido un nuevo tipo de metodologías que se denominan
de desarrollo ágil. Sin embargo, algunos expertos consideran
que el desarrollo ágil no constituye realmente una nueva metodología, sino
un conjunto de recomendaciones y principios aplicables a las metodologías
tradicionales para hacerlas más flexibles, rápidas y adaptables.
Este enfoque está
mostrando su efectividad en proyectos pequeños, con requisitos
inestables o cambiantes (incertidumbre) y cuando se exige reducir drásticamente
los tiempos de desarrollo pero manteniendo una alta calidad del producto final.
Las metodologías ágiles se
basan en el trabajo en equipo y pretenden:
• Centrarse en el
desarrollo y en satisfacer al cliente, es decir, producir un sistema
con las funcionalidades correctas. Esto significa que el sistema final tiene
que incluir sólo el mínimo número de características necesarias para satisfacer
por completo al cliente real.
• Mejorar las predicciones
y previsiones para cumplir plazos y ajustarse a los recursos.
• Eliminar riesgos tomando
en consideración la incertidumbre.
• Disminuir costes, por
ejemplo, deben eliminarse actividades relacionadas con algunos productos
intermedios, como documentos formales de especificaciones que no tienen una relación
directa con el resultado final del producto.
metodologías ágiles
están basadas fundamentalmente en orientadas a objetos, algunas de
las más utilizadas son:
Programación Extrema (XP),
Scrum (Schwaber y Beedle 2001), o Rational Unified Process (RUP) que por su
flexibilidad puede seguir los principios de la metodología ágil. De hecho vemos
que RUP se adapta a cualquier necesidad (sistemas tradicionales, sistemas con
gran incertidumbre, sistemas de tiempo real, desarrollo ágil…).
No hay comentarios:
Publicar un comentario