ENFOQUE SISTEMICO DESARROLLO AGIL

ENFOQUE SISTEMICO PARA EL DESARROLLO ÁGIL

En los años 90 se comenzaron a proponer métodos ágiles para el desarrollo de software, que permitieran a los desarrolladores concentrarse en el software y no totalmente en el diseño y documentación del mismo. Éstas metodologías tienen un enfoque iterativo para la especificación, el desarrollo y la entrega del producto, teniendo como principio que los requerimientos podían cambiar permanentemente y durante el proceso de desarrollo, entregando sistemas funcionales más rápidamente con la posibilidad de agregar nuevos cambios en las especificaciones.


En la actualidad, el proceso de desarrollo de software ha sido abordado desde diferentes metodologías, las cuales tienen diferentes enfoques para la captura de requerimientos y el proceso de desarrollo del sistema software, algunas de ellas se basan en analizar y documentar rigurosamente las especificaciones del sistema, para luego realizar un desarrollo y posteriormente efectuar las pruebas. Otros métodos proponen centrarse en la organización del equipo de trabajo, incluir al cliente activamente y en arrojar resultados satisfactorios más rápidamente. Sea cual fuere la metodología es conveniente saber que éstas se eligen e implementan de acuerdo a la naturaleza del proyecto, llegando incluso a combinarse entre sí para lograr mejores resultados.

Entre las metodologías ágiles más destacadas hasta el momento podemos nombrar:
• XP – Extreme Programming
• Scrum
• Crystal Clear
• DSDM – Dynamic Systems Developmemt Method
• FDD – Feature Driven Development
• ASD – Adaptive Software Development
• XBreed

Los métodos ágiles son también denominados livianos (lightweight), adaptativos e iterativos.
Livianos puesto que ellos se consideran más fáciles de usar y no enfatizan la planificación y documentación detallada como sí lo hacen los métodos tradicionales más formales, que en contraste con las ágiles se denominan pesados (heavyweight).

Adaptativos porque consideran los cambios como una realidad inevitable y no como excepciones. Los métodos ágiles permiten una rápida reacción frente a estos.
Iterativos porque dividen el desarrollo del proyecto en ciclos muy cortos. Al final de cada ciclo una porción ejecutable del sistema es entregada al usuario para que éste la valide.

Las metodologías Ágiles versus las Tradicionales
Las metodologías tradicionales imponen una disciplina de trabajo sobre el proceso de desarrollo de software, con el simple objetivo de asegurar que el software que se obtenga satisfaga los requerimientos del usuario y reúna estándares aceptables de calidad. El trabajo de planificación es riguroso, aún cuando en la práctica muchas veces estas planificaciones no se respetan. En contraposición a este tipo de metodología tradicional las metodologías ágiles aportan nuevos métodos de trabajo que apuestan por una cantidad apropiada de procesos. Es decir, no se desgastan con una excesiva cantidad de cuestiones administrativas (planificación, control, documentación) ni tampoco defienden la postura extremista de total falta de proceso. Ya que se tiene conciencia de que se producirán cambios lo que se pretende es reducir el costo de rehacer el trabajo.

Se identifican como principales diferencias entre ambos enfoques las siguientes:
Las metodologías ágiles son adaptativas más que predictivas. Una metodología tradicional potencia la planificación detallada y de largo alcance de prácticamente todo el desarrollo de software (ejemplo modelo cascada). En contraste las metodologías ágiles proponen procesos que se adaptan y progresan con el cambio, llegando incluso hasta el punto de cambiar ellos mismos.  
Las metodologías ágiles están orientadas más a los desarrolladores que a los procesos. Intentan entonces trabajar con la naturaleza de las personas (desarrolladores y usuarios) asignadas a un proyecto, más que contra ellos, de tal forma que permiten que las actividades de desarrollo de software se conviertan en una actividad grata e interesante



Fuentes

Comentarios

Entradas populares de este blog

ÁRBOL DE PROBLEMAS, DE OBJETIVOS Y MATRIZ DE PLANIFICACIÓN

T.G.S y FUNDAMENTOS DE CALIDAD SOFTWARE

DATOS E INFORMACION