Estrategias de Desarrollo de Software: Enfoques Iterativos y Agilidad

Enviado por Chuletator online y clasificado en Diseño e Ingeniería

Escrito el en español con un tamaño de 3,44 KB

Desarrollo Iterativo de Software

En cada iteración, el equipo evoluciona el producto a partir de los resultados obtenidos en las iteraciones anteriores, añadiendo nuevos objetivos/requisitos o mejorando los ya existentes.

La priorización de los objetivos/requisitos se realiza en función del valor que aportan al cliente.

Ventajas del Desarrollo Iterativo

  • El cliente, como máximo, puede perder los recursos dedicados a una única iteración.
  • Permite mitigar los riesgos del proyecto desde el inicio.
  • Facilita la gestión de la complejidad del proyecto.
  • En una iteración, solo se trabaja en los requisitos que aportan más valor en ese momento.
  • La complejidad puede dividirse para que cada parte sea resuelta en diferentes iteraciones.
  • Se minimiza el número de errores en el desarrollo y se aumenta la calidad del producto.
  • El producto es consistente y puntual en su desarrollo.

Desventajas del Desarrollo Iterativo

  • La disponibilidad del cliente debe ser muy alta durante todo el proyecto.
  • El trato con el cliente debe basarse en principios éticos y colaboración mutua.
  • Si los incrementos son pactados, puede que no sean suficientes para crear un software que cubra todas sus necesidades.
  • La entrega de prototipos puede hacer vulnerable al programa por falta de robustez.
  • Son necesarias técnicas y herramientas que permitan hacer cambios fácilmente en el producto. También se requiere un equipo experimentado de profesionales.
  • Hay clientes que no eligen este método de desarrollo porque la cantidad de tiempo y dinero a invertir no les parece rentable.

Metodología Ágil

La metodología ágil se fundamenta en los siguientes principios clave:

  • Valorar a los individuos y las interacciones sobre los procesos y las herramientas.
  • Priorizar el software funcionando sobre la documentación exhaustiva.
  • Fomentar la colaboración con el cliente sobre la negociación contractual.
  • Promover la respuesta al cambio sobre seguir un plan estricto.

Principios adicionales de la Metodología Ágil:

  • Lo principal es satisfacer al cliente a través de la entrega temprana y continua de software.
  • Se aceptan cambios en los requisitos, incluso en etapas tardías del desarrollo.
  • Se busca entregar software funcional con frecuencia.

Ventajas de la Metodología Ágil

  • Flexibilidad en el proceso y las definiciones de los productos.
  • Interacción constante con el cliente y el equipo.
  • Ideal para proyectos con requisitos poco definidos o cambiantes.
  • Simplifica el manejo de la sobrecarga de procesos.
  • Mejor perfil de productividad del equipo.

Inconvenientes de la Metodología Ágil

  • El jefe de proyecto puede no tener conocimientos técnicos y dedicarse exclusivamente al control.
  • Durante el desarrollo del producto, es posible que se deban ampliar las características diseñadas inicialmente para evitar que quede obsoleto antes de su lanzamiento al mercado.
  • Puede generar incertidumbre si no se gestiona adecuadamente.
  • Fuerte dependencia de las personas y su compromiso.
  • Si un proyecto ágil fracasa, la documentación es escasa o inexistente, dificultando el aprendizaje post-mortem.

Entradas relacionadas: