SlideShare une entreprise Scribd logo
1  sur  35
Télécharger pour lire hors ligne
Otros Modelos / 1
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Modelos de Proceso de Software
Ingeniería de Software I
FIEC03046
Sesión 05
Otros Modelos / 2
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Agenda
• Terminología
• Modelo de desarrollo ágil
• Scrum
• Otros enfoques
– Prototipo
– Ingeniería Concurrente
• El mejor ciclo de vida para un proyecto
Otros Modelos / 3
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Terminología
Otros Modelos / 4
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Terminología
• Una metodología es un framework para la
organización sistemática de una colección de
métodos. Algunos ejemplos son:
– Structured Systems Analysis and Design SSADM
– Unified Software Development Process USDP o
Rational Unified Process RUP
– Extreme Programming XP
– SCRUM
– Dynamic Systems Development DSDM
Otros Modelos / 5
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Modelo de desarrollo ágil
Otros Modelos / 6
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Modelo de desarrollo ágil
• Es un tipo de modelo iterativo e incremental.
El software es desarrollado en incrementos de
ciclos cortos.
• Cada pequeño entregable es construido sobre
los anteriores entregables.
• Cada release es cuidadosamente probado
para asegurar que se mantenga la calidad del
sofware.
Otros Modelos / 7
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Modelo de desarrollo ágil
• Es un modelo para desarrollo de software
iterativo e incremental en el cual los
incrementos son pequeños y usualmente una
nueva versión es presentada al usuario cada 2
o 3 semanas.
• Se minimizan documentación y reuniones
formales para dar paso a reuniones con
comunicaciones informales.
7
Otros Modelos / 8
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Modelo de desarrollo ágil
– Fuente: http://istqbexamcertification.com/
Otros Modelos / 9
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Modelo de desarrollo ágil
Otros Modelos / 10
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Modelo de desarrollo ágil
Otros Modelos / 11
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Ventajas del modelo de desarrollo ágil
• Entregables frecuentes (semanas en vez de
meses)
• Se enfatiza las personas y sus interacciones
más que procesos y herramientas
• Satisfacción del cliente por las entregas
constantes y rápidas de software.
• Cooperación cercana entre los expertos de la
lógica del negocio y los desarrolladores.
Otros Modelos / 12
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Desventajas del modelo de desarrollo
ágil
• Falta de énfasis en diseño y documentación
necesaria.
• Solo desarrolladores senior son capaces de
tomar las decisiones requeridas durante el
proceso de desarrollo. Por lo tanto, no hay
lugar para novatos, a menos que se mezclen
con recursos experimentados.
Otros Modelos / 13
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Modelo de desarrollo ágil
• Conveniente cuando…
– Existe una alta frecuencia de cambios.
– Se requiere muy poca planificación para iniciar el
proyecto.
Otros Modelos / 14
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Modelo de desarrollo ágil
• Metodologías de desarrollo ágil:
– Scrum
– Extreme programming (XP)
– Test-driven development (TDD)
– Agile Unified Process (AUP)
Otros Modelos / 15
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Scrum
Otros Modelos / 16
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Metodología Scrum
• Es una metodología de desarrollo ágil que
estructura el desarrollo de aplicaciones en
ciclos llamados Sprints.
Ciclo de Sprint
Seleccionar
Desarrollar
Revisar
Evaluar
Bosquejo de
planeación y diseño
de la arquitectura
Cierre del
proyecto
16
Otros Modelos / 17
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Roles en Scrum
• El Product Owner describe los requerimientos
del software en el Product Backlog.
• El Scrum Master es el facilitador que coordina
reuniones diarias, hace seguimiento del Sprint
Backlog, y se comunica con el Product Owner
para evitar interrupciones.
• El Equipo de Desarrollo Scrum está
conformado por las personas que desarrollan
el software.
17
Otros Modelos / 18
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Características de Scrum
• Un Sprint es la fase central de Scrum, en
donde se evalúa el trabajo, se seleccionan las
características a ser desarrolladas y el
software es implementado. Al final de un
sprint, la funcionalidad producida es liberada
a los usuarios.
• Los Sprints tienen una duración fija [1 – 4
semanas] y finalizan en la fecha establecida
independiente de si se haya completado el
trabajo o no.
18
Otros Modelos / 19
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Características de Scrum
• Sprint Planning: es la reunión que se realiza al
inicio de cada Sprint entre el Product Owner y
el Equipo de Desarrollo con la facilitación del
Scrum Master para definir la lista de tareas en
el Sprint Backlog.
• Daily Scrum Meeting: Es una reunión diaria de
15 minutos en la cual el equipo de desarrollo
analiza el avance de tareas y define si es
necesaria una replanificación de las mismas.
19
Otros Modelos / 20
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Documentos de Scrum
• El Product Backlog es un documento que
contiene todos los requerimientos del
software a desarrollar. Está abierto a
modificaciones.
• El Sprint Backlog es un documento que
contiene las tareas que el equipo va a
desarrollar en el siguiente sprint. Ninguna
tarea es mayor a 16 horas de trabajo.
20
Otros Modelos / 21
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Documentos de Scrum
21
Ejemplo de Sprint BackLog
Fuente: Scrum Training Institute Press
Otros Modelos / 22
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Documentos de Scrum
• El burn down chart es una gráfica que
muestra la cantidad de requisitos pendientes
en el product backlog al inicio de cada sprint.
22
Scrum
Fuente: http://en.wikipedia.org
Otros Modelos / 23
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Documentos de Scrum
23
Burn down chart
Fuente: http://en.wikipedia.org
Otros Modelos / 24
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Beneficios del uso de Scrum
• Entrega de un producto funcional al final de cada
Sprint
• El producto es dividido en subconjuntos
plenamente manejables y entendibles.
• Requerimientos inestables son identificados a
tiempo.
• Todo el equipo de desarrollo conoce el estado del
proyecto.
• Se establece una relación de confianza entre
clientes y desarrolladores.
24
Otros Modelos / 25
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Limitaciones del uso de Scrum
• Difícil de aplicar en grandes proyectos
• Requiere de un equipo con habilidades
transversales
• Presupone un cliente muy activo e involucrado
continuamente en el desarrollo.
• No se genera documentación que diversas
normativas internacionales solicitan.
25
Otros Modelos / 26
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Otros enfoques a considerar
Otros Modelos / 27
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Prototipo
• Identifica los requerimientos del cliente más
explícitamente o evalúa la factibilidad del diseño
de una solución.
• Muy útil cuando los requerimientos son inciertos
o para clarificar la interfaz de usuario.
• Podría ser también utilizada en pruebas ya que
los resultados de las pruebas podrían ser
verificados con el prototipo.
• Mejora el involucramiento del usuario a través de
un modelo tangible del sistema.
Otros Modelos / 28
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Ingeniería Concurrente
• Utilizado para acelerar la entrega de desarrollos
incrementales en paralelo.
• Usado cuando el tiempo es esencial.
• Los problemas surgen cuando los primeros
incrementos son inmediatamente incorporados
en los siguientes incrementos.
• Incrementa esfuerzo en términos de planificación
y comunicación.
• Requiere el involucramiento del cliente en un
número de iteraciones concurrentes.
Otros Modelos / 29
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
El mejor ciclo de vida para un proyecto
Otros Modelos / 30
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
El mejor ciclo de vida para un proyecto
• Cascada
– Proyectos medianos/pequeños
– Requerimientos claros y bien entendidos
– Restricciones de tiempo y costo
• Incremental
– Proyecto puede ser divididos en una serie de mini
proyectos
– Útil para proyectos de alto riesgo o cuando los recursos
son limitados
– Bosquejo de requerimientos puede ser bien entendido
– Tiempo y restricciones de costo pueden ser especificados
para cada incremento
Otros Modelos / 31
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
El mejor ciclo de vida para un proyecto
• Iterativo o Evolutivo
– Proyectos con requerimientos inciertos
– Útil cuando la calidad es más importante que el tiempo o
costo
– Útil para equipos colaborativos pequeños de
usuarios/desarrolladores con restricciones de tiempo y
costo
– Tienden a ser inapropiados para sistemas de misión
críticos y sistemas con requerimientos regulatorios.
• Enfoques híbridos son posibles
– Proyectos grandes para los cuales una arquitectura estable
puede ser definida pero aún existe cierta incertidumbre.
Otros Modelos / 32
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
David Boddy’s project profile tool
Otros Modelos / 33
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
David Boddy’s project profile tool
Otros Modelos / 34
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Puntos para recordar
• Scrum es una metodología de desarrollo ágil
• La principal fase del modelo Scrum es el Sprint
• Los roles de Scrum son Product Owner, Scrum
Master y el Equipo de Desarrollo
• Scrum entrega un producto funcional al final
de cada Sprint
• Scrum es difícil de aplicar en grandes
proyectos
• David Boddy’s project profile tool
34
Otros Modelos / 35
Ingeniería de Software I
© MSc. Carlos Mera Gómez
2013
Próxima Sesión
• Visión y gestión de proyectos

