SlideShare una empresa de Scribd logo
1 de 11
INF-162
ANÁLISIS Y DISEÑO DE
SISTEMAS DE INFORMACIÓN
METODOLOGIA DE
DESARROLLO DEL SOFTWARE
• ¿QUÉ ES UN MODELO DEL DESARROLLO DE SOFTWARE?
UN MODELO DE SOFTWARE ES UN REPRESENTACIÓN ABSTRACTA DE UN PROCESO. CADA MODELO REPRESENTA UN
PROCESO DESDE UNA PERSPECTIVA PARTICULAR Y ASÍ PROPORCIONE INFORMACIÓN PARCIAL SOBRE EL PROCESO.
ESTOS MODELOS GENERALES NO SON DESCRIPCIONES DEFINITIVAS DE LOS PROCESOS QUE SE PUEDEN UTILIZAR
PARA EL DESARROLLO DEL SOFTWARE. PUEDE PENSARSE EN ELLOS COMO MARCOS DE TRABAJO DEL PROCESO.
CAPAS DE LA INGENIERÍA DE SOFTWARE PROCESOS DE DESARROLLO DEL
SOFTWARE
• INTRODUCCIÓN:
Construcción y Resultados
Deficiencias Comunes en el Desarrollo de
Software
• Los sistemas no responden a las expectativas
de los usuarios.
• Los programas “fallan” con cierta frecuencia.
• Los costes del software son difíciles de
prever y normalmente superan las
estimaciones.
• La modificación del software es una tarea
difícil y costosa.
• El software se suele presentar fuera del
plazo establecido y con menos prestaciones
de las consideradas inicialmente.
• El aprovechamiento óptimo de los recursos
como ser personas, tiempo, dinero,
herramientas no suele cumplirse.
• Escasa o tardía validación con el cliente.
• Inadecuada gestión de los requisitos.
• No existe medición del proceso ni registro de
datos históricos.
• Estimaciones imprevistas de plazos y costos.
• Excesiva e irracional presión en los plazos.
• Escaso o deficiente control en el progreso
del proceso de desarrollo.
• No se hace gestión de riesgos formalmente.
• No se realiza un proceso formal de pruebas.
• No se realiza revisiones técnicas formales e
inspecciones de código.
1. METODOLOGIA CRYSTAL:
Es la compilación de un conjunto de
metodologías que faciliten el desarrollo de
software dependiendo de varios factores,
teniendo como principal factor la cantidad de
desarrolladores. Es una metodología que ha
sido creada por una persona en particular
Alistair Cockburn.
CARACTERÍSTICAS:
• Cuando el número de personas aumenta,
también aumenta la necesidad de
coordinar
• La sensibilidad del tiempo en que se
debe estar en el mercado varía: a veces
este tiempo debe acortarse al máximo y
se toleran defectos, otra se enfatiza la
autoridad, confiabilidad, protección legal,
entre otros.
2. METODOLOGÍA XP
(Programación Extrema):
La programación extrema o eXtreme
Programming (XP) es un enfoque de la
Ingeniería de Software formulado por Kent
Beck. es el primer autor sobre la materia,
Extreme Programming Explained: Embrace
Change (1999).
VENTAJAS E INCONVENIENTES
Ventajas
•Da lugar a una programación sumamente organizada.
•Cuenta con una tasa de errores muy pequeña.
Inconvenientes
• Es recomendable emplearla sólo en proyectos a corto
plazo.
• En caso de fallar las comisiones son muy altas.
• Puede no siempre ser más fácil que el desarrollo
tradicional.
3. SCRUM:
• UN PROCESO DE LA
METODOLOGÍA ÁGIL QUE
SE USA PARA MINIMIZAR
LOS RIESGOS DURANTE LA
REALIZACIÓN DE UN
PROYECTO, PERO DE
MANERA COLABORATIVA.
• ENFOCADO PARA
PROYECTOS EN
ENTORNOS COMPLEJOS.
1. Planteamiento: Lo primero
es fraccionarlo en entregas
parciales.
2. Lista de tareas: fijar plazos
proporcionados.
3. Reuniones: lo ideal es que
cada día el equipo dedique
15 minutos para reunirse y
ponerse al tanto de la
evolución del plan.
4. Demostración: el equipo se
reúne con el cliente para
mostrar los avances
correspondientes.
5. Retrospectiva: los
miembros del equipo se
reúnen para analizar los
factores que podrían mejorar
de cara al final del proceso.
Fases de ejecución 4. RUP:
• Es una secuencia de pasos para el
desarrollo y/o mantenimiento de
gran cantidad de sistemas en
distintas áreas de aplicación.
• Asegurar la producción de software
de calidad dentro de plazos y
presupuestos predecibles. Dirigido
por casos de uso, centrado en la
arquitectura, iterativo(mini
proyectos) e incremental
(versiones).
Fases De Ejecución
1. Configuración y
administración del
cambio: Guardando
todas las versiones
del proyecto.
2. Administrando el
proyecto:
Administrando
horarios y recursos.
3. Ambiente:
Administrando el
ambiente de
desarrollo.
4. Distribución: Hacer
todo lo necesario
para la salida del
proyecto.
1. MODELO ESPIRAL:
• EL MODELO SE DESARROLLA EN UNA SERIE DE VERSIONES INCREMENTALES.
ETAPAS DEL MODELO EN ESPIRAL:
• COMUNICACIÓN CON EL CLIENTE: COMUNICACIÓN ENTRE EL DESARROLLADOR Y EL CLIENTE.
• PLANIFICACIÓN: SON TODOS LOS REQUERIMIENTOS.
• ANÁLISIS DE RIESGOS: EVALUAR LOS RIESGOS TÉCNICOS Y OTRAS INFORMACIONES
• INGENIERÍA: CONSTRUIR UNA O MÁS REPRESENTACIONES DE LA APLICACIÓN.
• CONSTRUCCIÓN Y ADAPTACIÓN: CONSTRUIR, PROBAR, INSTALAR Y PROPORCIONAR SOPORTE AL
USUARIO.
• EVALUACIÓN EL CLIENTE: ADQUIRIR LA REACCIÓN DEL CLIENTE SEGÚN LA EVALUACIÓN DE LAS
REPRESENTACIONES DEL SOFTWARE
2. Modelo Concurrente:
Características:
• Se puede expresar de manera esquematizada.
• Las actividades llevan procesos concurrentes.
• Es aplicable a todo tipo de desarrollo de software.
• Es un modelo aplicable para cliente soñador.
• Esta dirigido por las necesidades del usuario.
• Es aplicable al cliente servidor.
En realidad el modelo de desarrollo
concurrente es aplicable a todo tipo de
desarrollo de software y proporciona
una imagen exacta del estado actual de
un proyecto.
Ventajas Desventajas
• Excelente para
proyectos en los
que se conforman
grupos de trabajo
independientes.
• Proporciona una
imagen exacta del
estado actual de un
proyecto.
• Si no se dan las
condiciones
señaladas no es
aplicable.
• Si no existen grupos
de trabajo no se
puede trabajar en
este método.
3. MODELO PROTOTIPO:
¿Que es modelo prototipo?
Permite que todo el sistema o algunas de sus partes se
construyan rápidamente para comprender con facilidad y aclarar
ciertos aspectos en los que se aseguran que el desarrollador el
usuario y el cliente estén de acuerdo en lo que se necesita.
El paradigma de construcción de
prototipo tiene tres pasos:
• Escuchar al cliente para la recolección de requisitos, se encuentran y
definen los objetivos globales, se identifican los requisitos conocidos y
las áreas donde es mas obligatoria mas definición.
• El cliente prueba la maqueta (prototipo) y lo utiliza para refinar los
requisitos del software
Ventajas Desventaja
• Útil cuando el cliente
conoce los objetivos
generales para el software,
pero no identifica los
requisitos detallados de
entrada, procesamiento o
salida.
•
Existe una reducción de la
incertidumbre y del riesgo.
•
Se reduce el tiempo y
costos.
•
Hay incremento en la
aceptación del nuevo
sistema.
•
Mejora la administración de
• Se encuentra con que es necesario
reescribir buena parte del
prototipo para hacerlo funcional,
por que lo mas seguro es que el
desarrollador haya hecho
compromisos de implementación
para hacer que el prototipo
funcione rápidamente.
• El cliente ve funcionando lo que
para el es la primera versión del
prototipo que ha sido construido
con “plastilina y alambres”, y
puede desilusionarse al decirle que
el sistema aún no ha sido
construido.
ETAPAS DEL
PROTOTIPO
1. MODELO DRA:
ES DEL TIPO DESARROLLO INTERACTIVO, LA CONSTRUCCIÓN DE PROTOTIPOS Y EL USO INGENIERÍA ASISTIDA POR
COMPUTADORA(CASE), EL DESARROLLO RÁPIDO DE APLICACIONES TIENDE A ENGLOBAR TAMBIÉN LA USABILIDAD, UTILIDAD Y LA
RAPIDEZ DE EJECUCIÓN.
ETAPAS DEL MODELO DRA:
1. MODELADO DE GESTIÓN : MODELA EL FLUJO DE INFORMACIÓN ENTRE LAS FUNCIONES.
2. MODELADO DE DATOS: DEFINA LOS ATRIBUTOS DE CADA OBJETO A PARTIR DEL FLUJO DE INFORMACIÓN Y LAS
RELACIONES ENTRE ELLOS.
3. MODELADO DEL PROCESO: EL PROCESO SE CREA PARA AÑADIR, MODIFICAR Y RECUPERAR UN OBJETO.
4. GENERACIÓN DE APLICACIONES: EL DRA REUTILIZA LOS COMPONENTES DE PROGRAMAS YA EXISTENTES O CREAR
NUEVOS COMPONENTES REUTILIZABLES.
5. PRUEBA Y ENTREGA: COMO YA NO SE CREA UN NUEVO SOFTWARE, EL TIEMPO DE DURACIÓN DE LAS PRUEBAS ES
MENOR
2. Modelo Lineal Secuencial:
Llamado ciclo de vida clásico o modelo Cascada, sugiere un enfoque sistemático o más bien secuencial del desarrollo
de software que comienza en un nivel de sistemas y progresa con el análisis, diseño, implementación, prueba y
mantenimiento.
• Ventajas
-Se tiene todo bien organizado y no se mezclan las etapas o fases.
-Facilita la gestión del desarrollo.
• Desventajas
-El usuario debe esperar mucho tiempo para ver los resultados.
-Se genera mantenimiento debido a la congelación de requisitos, y este por consecuencia recae en su
mayor parte.
3. MODELO POR ETAPAS:
SIMILAR AL MODELO DE PROTOTIPOS YA QUE QUE MUESTRA EL SOFTWARE AL CLIENTE EN DIFERENTES ESTADOS
SUCESIVOS.
• VENTAJAS
1. PERMITE MODIFICACIONES A MEDIO CAMINO.
2. REQUIERE POCO TIEMPO DE GESTIÓN.
3. REQUIERE POCA SOFISTICACIÓN PARA LOS DIRECTIVOS Y DESARROLLADORES.
• DESVENTAJAS
1. TRABAJA CON POCA COMPRENSIÓN O IDENTIFICACIÓN DE LOS REQUERIMIENTOS SOBRE EL DISEÑO.
2. SE DEBE ENTREGAR UNA ETAPA PARA CONTINUAR A LA SIGUIENTE, NO ES VIABLE PARA UNA PLANIFICACIÓN.
3. SOMETIDO A UNA PLANIFICACIÓN PREDEFINIDA.
¡GRACIAS!

