Metodologías Ágiles de Desarrollo de Software

Get Started. It's Free
or sign up with your email address
Metodologías Ágiles de Desarrollo de Software by Mind Map: Metodologías Ágiles de Desarrollo de Software

1. El término ágil y su aplicación al desarrollo de software nace en febrero de 2001.

1.1. Se esbozaron los valores y principios que permitan responder rápidamente a los cambios.

2. La filosofía de las Metodologías Ágiles se centran en dar mayor valor a:

2.1. Los individuos

2.2. La colaboración del cliente

2.3. Desarrollo incremental del Software mediante interaciones muy cortas.

3. Surgen como alternativa a las Metodologías Tradicionales caracterizadas por:

3.1. Ser muy rigidas

3.2. Muy enfocadas y dirigidas por la documentación que generan.

4. El manifiesto ágil contiene los valores principales de las Metodologías, en ellas se valoran:

4.1. Al individuo y las interacciones del equipo de desarrollo sobre el proceso y las herramientas.

4.2. Software funcional mas allá de conseguir una buena documentación.

4.3. Colaboración del cliente mas allá de la negociación de un contrato.

4.4. Responder a los cambios más que seguir estrictamente un plan.

5. Los 12 principios de las Metodologías ágiles, que los diferencian de las Tradicionales son:

5.1. Satisfacer al cliente mediante continuas entregas con valor.

5.2. Los cambios siempre son bienvenidos.

5.3. Entrega frecuente de software funcional.

5.4. Clientes y desarrolladores trabajando juntos.

5.5. Individuos que construyen el proyecto motivados.

5.6. El dialogo y la comunicación son fundamentales.

5.7. La medida principal del progreso es el software funcionando,

5.8. Promoción del desarrollo sostenible.

5.9. Atención continua a la calidad técnica y al buen desempeño.

5.10. Simplicidad.

5.11. Equipos Organizados por si mismos.

5.12. Mejorar la efectividad mediante autoevaluación constante del equipo.

6. Ventajas de las Metodologías Ágiles:

6.1. Ofrecen una rápida respuesta a cambios de requisitos a lo largo del desarrollo del proyecto.

6.2. El cliente puede observar y opinar sobre como va avanzando el proyecto.

6.3. Los cambios del cliente tienen un impacto menor en el proyecto.

6.4. Permite eliminar el trabajo innecesario.

6.5. Mejora Continua

6.6. Mejora la dinámica de los grupos de trabajo.

6.7. Permite una mejor integración de los equipos de desarrollo.

7. Desventajas de las Metodologías Ágiles:

7.1. Compleja evaluación de riesgos.

7.2. Excesiva flexibilidad en algunos proyectos.

7.3. Se puede crear dependencia del equipo de desarrollo.

7.4. Ausencia de documentación rigurosa lo cual puede complicar el mantenimiento.

7.5. Dificultad para realizar mas de un proyecto en paralelo.

7.6. Restricciones en cuanto a tamaños de proyectos.

7.7. Falta de reusabilidad derivada de la falta de documentación.

8. Metodologías Ágiles existentes:

8.1. PROGRAMACIÓN EXTREMA (EXTREME PROGRAMMING,) es una metodología ágil centrada en potenciar las relaciones interpersonales como clave para el éxito en desarrollo de software, promoviendo el trabajo en equipo, preocupándose por el aprendizaje de los desarrolladores, y propiciando un buen clima de trabajo.

8.2. SCRUM: Sus principales características se pueden resumir en dos: El desarrollo de software se realiza mediante iteraciones, denominadas sprints y la importancia las reuniones a lo largo proyecto.

8.3. Crystal Methodologies: Se trata de un conjunto de metodologías para el desarrollo de software caracterizadas por estar centradas en las personas que componen el equipo y la reducción al máximo del número de artefactos producidos.

8.4. Dynamic Systems Development Method (DSDM): Sus principales características son: es un proceso iterativo e incremental y el equipo de desarrollo y el usuario trabajan juntos

8.5. Adaptive Software Development (ASD): Sus principales características son: iterativo, orientado a los componentes software más que a las tareas y tolerante a los cambios.

8.6. Feature -Driven Development (FDD): Se centra en las fases de diseño e implementación del sistema partiendo de una lista de características que debe reunir el software.

8.7. Lean Development (LD): En LD, los cambios se consideran riesgos, pero sise manejan adecuadamente se pueden convertir en oportunidades que mejoren la productividad del cliente. Su principal característica es introducir un mecanismo para implementar dichos cambios.