Contenu connexe

Tendances

Fundamentos de ingenieria de software - metodologias.pdf
Fundamentos de ingenieria de software - metodologias.pdfFundamentos de ingenieria de software - metodologias.pdf
Fundamentos de ingenieria de software - metodologias.pdfBibliotecaenlineaUNI
 
1 ingeniería de software
1 ingeniería de software1 ingeniería de software
1 ingeniería de softwareUVM
 
Qué metodología será más adecuada para mi proyecto software
Qué metodología será más adecuada para mi proyecto softwareQué metodología será más adecuada para mi proyecto software
Qué metodología será más adecuada para mi proyecto softwareLeanSight Consulting
 
Desarrollo en cascada vs desarrollo agile scrum
Desarrollo en cascada vs desarrollo agile scrumDesarrollo en cascada vs desarrollo agile scrum
Desarrollo en cascada vs desarrollo agile scrumtbaires
 
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
 
Metogologias de Desarrollo de Software Tradicionales VS Agiles
Metogologias de Desarrollo de Software Tradicionales VS AgilesMetogologias de Desarrollo de Software Tradicionales VS Agiles
Metogologias de Desarrollo de Software Tradicionales VS Agilesfmmeson
 
Modelos en la ingeniería de software
Modelos en la ingeniería de softwareModelos en la ingeniería de software
Modelos en la ingeniería de softwareMarco Aurelio
 
