Subido por valderramala

459267597-Cuadro-Comparativo-de-Las-Metodologias-Agiles

Anuncio
Simón Hernández Cristian
3CV1
Cuadro comparativo de las metodologías Ágiles
¿Qué es?
Kanban
Deriva del japonés que significa
“Tablero” o “Tarjeta visual”, y
sirve para mejorar el cómo se
gestionan las tareas.
Es un tablero que refleja los
estados de las actividades o
tareas que se deben realizar en
un flujo de trabajo determinado.
 Da por hecho que se está
trabajando en lo que está
expuesto en el tablero.
 Hacer reuniones diarias para
discutir
y
encolar
requerimientos.
 En las reuniones diarias, se
busca tener a todos los
empleados trabajando en el
proyecto.
Crystal
Es una familia de metodologías
agiles que se caracterizan por
tener una versión dependiente
de que tan crítico es el sistema
que se pretende desarrollar.
Estas metodologías Crystal se
clasifican por colores y mientras
más oscuro sea el color más
pesada es la metodología, es
decir, es más estricto.
 Se clasifica por colores,
tomando como parámetros, el
número de personas en el
equipo
y
los
riesgos
potenciales.
 Entrega frecuente de software
a los clientes.
 Entre más pequeño sea el
equipo,
mejor
es
la
coordinación.
 Debe
existir
la
retroalimentación
y
comunicación efectivas.
 Involucrar al cliente es la clave.
 Se centra en la entrega
frecuente de productos.
 El desarrollo es iterativo e
incremental.
 Las pruebas son realizadas
durante todo el ciclo vital del
proyecto.
 Comunicación y cooperación
entre
todas
las
partes
interesadas en el proyecto.
 Todos los cambios durante el
desarrollo son reversibles.





 Monitoreo
constante
del
proyecto en desarrollo.
 Se
obtienen
resultados
periódicos y tangibles.
DSDM
(Dynamic Systems
Development Method)
Es un método que provee un
framework para el desarrollo ágil
de software, donde el usuario
apoya en un desarrollo iterativo y
creciente a los requerimientos
cambiantes, para desarrollar un
sistema
que
reúna
las
necesidades de la empresa en
tiempo y presupuesto.
FDD
(Feature Driven Development)
Es una metodología ágil que
organiza el desarrollo de
software haciendo progreso en
funciones, las cuales, no son
necesariamente funciones del
producto en el sentido de la
palabra.
Ingeniería de Software
Características
Pasos para desarrollar el
Software
Metodologías
Ventajas
Desventajas
 Es muy fácil de utilizar,
actualizar y asumir por parte
del equipo.
 Provee flexibilidad en la
producción.
 El rompimiento de las barreras
administrativas.
 Promueve el trabajo en equipo
y mejora la calidad.
 Es el más adecuado para
proyectos que se encuentran
en mejora continua.
 No es una técnica específica
del desarrollo software.
 Asume sistemas de producción
repetitivos dada la naturaleza
de su creación en el área de
manufactura.
 Menor
efectividad
en
situaciones
de
Recursos
Compartidos.
 El sistema no tiene ninguna
anticipación en caso de
fluctuaciones muy grandes e
imprevisibles en la demanda.
Puesta en escena.
Revisión.
Monitoreo.
Paralelismo y flujo.
Estrategia de diversidad
holística.
Técnica de puesta a punto
de la metodología.
Puntos de vista de usuario.
 Es apropiada para entornos
ligeros.
 Permite tener una muy útil
realimentación de los usuarios.
 Al estar diseñada para el
cambio experimenta reducción
de costo.
 Se define en cada iteración
cuales son los objetivos de la
siguiente.
 Presenta una planificación más
transparente para los clientes.
 Delimita
el
alcance
del
proyecto con el cliente.
 Como no es una metodología
rígida, dejando abierta la
posibilidad de agregar y
suprimir fases, productos,
estrategias,
técnicas
que
puede afectar el desarrollo del
sistema.
 Crystal Clear es más fácil de
aprender e implementar, pero
XP es más disciplinado.
Pre-Proyecto.
Ciclo de Vida del Proyecto.
2.1. Estudio de Viabilidad.
2.2. Estudio del Negocio.
2.3. Iteración de Modelo
Funcional.
2.4. Iteración de Diseño y
Desarrollo.
2.5. Aplicación.
3. Post-Proyecto.
 La calidad del producto es
mejorada a través de la
participación de los usuarios.
 Asegura desarrollos rápidos.
 Reduce
los
costos
de
proyectos a través de las
ventajas ya mencionadas.
 Permite realizar cambios de
forma fácil.
 Permite la reutilización de
aplicación a través de los
módulos existentes.
 Se
necesita
una
alta
participación de los usuarios en
el desarrollo, para evitar que
los desarrolladores asuman
criterios que no son ciertos.
 No es una metodología de
desarrollo común. El proceso
es un tanto difícil de
comprender.
1.
 Cada componente del producto
final ha sido probado y
satisface los requerimientos.
 Minimiza los costos frente a
cambios.
 Falta de documentación del
diseño. El código no puede
tomarse
como
una
documentación.
 Problemas derivados de la
comunicación oral.
Pueden variar dependiendo del
flujo de trabajo que se tiene
actualmente. Pero los generales
son estos:
 Backlog o Ideas.
 To Do o Análisis.
 In
