Este documento compara las metodologías de desarrollo de software tradicionales y ágiles. Explica que las metodologías tradicionales siguen un proceso secuencial fijo con énfasis en la planificación y documentación, mientras que las metodologías ágiles se centran en la colaboración, la flexibilidad y la capacidad de responder rápidamente al cambio. También describe algunos ejemplos comunes de metodologías tradicionales como la cascada y el prototipado, y ágiles como Scrum, Kanban y programación ext
2. ¿Cómo funciona una Metodología
Tradicional?
Una metodología tradicional se caracteriza por definir un ciclo secuencial de forma fija en
donde se avanza en un tiempo lineal, teniendo especial énfasis en la documentación,
planificación con adelantado y la priorización.
El tiempo y los requerimientos con los que se quiere lograr el proyecto son fijos y las etapas
que generalmente se presentan son:
+ Iniciación.
+ Planificación.
+ Ejecución.
+ Medición.
4. Algunos tipos de Metodologías Tradicionales
Prototipado
se basa en la construcciónde
un prototipode software que se
construye rápidamente para que
los usuarios puedan probarloy
aportar feedback.
Espiral
es una combinaciónde los dos
modelos anteriores, que añade
el conceptode análisis de
riesgo. Se divide en cuatro
etapas:planificación, análisis
de riesgo, desarrollode
prototipo y evaluación del
cliente.
Waterfall
(cascada)
es una metodologíaen la que
las etapas se organizande
arriba a abajo, de ahí el
nombre. Se desarrollanlas
diferentesfunciones en etapas
diferenciadasy obedeciendoun
riguroso orden.
Incremental
en esta metodologíade
desarrollode software se va
construyendo el producto final
de manera progresiva.
5. Ventajas y desventajas Metodología
Tradicional
- No puede retrocederentre etapas.
- Genera mayor costo cuandose desea cambiar alguna parte de los objetivos.
- Al ser secuencial presenta mayor rigidez .
- El usuarios y el comprador del software no participandel proceso necesario
- para lograr ciertos objetivos.
- Tiene una jerarquíainterna más estructurada y de “mando”.
+ Ya que cuenta con etapassucesivases simple y fácil de usar.
+ Se puedenusar en proyectos donde se tiene claridade los requerimientosnecesarios.
+ Al basarse en documentaciónesta permanece de manera clara.
+ Tiene objetivosfijos, esto genera mayor responsabilidad.
6. ¿Como funciona una Metodología Ágil?
La metodologíaágil se basa en la colaboraciónen quipo en las tareas y la flexibilidadpara responder al cambio
lo más rápido posible.
El manifiesto ágil es:
+ Mayor enfoque en individuos e interaccionesque procesos y herramientas
+ El software funcionandoes más importante que una documentaciónextensa.
+ La colaboración con el cliente es más importante que la negociacióncontractual.
+ Responder al cambio en lugar de seguir ciegamenteun plan.
Esta metodologíapermite al software adaptarsea las necesidadesque van surgiendoen el camino, esto facilita construir
aplicacionesmás funcionales. Su desarrolloes incremental, en cada ciclovan agregandonuevas funcionalidadesa la
aplicación,estos ciclos son cortos y rápidos.
8. Algunos tipos de Metodologías Agiles
Lean
Está configurado para que pequeños
equipos de desarrollomuy
capacitados elaboren cualquier tarea
en poco tiempo.Los activos más
importantesson las personas y su
compromiso,relegando así a un
segundo plano el tiempo y los costes.
El aprendizaje,las reacciones rápidas
y potenciar el equipo son
fundamentales.
Scrum
Es tambiénuna metodología
incrementalque divide los requisitos
y tareas de forma similara Kanban.
Se itera sobre bloques de tiempos
cortos y fijos para conseguir un
resultadocompleto en cada iteración.
Las etapas son: planificaciónde la
iteración, ejecución (sprint),reunión
diaria y demostraciónde resultados
Cada iteraciónpor estas etapas se
denomina también sprint.
Programación extrema (XP)
es una metodología de desarrollode
softwarebasada en las relaciones
interpersonales,que se consideran la
clave del éxito. Su principalobjetivo
es crear un buen ambientede trabajo
en equipo y que haya un feedback
constante del cliente.
Kanban
metodología de trabajo inventada por
la empresa de automóviles Toyota.
Consisteen dividir las tareas en
porciones mínimasy organizarlasen
un tablero de trabajo dividido en
tareaspendientes, en curso y
finalizadas.
9. Ventajas y desventajas Metodología Ágil
+ Las prioridadesson flexibles.
+ Se prioriza al cliente y el usuario final.
+ Mayor transparencia en el proceso.
+ Mejor adaptabilidad.
+ Fomenta la responsabilidad dentrodel equipo.
+ Facilita la priorizaciónde toma de decisiones.
- El equipo necesita tener base sólida y habilidades
- La falta de accesoa la documentaciónpodría dificultar a los miembros
nuevos que necesitantener accesoa esta
- Existe peligro de falta de límites en el proyecto
- Es altamentedifícil de aplicar
10. ¿Cual escoger? … en resumen
Si bien ambos tienen formas de procesos y priorizaciones distintas, ambas pueden servir para
distintos proyectos.
En comparación podríamos decir que las metodologías ágiles son mucho más ocupadas gracias a su
flexibilidad y la manera en que se involucra a todos los actores en ella como también intentar
garantizar al máximo cumplir con los requisitos y superar las pruebas que se vienen en camino
disminuyendo así los riesgos, sin embargo no hay que olvidar que el método tradicional nos ofrece
simplicidad de uso y también sencilles en sus procesos etapas, haciéndolo factible para realizar
distintos procesos dentro de un proyecto donde hay claridad en lo que se está haciendo y en donde
la documentación esprioridad para poder llevar a cabo todo de manera clara, ordenada y conciso.