Ing 162-show.fin
Ing 162-show.finIng 162-show.fin
Ing 162-show.finalbj1in
 
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa Conde
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa CondeProceso para el desarrollo de software Ponencia M.C.Ivet Espinosa Conde
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa CondeSam Espinosa
 

Tendances (20)

Fundamentos de ingenieria de software - metodologias.pdf
Fundamentos de ingenieria de software - metodologias.pdfFundamentos de ingenieria de software - metodologias.pdf
Fundamentos de ingenieria de software - metodologias.pdf
 
1 ingeniería de software
1 ingeniería de software1 ingeniería de software
1 ingeniería de software
 
Exposicion
ExposicionExposicion
Exposicion
 
Modelos Desarrollo
Modelos DesarrolloModelos Desarrollo
Modelos Desarrollo
 
Paradigmas
ParadigmasParadigmas
Paradigmas
 
Qué metodología será más adecuada para mi proyecto software
Qué metodología será más adecuada para mi proyecto softwareQué metodología será más adecuada para mi proyecto software
Qué metodología será más adecuada para mi proyecto software
 
Desarrollo en cascada vs desarrollo agile scrum
Desarrollo en cascada vs desarrollo agile scrumDesarrollo en cascada vs desarrollo agile scrum
Desarrollo en cascada vs desarrollo agile scrum
 
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
 
Presentacion fdd
Presentacion fddPresentacion fdd
Presentacion fdd
 
Modelos de software
Modelos de softwareModelos de software
Modelos de software
 
Metogologias de Desarrollo de Software Tradicionales VS Agiles
Metogologias de Desarrollo de Software Tradicionales VS AgilesMetogologias de Desarrollo de Software Tradicionales VS Agiles
Metogologias de Desarrollo de Software Tradicionales VS Agiles
 
Rup
RupRup
Rup
 