Progress
o
En
desarrollo.
 Testing o Pruebas.
 Done o Terminado.


1.
2.
2.
3.
4.
5.
Desarrollar
modelo
general.
Construcción de la lista de
rasgos.
Planeación por rasgos.
Diseñar por rasgos.
Construir por rasgos.
Simón Hernández Cristian
ASD
(Adaptive Software
Development)
LSD
(Lean Software Development)
SCRUM
Ingeniería de Software
3CV1
Es
un
modelo
de
implementación de patrones
agiles para desarrollo de
software. Su funcionamiento es
cíclico y reconoce que en cada
iteración se producirán cambios
e incluso errores.
 Define claramente entregas
tangibles y evaluación del
progreso del proyecto.
 Se basa en un proceso con
iteraciones cortas que produce
un software funcional que el
cliente y la dirección de la
empresa
puedan
ver
y
monitorear.
 Iterativo.
 Orientado a los componentes
software más que a las tareas.
 Tolerante a los cambios.
 Guido por los riesgos.
 La
revisión
de
los
componentes
sirve
para
aprender de los errores y
volver a iniciar el ciclo de
desarrollo.





Es una translación de los
principios y prácticas de la
manufacturación Lean hacia el
dominio del desarrollo de
software. Adaptado del sistema
de producción Toyota, apoyado
por una sub-cultura pro-lean que
está
surgiendo
desde
la
comunidad ágil.
 Satisfacer al cliente es la
máxima prioridad.
 Proporcionar siempre el mejor
valor por la inversión.
 La necesidad determina la
tecnología.
 El éxito depende de la activa
participación del cliente.
 El minimalista es esencial.
 El crecimiento del producto es
el
incremento
de
sus
prestaciones, no de su tamaño.



Es un proceso en el que se
aplican de manera regular un
conjunto de buenas prácticas
para trabajar colaborativamente,
en equipo, y obtener el mejor
resultado posible de un proyecto.
Se basa en el desarrollo iterativo
de un sistema y es capaz de
responder fácilmente a todos los
cambios que se requieran hacer.
 Indicado para proyectos en
entornos complejos, donde se
necesita obtener resultados
pronto.
 Requisitos son cambiantes o
poco definidos.
 La
innovación,
la
competitividad, la flexibilidad y
la
productividad
son
fundamentales.
 Es un proceso liviano.
 Es fácil de comprender, pero
difícil de dominar.







 Atención
continua
a
la
excelencia técnica y al buen
diseño.
 Mejora
continua
de los
procesos y el equipo de
desarrollo.
 Entrega continua y en plazos
cortos de software funcional.
 Fuerte dependencia de las
personas.
 Falta de reusabilidad. La falta
de documentación hace difícil
que pueda reutilizarse el
código ágil.
Inicio, para determinar la
misión del proyecto.
Fijación
del
marco
temporal del proyecto.
Determinación de número
de iteraciones.
Definición de objetivo de
cada iteración.
Asignación
de
funcionalidad de cada
iteración.
 Se utiliza para poder aprender
de los errores e iniciar
nuevamente el ciclo de
desarrollo.
 Promulga la colaboración y la
interacción de personas.
 Utiliza información disponible
acerca de todos los cambios
para
poder
mejorar
el
comportamiento del software.
 Apunta
hacia
el
Rapid
Application
Development
(RAD).
 Los errores y cambios que no
son
detectados
con
anterioridad afectan la calidad
del producto y su costo total.
 No permite realizar procesos
que son requeridos en las
metodologías tradicionales.
Eliminar desperdicios.
Amplificar el aprendizaje.
Decidir lo más tarde
posible.
Reaccionar tan rápido
como sea posible.
Potenciar el equipo.
Crear la integridad.
Visualizar todo el conjunto.
 La eliminación de los residuos
conduce a la eficiencia global
del proceso de desarrollo.
 La entrega del producto
temprana es una ventaja
definitiva.
 El empoderamiento del equipo
de
desarrollo
ayuda
a
desarrollar la capacidad de
decisión de los miembros del
equipo que a su vez crea un
equipo más motivado.
 El proyecto depende en gran
medida la cohesión del equipo.
 El éxito del proyecto depende
de la disciplina de los
miembros del equipo.
 El papel de un análisis de
negocios
es
de
vital
importancia para garantizar la
documentación.
 Los
patrocinadores
del
proyecto
y
los
clientes
necesitan saber lo que quieren
y
tomar
las
decisiones
pertinentes.
Se ejecuta en ciclos
temporales cortos y de
duración fija.
o Iteraciones.
Cada iteración tiene que
proporcionar un resultado
completo, un incremento
de producto final.
Se parte de la lista de
objetivos/requisitos
priorizada del producto.
 Gestión de las expectativas del
usuario
 Los usuarios pueden participar
en cada una de las etapas del
proceso y proponer soluciones.
 Cada etapa del proceso arroja
una serie de resultados.
 Se
adapta
a
cualquier
contexto, área o sector de la
gestión.
 Gestión sistemática de riesgo.
 Funciona más que nada con
equipos reducidos.
 Requiere
una
exhaustiva
definición de las tareas y sus
plazos.
 Exige que quienes la utilicen
cuenten
con
una
alta
cualificación o formación.
Descargar