Más contenido relacionado

La actualidad más candente

Ing 162-show.fin
Ing 162-show.finIng 162-show.fin
Ing 162-show.finalbj1in
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xpgmjuan
 
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
 
Sesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de procesoSesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de procesoCoesi Consultoria
 
Modelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoModelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoJohita Guerrero
 
Metodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de softwareMetodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de softwareDeisy Sapaico
 
Metodologías de desarrollo ágiles: Scrum, XP
Metodologías de desarrollo ágiles: Scrum, XPMetodologías de desarrollo ágiles: Scrum, XP
Metodologías de desarrollo ágiles: Scrum, XPejordi
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativoIngenierosD
 
Tecnicas de ingenieria de software
Tecnicas de ingenieria de softwareTecnicas de ingenieria de software
Tecnicas de ingenieria de software'Jorge Martinez
 
Modelos para el desarrollo de software V3
Modelos para el desarrollo de software V3Modelos para el desarrollo de software V3
Modelos para el desarrollo de software V3Marco Guerrero
 
facci Xp-scrum
facci Xp-scrumfacci Xp-scrum
facci Xp-scrumafrancoing
 
Metodologías ágiles para el desarrollo de software - XP
Metodologías ágiles para el desarrollo de software - XPMetodologías ágiles para el desarrollo de software - XP
Metodologías ágiles para el desarrollo de software - XPJose Diaz Silva
 
14. fundamentos de desarrollo de software
14. fundamentos de desarrollo de software14. fundamentos de desarrollo de software
14. fundamentos de desarrollo de softwareJhon Barrera
 
Modelos de Ing de soft
Modelos de Ing de softModelos de Ing de soft
Modelos de Ing de softJazmin Cr
 

La actualidad más candente (19)

Ing 162-show.fin
Ing 162-show.finIng 162-show.fin
Ing 162-show.fin
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
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
 
Sesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de procesoSesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de proceso
 
Modelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyectoModelo xp para desarrollo de proyecto
Modelo xp para desarrollo de proyecto
 
Programación Extrema
Programación ExtremaProgramación Extrema
Programación Extrema
 
Metodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de softwareMetodologias modernas para el desarrollo de software
Metodologias modernas para el desarrollo de software
 
Metodologías de desarrollo ágiles: Scrum, XP
Metodologías de desarrollo ágiles: Scrum, XPMetodologías de desarrollo ágiles: Scrum, XP
Metodologías de desarrollo ágiles: Scrum, XP
 
Paradigmas
ParadigmasParadigmas
Paradigmas
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
 
Tecnicas de ingenieria de software
Tecnicas de ingenieria de softwareTecnicas de ingenieria de software
Tecnicas de ingenieria de software
 
Equipo 5 Metodos de Desarrllo de Software
Equipo 5 Metodos de Desarrllo de SoftwareEquipo 5 Metodos de Desarrllo de Software
Equipo 5 Metodos de Desarrllo de Software
 
Modelos de Desarrollo de Software - INF162 - 2017
Modelos de Desarrollo de Software - INF162 - 2017Modelos de Desarrollo de Software - INF162 - 2017
Modelos de Desarrollo de Software - INF162 - 2017
 
Modelos para el desarrollo de software V3
Modelos para el desarrollo de software V3Modelos para el desarrollo de software V3
Modelos para el desarrollo de software V3
 
facci Xp-scrum
facci Xp-scrumfacci Xp-scrum
facci Xp-scrum
 
Metodologías ágiles para el desarrollo de software - XP
Metodologías ágiles para el desarrollo de software - XPMetodologías ágiles para el desarrollo de software - XP
Metodologías ágiles para el desarrollo de software - XP
 
Metodologias todas
Metodologias todasMetodologias todas
Metodologias todas
 
14. fundamentos de desarrollo de software
14. fundamentos de desarrollo de software14. fundamentos de desarrollo de software
14. fundamentos de desarrollo de software
 
Modelos de Ing de soft
Modelos de Ing de softModelos de Ing de soft
Modelos de Ing de soft
 

Similar a Modelos de desarrollo del software

Modelos de desarrollo de software
Modelos de desarrollo de softwareModelos de desarrollo de software
Modelos de desarrollo de softwareLuiscolmenares46
 
Metodología de desarrollo de software
Metodología de desarrollo de softwareMetodología de desarrollo de software
Metodología de desarrollo de softwareAbner Garcia
 
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
 
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrolloFundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrolloJosé Antonio Sandoval Acosta
 
Metodologias de desarrollo de software
Metodologias de desarrollo de softwareMetodologias de desarrollo de software
Metodologias de desarrollo de softwarehernandezcris
 
Especial ingenieria de software
Especial ingenieria de softwareEspecial ingenieria de software
Especial ingenieria de softwarealejandor reyes
 
Especial ingenieria de software
Especial ingenieria de softwareEspecial ingenieria de software
Especial ingenieria de softwarealejandor reyes
 
Presentacion modelos de proceso Grupo 3
Presentacion modelos de proceso Grupo 3Presentacion modelos de proceso Grupo 3
Presentacion modelos de proceso Grupo 3Bruno
 
T2 infoiii-s
T2 infoiii-sT2 infoiii-s
T2 infoiii-shome
 
Modelo de desarrollo del software
Modelo de desarrollo del softwareModelo de desarrollo del software
Modelo de desarrollo del softwareRazielLira
 
Parcial2
Parcial2Parcial2
Parcial2fredmoa
 
Métodos de la ingeniería
Métodos de la ingenieríaMétodos de la ingeniería
Métodos de la ingenieríaSam Stgo
 
Modelos de proceso del software
Modelos de proceso del softwareModelos de proceso del software
Modelos de proceso del softwareDiego Llusco
 
Trabajo Mantención de Software "Modelo Evolutivo"
Trabajo Mantención de Software "Modelo Evolutivo"Trabajo Mantención de Software "Modelo Evolutivo"
Trabajo Mantención de Software "Modelo Evolutivo"MolinaSebastian
 
Mantenimiento en Software - Modelo Evolutivo
Mantenimiento en Software - Modelo EvolutivoMantenimiento en Software - Modelo Evolutivo
Mantenimiento en Software - Modelo Evolutivomiguelpaz1995
 

Similar a Modelos de desarrollo del software (20)

Modelos de desarrollo de software
Modelos de desarrollo de softwareModelos de desarrollo de software
Modelos de desarrollo de software
 
Metodología de desarrollo de software
Metodología de desarrollo de softwareMetodología de desarrollo de software
Metodología de desarrollo de 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
 
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrolloFundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
Fundamentos de ingenieria de Sosftware - Unidad 2 metodologias de desarrollo
 
Doc grupo2-webquest
Doc grupo2-webquestDoc grupo2-webquest
Doc grupo2-webquest
 
Apuntes
ApuntesApuntes
Apuntes
 
Metodologias de desarrollo de software
Metodologias de desarrollo de softwareMetodologias de desarrollo de software
Metodologias de desarrollo de software
 
Especial ingenieria de software
Especial ingenieria de softwareEspecial ingenieria de software
Especial ingenieria de software
 
Especial ingenieria de software
Especial ingenieria de softwareEspecial ingenieria de software
Especial ingenieria de software
 
Presentacion modelos de proceso Grupo 3
Presentacion modelos de proceso Grupo 3Presentacion modelos de proceso Grupo 3
Presentacion modelos de proceso Grupo 3
 
T2 infoiii-s
T2 infoiii-sT2 infoiii-s
T2 infoiii-s
 
T2 infoiii-s
T2 infoiii-sT2 infoiii-s
T2 infoiii-s
 
Modelo de desarrollo del software
Modelo de desarrollo del softwareModelo de desarrollo del software
Modelo de desarrollo del software
 
Presentacion grupo9
Presentacion grupo9Presentacion grupo9
Presentacion grupo9
 
Mod 6.2 introducción al análisis
Mod 6.2 introducción al análisisMod 6.2 introducción al análisis
Mod 6.2 introducción al análisis
 
Parcial2
Parcial2Parcial2
Parcial2
 
