jueves, 23 de enero de 2020

¿Qué es la metodología ágil?

El término "ágil" generalmente se refiere a ser capaz de moverse o responder rápida y fácilmente; siendo ágil Por lo tanto, en cualquier tipo de disciplina de gestión, ser ágil como cualidad debería ser un buen objetivo. La gestión ágil de proyectos específicamente, implica ser adaptativo durante la creación de un producto, servicio u otro resultado.
Una serie de metodologías ágiles se originaron y ganaron fuerza en la década de 1990 y principios de 2000. Aquí están los diversos métodos ágiles populares que se utilizan.

Lean Kanban: el concepto Lean optimiza el sistema de una organización para producir resultados valiosos basados ​​en sus recursos, necesidades y alternativas, al tiempo que reduce el desperdicio. Kanban significa literalmente un "letrero" o "cartelera" y defiende el uso de ayudas visuales para ayudar y rastrear la producción.

Programación extrema (XP): Originado en Chrysler Corporation, ganó tracción en la década de 1990. XP permite evitar que el costo de cambiar el software aumente radicalmente con el tiempo. Los atributos clave de XP incluyen el desarrollo incremental, la programación flexible, los códigos de prueba automatizados, la comunicación verbal, el diseño en constante evolución, la estrecha colaboración y la vinculación de los impulsos a largo y corto plazo de todos los involucrados.

Métodos Crystal: introducidos por Alistair Cockburn a principios de la década de 1990, los métodos Crystal tienen cuatro roles: patrocinador ejecutivo, diseñador principal, desarrolladores y usuarios experimentados. Los métodos Crystal recomiendan varias estrategias y técnicas para lograr la agilidad.

Métodos de desarrollo de sistemas dinámicos (DSMD): este marco se publicó inicialmente en 1995 y es administrado por el Consorcio DSDM. DSDM establece la calidad y el esfuerzo en términos de costo y tiempo desde el principio y ajusta los entregables del proyecto para cumplir con los criterios establecidos al priorizar los entregables en "Debe tener", "Debería haber", "Podría haber" y "No tendrá" categorías

Desarrollo dirigido por funciones (FDD): presentado por Jeff De Luca en 1997 y opera según el principio de completar un proyecto dividiéndolo en pequeñas funciones valoradas por el cliente que se pueden entregar en menos de dos semanas. FDD tiene dos principios fundamentales: el desarrollo de software es una actividad humana y el desarrollo de software es una funcionalidad valorada por el cliente.

Test Driven Development (TDD): también conocido como Test-First Development, y fue presentado por Kent Beck, uno de los creadores de Extreme Programming (XP). Es un método de desarrollo de software que implica escribir primero el código de prueba automatizado y desarrollar la menor cantidad de código necesario para pasar esa prueba más tarde.

Desarrollo de software adaptativo (ASD): este método surgió del rápido trabajo de desarrollo de aplicaciones realizado por Jim Highsmith y Sam Bayer. Los aspectos más destacados de ASD son la adaptación constante de los procesos al trabajo en cuestión, la provisión de soluciones a los problemas que surgen en grandes proyectos y el desarrollo iterativo e incremental con prototipos continuos.

Proceso unificado ágil (AUP): Evolucionado del proceso unificado racional de IBM y desarrollado por Scott Ambler, AUP combina técnicas ágiles probadas y probadas en la industria, como Test Driven Development (TDD), Agile Modeling, gestión ágil de cambios y refactorización de bases de datos, para entregar un producto funcional de la mejor calidad.

Diseño impulsado por dominio (DDD): este enfoque fue diseñado para manejar diseños complejos con implementación vinculada a un modelo en evolución. Fue conceptualizado por Eric Evans en 2004 y gira en torno al diseño de un dominio central.

Todos estos métodos de Agile difieren entre sí en una variedad de aspectos, pero su comunidad se deriva de su adhesión al Manifiesto Agile.