El documento compara las metodologías tradicionales y ágiles para el desarrollo de proyectos. Las metodologías tradicionales siguen un enfoque lineal y secuencial mientras que las ágiles se enfocan en la adaptabilidad y retroalimentación continua. Algunos métodos tradicionales son la cascada y la espiral, mientras que ejemplos de métodos ágiles son Extreme Programming y Scrum.
2. Metodologías Tradicionales
Siguen un ordenamiento de
planificación lineal, por lo
general con modelos de
desarrollo en Cascada u otros
métodos que mantienen una
ejecución secuencial, en
donde es necesaria que cada
etapa finalice para continuar
con la siguiente
3. Metodologías Tradicionales
Ventajas
- Permite hacer evaluaciones y
seguimiento detallado de cada
fase
- Son sencillas de aplicar y de
métodos intuitivos para el
desarrollo de software
- Son ideales para proyectos
en los que se conoce con
claridad lo que se pretende
desarrollar
Desventajas
- Es complicado evaluar
riesgos, puesto que cada
fase se ejecuta después de la
otra y existe una
incertidumbre de lo que
pueda ocurrir en la siguiente
- No existe una
retroalimentación del cliente
durante el desarrollo del
proyecto, solo una vez que
ha finalizado
5. Metodologías Ágiles
A diferencia de las metodologías tradicionales, éstas no siguen
un estricto plan secuencial de etapas, sino que están abiertas al
cambio y se fundamentan en la adaptabilidad durante el
proceso de desarrollo de software
6. Metodologías Ágiles
Extreme Programing
Dentro de esta metodología
se considera normal la
solicitud de cambios durante
el desarrollo del proyecto, e
incluso puede ser algo
deseable, puesto que los
equipos de desarrollo que
trabajan con este método
presentan una gran
adaptabilidad y respuesta a
los cambios
7. Metodologías Ágiles
Scrum
Presenta una estrategia de desarrollo
incremental, en base a “entregables” a
lo largo del desarrollo del proyecto,
denominados sprints, en donde se
completan las tareas de acuerdo al
sprint backlog (que a su vez se basa en
el product backlog)
Permite le ejecución simultánea de
distintas etapas del proyecto y las
mejoras adaptables continuas gracias a
sus instancias de retroalimentación
8. Etapas de Desarrollo de Proyectos
Metodologías Tradicionales →
Metodologías Ágiles
9. Roles en el Desarrollo de Software
Proyectos Modelo Tradicional
Para este tipo de proyectos los roles
presentarán una jerarquía bien
definida y distribución de las tareas al
pie de la letra en base a los
requerimientos iniciales de la
planificación del proyecto.
Existen las instancias necesarias de
comunicación, sin embargo el cliente
solo participa en las fases de inicio y de
entrega final del proyecto, es decir
existen pocos espacios para
retroalimentación y adaptabilidad
Roles Importancia
Usuario / Cliente
Tiene la responsabilidad de entregar/escribir los
requerimientos del proyecto a desarrollar, además de
validar, revisar y aprobar los entregables que saldrán de
este proceso. Interviene en las fases de inicio y revisión
(entrega) del proyecto.
Líder del proyecto
Organiza, gestiona y coordina todas las tareas del
proyecto para cumplir el objetivo. Mantiene
comunicación directa con el cliente y equipo del
proyecto. Su participación es fundamental para el éxito
del proyecto.
Analista
Es quien toma y transcribe los requerimientos del
cliente y los canaliza hacia las personas que programan.
Rol conocido también como analista de requerimientos.
Programador
Rol clave, pues es quien convierte los requerimientos en
leguaje de maquina, es decir, crea los programas.
Tester
Participa en la etapa de certificación. Es un rol
independiente, pero con gran responsabilidad, ya que si
el proyecto no cumple con los estándares mínimos será
rechazado o devuelto a desarrollo hasta que cumpla con
los requisitos solicitados por el cliente.
10. Roles en el Desarrollo de Software
Proyectos Modelos Ágiles
En las metodologías ágiles, existe
una constante comunicación “cara
a cara” con el cliente o usuario.
Tomando como ejemplo el
método Scrum, existe un Equipo
de Desarrolladores con bastante
autonomía, el Scrum Master
supervisa que todos comprendan
y cumplan con el método Scrum.
Roles Importancia
Product Owner
El Dueño de Producto (Product Owner) es el
responsable de maximizar el valor del
producto y del trabajo del Equipo de
Desarrollo.
Scrum Master
El Scrum Master es el responsable de asegurar
que el Scrum sea entendido y adoptado.
Desarrolladores
Solo los miembros del Equipo de Desarrollo
participan en la creación de los entregables