Metodología RUP
Metodología RUPMetodología RUP
Metodología RUP
 
00000350
0000035000000350
00000350
 
Jovanni jimenez v.
Jovanni jimenez v.Jovanni jimenez v.
Jovanni jimenez v.
 
Modelos en la ingeniería de software
Modelos en la ingeniería de softwareModelos en la ingeniería de software
Modelos en la ingeniería 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
 
Ing 162-show.fin
Ing 162-show.finIng 162-show.fin
Ing 162-show.fin
 
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa Conde
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa CondeProceso para el desarrollo de software Ponencia M.C.Ivet Espinosa Conde
Proceso para el desarrollo de software Ponencia M.C.Ivet Espinosa Conde
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
 

En vedette

Scrum metodología ágil para tus proyectos
Scrum metodología ágil para tus proyectosScrum metodología ágil para tus proyectos
Scrum metodología ágil para tus proyectosBarCamp Cochabamba
 
Magazine Animalinfos N°35
Magazine Animalinfos N°35Magazine Animalinfos N°35
Magazine Animalinfos N°35AGENCE GINKOA
 
Graficos De Desarrollo De Competencias
Graficos De Desarrollo De CompetenciasGraficos De Desarrollo De Competencias
Graficos De Desarrollo De Competenciaselsita7
 
Les Salelles _ Le débit du Chassezac en temps réel
Les Salelles _ Le débit du Chassezac en temps réelLes Salelles _ Le débit du Chassezac en temps réel
Les Salelles _ Le débit du Chassezac en temps réelRémi MASSOT
 
amigo cometa o estrella?
amigo cometa o estrella?amigo cometa o estrella?
amigo cometa o estrella?gloria
 
Trabajo Planificación
Trabajo PlanificaciónTrabajo Planificación
Trabajo Planificaciónmarcosgarate
 
XebiConFr 15 - Témoignage Orange Technocentre - Comment intégrer le Marketing...
XebiConFr 15 - Témoignage Orange Technocentre - Comment intégrer le Marketing...XebiConFr 15 - Témoignage Orange Technocentre - Comment intégrer le Marketing...
XebiConFr 15 - Témoignage Orange Technocentre - Comment intégrer le Marketing...Publicis Sapient Engineering
 
Back day - REX vsct - Secrets de conception d’une application innovante au s...
Back day -  REX vsct - Secrets de conception d’une application innovante au s...Back day -  REX vsct - Secrets de conception d’une application innovante au s...
Back day - REX vsct - Secrets de conception d’une application innovante au s...Publicis Sapient Engineering
 
Puerta leones plaza lieja
Puerta leones plaza liejaPuerta leones plaza lieja
Puerta leones plaza liejaimanolvega
 
Rainbow Hope
Rainbow HopeRainbow Hope
Rainbow Hopeflasorne
 
Afinidad
AfinidadAfinidad
Afinidadgloria
 
Présentation BIU Santé nouveaux enseignants 2014
Présentation BIU Santé nouveaux enseignants 2014Présentation BIU Santé nouveaux enseignants 2014
Présentation BIU Santé nouveaux enseignants 2014David BENOIST
 

En vedette (20)

Scrum metodología ágil para tus proyectos
Scrum metodología ágil para tus proyectosScrum metodología ágil para tus proyectos
Scrum metodología ágil para tus proyectos
 
Média social et durable
Média social et durableMédia social et durable
Média social et durable
 
Sample Picture
Sample PictureSample Picture
Sample Picture
 
Aux origines de la Saint Valentin
Aux origines de la Saint ValentinAux origines de la Saint Valentin
Aux origines de la Saint Valentin
 
Gastronomia (2)[1]
Gastronomia (2)[1]Gastronomia (2)[1]
Gastronomia (2)[1]
 
Animation commerciale
Animation commerciale Animation commerciale
Animation commerciale
 
Magazine Animalinfos N°35
Magazine Animalinfos N°35Magazine Animalinfos N°35
Magazine Animalinfos N°35
 
Graficos De Desarrollo De Competencias
Graficos De Desarrollo De CompetenciasGraficos De Desarrollo De Competencias
Graficos De Desarrollo De Competencias
 
Les Salelles _ Le débit du Chassezac en temps réel
Les Salelles _ Le débit du Chassezac en temps réelLes Salelles _ Le débit du Chassezac en temps réel
Les Salelles _ Le débit du Chassezac en temps réel
 
amigo cometa o estrella?
amigo cometa o estrella?amigo cometa o estrella?
amigo cometa o estrella?
 
Trabajo Planificación
Trabajo PlanificaciónTrabajo Planificación
Trabajo Planificación
 
XebiConFr 15 - Témoignage Orange Technocentre - Comment intégrer le Marketing...
XebiConFr 15 - Témoignage Orange Technocentre - Comment intégrer le Marketing...XebiConFr 15 - Témoignage Orange Technocentre - Comment intégrer le Marketing...
XebiConFr 15 - Témoignage Orange Technocentre - Comment intégrer le Marketing...
 
XebiConFr 15 - Comment manager des geeks
XebiConFr 15 - Comment manager des geeksXebiConFr 15 - Comment manager des geeks
XebiConFr 15 - Comment manager des geeks
 
Back day - REX vsct - Secrets de conception d’une application innovante au s...
Back day -  REX vsct - Secrets de conception d’une application innovante au s...Back day -  REX vsct - Secrets de conception d’une application innovante au s...
Back day - REX vsct - Secrets de conception d’une application innovante au s...
 
Puerta leones plaza lieja
Puerta leones plaza liejaPuerta leones plaza lieja
Puerta leones plaza lieja
 
Média social et durable
Média social et durableMédia social et durable
Média social et durable
 
Rainbow Hope
Rainbow HopeRainbow Hope
Rainbow Hope
 
presentationsynerjh_finale
presentationsynerjh_finalepresentationsynerjh_finale
presentationsynerjh_finale
 
Afinidad
AfinidadAfinidad
Afinidad
 
Présentation BIU Santé nouveaux enseignants 2014
Présentation BIU Santé nouveaux enseignants 2014Présentation BIU Santé nouveaux enseignants 2014
Présentation BIU Santé nouveaux enseignants 2014
 

Similaire à 05 masmodelosdeprocesodesoftware isi

04 modelosdeprocesodesoftware isi
04 modelosdeprocesodesoftware isi04 modelosdeprocesodesoftware isi
04 modelosdeprocesodesoftware isiChristian Bueno
 
Métodos Ágiles de Programación
Métodos Ágiles de Programación Métodos Ágiles de Programación
Métodos Ágiles de Programación Sonia Sosa
 
03 cicloprocesodesoftware isi
03 cicloprocesodesoftware isi03 cicloprocesodesoftware isi
03 cicloprocesodesoftware isiChristian Bueno
 
1-metodologia-scrum.ppt
1-metodologia-scrum.ppt1-metodologia-scrum.ppt
1-metodologia-scrum.pptDare_Devil
 
Modelos de desarrollo de software
Modelos de desarrollo de softwareModelos de desarrollo de software
Modelos de desarrollo de softwareLuiscolmenares46
 
Los modelos de desarrollo de software (hendrick rodriguez )
Los modelos de desarrollo de software (hendrick rodriguez )Los modelos de desarrollo de software (hendrick rodriguez )
Los modelos de desarrollo de software (hendrick rodriguez )Hendrick Rodriguez
 
Ciclo de vida de los Sistemas de Información
Ciclo de vida de los Sistemas de InformaciónCiclo de vida de los Sistemas de Información
Ciclo de vida de los Sistemas de InformaciónMarines Ahuanlla
 
Presentacion grupo 2
Presentacion grupo 2Presentacion grupo 2
Presentacion grupo 2grupooo2
 
Metodologias ágiles
Metodologias ágilesMetodologias ágiles
Metodologias ágilesAngel Rochy
 
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
 
Metodos agiles 3
Metodos agiles 3Metodos agiles 3
Metodos agiles 3paotacuba
 
Plantilla Desarrollo web.pptx
Plantilla Desarrollo web.pptxPlantilla Desarrollo web.pptx
Plantilla Desarrollo web.pptxBillyMelo
 
Webinar de Optisa: Conociendo el componente S4PM para gestionar proyectos usa...
Webinar de Optisa: Conociendo el componente S4PM para gestionar proyectos usa...Webinar de Optisa: Conociendo el componente S4PM para gestionar proyectos usa...
Webinar de Optisa: Conociendo el componente S4PM para gestionar proyectos usa...PMI Capítulo México
 

Similaire à 05 masmodelosdeprocesodesoftware isi (20)

04 modelosdeprocesodesoftware isi
04 modelosdeprocesodesoftware isi04 modelosdeprocesodesoftware isi
04 modelosdeprocesodesoftware isi
 
Métodos Ágiles de Programación
Métodos Ágiles de Programación Métodos Ágiles de Programación
Métodos Ágiles de Programación
 
inf-162 presentacion
inf-162 presentacioninf-162 presentacion
inf-162 presentacion
 
El pato-volador
El pato-voladorEl pato-volador
El pato-volador
 
Introducción al Marco de Trabajo Scrum
Introducción al Marco de Trabajo ScrumIntroducción al Marco de Trabajo Scrum
Introducción al Marco de Trabajo Scrum
 
03 cicloprocesodesoftware isi
03 cicloprocesodesoftware isi03 cicloprocesodesoftware isi
03 cicloprocesodesoftware isi
 
1-metodologia-scrum.ppt
1-metodologia-scrum.ppt1-metodologia-scrum.ppt
1-metodologia-scrum.ppt
 
Modelos de desarrollo de software
Modelos de desarrollo de softwareModelos de desarrollo de software
Modelos de desarrollo de software
 
Los modelos de desarrollo de software (hendrick rodriguez )
Los modelos de desarrollo de software (hendrick rodriguez )Los modelos de desarrollo de software (hendrick rodriguez )
Los modelos de desarrollo de software (hendrick rodriguez )
 
Ciclo de vida de los Sistemas de Información
Ciclo de vida de los Sistemas de InformaciónCiclo de vida de los Sistemas de Información
Ciclo de vida de los Sistemas de Información
 
Presentacion grupo 2
Presentacion grupo 2Presentacion grupo 2
Presentacion grupo 2
 
Metodologias ágiles
Metodologias ágilesMetodologias ágiles
Metodologias ágiles
 
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
 
2 modelos de la ingenieria de software
2  modelos de la ingenieria de software2  modelos de la ingenieria de software
2 modelos de la ingenieria de software
 
Presentacion grupo8
Presentacion grupo8Presentacion grupo8
Presentacion grupo8
 
Metodos agiles 3
Metodos agiles 3Metodos agiles 3
Metodos agiles 3
 
Grupo82018
Grupo82018Grupo82018
Grupo82018
 
Plantilla Desarrollo web.pptx
Plantilla Desarrollo web.pptxPlantilla Desarrollo web.pptx
Plantilla Desarrollo web.pptx
 
Webinar de Optisa: Conociendo el componente S4PM para gestionar proyectos usa...
Webinar de Optisa: Conociendo el componente S4PM para gestionar proyectos usa...Webinar de Optisa: Conociendo el componente S4PM para gestionar proyectos usa...
Webinar de Optisa: Conociendo el componente S4PM para gestionar proyectos usa...
 
ASPgems 2018
ASPgems 2018 ASPgems 2018
ASPgems 2018
 

