Menciones causa y efecto
Causa: Poco esfuerzo en el análisis y diseño
Efecto: Mayor gasto de tiempo en pruebas y mayor gasto en reparaciones
Causa: No hay capacitación en metodologías de desarrollo (planeación y calidad)
Efecto: Problemas de comunicación con los clientes y con compañeros de equipo
Causa: El directivo se compromete a metas inalcanzables
Efecto: El objetivo cambia a terminar el trabajo y la calidad cambia
Estadísticas del Desarrollo de Software
¿Cuánto porcentaje de éxito tuvieron los proyectos que tuvieron más de 10 millones de presupuesto?
0%
¿Cuánto porcentaje del software se entregó, pero no se usó?
47%
¿Cuánto porcentaje de software se usó como se entregó?
2%
Ciclo de Vida del Software
¿Qué es un ciclo de vida?
Es la abstracción de las fases por las que pasa un software a lo largo de su vida, representa una aproximación a la producción de software.
¿Qué debe tener un ciclo de vida?
- Determinación del orden de las fases
- Establecer los criterios entre fases
¿De qué depende aplicar un ciclo de vida?
- Cultura de la organización
- Deseo de asumir riesgos
- Área de aplicación
- Volatilidad de los requisitos
- Comprensión de los requisitos
- Experiencia
Modelo Cascada
Filosofía del ciclo Cascada
Es un proceso lineal-secuencial.
Menciona causa y efecto Cascada
Causa: Proyecto raramente sigue un flujo secuencial, es antinatural.
Efecto: No se pueden definir todos los requerimientos.
Causa: El usuario ve resultados hasta el final de las etapas.
Efectos: Es tardado y no hay retroalimentación.
Modelo Prototipo
Tipos de prototipos
- Desechable
- Maqueta
- Evolutivo
¿En qué situación se debe usar el prototipo?
El cliente no sabe lo que quiere, no se comprende bien lo que el cliente quiere, o cuando hay desconocimiento de la tecnología de la solución.
Filosofía del prototipo
Modelación a escala para sistemas complejos.
Modelo RAD
¿Qué significa RAD?
Rapid Application Development
¿Cuándo se usa el RAD?
- Los requerimientos son requeridos
- Los usuarios deben involucrarse
- Factible a corto plazo
- Cuando la funcionalidad es incremental y visible
- No se requiere alto rendimiento
- Riesgos técnicos bajos
¿Cuáles son los beneficios del RAD?
- Reducción de tiempo y costo
Debilidades del RAD:
- Como en el de cascada se tarda en visualizar resultados
- Aumenta el riesgo de desincronización
- Es difícil para sistemas heredados
Modelo V
¿A qué debe su nombre el modelo V?
- Se debe al énfasis en la verificación y la validación
¿Cuándo se usa el Modelo V?
- Los sistemas requieran uso pesado
- Cuando los requerimientos son conocidos
- Cuando la tecnología es conocida
Fortalezas del Modelo V
- Énfasis en verificación y validación del producto en etapas tempranas
- Cada producto es estable (90%)
- La retroalimentación al proyecto es fácil
- Es sencillo y fácil de usar
Debilidades del modelo V
- Es riesgoso porque no maneja iteraciones
- Se dificultan los cambios en los requerimientos
- No contiene actividades de análisis de riesgo
Modelo Espiral
¿En qué cuadrante está el análisis de riesgo dentro del modelo espiral?
- 2
¿En qué cuadrante se hace la planeación?
- 4
Fortalezas del espiral:
- Ayuda a detectar errores
- El usuario ve el sistema en etapas tempranas (prototipos) y retroalimenta
- Las funciones de alto riesgo son desarrolladas primero
- El diseño no necesariamente tiene que ser perfecto o completo
- Usuarios pueden estar más involucrados debido a todos los pasos del ciclo de vida
- Los costos acumulados son revisados frecuentemente
Debilidades del Ciclo Espiral:
- Tiempo utilizado en evaluar riesgos es alto (mas personal)
- Tiempo gastado en planear, refijar objetivos, análisis de riesgo y prototipado puede ser excesivo
- El modelo es complejo
- Se requiere experiencia en aseguramiento de riesgos es necesario
- Espiral puede continuar indefinidamente por demasiada planeación y análisis
- No es fácil cerrar una fase y comenzar la otra fase
Es complejo aplicar el ciclo de vida espiral
Ciclos de Vida: Tradicionales vs. Ágiles
¿Los ciclos de vida en qué se dividen?
Tradicionales prescriptivos y ágiles iterativos.
Características de los ciclos de vida tradicionales:
- Lapsos largos y planificados
- Los cambios en los requerimientos son un gran problema
- Plazos largos
Características de los ciclos de vida ágiles:
- Lapsos cortos para revisar y verificar
- Creación de funcionalidades parciales que se agregan continuamente
- Los cambios en los requerimientos son bienvenidos
- Las personas del negocios y desarrolladores trabajan juntos diariamente
- Plazos cortos
- Orientado a personas
Ejemplos de ciclos Ágiles
SCRUM, Cristal Clear, Extreme programming.
Requerimientos
¿A qué se refiere MoSCoW?
Must have, Should have, Could have, and Would like but won’t get
¿Qué es un requerimiento?
Son la definición de los que se desea producir y describe el futuro comportamiento del sistema.
Tipos de requerimientos:
No Funcionales y Funcionales.
Ejemplo de requerimiento funcional
A+B
Características deseables
Necesario, conciso, completo, consistente, no ambiguo, verificable.
Dificultades de los requerimientos
- No son obvios y vienen de muchas fuentes
- Son difíciles de expresar en palabras
- Nuestro lenguaje es ambiguo
- Existen muchos tipos de requerimientos
- La cantidad de requerimientos es grande
- Pueden cambiar
- Son difíciles de cuantificar
- Son particulares de cada proyecto
¿Qué es un problema?
Diferencia entre las cosas como se perciben y las cosas como se desean.
¿Qué es un requerimiento?
Es la definición de lo que se desea producir y describe el futuro comportamiento del sistema.
¿De qué modo determinamos qué es adecuado?
Bueno, bonito y barato.
¿Cuántas factibilidades analizamos?
3: Factibilidad técnica, factibilidad económica, factibilidad operacional.
¿Qué es SRS?
Software Requirements Specification
¿Por qué hay evolución en los requerimientos?
¿Cómo controlamos los cambios de los requerimientos?
Lean
¿Qué es Lean?
Es un medio sistemático de eliminar gastos.
Fases del Lean
- Construir solo lo necesario
- Eliminar todo lo que no añada Valor
- Parar cuando algo no sale bien
Actividades de la eliminación de desperdicio:
- Trabajo parcialmente realizado
- Procesos extra
- Características extra
- Cambios de tarea
- Esperas
- Movimiento (tiempo que se pierde en dudas)
- Defecto (para eliminar este desperdicio es detectar más rápido los defectos)
- Actividades administrativas. No añaden valor
¿Qué es POKA-YOKE?
Error-Evitar
¿Qué es la calidad en producción?
Conformidad con requerimientos.
¿Qué es calidad en desarrollo?
Apropiada para uso.
Desarrollo de S.W. se considera ejercicio de:
Nombrar los 7 principios de Lean
- Eliminar desperdicio
- Construir con calidad
- Amplificar el conocimiento
- Decidir tan tarde como sea posible
- Entregar tan rápido como sea posible
- Potenciar al equipo, otorgando poder al equipo
- Crear la integridad conceptual