SlideShare a Scribd company logo
1 of 32
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
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
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
Metodologías
Tradicionales
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
Cascada
Mantenimiento
Codificación
Verificación
Análisis de requisitos
Diseño del sistema
Ejecución de pruebas
Diseño del programa
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
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
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
Planeaci
ón
Modelad
o
Elaborac
ión del
prototipo
Desarroll
o
Entrega
y
retroali
mentació
n
Comunic
ación con
el cliente
Entrega
del
producto
final
Prototipado
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
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
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
E
S
P
I
R
A
L
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
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
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
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
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
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
Diseño rápido de
aplicaciones
(RAD)
Planificación
de
requerimientos
Diseño con el
usuario
Construcción
Transición
de 60 a 90 días
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
Equipos Híbridos:
Herramientas Especializadas
Timeboxing:
Prototipos Iterativos y
Evolucionarios.
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
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
Metodología
Ágil
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
Kanban
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
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
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
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
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
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
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
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
Programación
Extrema
(XP)
Lanzamiento
• Kelly Spinatto / Sebastián Saenz
• David Landívar
Análisis y Diseño de Sistemas II
Ing. David Mendoza
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
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
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

More Related Content

What's hot

Sesión 2: Visión General. El proceso del software
Sesión 2: Visión General. El proceso del softwareSesión 2: Visión General. El proceso del software
Sesión 2: Visión General. El proceso del softwareCoesi Consultoria
 
PROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWPROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWRaquel Solano
 
Modelo en cascada
Modelo en cascadaModelo en cascada
Modelo en cascadahome
 
PROCESOS DE CALIDAD DE SOFTWARE
PROCESOS DE CALIDAD DE SOFTWAREPROCESOS DE CALIDAD DE SOFTWARE
PROCESOS DE CALIDAD DE SOFTWAREAlejandro Leon
 
Cuadro comparativo de_modelos_de_procesos_de_software
Cuadro comparativo de_modelos_de_procesos_de_softwareCuadro comparativo de_modelos_de_procesos_de_software
Cuadro comparativo de_modelos_de_procesos_de_softwareShaman King
 
RUP - Fase de Elaboración
RUP - Fase de ElaboraciónRUP - Fase de Elaboración
RUP - Fase de ElaboraciónAdrian González
 
MODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWAREMODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWAREMicky Jerzy
 
Metodología rup final
Metodología rup finalMetodología rup final
Metodología rup finalMariaC7
 
Curso Uml 3.1 Modelos De Desarrollo De Software
Curso Uml   3.1 Modelos De Desarrollo De SoftwareCurso Uml   3.1 Modelos De Desarrollo De Software
Curso Uml 3.1 Modelos De Desarrollo De SoftwareEmilio Aviles Avila
 
INF-162 GRUPO 6 MODELOS DE PROCESO DE SOFTWARE
INF-162 GRUPO 6 MODELOS DE PROCESO DE SOFTWAREINF-162 GRUPO 6 MODELOS DE PROCESO DE SOFTWARE
INF-162 GRUPO 6 MODELOS DE PROCESO DE SOFTWAREFely Villalba
 
3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/
3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/
3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/Julio Pari
 
Sesión 1: Introduccion. ¿Qué es ingeniería de software?
Sesión 1: Introduccion. ¿Qué es ingeniería de software?Sesión 1: Introduccion. ¿Qué es ingeniería de software?
Sesión 1: Introduccion. ¿Qué es ingeniería de software?Coesi Consultoria
 
4.1 Proceso Unificado De Rational
4.1 Proceso Unificado De Rational4.1 Proceso Unificado De Rational
4.1 Proceso Unificado De RationalJulio Pari
 

What's hot (20)

Modelos Prescriptivos de Proceso
Modelos Prescriptivos de ProcesoModelos Prescriptivos de Proceso
Modelos Prescriptivos de Proceso
 
Sesión 2: Visión General. El proceso del software
Sesión 2: Visión General. El proceso del softwareSesión 2: Visión General. El proceso del software
Sesión 2: Visión General. El proceso del software
 
Requerimientos del rup
Requerimientos del rupRequerimientos del rup
Requerimientos del rup
 
Metodologia de desarrollo software
Metodologia  de desarrollo softwareMetodologia  de desarrollo software
Metodologia de desarrollo software
 
Proceso del Software
Proceso del Software Proceso del Software
Proceso del Software
 
PROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWPROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SW
 
Modelo en cascada
Modelo en cascadaModelo en cascada
Modelo en cascada
 
PROCESOS DE CALIDAD DE SOFTWARE
PROCESOS DE CALIDAD DE SOFTWAREPROCESOS DE CALIDAD DE SOFTWARE
PROCESOS DE CALIDAD DE SOFTWARE
 
Cuadro comparativo de_modelos_de_procesos_de_software
Cuadro comparativo de_modelos_de_procesos_de_softwareCuadro comparativo de_modelos_de_procesos_de_software
Cuadro comparativo de_modelos_de_procesos_de_software
 
RUP - Fase de Elaboración
RUP - Fase de ElaboraciónRUP - Fase de Elaboración
RUP - Fase de Elaboración
 
MODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWAREMODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWARE
 
Metodología rup final
Metodología rup finalMetodología rup final
Metodología rup final
 
Curso Uml 3.1 Modelos De Desarrollo De Software
Curso Uml   3.1 Modelos De Desarrollo De SoftwareCurso Uml   3.1 Modelos De Desarrollo De Software
Curso Uml 3.1 Modelos De Desarrollo De Software
 
INF-162 GRUPO 6 MODELOS DE PROCESO DE SOFTWARE
INF-162 GRUPO 6 MODELOS DE PROCESO DE SOFTWAREINF-162 GRUPO 6 MODELOS DE PROCESO DE SOFTWARE
INF-162 GRUPO 6 MODELOS DE PROCESO DE SOFTWARE
 
Modelo cascada
Modelo cascadaModelo cascada
Modelo cascada
 
3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/
3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/
3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
 
Sesión 1: Introduccion. ¿Qué es ingeniería de software?
Sesión 1: Introduccion. ¿Qué es ingeniería de software?Sesión 1: Introduccion. ¿Qué es ingeniería de software?
Sesión 1: Introduccion. ¿Qué es ingeniería de software?
 
RUP
RUPRUP
RUP
 
4.1 Proceso Unificado De Rational
4.1 Proceso Unificado De Rational4.1 Proceso Unificado De Rational
4.1 Proceso Unificado De Rational
 

Similar to Metodologías de desarrollo de software

Presentacion de inf 162 grupo 6
Presentacion de inf 162 grupo 6Presentacion de inf 162 grupo 6
Presentacion de inf 162 grupo 6Samuel Qc
 
Modelo de desarrollo del software
Modelo de desarrollo del softwareModelo de desarrollo del software
Modelo de desarrollo del softwareRazielLira
 
03 unidad i modelos de ing soft
03 unidad i   modelos de ing soft03 unidad i   modelos de ing soft
03 unidad i modelos de ing softvictdiazm
 
Tipos de ciclos de vida
Tipos de ciclos de vidaTipos de ciclos de vida
Tipos de ciclos de vidasandrasig
 
Modelos de desarrollo del software
Modelos de desarrollo del softwareModelos de desarrollo del software
Modelos de desarrollo del softwareRenny Batista
 
Tiposdeciclosdevida 110822211401-phpapp01
Tiposdeciclosdevida 110822211401-phpapp01Tiposdeciclosdevida 110822211401-phpapp01
Tiposdeciclosdevida 110822211401-phpapp01Ralph Ralph
 
Modelos o metodología en la is trabajo uniregminton
Modelos o metodología en la is trabajo uniregmintonModelos o metodología en la is trabajo uniregminton
Modelos o metodología en la is trabajo uniregmintonnerosita
 
El ciclo de vida de desarrollo de software.pptx
El ciclo de vida de desarrollo de software.pptxEl ciclo de vida de desarrollo de software.pptx
El ciclo de vida de desarrollo de software.pptxMondraMtz
 
Ciclo vida DESARROLLO DE SOFTWARE
Ciclo vida DESARROLLO DE SOFTWARECiclo vida DESARROLLO DE SOFTWARE
Ciclo vida DESARROLLO DE SOFTWAREJ Martin Luzon
 
Grupo 5-modelos-de-procesos-de-software
Grupo 5-modelos-de-procesos-de-softwareGrupo 5-modelos-de-procesos-de-software
Grupo 5-modelos-de-procesos-de-softwarePrimoLaura
 
evaluacion2.pptx
evaluacion2.pptxevaluacion2.pptx
evaluacion2.pptxHugoCid4
 

Similar to Metodologías de desarrollo de software (20)

Presentacion de inf 162 grupo 6
Presentacion de inf 162 grupo 6Presentacion de inf 162 grupo 6
Presentacion de inf 162 grupo 6
 
Modelo de desarrollo del software
Modelo de desarrollo del softwareModelo de desarrollo del software
Modelo de desarrollo del software
 
Desarrollo de Proyectos
Desarrollo de ProyectosDesarrollo de Proyectos
Desarrollo de Proyectos
 
03 unidad i modelos de ing soft
03 unidad i   modelos de ing soft03 unidad i   modelos de ing soft
03 unidad i modelos de ing soft
 
Modelos Prescriptivos 1.pdf
Modelos Prescriptivos 1.pdfModelos Prescriptivos 1.pdf
Modelos Prescriptivos 1.pdf
 
Diapo2019 grupo3
Diapo2019 grupo3Diapo2019 grupo3
Diapo2019 grupo3
 
Tipos de ciclos de vida
Tipos de ciclos de vidaTipos de ciclos de vida
Tipos de ciclos de vida
 
Modelos de desarrollo del software
Modelos de desarrollo del softwareModelos de desarrollo del software
Modelos de desarrollo del software
 
Tiposdeciclosdevida 110822211401-phpapp01
Tiposdeciclosdevida 110822211401-phpapp01Tiposdeciclosdevida 110822211401-phpapp01
Tiposdeciclosdevida 110822211401-phpapp01
 
Modelos de desarrollo del software grupo5
Modelos de desarrollo del software grupo5Modelos de desarrollo del software grupo5
Modelos de desarrollo del software grupo5
 
Modelos o metodología en la is trabajo uniregminton
Modelos o metodología en la is trabajo uniregmintonModelos o metodología en la is trabajo uniregminton
Modelos o metodología en la is trabajo uniregminton
 
El ciclo de vida de desarrollo de software.pptx
El ciclo de vida de desarrollo de software.pptxEl ciclo de vida de desarrollo de software.pptx
El ciclo de vida de desarrollo de software.pptx
 
Ciclo vida DESARROLLO DE SOFTWARE
Ciclo vida DESARROLLO DE SOFTWARECiclo vida DESARROLLO DE SOFTWARE
Ciclo vida DESARROLLO DE SOFTWARE
 
inf-162 presentacion
inf-162 presentacioninf-162 presentacion
inf-162 presentacion
 
Modelos de software
Modelos  de  softwareModelos  de  software
Modelos de software
 
Ciclo Vida del Software
Ciclo Vida del SoftwareCiclo Vida del Software
Ciclo Vida del Software
 
Grupo 5-modelos-de-procesos-de-software
Grupo 5-modelos-de-procesos-de-softwareGrupo 5-modelos-de-procesos-de-software
Grupo 5-modelos-de-procesos-de-software
 
Kanban
KanbanKanban
Kanban
 
Sesión 03-métodos-ágiles-del-desarrollo-de-software
Sesión 03-métodos-ágiles-del-desarrollo-de-softwareSesión 03-métodos-ágiles-del-desarrollo-de-software
Sesión 03-métodos-ágiles-del-desarrollo-de-software
 
evaluacion2.pptx
evaluacion2.pptxevaluacion2.pptx
evaluacion2.pptx
 

Metodologías de desarrollo de software

  • 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
  • 4. Metodologías Tradicionales • Kelly Spinatto / Sebastián Saenz • David Landívar Análisis y Diseño de Sistemas II Ing. David Mendoza
  • 5. Cascada Mantenimiento Codificación Verificación Análisis de requisitos Diseño del sistema Ejecución de pruebas Diseño del programa • 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
  • 8. Planeaci ón Modelad o Elaborac ión del prototipo Desarroll o Entrega y retroali mentació n Comunic ación con el cliente Entrega del producto final Prototipado • 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
  • 11. E S P I R A L • 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
  • 17. Diseño rápido de aplicaciones (RAD) Planificación de requerimientos Diseño con el usuario Construcción Transición de 60 a 90 días • Kelly Spinatto / Sebastián Saenz • David Landívar Análisis y Diseño de Sistemas II Ing. David Mendoza
  • 18. Equipos Híbridos: Herramientas Especializadas Timeboxing: Prototipos Iterativos y Evolucionarios. • 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
  • 20. Metodología Ágil • 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
  • 29. Programación Extrema (XP) Lanzamiento • 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