Métodos de la ingeniería
Métodos de la ingenieríaMétodos de la ingeniería
Métodos de la ingeniería
 
Modelos de proceso del software
Modelos de proceso del softwareModelos de proceso del software
Modelos de proceso del software
 
Trabajo Mantención de Software "Modelo Evolutivo"
Trabajo Mantención de Software "Modelo Evolutivo"Trabajo Mantención de Software "Modelo Evolutivo"
Trabajo Mantención de Software "Modelo Evolutivo"
 
Mantenimiento en Software - Modelo Evolutivo
Mantenimiento en Software - Modelo EvolutivoMantenimiento en Software - Modelo Evolutivo
Mantenimiento en Software - Modelo Evolutivo
 

Modelos de desarrollo del software

  • 1. INF-162 ANÁLISIS Y DISEÑO DE SISTEMAS DE INFORMACIÓN
  • 2. METODOLOGIA DE DESARROLLO DEL SOFTWARE • ¿QUÉ ES UN MODELO DEL DESARROLLO DE SOFTWARE? UN MODELO DE SOFTWARE ES UN REPRESENTACIÓN ABSTRACTA DE UN PROCESO. CADA MODELO REPRESENTA UN PROCESO DESDE UNA PERSPECTIVA PARTICULAR Y ASÍ PROPORCIONE INFORMACIÓN PARCIAL SOBRE EL PROCESO. ESTOS MODELOS GENERALES NO SON DESCRIPCIONES DEFINITIVAS DE LOS PROCESOS QUE SE PUEDEN UTILIZAR PARA EL DESARROLLO DEL SOFTWARE. PUEDE PENSARSE EN ELLOS COMO MARCOS DE TRABAJO DEL PROCESO. CAPAS DE LA INGENIERÍA DE SOFTWARE PROCESOS DE DESARROLLO DEL SOFTWARE
  • 3. • INTRODUCCIÓN: Construcción y Resultados Deficiencias Comunes en el Desarrollo de Software • Los sistemas no responden a las expectativas de los usuarios. • Los programas “fallan” con cierta frecuencia. • Los costes del software son difíciles de prever y normalmente superan las estimaciones. • La modificación del software es una tarea difícil y costosa. • El software se suele presentar fuera del plazo establecido y con menos prestaciones de las consideradas inicialmente. • El aprovechamiento óptimo de los recursos como ser personas, tiempo, dinero, herramientas no suele cumplirse. • Escasa o tardía validación con el cliente. • Inadecuada gestión de los requisitos. • No existe medición del proceso ni registro de datos históricos. • Estimaciones imprevistas de plazos y costos. • Excesiva e irracional presión en los plazos. • Escaso o deficiente control en el progreso del proceso de desarrollo. • No se hace gestión de riesgos formalmente. • No se realiza un proceso formal de pruebas. • No se realiza revisiones técnicas formales e inspecciones de código.
  • 4. 1. METODOLOGIA CRYSTAL: Es la compilación de un conjunto de metodologías que faciliten el desarrollo de software dependiendo de varios factores, teniendo como principal factor la cantidad de desarrolladores. Es una metodología que ha sido creada por una persona en particular Alistair Cockburn. CARACTERÍSTICAS: • Cuando el número de personas aumenta, también aumenta la necesidad de coordinar • La sensibilidad del tiempo en que se debe estar en el mercado varía: a veces este tiempo debe acortarse al máximo y se toleran defectos, otra se enfatiza la autoridad, confiabilidad, protección legal, entre otros. 2. METODOLOGÍA XP (Programación Extrema): La programación extrema o eXtreme Programming (XP) es un enfoque de la Ingeniería de Software formulado por Kent Beck. es el primer autor sobre la materia, Extreme Programming Explained: Embrace Change (1999). VENTAJAS E INCONVENIENTES Ventajas •Da lugar a una programación sumamente organizada. •Cuenta con una tasa de errores muy pequeña. Inconvenientes • Es recomendable emplearla sólo en proyectos a corto plazo. • En caso de fallar las comisiones son muy altas. • Puede no siempre ser más fácil que el desarrollo tradicional.
  • 5. 3. SCRUM: • UN PROCESO DE LA METODOLOGÍA ÁGIL QUE SE USA PARA MINIMIZAR LOS RIESGOS DURANTE LA REALIZACIÓN DE UN PROYECTO, PERO DE MANERA COLABORATIVA. • ENFOCADO PARA PROYECTOS EN ENTORNOS COMPLEJOS. 1. Planteamiento: Lo primero es fraccionarlo en entregas parciales. 2. Lista de tareas: fijar plazos proporcionados. 3. Reuniones: lo ideal es que cada día el equipo dedique 15 minutos para reunirse y ponerse al tanto de la evolución del plan. 4. Demostración: el equipo se reúne con el cliente para mostrar los avances correspondientes. 5. Retrospectiva: los miembros del equipo se reúnen para analizar los factores que podrían mejorar de cara al final del proceso. Fases de ejecución 4. RUP: • Es una secuencia de pasos para el desarrollo y/o mantenimiento de gran cantidad de sistemas en distintas áreas de aplicación. • Asegurar la producción de software de calidad dentro de plazos y presupuestos predecibles. Dirigido por casos de uso, centrado en la arquitectura, iterativo(mini proyectos) e incremental (versiones). Fases De Ejecución 1. Configuración y administración del cambio: Guardando todas las versiones del proyecto. 2. Administrando el proyecto: Administrando horarios y recursos. 3. Ambiente: Administrando el ambiente de desarrollo. 4. Distribución: Hacer todo lo necesario para la salida del proyecto.
  • 6. 1. MODELO ESPIRAL: • EL MODELO SE DESARROLLA EN UNA SERIE DE VERSIONES INCREMENTALES. ETAPAS DEL MODELO EN ESPIRAL: • COMUNICACIÓN CON EL CLIENTE: COMUNICACIÓN ENTRE EL DESARROLLADOR Y EL CLIENTE. • PLANIFICACIÓN: SON TODOS LOS REQUERIMIENTOS. • ANÁLISIS DE RIESGOS: EVALUAR LOS RIESGOS TÉCNICOS Y OTRAS INFORMACIONES • INGENIERÍA: CONSTRUIR UNA O MÁS REPRESENTACIONES DE LA APLICACIÓN. • CONSTRUCCIÓN Y ADAPTACIÓN: CONSTRUIR, PROBAR, INSTALAR Y PROPORCIONAR SOPORTE AL USUARIO. • EVALUACIÓN EL CLIENTE: ADQUIRIR LA REACCIÓN DEL CLIENTE SEGÚN LA EVALUACIÓN DE LAS REPRESENTACIONES DEL SOFTWARE 2. Modelo Concurrente: Características: • Se puede expresar de manera esquematizada. • Las actividades llevan procesos concurrentes. • Es aplicable a todo tipo de desarrollo de software. • Es un modelo aplicable para cliente soñador. • Esta dirigido por las necesidades del usuario. • Es aplicable al cliente servidor. En realidad el modelo de desarrollo concurrente es aplicable a todo tipo de desarrollo de software y proporciona una imagen exacta del estado actual de un proyecto.
  • 7. Ventajas Desventajas • Excelente para proyectos en los que se conforman grupos de trabajo independientes. • Proporciona una imagen exacta del estado actual de un proyecto. • Si no se dan las condiciones señaladas no es aplicable. • Si no existen grupos de trabajo no se puede trabajar en este método. 3. MODELO PROTOTIPO: ¿Que es modelo prototipo? Permite que todo el sistema o algunas de sus partes se construyan rápidamente para comprender con facilidad y aclarar ciertos aspectos en los que se aseguran que el desarrollador el usuario y el cliente estén de acuerdo en lo que se necesita. El paradigma de construcción de prototipo tiene tres pasos: • Escuchar al cliente para la recolección de requisitos, se encuentran y definen los objetivos globales, se identifican los requisitos conocidos y las áreas donde es mas obligatoria mas definición. • El cliente prueba la maqueta (prototipo) y lo utiliza para refinar los requisitos del software
  • 8. Ventajas Desventaja • Útil cuando el cliente conoce los objetivos generales para el software, pero no identifica los requisitos detallados de entrada, procesamiento o salida. • Existe una reducción de la incertidumbre y del riesgo. • Se reduce el tiempo y costos. • Hay incremento en la aceptación del nuevo sistema. • Mejora la administración de • Se encuentra con que es necesario reescribir buena parte del prototipo para hacerlo funcional, por que lo mas seguro es que el desarrollador haya hecho compromisos de implementación para hacer que el prototipo funcione rápidamente. • El cliente ve funcionando lo que para el es la primera versión del prototipo que ha sido construido con “plastilina y alambres”, y puede desilusionarse al decirle que el sistema aún no ha sido construido. ETAPAS DEL PROTOTIPO
  • 9. 1. MODELO DRA: ES DEL TIPO DESARROLLO INTERACTIVO, LA CONSTRUCCIÓN DE PROTOTIPOS Y EL USO INGENIERÍA ASISTIDA POR COMPUTADORA(CASE), EL DESARROLLO RÁPIDO DE APLICACIONES TIENDE A ENGLOBAR TAMBIÉN LA USABILIDAD, UTILIDAD Y LA RAPIDEZ DE EJECUCIÓN. ETAPAS DEL MODELO DRA: 1. MODELADO DE GESTIÓN : MODELA EL FLUJO DE INFORMACIÓN ENTRE LAS FUNCIONES. 2. MODELADO DE DATOS: DEFINA LOS ATRIBUTOS DE CADA OBJETO A PARTIR DEL FLUJO DE INFORMACIÓN Y LAS RELACIONES ENTRE ELLOS. 3. MODELADO DEL PROCESO: EL PROCESO SE CREA PARA AÑADIR, MODIFICAR Y RECUPERAR UN OBJETO. 4. GENERACIÓN DE APLICACIONES: EL DRA REUTILIZA LOS COMPONENTES DE PROGRAMAS YA EXISTENTES O CREAR NUEVOS COMPONENTES REUTILIZABLES. 5. PRUEBA Y ENTREGA: COMO YA NO SE CREA UN NUEVO SOFTWARE, EL TIEMPO DE DURACIÓN DE LAS PRUEBAS ES MENOR 2. Modelo Lineal Secuencial: Llamado ciclo de vida clásico o modelo Cascada, sugiere un enfoque sistemático o más bien secuencial del desarrollo de software que comienza en un nivel de sistemas y progresa con el análisis, diseño, implementación, prueba y mantenimiento. • Ventajas -Se tiene todo bien organizado y no se mezclan las etapas o fases. -Facilita la gestión del desarrollo. • Desventajas -El usuario debe esperar mucho tiempo para ver los resultados. -Se genera mantenimiento debido a la congelación de requisitos, y este por consecuencia recae en su mayor parte.
  • 10. 3. MODELO POR ETAPAS: SIMILAR AL MODELO DE PROTOTIPOS YA QUE QUE MUESTRA EL SOFTWARE AL CLIENTE EN DIFERENTES ESTADOS SUCESIVOS. • VENTAJAS 1. PERMITE MODIFICACIONES A MEDIO CAMINO. 2. REQUIERE POCO TIEMPO DE GESTIÓN. 3. REQUIERE POCA SOFISTICACIÓN PARA LOS DIRECTIVOS Y DESARROLLADORES. • DESVENTAJAS 1. TRABAJA CON POCA COMPRENSIÓN O IDENTIFICACIÓN DE LOS REQUERIMIENTOS SOBRE EL DISEÑO. 2. SE DEBE ENTREGAR UNA ETAPA PARA CONTINUAR A LA SIGUIENTE, NO ES VIABLE PARA UNA PLANIFICACIÓN. 3. SOMETIDO A UNA PLANIFICACIÓN PREDEFINIDA.