1. Metodologías de
desarrollo de software
Materia: Análisis y Diseño de
Sistemas II
Docente: David Enrique Mendoza
Gutiérrez
Facultad de ciencias y tecnología
Fecha: 25/03/21
Grupo #8
Kelly Andrea Spinatto Quevedo
Sebastian Saenz Carvajal
David Landivar
Carrera: Ingenieria de Sistemas
Universidad De Aquino Bolivia – UDABOL
Sede: Santa Cruz de la Sierra
2. Metodología de Desarrollo de Software
PROCESO DE DESARROLLO DE
SOFTWARE
Requisitos nuevos
o modificados
Sistema nuevo
o modificado
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
3. • Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
6. Solo cuando se finaliza una fase se comienza otra
En ocasiones se realiza una revisión antes de iniciar la siguiente
fase, lo que permite la posibilidad de cambios (lo que puede incluir
un proceso de control formar de cambio).
oLas revisiones también se utilizan para asegurar que la fase
anterior ha sido totalmente finalizada.
oLos criterios para completar una fase se conocen frecuentemente
con el término inglés “gate” (puerta).
oEste modelo desaconseja revisitar y revisar fases que ya se han
completado.
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
7. Ventajas Desventajas
✓ Una estructura sencilla gracias a unas
fases de proyecto claramente diferenciales
✘ Por norma general, los proyectos mas
complejos o de varios niveles no permiten
su división en fases de proyecto
claramente diferenciadas
✓ Buena documentación del proceso de
desarrollo a través de hitos bien definidos
✘ Poco margen para realizar ajustes a lo
largo del proyecto debido a un cambio en
las exigencias
✓ Los costes y la carga de trabajo se
pueden estimar al comenzar el proyecto
✘ El usuario final no se integra en el
proceso de producción hasta que no
termina la programación
✓ Aquellos proyectos que se estructuran
en base al modelo en cascada se pueden
representar cronológicamente de forma
sencilla
✘ En ocasiones, los fallos solo se detectan
una vez finalizado el proceso de desarrollo
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
9. Ayuda a reducir los riesgos inherentes del proyecto estableciendo el
desarrollo en fragmentos más pequeños y logrando, en un entorno
propenso a cambios, que estos tengan menor impacto.
Es usuario involucrado durante el desarrollo (probando prototipos)
incrementa la aceptación de la implantación de producto final.
Pequeños prototipos con modificaciones son mostrados al cliente y
sirve para confirmar que se han comprendido sus requisitos.
Muchos de los prototipos se generan con la expectativa de ser
descartados. Sin embargo, en algunos casos el prototipo puede
evolucionar y convertirse en el producto final.
Es necesario un entendimiento fundamental de los problemas del
negocio para evitar resolver los problemas incorrectos, despilfarrando
esfuerzo al desarrollar prototipos que son prescindibles.
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
10. Ventajas Desventajas
✓ No modifica el flujo del ciclo de vida ✘Debido a que el usuario ve que el
prototipo funciona piensa que este es el
producto terminado
✓ Reduce el riesgo de construir productos
que no satisfagan las necesidades de los
usuarios
✓ Reduce costo y aumenta la probabilidad
de éxito
✘El desarrollador puede caer en la
tentación de ampliar el prototipo para
construir el sistema final sin tener en
cuenta los compromisos de calidad y
mantenimiento que tiene con el cliente.
✓ Exige disponer de las herramientas
adecuadas
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
12. Contiene una nueva etapa que es el análisis de
riesgos, no incluida anteriormente.
Este modelo es el indicado para desarrollar software
con diferentes versiones
actualizadas como se hace con los programas
modernos de PC.
La ingeniería puede desarrollarse a través del ciclo
de vida clásico o el de construcción de prototipos.
Este es el enfoque más realista actualmente
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
13. Ventajas Desventajas
✓ No requiere una definición completa de
los requerimientos del software a
desarrollar para comenzar su
funcionalidad.
✘Existe complicación cuando se evalúa los
riesgos.
✓ En la terminación de un producto desde
el final de la primera iteración es muy
factible aprobar los requisitos.
✘ Se requiere la participación continua
por parte del cliente.
✓ Sufrir retrasos corre un riesgo menor,
porque se comprueban los conflictos
presentados tempranamente y existe la
forma de poder corregirlos a tiempo.
✘ Se pierde tiempo al volver producir
inicialmente una especificación completa
de los requerimientos cuando se modifica o
mejora el software.
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
14. Análisis Diseño Código Pruebas
Incremental
Entrega de
3º incremento
Análisis Diseño Código Pruebas
Análisis Diseño Código Pruebas
Análisis Diseño Código Pruebas
Entrega de
2º incremento
Entrega de
4º incremento
Entrega de
1º incremento
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
15. Los incrementos son pequeños.
Permite una fácil administración de las
tareas en cada iteración.
La inversión se materializa a corto plazo.
Es un modelo propicio a cambios o
modificaciones.
Se adapta a las necesidades que surjan.
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
16. Ventajas Desventajas
✓ Los clientes no tienen que esperar hasta
que el sistema se entregue completamente
para hacer uso de el.
✘ Difícil de aplicar a sistemas
transaccionales que tienden a ser
integrados y a operar como un todo.
✓ Los clientes pueden usar los
incrementos iniciales como prototipo para
precisar los requerimientos posteriores del
sistema.
✘ Pueden aumentar los costes debido a las
pruebas.
✓ Minimización del riesgo de falla en el
proyecto, ya que los errores se van
corrigiendo progresivamente.
✘ Los errores en los requisitos se detectan
tarde.
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
19. Ventajas Desventajas
✓ Progreso medible ✘ Requiere sistemas modulares
✓ Generar rápidamente un código
productivo
✘ Dificultad dentro de proyectos a gran
escala
✓ Compartimentación de los componentes
del sistema
✘ Exige mucha interactividad del usuario
✓Comentarios rápidos y constantes de los
usuarios
✘ Depende de los desarrolladores expertos
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
21. Kanban
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
22. Reducción de desperdicios
Calidad garantizada
Flexibilidad
Mejora continua
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
23. Planificación
de Sprint
Sprint Diario
Revisión
de Sprint
Retrospectiva
del Sprint
Actualizar
el Backlog
Incremento
de
Producto
Daily Scrum
Publicar
• Versión inicial
• Producto inicial
Backlog
Preparación
Papel del usuario
Product
Owner
Scrum
Master
Team
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
24. Desarrollo Incremental
Calidad de las personas
Adiós al Secuencial y Cascada.
La comunicación es
Fundamental.
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
25. Ventajas Desventajas
✓ Scrum es muy fácil de aprender ✘ Aunque Scrum sea fácil de aprender…
✓ El cliente puede comenzar a usar el
producto rápidamente.
✘ La necesidad de tener equipos
multidisciplinares
✓ Se agiliza el proceso, ya que la entrega
de valor es muy frecuente.
✘ El equipo puede tender a realizar el
camino más corto
✓ Menor probabilidad de sorpresas o
imprevistos, porque el cliente está viendo
frecuentemente el proyecto
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
26. • Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
27. Eliminar residuos
Calidad de la construcción
Crear conocimiento.
Aplazar la entrega.
Entrega rápida.
Respetar a las personas.
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
28. Ventajas Desventajas
✓ Eliminación de Residuos ✘ Dependencia del equipo
✓ Entrega Oportuna ✘ El existo depende del equipo
✓ Empoderamiento del equipo
✓
✘ Toma de decisiones tardías
✘ Personal Correcto
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
30. Reduce el coste del cambio en todas las etapas del ciclo de
vida del sistema.
Combina las que han demostrado ser las mejores
prácticas para desarrollar software, y las lleva al extremo.
Cliente bien definido.
Los requisitos pueden cambiar.
Grupo pequeño y muy integrado (2-12 personas).
Equipo con formación elevada y capacidad de aprender
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
31. Ventajas Desventajas
✓ Programación organizada.
✘ Es recomendable emplearlo solo en
proyectos a corto plazo.
✓ Menor taza de errores. ✘ Altas comisiones en caso de fallar.
✓ Satisfacción del programador ✘ XP está diseñado para grupos de
pequeños programadores
✓ El cliente tiene el control sobre las
prioridades
✘ El trabajo por parejas puede ser un
factor negativo por la idea de unir dos.
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
32. Grupo #8
Kelly Andrea Spinatto Quevedo
Sebastian Saenz Carvajal
David Landivar
Carrera: Ingenieria de Sistemas
Universidad De Aquino Bolivia – UDABOL
Sede: Santa Cruz de la Sierra
Materia: Análisis y Diseño de
Sistemas II
Docente: David Enrique Mendoza
Gutierrez
Facultad de ciencias y tecnología
Fecha: 25/03/21
Metodologías de
desarrollo de software