05 masmodelosdeprocesodesoftware isi

  • 1. Otros Modelos / 1 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Modelos de Proceso de Software Ingeniería de Software I FIEC03046 Sesión 05
  • 2. Otros Modelos / 2 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Agenda • Terminología • Modelo de desarrollo ágil • Scrum • Otros enfoques – Prototipo – Ingeniería Concurrente • El mejor ciclo de vida para un proyecto
  • 3. Otros Modelos / 3 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Terminología
  • 4. Otros Modelos / 4 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Terminología • Una metodología es un framework para la organización sistemática de una colección de métodos. Algunos ejemplos son: – Structured Systems Analysis and Design SSADM – Unified Software Development Process USDP o Rational Unified Process RUP – Extreme Programming XP – SCRUM – Dynamic Systems Development DSDM
  • 5. Otros Modelos / 5 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Modelo de desarrollo ágil
  • 6. Otros Modelos / 6 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Modelo de desarrollo ágil • Es un tipo de modelo iterativo e incremental. El software es desarrollado en incrementos de ciclos cortos. • Cada pequeño entregable es construido sobre los anteriores entregables. • Cada release es cuidadosamente probado para asegurar que se mantenga la calidad del sofware.
  • 7. Otros Modelos / 7 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Modelo de desarrollo ágil • Es un modelo para desarrollo de software iterativo e incremental en el cual los incrementos son pequeños y usualmente una nueva versión es presentada al usuario cada 2 o 3 semanas. • Se minimizan documentación y reuniones formales para dar paso a reuniones con comunicaciones informales. 7
  • 8. Otros Modelos / 8 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Modelo de desarrollo ágil – Fuente: http://istqbexamcertification.com/
  • 9. Otros Modelos / 9 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Modelo de desarrollo ágil
  • 10. Otros Modelos / 10 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Modelo de desarrollo ágil
  • 11. Otros Modelos / 11 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Ventajas del modelo de desarrollo ágil • Entregables frecuentes (semanas en vez de meses) • Se enfatiza las personas y sus interacciones más que procesos y herramientas • Satisfacción del cliente por las entregas constantes y rápidas de software. • Cooperación cercana entre los expertos de la lógica del negocio y los desarrolladores.
  • 12. Otros Modelos / 12 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Desventajas del modelo de desarrollo ágil • Falta de énfasis en diseño y documentación necesaria. • Solo desarrolladores senior son capaces de tomar las decisiones requeridas durante el proceso de desarrollo. Por lo tanto, no hay lugar para novatos, a menos que se mezclen con recursos experimentados.
  • 13. Otros Modelos / 13 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Modelo de desarrollo ágil • Conveniente cuando… – Existe una alta frecuencia de cambios. – Se requiere muy poca planificación para iniciar el proyecto.
  • 14. Otros Modelos / 14 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Modelo de desarrollo ágil • Metodologías de desarrollo ágil: – Scrum – Extreme programming (XP) – Test-driven development (TDD) – Agile Unified Process (AUP)
  • 15. Otros Modelos / 15 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Scrum
  • 16. Otros Modelos / 16 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Metodología Scrum • Es una metodología de desarrollo ágil que estructura el desarrollo de aplicaciones en ciclos llamados Sprints. Ciclo de Sprint Seleccionar Desarrollar Revisar Evaluar Bosquejo de planeación y diseño de la arquitectura Cierre del proyecto 16
  • 17. Otros Modelos / 17 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Roles en Scrum • El Product Owner describe los requerimientos del software en el Product Backlog. • El Scrum Master es el facilitador que coordina reuniones diarias, hace seguimiento del Sprint Backlog, y se comunica con el Product Owner para evitar interrupciones. • El Equipo de Desarrollo Scrum está conformado por las personas que desarrollan el software. 17
  • 18. Otros Modelos / 18 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Características de Scrum • Un Sprint es la fase central de Scrum, en donde se evalúa el trabajo, se seleccionan las características a ser desarrolladas y el software es implementado. Al final de un sprint, la funcionalidad producida es liberada a los usuarios. • Los Sprints tienen una duración fija [1 – 4 semanas] y finalizan en la fecha establecida independiente de si se haya completado el trabajo o no. 18
  • 19. Otros Modelos / 19 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Características de Scrum • Sprint Planning: es la reunión que se realiza al inicio de cada Sprint entre el Product Owner y el Equipo de Desarrollo con la facilitación del Scrum Master para definir la lista de tareas en el Sprint Backlog. • Daily Scrum Meeting: Es una reunión diaria de 15 minutos en la cual el equipo de desarrollo analiza el avance de tareas y define si es necesaria una replanificación de las mismas. 19
  • 20. Otros Modelos / 20 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Documentos de Scrum • El Product Backlog es un documento que contiene todos los requerimientos del software a desarrollar. Está abierto a modificaciones. • El Sprint Backlog es un documento que contiene las tareas que el equipo va a desarrollar en el siguiente sprint. Ninguna tarea es mayor a 16 horas de trabajo. 20
  • 21. Otros Modelos / 21 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Documentos de Scrum 21 Ejemplo de Sprint BackLog Fuente: Scrum Training Institute Press
  • 22. Otros Modelos / 22 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Documentos de Scrum • El burn down chart es una gráfica que muestra la cantidad de requisitos pendientes en el product backlog al inicio de cada sprint. 22 Scrum Fuente: http://en.wikipedia.org
  • 23. Otros Modelos / 23 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Documentos de Scrum 23 Burn down chart Fuente: http://en.wikipedia.org
  • 24. Otros Modelos / 24 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Beneficios del uso de Scrum • Entrega de un producto funcional al final de cada Sprint • El producto es dividido en subconjuntos plenamente manejables y entendibles. • Requerimientos inestables son identificados a tiempo. • Todo el equipo de desarrollo conoce el estado del proyecto. • Se establece una relación de confianza entre clientes y desarrolladores. 24
  • 25. Otros Modelos / 25 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Limitaciones del uso de Scrum • Difícil de aplicar en grandes proyectos • Requiere de un equipo con habilidades transversales • Presupone un cliente muy activo e involucrado continuamente en el desarrollo. • No se genera documentación que diversas normativas internacionales solicitan. 25
  • 26. Otros Modelos / 26 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Otros enfoques a considerar
  • 27. Otros Modelos / 27 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Prototipo • Identifica los requerimientos del cliente más explícitamente o evalúa la factibilidad del diseño de una solución. • Muy útil cuando los requerimientos son inciertos o para clarificar la interfaz de usuario. • Podría ser también utilizada en pruebas ya que los resultados de las pruebas podrían ser verificados con el prototipo. • Mejora el involucramiento del usuario a través de un modelo tangible del sistema.
  • 28. Otros Modelos / 28 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Ingeniería Concurrente • Utilizado para acelerar la entrega de desarrollos incrementales en paralelo. • Usado cuando el tiempo es esencial. • Los problemas surgen cuando los primeros incrementos son inmediatamente incorporados en los siguientes incrementos. • Incrementa esfuerzo en términos de planificación y comunicación. • Requiere el involucramiento del cliente en un número de iteraciones concurrentes.
  • 29. Otros Modelos / 29 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 El mejor ciclo de vida para un proyecto
  • 30. Otros Modelos / 30 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 El mejor ciclo de vida para un proyecto • Cascada – Proyectos medianos/pequeños – Requerimientos claros y bien entendidos – Restricciones de tiempo y costo • Incremental – Proyecto puede ser divididos en una serie de mini proyectos – Útil para proyectos de alto riesgo o cuando los recursos son limitados – Bosquejo de requerimientos puede ser bien entendido – Tiempo y restricciones de costo pueden ser especificados para cada incremento
  • 31. Otros Modelos / 31 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 El mejor ciclo de vida para un proyecto • Iterativo o Evolutivo – Proyectos con requerimientos inciertos – Útil cuando la calidad es más importante que el tiempo o costo – Útil para equipos colaborativos pequeños de usuarios/desarrolladores con restricciones de tiempo y costo – Tienden a ser inapropiados para sistemas de misión críticos y sistemas con requerimientos regulatorios. • Enfoques híbridos son posibles – Proyectos grandes para los cuales una arquitectura estable puede ser definida pero aún existe cierta incertidumbre.
  • 32. Otros Modelos / 32 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 David Boddy’s project profile tool
  • 33. Otros Modelos / 33 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 David Boddy’s project profile tool
  • 34. Otros Modelos / 34 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Puntos para recordar • Scrum es una metodología de desarrollo ágil • La principal fase del modelo Scrum es el Sprint • Los roles de Scrum son Product Owner, Scrum Master y el Equipo de Desarrollo • Scrum entrega un producto funcional al final de cada Sprint • Scrum es difícil de aplicar en grandes proyectos • David Boddy’s project profile tool 34
  • 35. Otros Modelos / 35 Ingeniería de Software I © MSc. Carlos Mera Gómez 2013 Próxima Sesión • Visión y gestión de proyectos