sábado, 13 de febrero de 2016

Métodos Ágiles de programación


Introducción:


Durante los años 80's y 90's se tuvo la idea de que los mejores software se basaban en una buena planificación, sin embargo, al implementar este enfoque en pequeños proyectos se invertía mucho tiempo y esfuerzo en la planificación que en hacer el desarrollo por lo que se propuso un nuevo método, lo que se conoce actualmente como "Métodos Ágiles de Programación"    

Las Metodologías Ágiles o “ligeras” constituyen un nuevo enfoque en el desarrollo de software, debido a la simplicidad de sus reglas y prácticas, su orientación a equipos de desarrollo de pequeño tamaño, su flexibilidad ante los cambios y su ideología de colaboración   
(Metodologías Ágiles)
El Manifiesto Ágil 

El 17 de Febrero en Snowbird, Utah hubo una reunión que tenia por objetivo discutir acerca de las técnicas y procesos para desarrollar un software y en donde se denominó el término "Métodos ágiles" a la alternativa de las metodologías formales en donde la planificación era fundamental. El resultado de este encuentro fue un Manifiesto para el Desarrollo de Software Ágil en donde se describen los principios y valores de este.



  1. La satisfacción del cliente es la mayor prioridad y esto se logra mediante tempranas y continuas entregas de software. 
  2. Los cambios serán bien recibidos sin importar que estos se pidan en etapas finales del sofware.
  3. Entregar frecuentemente software (...) con el menor intervalo de tiempo posible entre una entrega y la siguiente. 
  4. Los desarrolladores deben trabajar juntos a lo largo del proyecto. 
  5. El proyecto se construirá en torno a individuos motivados. 
  6. El diálogo cara a cara es el método más eficiente y efectivo para comunicar información dentro de un equipo de desarrollo. 
  7. El software que funciona es la medida principal de progreso. 
  8. Los promotores, desarrolladores y usuarios deberían ser capaces de mantener una paz constante. 
  9. La atención continua a la calidad técnica y al buen diseño mejora la agilidad. 
  10. La simplicidad es esencial. 
  11. Las mejores arquitecturas, requisitos y diseños surgen de los equipos organizados por sí mismos.
  12. En intervalos regulares, el equipo reflexiona respecto de cómo llegar a ser más efectivo, y según esto ajusta su comportamiento. 

A continuación presentamos un mapa que representa lo que establece el Manifiesto Ágil.


Conclusión:


Los métodos ágiles pueden resultar una gran herramienta si seguimos los principios del Manifiesto de otra forma, nos parecerán una pesadilla si no sabemos liderar a un equipo pues se requerirá de mucha comunicación y mucha motivación en cuanto el cliente solicite cambios.

Considero esta metodología bastante atractiva pues trae muchos beneficios siempre y cuando lo apliquemos a pequeños proyectos y estemos dentro de un equipo bien consolidado y en donde exista la paz.

Los métodos tradicionales de desarrollo de software no fueron factibles para el desarrollo de sistemas pequeños, haciéndolo más tardado ya que existe el principio de que sin la documentación completa (documento de requerimientos, casos de uso, diagrama entidad-relacion, etc) no es posible desarrollar el sistema.


1. Los métodos ágiles se utilizan en:
a) Programación orientada a objetos.
b) Desarrollo de Software
c) Soporte de Software
d) Programación estructurada
e) Calidad de Software

2. ¿Qué modelo de desarrollo de software utilizan los métodos ágiles?
a) Cascada
b) Lineal
c) Iterativo
d) Espiral
e) Evolutivo

3. ¿Cuáles son las principales características en las que se basa un método ágil?
a) Trabajo en equipo, adaptable, avances funcionales
b) Satisfacción del cliente, reduce tiempo, una sola entrega final
c) Comunicación, no se adapta a los cambios, no es iterativo
d) Orientado a resultados, no hay comunicación, no ha trabajo en equipo


4. ¿Cuáles son las características que diferencian el método ágil del convencional?
a) El cliente participa en el equipo de desarrollo
b) Trabajo en equipo
c) Satisfacción del cliente.
d) Presenta avances incrementales del proyecto al cliente
e) Adaptable en cualquier etapa del proyecto

5. En los métodos ágiles el cliente...
a) Desarrolla el software
b) Se incorpora al equipo de trabajo
c) Trabaja con otros proyectos de software
d) Resuelve problemas de comunicación del equipo
e) Proporciona los recursos materiales

Referencias: 

 - Sommerville, I. and Alfonso Galipienso, M. (2005). Ingeniería del software. Madrid: Pearson                      Addison-Wesley

- Metodologías Ágiles. (n.d.). Retrieved from http://www.kybele.etsii.urjc.es/docencia/SI/2012-2013/Material/[SI-2010-11]EjercicioAgiles.pdf


No hay comentarios.:

Publicar un comentario