Se describen las ventajas, desventajas características de los métodos ágiles, así como los métodos ágiles más utilizados en la actualidad según fuentes consultadas
1. Métodos ágiles en el desarrollo de software
Integrantes:
-Guadarrama Mondragón Raúl
-Pérez Bravo Isaac Ulises
2. ¿Qué es?
Los métodos ágiles se definen como una técnica de
desarrollo de software. Son muchos tipos y tienen
variantes entre si, sin embargo su objetivo principal
recurrentemente es el mismo: reducir tiempo, esfuerzo y
costos a la hora de desarrollar un proyecto de software.
3. Características
Como el método ágil se define como la técnica para reducir tiempo, dinero y
esfuerzo; necesita cumplir con ciertas condiciones para que esto suceda.
Las características que poseen son:
- Desarrollo iterativo: Es vital para el proceso, quiere decir que hay fases del
proceso que se repiten tantas veces sea necesaria hasta que el cliente este
conforme con ella.
- Reducción de artefactos intermedios: Se refiere a que no existen
intermediarios en todo el proceso, ya que el cliente se incluye siempre
dentro del desarrollo.
- Alta comunicación: El método ágil propone reuniones diarias para trabajar
los requerimientos, gracias a esto la comunicación es mayor entre los
miembros del equipo y con el mismo cliente.
- Adaptabilidad: Como su nombre lo indica, esta característica se refiere a
que es versátil y se adapta a todos los cambios que puedan llegar a surgir
dentro de alguna de las fases del proyecto.
4. Ventajas
1.- Por lo general son grupos de trabajo
pequeño, así que el entorno es más amigable,
optimo y confiable.
2.- Al ser pocos, el proyecto es fácilmente
adaptable a los cambios repentinos que puedan
suceder a lo largo del proyecto.
3.- Los problemas en el proyecto son fácilmente
identificados, ya que se cuenta con la presencia
del cliente para determinar que es lo que
realmente se quiere
4.- Es muy flexible, es decir, que no maneja el
cliente contratos con el equipo de trabajo y
5. Desventajas
1.- No es aplicable en proyectos grandes, esto
se debe a que, como la base de la agilidad es
la comunicación, siendo un equipo es más
complicado mantener el mismo nivel de
comunicación con todos.
2.- Se hace menos énfasis en la arquitectura de
software.
3.- Como consecuencia de lo anterior, el nivel
de análisis es menor, por lo que llega a
presentar errores a largo plazo.
6. NOTA IMPORTANTE
Es recomendable usar los métodos ágiles cuando
los requerimientos del proyecto sean cambiantes,
ya que si se usa un modelo tradicional en este
tipo de proyectos, un cambio imprevisto generaría
enormes problemas de gasto y sobre todo de
tiempo.
7. TIPOS
Las metodologías ágiles se dividen en varios tipos de acuerdo a las necesidades, estos son:
* Scrum: Este tipo de método ágil se basa en iteraciones que se realizan cada 30 dias llamadas
“sprints”. Esta enfocado a los proyectos de requerimientos cambiantes y en las reuniones a
largo plazo para el desarrollo de requerimientos. El resultado de cada sprint es un incremento
ejecutable que se muestra al cliente.
8. TIPOS
* Programación extrema (XP): 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.
9. TIPOS
* Test Driven Development: Basado en pruebas de desarrollo (TDD) es una técnica
avanzada de la utilización de pruebas unitarias automatizadas para impulsar el
diseño de software y la fuerza de desacoplamiento de las dependencias. El
resultado del uso de esta práctica es un conjunto completo de pruebas de unidad
que se pueden ejecutar en cualquier momento para proporcionar información que el
software todavía está trabajando. Esta técnica está fuertemente enfatizada por los
que utilizan metodologías ágiles de desarrollo.
10. TIPOS
* Crystal: 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.
11. TIPOS
* Agile Project Managmment: Reduce la
complejidad al descomponer los muchos meses
de duración del ciclo de los requisitos de
construcción de todo el proyecto, la
construcción de todo el producto y luego las
pruebas para encontrar cientos de defectos del
producto.