Saltar al contenido principal

Desarrollo Ágil de Software




El Desarrollo Ágil de Software es un tipo particular de desarrollo de software caracterizado por el hecho de que se ejecuta de la manera menos burocrática, simple e iterativa factible. Las ventajas de este enfoque son un ahorro significativo de tiempo y costes en comparación con los métodos de programación convencionales.

Antecedentes

El desarrollo de ágil de software como término sólo ha existido desde principios de la década de 2000. Los primeros aspectos comparables de este método existían a principios de los años noventa. Con su libro «Extreme Programming» de 1999, el informático Kent Beck creó una especie de base teórica para futuros procesos ágiles. En 2001, el «Manifiesto Ágil» fue formulado por un grupo liderado por Kent Beck, que contiene los principios del desarrollo ágil de software:

«Estamos descubriendo mejores formas de desarrollar

software, haciéndolo y ayudando a otros a hacerlo.

Por medio de de este trabajo hemos llegado a valorar:

Individuos e interacciones sobre procesos y herramientas

Software de trabajo sobre documentación completa

Colaboración del cliente sobre la negociación del contrato

Responder al cambio en lugar de seguir un plan

Es decir, aunque existen valor en las posiciones de

a la derecha, valoramos más los posts de la izquierda».[1]

Una mirada a este manifiesto muestra que esta dinámica de desarrollo de software difiere radicalmente del estándar. El enfoque del desarrollo de software ágil está en la funcionalidad y el usuario. Los planes y contratos no son tan importantes como la cooperación y el cambio.

La demanda de desarrollo ágil de software comenzó a incrementar poco luego de la publicación del manifiesto. En 2005, el 14% de las empresas de Europa y Norteamérica encuestadas por Forrester Research dijeron que ya estaban trabajando con métodos ágiles. 8 años luego, un nuevo estudio de VersionOne encontró que más del 80% de las compañías encuestadas confiaban en el desarrollo de software ágil.

Componentes

El manifiesto ágil consta de 12 principios, precedidos por métodos:

1. Clientes satisfechos por medio de de la entrega temprana y continua de software valioso.

2. Los procesos ágiles y los cambios rápidos, inclusive en las últimas fases de desarrollo, aprovechan el cambio para la ventaja competitiva del cliente.

3. Entregue software de trabajo muchas veces y en un plazo corto.

4. Los empresarios y los desarrolladores trabajan juntos intensamente a lo largo de todo el proyecto.

5. Crear un ambiente motivador para un trabajo exitoso.

6. Tanto contacto cara a cara como sea factible.

7. El software de trabajo es la principal medida de progreso.

8. Desarrollo sostenible creado por medio de de procesos ágiles.

9. Atención continua a la excelencia técnica y al buen diseño.

10. La simplicidad es importante.

11. Los equipos se auto-organizan.

12. A intervalos regulares, el equipo reflexiona acerca de cómo ser más eficaz y se ajusta en consecuencia. [2]

Para cumplir con los principios, muchas veces se usan métodos ágiles, que a su vez disponen como objetivo crear el menor esfuerzo administrativo y burocrático factible, lo que podría tener un impacto negativo en la productividad. Los métodos ágiles típicos son, por ejemplo

  • Desarrollo impulsado por pruebas.
  • Tarjetas de historia como parte de la historia del usuario.
  • Programación de pares.

Los procesos ágiles aceleran el desarrollo de software. Los métodos más populares incluyen:

  • Crystal.
  • Programación Extrema.
  • Scrum.

Ventajas y desventajas

Existen muchas ventajas del desarrollo ágil de software. Los procesos ágiles requieren menos tiempo y planificación hasta que los resultados puedan ser alcanzados, y de este modo se pueden ahorrar costes. Al mismo tiempo, el software ágil puede ser ajustado rápidamente en caso de cualquier cambio. Estos cambios pueden ser cambios específicos del mercado, o demandas generales con respecto al software. Una lista detallada de todas las tareas que deben llevarse a cabo (retraso de Sprint) puede ayudar a alcanzar los objetivos. A pesar de las ventajas, un equipo ágil de desarrolladores aún tiene que cumplir con los presupuestos o plazos que proporcionan el alcance del trabajo. A la vez, el éxito de los proyectos no depende sólo del método, sino además del trabajo en equipo. Por ende, el desarrollo ágil de software puede ser una alternativa sensata a los métodos convencionales de desarrollo de software. A pesar de todo, el desarrollo ágil de software no puede, desde luego, garantizar el éxito del software.

Enlaces Web

R Marketing Digital