SlideShare una empresa de Scribd logo
MODELO EN ESPIRAL
Este modelo, propuesto por Bohem en 1988 [BOE88], es un modelo de proceso de software evolutivo
que acompaña la naturaleza evolutiva de con los aspectos controlados y sistemáticos del ciclo de vida
tradicional. Proporciona el potencial para el desarrollo rápido de versiones incrementales del software.
En este modelo, el sistema se desarrolla en una serie de versiones incrementales. Durante las
primeras iteraciones, la versión incremental podría ser un modelo en papel o un prototipo. Durante las
últimas iteraciones se producen versiones cada vez más completas de ingeniería del sistema. .
El Modelo en Espiral se divide en un número de actividades estructurales, también llamadas "regiones
de tareas". Generalmente existen entre tres y seis regiones de tareas:
Comunicación con el cliente.- Las tareas requeridas para establecer comunicación entre el
desarrollador y el cliente, sea revisar especificaciones, plantear necesidades, etc.
Planificación.- Las tareas requeridas para definir recursos, tiempos e información relacionada con el
proyecto.
Análisis de riesgos.- Las tareas requeridas para evaluar riesgos técnicos y de gestión.
Ingeniería.- Las tareas requeridas para construir una o más representaciones de la aplicación
Construcción y adaptación.- Las tareas requeridas para construir, probar, instalar y proporcionar
soporte al usuario.
Evaluación del cliente.- Las tareas requeridas para obtener la reacción del cliente, según la evaluación
de las representaciones del software creadas durante la etapa de ingeniería e implementada durante la
etapa de instalación
MODELO EN CASCADA
También conocido como modelo clásico, modelo tradicional o modelo lineal secuencial. Él método de
la cascada es considerado como el enfoque clásico para el ciclo de vida del desarrollo de sistemas, se
puede decir que es un método puro que implica un desarrollo rígido. está es una secuencia de
actividades(o etapas) que consisten en el análisis de requerimientos, él diseño ,la implementación, la
integración y las pruebas .
El análisis de requerimientos: consiste en reunir las necesidades del producto y casi siempre su salida
es texto.
El diseño: describe la estructura interna del producto y suele representarse con diagramas y texto.
La implementación: significa programación. Producto de esta etapa es el código en cualquier nivel,
incluido el producido por sistemas de generación automática.
La integración: es el proceso de integración es el proceso de ensamblar las partes para completar el
producto.
MODELO DE PROTOTIPO
El modelo de prototipos permite que todo el sistema, o algunos de sus partes, se construyan
rápidamente para comprender con facilidad y aclarar ciertos aspectos en los que se aseguren que el
desarrollador, el usuario, el cliente estén de acuerdo en lo que se necesita así como también la
solución que se propone para dicha necesidad y de esta forma minimizar el riesgo y la incertidumbre
en el desarrollo, este modelo se encarga del desarrollo de diseños para que estos sean analizados y
prescindir de ellos a medida que se adhieran nuevas especificaciones, es ideal para medir el alcance
del producto, pero no se asegura su uso real.
Metodologías Tradicionales Metodologías Ágiles
- Rigidez ante los cambios, de manera
lentos o moderada
- Los clientes interactúan con el equipo
de desarrollo mediante reuniones
- Grupos de gran tamaño y varias
veces distribuidos en diferentes sitios
- Dependencia de la arquitectura de
software mediante modelos
- Poco Feedback lo que extiende el
tiempo de entrega
- Mínimos roles
- Basadas en normas de estándares de
desarrollo
- Procesos muy controlados por
políticas y normas
- Seguimiento estricto del plan inicial
de desarrollo
- Flexibilidad ante los cambios del
proyecto de forma moderada a rápida
- Los clientes hacen parte del equipo
de desarrollo
- Grupos pequeños (promedio 10
participantes in situ) en el mismo lugar.
- Menor dependencia de la arquitectura
de software
- Continuo Feedback acortando el
tiempo de entrega
- Diversidad de roles
- Basadas en heurísticas a partir de
prácticas de producción de código
- Procesos menos controlados,
pocas políticas y normas
- Capacidad de respuesta ante los
cambios
METOLOGIAS AGILES
XP
HISTORIA
La programación extrema o eXtreme Programming (XP) es un enfoque de la ingeniería de software formulado
por Kent Beck, autor del primer libro sobre la materia, Extreme Programming Explained: Embrace Change
(1999). Es el más destacado de los procesos ágiles de desarrollo de software. Al igual que éstos, la
programación extrema se diferencia de las metodologías tradicionales principalmente en que pone más
énfasis en la adaptabilidad que en la previsibilidad. Los defensores de XP consideran que los cambios de
requisitos sobre la marcha son un aspecto natural, inevitable e incluso deseable del desarrollo de proyectos.
Creen que ser capaz de adaptarse a los cambios de requisitos en cualquier punto de la vida del proyecto es
una aproximación mejor y más realista que intentar definir todos los requisitos al comienzo del proyecto e
invertir esfuerzos después en controlar los cambios en los requisitos.
Es una metodología ágil centrada en potenciar las relaciones interpersonales como clave para el éxito en
desarrollo de software, promoviendo el trabajo en equipo, preocupándose por el aprendizaje de los
desarrolladores, y propiciando un buen clima de trabajo. XP se basa en realimentación continua entre el
cliente y el equipo de desarrollo, comunicación fluida entre todos los participantes, simplicidad en las
soluciones implementadas y coraje para enfrentar los cambios. XP se define como especialmente adecuada
para proyectos con requisitos imprecisos y muy cambiantes, y donde existe un alto riesgo técnico.
¿QUÉ ES PROGRAMACIÓN EXTREMA O XP?
Metodología liviana de desarrollo de software
Conjunto de practicas y reglas empleadas para desarrollar software
Basada en diferentes ideas acerca de cómo enfrentar ambientes muy cambiantes
Originada en el proyecto C3 para Chrysler
En vez de planificar, analizar y diseñar para el futuro distante, hacer todo esto un poco cada vez, a través de
todo el proceso de desarrollo
METODOLIGIA SCRUM
¿Qué es SCRUM?
Scrum es un proceso en el que se aplican de manera regular un conjunto de buenas prácticas para trabajar
colaborativamente, en equipo, y obtener el mejor resultado posible de un proyecto. Estas prácticas se apoyan
unas a otras y su selección tiene origen en un estudio de la manera de trabajar de equipos altamente
productivos.
En Scrum se realizan entregas parciales y regulares del producto final, priorizadas por el beneficio que
aportan al receptor del proyecto. Por ello, Scrum está especialmente indicado para proyectos en entornos
complejos, donde se necesita obtener resultados pronto, donde los requisitos son cambiantes o poco
definidos, donde la innovación, la competitividad, laflexibilidad y la productividad son fundamentales.
Scrum también se utiliza para resolver situaciones en que no se está entregando al cliente lo que necesita,
cuando las entregas se alargan demasiado, los costes se disparan o la calidad no es aceptable, cuando se
necesita capacidad de reacción ante la competencia, cuando la moral de los equipos es baja y la rotación alta,
cuando es necesario identificar y solucionar ineficiencias sistemáticamente o cuando se quiere trabajar
utilizando un proceso especializado en el desarrollo de producto.
Ver en detalle cuales son los beneficios de Scrum, sus fundamentos y sus requisitos.
El proceso
En Scrum un proyecto se ejecuta en bloques temporales cortos y fijos (iteraciones de un mes natural y hasta
de dos semanas, si así se necesita). Cada iteración tiene que proporcionar un resultado completo, un
incremento de producto final que sea susceptible de ser entregado con el mínimo esfuerzo al cliente cuando lo
solicite.
METODOLOGIA KANBAN
Kanban se basa en un sistema de producción que dispara trabajo solo cuando existe capacidad para
procesarlo. El disparador de trabajo es representado por tarjetas kanban de las cuales se dispone de una
cantidad limitada.
Cada tarjeta Kanban acompaña a un item de trabajo durante todo el proceso de producción, hasta que éste,
es empujado fuera del sistema, liberando una tarjeta. Un nuevo ítem de trabajo, solo podrá ser
ingresado/aceptado si se dispone de una tarjeta kanban libre.
Este proceso de producción, donde un trabajo se introduce al sistema solo cuando existe disponibilidad para
procesarlo, se denomina pull (tirar) en contrapartida al mecanismo push (empujar), donde el trabajo se
introduce en función de la demanda.
En el desarrollo de Software, Kanban fue introducido por David Anderson de la Unidad de Negocios XIT de
Microsoft, en 2004, reemplazando el sistemas de tarjetas por un tablero visual similar al de Scrum, pero con
características extendidas que veremos a continuación.
Las tres reglas de Kanban
Con tan solo tres simples reglas, Kanban demuestra ser una de las metodologías adaptativas que menos
resistencia al cambio presenta. Dichas reglas son:
Regla #1: Mostrar el proceso
Consiste en la visualización de todo el proceso de desarrollo, mediante un tablero físico, generalmente,
públicamente asequible. El objetivo de mostrar el proceso, consiste en:
Entender mejor el proceso de trabajo actual;
Conocer los problemas que puedan surgir y tomar decisiones;
Mejorar la comunicación entre todos los interesados/participantes del proyecto;
Hacer los futuros procesos más predecibles.
Regla #2: Limitar el trabajo en curso (WIP)
Los límites del WIP (work in progress – trabajo en curso -) consisten en acordar anticipadamente, la cantidad
de ítems que pueden abordarse por cada proceso (es decir, por columnas del tablero).
El principal objetivo de establecer estos límites, es el de detectar cuellos de botella.
Regla #3: Optimizar el flujo de trabajo
El objetivo una la producción estable, continua y previsible. Midiendo el tiempo que el ciclo completo de
ejecución del proyecto demanda (por ejemplo, cantidad de días desde el inicio del análisis hasta el fin del
deploy – según el ejemplo del tablero anterior), se obtiene el CycleTime.
Al dividir, el CycleTime por el WIP, se obtiene el "rendimiento de trabajo", denominado Throughput, es decir, la
cantidad de ítems que un equipo puede terminar en un determinado período de tiempo.

Más contenido relacionado

La actualidad más candente

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
Diego Orlando Quispe Condori
 
4. Desarrollo ágil de software
4. Desarrollo ágil de software4. Desarrollo ágil de software
4. Desarrollo ágil de software
Coesi Consultoria
 
Metodología xp
Metodología xpMetodología xp
Metodología xpPiskamen
 
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
PrimoLaura
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
gmjuan
 
Proceso Unificado de Desarrollo
Proceso Unificado de DesarrolloProceso Unificado de Desarrollo
Proceso Unificado de DesarrolloFausto J Loja Mora
 
Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema
Lis Pater
 
Metodologias De Desarrollo De Software
Metodologias De Desarrollo De SoftwareMetodologias De Desarrollo De Software
Metodologias De Desarrollo De Software
guesta1695670
 
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
Sam Espinosa
 
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
Marco Aurelio
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativoIngenierosD
 
Las metodologías usadas en el Desarrollo de SW en el Perú
Las metodologías usadas en el Desarrollo de SW en el PerúLas metodologías usadas en el Desarrollo de SW en el Perú
Las metodologías usadas en el Desarrollo de SW en el Perú
Pagina web Peru - F5mas
 
Metodologías tradicionales: Desarrollo de Software
Metodologías tradicionales: Desarrollo de Software Metodologías tradicionales: Desarrollo de Software
Metodologías tradicionales: Desarrollo de Software
Juan C. S. Suárez
 
Ing 162-show.fin
Ing 162-show.finIng 162-show.fin
Ing 162-show.fin
albj1in
 
Unidad 2. metodologías de desarrollo DE SOFTWARE
Unidad 2. metodologías de desarrollo DE SOFTWAREUnidad 2. metodologías de desarrollo DE SOFTWARE
Unidad 2. metodologías de desarrollo DE SOFTWARE
Pablo Daniel Bazan Carmona
 

La actualidad más candente (20)

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
 
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
 
4. Desarrollo ágil de software
4. Desarrollo ágil de software4. Desarrollo ágil de software
4. Desarrollo ágil de software
 
Metodología xp
Metodología xpMetodología xp
Metodología xp
 
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
 
Metodologias todas
Metodologias todasMetodologias todas
Metodologias todas
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Proceso Unificado de Desarrollo
Proceso Unificado de DesarrolloProceso Unificado de Desarrollo
Proceso Unificado de Desarrollo
 
metodos dinamicos
metodos dinamicosmetodos dinamicos
metodos dinamicos
 
Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema Metodologias agiles Programacion Xtrema
Metodologias agiles Programacion Xtrema
 
Metodologias De Desarrollo De Software
Metodologias De Desarrollo De SoftwareMetodologias De Desarrollo De Software
Metodologias De Desarrollo De Software
 
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 DSDM
Metodologia DSDMMetodologia DSDM
Metodologia DSDM
 
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
 
Cuadro comparativo
Cuadro comparativoCuadro comparativo
Cuadro comparativo
 
Las metodologías usadas en el Desarrollo de SW en el Perú
Las metodologías usadas en el Desarrollo de SW en el PerúLas metodologías usadas en el Desarrollo de SW en el Perú
Las metodologías usadas en el Desarrollo de SW en el Perú
 
Monografia metodologia xp
Monografia   metodologia xpMonografia   metodologia xp
Monografia metodologia xp
 
Metodologías tradicionales: Desarrollo de Software
Metodologías tradicionales: Desarrollo de Software Metodologías tradicionales: Desarrollo de Software
Metodologías tradicionales: Desarrollo de Software
 
Ing 162-show.fin
Ing 162-show.finIng 162-show.fin
Ing 162-show.fin
 
Unidad 2. metodologías de desarrollo DE SOFTWARE
Unidad 2. metodologías de desarrollo DE SOFTWAREUnidad 2. metodologías de desarrollo DE SOFTWARE
Unidad 2. metodologías de desarrollo DE SOFTWARE
 

Destacado

Todo lo que hay que saber sobre Lean Six Sigma en 15 minutos.
Todo lo que hay que saber sobre Lean Six Sigma en 15 minutos.Todo lo que hay que saber sobre Lean Six Sigma en 15 minutos.
Todo lo que hay que saber sobre Lean Six Sigma en 15 minutos.
Osenseis
 
Seis sigma presentación
Seis sigma presentaciónSeis sigma presentación
Seis sigma presentación
municipiodealvarado
 
Mpolo pruebas
Mpolo pruebasMpolo pruebas
Mpolo pruebasluisbasbe
 
Seis sigma
Seis sigmaSeis sigma
Six sigma
Six sigmaSix sigma
Desmitificando 6 SIGMA
Desmitificando 6 SIGMA Desmitificando 6 SIGMA
Desmitificando 6 SIGMA
SBS Facilitadores
 
Novedades en BCS en SharePoint 2013
Novedades en BCS en SharePoint 2013Novedades en BCS en SharePoint 2013
Novedades en BCS en SharePoint 2013
Juan Carlos Gonzalez
 
Ejemplo de Metricas 6 sigma
Ejemplo de Metricas 6 sigmaEjemplo de Metricas 6 sigma
Ejemplo de Metricas 6 sigmaCris Tenorio
 
Cálculo del nivel de calidad sigma del proceso
Cálculo del nivel de calidad sigma del procesoCálculo del nivel de calidad sigma del proceso
Cálculo del nivel de calidad sigma del proceso
Cesar Jesus Estrada Escobedo
 
Six sigma, metricas y objetivos
Six sigma, metricas y objetivosSix sigma, metricas y objetivos
Six sigma, metricas y objetivosjoanarceh
 
Anexo 6: Sistemas planificacion y gestion: El Lean, 6 Sigma, Kaizen Teian, Ho...
Anexo 6: Sistemas planificacion y gestion: El Lean, 6 Sigma, Kaizen Teian, Ho...Anexo 6: Sistemas planificacion y gestion: El Lean, 6 Sigma, Kaizen Teian, Ho...
Anexo 6: Sistemas planificacion y gestion: El Lean, 6 Sigma, Kaizen Teian, Ho...Andres Schuschny, Ph.D
 
Plan de Pruebas
Plan de PruebasPlan de Pruebas
Plan de Pruebas
choselin
 
Ejemplo de Aplicación Seis Sigma
Ejemplo de Aplicación Seis SigmaEjemplo de Aplicación Seis Sigma
Ejemplo de Aplicación Seis Sigma
Juan Carlos Fernández
 
Analisis Quimico de AYRES
Analisis Quimico de AYRESAnalisis Quimico de AYRES
Analisis Quimico de AYRES
Kevin López
 
Qué es el Six Sigma ?
Qué es el Six Sigma ?Qué es el Six Sigma ?
Qué es el Six Sigma ?LuisFerToledo
 
Pruebas de sistemas y aceptacion
Pruebas de sistemas y aceptacionPruebas de sistemas y aceptacion
Pruebas de sistemas y aceptacion
Abner Gerardo
 

Destacado (17)

Todo lo que hay que saber sobre Lean Six Sigma en 15 minutos.
Todo lo que hay que saber sobre Lean Six Sigma en 15 minutos.Todo lo que hay que saber sobre Lean Six Sigma en 15 minutos.
Todo lo que hay que saber sobre Lean Six Sigma en 15 minutos.
 
Seis sigma presentación
Seis sigma presentaciónSeis sigma presentación
Seis sigma presentación
 
Mpolo pruebas
Mpolo pruebasMpolo pruebas
Mpolo pruebas
 
Seis sigma
Seis sigmaSeis sigma
Seis sigma
 
Six sigma
Six sigmaSix sigma
Six sigma
 
Desmitificando 6 SIGMA
Desmitificando 6 SIGMA Desmitificando 6 SIGMA
Desmitificando 6 SIGMA
 
Novedades en BCS en SharePoint 2013
Novedades en BCS en SharePoint 2013Novedades en BCS en SharePoint 2013
Novedades en BCS en SharePoint 2013
 
Ejemplo de Metricas 6 sigma
Ejemplo de Metricas 6 sigmaEjemplo de Metricas 6 sigma
Ejemplo de Metricas 6 sigma
 
Cálculo del nivel de calidad sigma del proceso
Cálculo del nivel de calidad sigma del procesoCálculo del nivel de calidad sigma del proceso
Cálculo del nivel de calidad sigma del proceso
 
Six sigma, metricas y objetivos
Six sigma, metricas y objetivosSix sigma, metricas y objetivos
Six sigma, metricas y objetivos
 
Anexo 6: Sistemas planificacion y gestion: El Lean, 6 Sigma, Kaizen Teian, Ho...
Anexo 6: Sistemas planificacion y gestion: El Lean, 6 Sigma, Kaizen Teian, Ho...Anexo 6: Sistemas planificacion y gestion: El Lean, 6 Sigma, Kaizen Teian, Ho...
Anexo 6: Sistemas planificacion y gestion: El Lean, 6 Sigma, Kaizen Teian, Ho...
 
Six Sigma
Six Sigma Six Sigma
Six Sigma
 
Plan de Pruebas
Plan de PruebasPlan de Pruebas
Plan de Pruebas
 
Ejemplo de Aplicación Seis Sigma
Ejemplo de Aplicación Seis SigmaEjemplo de Aplicación Seis Sigma
Ejemplo de Aplicación Seis Sigma
 
Analisis Quimico de AYRES
Analisis Quimico de AYRESAnalisis Quimico de AYRES
Analisis Quimico de AYRES
 
Qué es el Six Sigma ?
Qué es el Six Sigma ?Qué es el Six Sigma ?
Qué es el Six Sigma ?
 
Pruebas de sistemas y aceptacion
Pruebas de sistemas y aceptacionPruebas de sistemas y aceptacion
Pruebas de sistemas y aceptacion
 

Similar a Especial ingenieria de software

Unidad 3 los modelos de procesos de software
Unidad 3 los modelos de procesos de softwareUnidad 3 los modelos de procesos de software
Unidad 3 los modelos de procesos de software
Andhy H Palma
 
Unidad 3 los modelos de procesos de software
Unidad 3 los modelos de procesos de softwareUnidad 3 los modelos de procesos de software
Unidad 3 los modelos de procesos de software
Andhy H Palma
 
Presentacion modelos de proceso Grupo 3
Presentacion modelos de proceso Grupo 3Presentacion modelos de proceso Grupo 3
Presentacion modelos de proceso Grupo 3
Bruno
 
Presentación 162 modelos de proceso de software
Presentación 162 modelos de proceso de softwarePresentación 162 modelos de proceso de software
Presentación 162 modelos de proceso de software
Reset_the_cover
 
Modelos de proceso del software
Modelos de proceso del softwareModelos de proceso del software
Modelos de proceso del software
Diego Llusco
 
Metodologias de analisis y diseño de sistemas
Metodologias de analisis y diseño de sistemasMetodologias de analisis y diseño de sistemas
Metodologias de analisis y diseño de sistemas
grupo7inf162
 
procesos de desarrollo de software
procesos de desarrollo de softwareprocesos de desarrollo de software
procesos de desarrollo de software
joseantonio897
 
Modelos de-procesos-del-software
Modelos de-procesos-del-softwareModelos de-procesos-del-software
Modelos de-procesos-del-software
Grupo_9
 
Modelos de-procesos-del-software
Modelos de-procesos-del-softwareModelos de-procesos-del-software
Modelos de-procesos-del-software
Grupo_9
 
Modelos de-procesos-del-software
Modelos de-procesos-del-softwareModelos de-procesos-del-software
Modelos de-procesos-del-software
Grupo_9
 
Proceso del software (Metodos Agiles)
Proceso del software (Metodos Agiles)Proceso del software (Metodos Agiles)
Proceso del software (Metodos Agiles)
Ares Atzarel Hernández Rodríguez
 
MODELO DE DESARRROLLO DE SOFTWARE
MODELO DE DESARRROLLO DE SOFTWAREMODELO DE DESARRROLLO DE SOFTWARE
MODELO DE DESARRROLLO DE SOFTWARE
Jesus Yepez
 
Proceso del software
Proceso del softwareProceso del software
Proceso del software
Juan Avendaño
 
Metodologia RUP
Metodologia RUPMetodologia RUP
Metodologia RUP
Carlos Vargas
 
Metodologias De Analisis Y Diseño De Sistemas
Metodologias De Analisis Y Diseño De SistemasMetodologias De Analisis Y Diseño De Sistemas
Metodologias De Analisis Y Diseño De Sistemas
grupo7inf162
 
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
BibliotecaenlineaUNI
 
Modelos de Procesos de Software
Modelos de Procesos de SoftwareModelos de Procesos de Software
Modelos de Procesos de Software
sebas montes
 
Metodología de desarrollo de software
Metodología de desarrollo de softwareMetodología de desarrollo de software
Metodología de desarrollo de software
Abner Garcia
 

Similar a Especial ingenieria de software (20)

Luis
LuisLuis
Luis
 
Unidad 3 los modelos de procesos de software
Unidad 3 los modelos de procesos de softwareUnidad 3 los modelos de procesos de software
Unidad 3 los modelos de procesos de software
 
Unidad 3 los modelos de procesos de software
Unidad 3 los modelos de procesos de softwareUnidad 3 los modelos de procesos de software
Unidad 3 los modelos de procesos 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
 
Presentación 162 modelos de proceso de software
Presentación 162 modelos de proceso de softwarePresentación 162 modelos de proceso de software
Presentación 162 modelos de proceso de software
 
Modelos de proceso del software
Modelos de proceso del softwareModelos de proceso del software
Modelos de proceso del software
 
metodologia
metodologia metodologia
metodologia
 
Metodologias de analisis y diseño de sistemas
Metodologias de analisis y diseño de sistemasMetodologias de analisis y diseño de sistemas
Metodologias de analisis y diseño de sistemas
 
procesos de desarrollo de software
procesos de desarrollo de softwareprocesos de desarrollo de software
procesos de desarrollo de software
 
Modelos de-procesos-del-software
Modelos de-procesos-del-softwareModelos de-procesos-del-software
Modelos de-procesos-del-software
 
Modelos de-procesos-del-software
Modelos de-procesos-del-softwareModelos de-procesos-del-software
Modelos de-procesos-del-software
 
Modelos de-procesos-del-software
Modelos de-procesos-del-softwareModelos de-procesos-del-software
Modelos de-procesos-del-software
 
Proceso del software (Metodos Agiles)
Proceso del software (Metodos Agiles)Proceso del software (Metodos Agiles)
Proceso del software (Metodos Agiles)
 
MODELO DE DESARRROLLO DE SOFTWARE
MODELO DE DESARRROLLO DE SOFTWAREMODELO DE DESARRROLLO DE SOFTWARE
MODELO DE DESARRROLLO DE SOFTWARE
 
Proceso del software
Proceso del softwareProceso del software
Proceso del software
 
Metodologia RUP
Metodologia RUPMetodologia RUP
Metodologia RUP
 
Metodologias De Analisis Y Diseño De Sistemas
Metodologias De Analisis Y Diseño De SistemasMetodologias De Analisis Y Diseño De Sistemas
Metodologias De Analisis Y Diseño De Sistemas
 
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
 
Modelos de Procesos de Software
Modelos de Procesos de SoftwareModelos de Procesos de Software
Modelos de Procesos 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
 

Especial ingenieria de software

  • 1. MODELO EN ESPIRAL Este modelo, propuesto por Bohem en 1988 [BOE88], es un modelo de proceso de software evolutivo que acompaña la naturaleza evolutiva de con los aspectos controlados y sistemáticos del ciclo de vida tradicional. Proporciona el potencial para el desarrollo rápido de versiones incrementales del software. En este modelo, el sistema se desarrolla en una serie de versiones incrementales. Durante las primeras iteraciones, la versión incremental podría ser un modelo en papel o un prototipo. Durante las últimas iteraciones se producen versiones cada vez más completas de ingeniería del sistema. . El Modelo en Espiral se divide en un número de actividades estructurales, también llamadas "regiones de tareas". Generalmente existen entre tres y seis regiones de tareas: Comunicación con el cliente.- Las tareas requeridas para establecer comunicación entre el desarrollador y el cliente, sea revisar especificaciones, plantear necesidades, etc. Planificación.- Las tareas requeridas para definir recursos, tiempos e información relacionada con el proyecto. Análisis de riesgos.- Las tareas requeridas para evaluar riesgos técnicos y de gestión. Ingeniería.- Las tareas requeridas para construir una o más representaciones de la aplicación Construcción y adaptación.- Las tareas requeridas para construir, probar, instalar y proporcionar soporte al usuario. Evaluación del cliente.- Las tareas requeridas para obtener la reacción del cliente, según la evaluación de las representaciones del software creadas durante la etapa de ingeniería e implementada durante la etapa de instalación
  • 2. MODELO EN CASCADA También conocido como modelo clásico, modelo tradicional o modelo lineal secuencial. Él método de la cascada es considerado como el enfoque clásico para el ciclo de vida del desarrollo de sistemas, se puede decir que es un método puro que implica un desarrollo rígido. está es una secuencia de actividades(o etapas) que consisten en el análisis de requerimientos, él diseño ,la implementación, la integración y las pruebas . El análisis de requerimientos: consiste en reunir las necesidades del producto y casi siempre su salida es texto. El diseño: describe la estructura interna del producto y suele representarse con diagramas y texto. La implementación: significa programación. Producto de esta etapa es el código en cualquier nivel, incluido el producido por sistemas de generación automática. La integración: es el proceso de integración es el proceso de ensamblar las partes para completar el producto.
  • 3. MODELO DE PROTOTIPO El modelo de prototipos permite que todo el sistema, o algunos de sus partes, se construyan rápidamente para comprender con facilidad y aclarar ciertos aspectos en los que se aseguren que el desarrollador, el usuario, el cliente estén de acuerdo en lo que se necesita así como también la solución que se propone para dicha necesidad y de esta forma minimizar el riesgo y la incertidumbre en el desarrollo, este modelo se encarga del desarrollo de diseños para que estos sean analizados y prescindir de ellos a medida que se adhieran nuevas especificaciones, es ideal para medir el alcance del producto, pero no se asegura su uso real.
  • 4. Metodologías Tradicionales Metodologías Ágiles - Rigidez ante los cambios, de manera lentos o moderada - Los clientes interactúan con el equipo de desarrollo mediante reuniones - Grupos de gran tamaño y varias veces distribuidos en diferentes sitios - Dependencia de la arquitectura de software mediante modelos - Poco Feedback lo que extiende el tiempo de entrega - Mínimos roles - Basadas en normas de estándares de desarrollo - Procesos muy controlados por políticas y normas - Seguimiento estricto del plan inicial de desarrollo - Flexibilidad ante los cambios del proyecto de forma moderada a rápida - Los clientes hacen parte del equipo de desarrollo - Grupos pequeños (promedio 10 participantes in situ) en el mismo lugar. - Menor dependencia de la arquitectura de software - Continuo Feedback acortando el tiempo de entrega - Diversidad de roles - Basadas en heurísticas a partir de prácticas de producción de código - Procesos menos controlados, pocas políticas y normas - Capacidad de respuesta ante los cambios
  • 5. METOLOGIAS AGILES XP HISTORIA La programación extrema o eXtreme Programming (XP) es un enfoque de la ingeniería de software formulado por Kent Beck, autor del primer libro sobre la materia, Extreme Programming Explained: Embrace Change (1999). Es el más destacado de los procesos ágiles de desarrollo de software. Al igual que éstos, la programación extrema se diferencia de las metodologías tradicionales principalmente en que pone más énfasis en la adaptabilidad que en la previsibilidad. Los defensores de XP consideran que los cambios de requisitos sobre la marcha son un aspecto natural, inevitable e incluso deseable del desarrollo de proyectos. Creen que ser capaz de adaptarse a los cambios de requisitos en cualquier punto de la vida del proyecto es una aproximación mejor y más realista que intentar definir todos los requisitos al comienzo del proyecto e invertir esfuerzos después en controlar los cambios en los requisitos. Es una metodología ágil centrada en potenciar las relaciones interpersonales como clave para el éxito en desarrollo de software, promoviendo el trabajo en equipo, preocupándose por el aprendizaje de los desarrolladores, y propiciando un buen clima de trabajo. XP se basa en realimentación continua entre el cliente y el equipo de desarrollo, comunicación fluida entre todos los participantes, simplicidad en las soluciones implementadas y coraje para enfrentar los cambios. XP se define como especialmente adecuada para proyectos con requisitos imprecisos y muy cambiantes, y donde existe un alto riesgo técnico. ¿QUÉ ES PROGRAMACIÓN EXTREMA O XP? Metodología liviana de desarrollo de software Conjunto de practicas y reglas empleadas para desarrollar software Basada en diferentes ideas acerca de cómo enfrentar ambientes muy cambiantes Originada en el proyecto C3 para Chrysler En vez de planificar, analizar y diseñar para el futuro distante, hacer todo esto un poco cada vez, a través de todo el proceso de desarrollo
  • 6. METODOLIGIA SCRUM ¿Qué es SCRUM? Scrum es un proceso en el que se aplican de manera regular un conjunto de buenas prácticas para trabajar colaborativamente, en equipo, y obtener el mejor resultado posible de un proyecto. Estas prácticas se apoyan unas a otras y su selección tiene origen en un estudio de la manera de trabajar de equipos altamente productivos. En Scrum se realizan entregas parciales y regulares del producto final, priorizadas por el beneficio que aportan al receptor del proyecto. Por ello, Scrum está especialmente indicado para proyectos en entornos complejos, donde se necesita obtener resultados pronto, donde los requisitos son cambiantes o poco definidos, donde la innovación, la competitividad, laflexibilidad y la productividad son fundamentales. Scrum también se utiliza para resolver situaciones en que no se está entregando al cliente lo que necesita, cuando las entregas se alargan demasiado, los costes se disparan o la calidad no es aceptable, cuando se necesita capacidad de reacción ante la competencia, cuando la moral de los equipos es baja y la rotación alta, cuando es necesario identificar y solucionar ineficiencias sistemáticamente o cuando se quiere trabajar utilizando un proceso especializado en el desarrollo de producto. Ver en detalle cuales son los beneficios de Scrum, sus fundamentos y sus requisitos. El proceso En Scrum un proyecto se ejecuta en bloques temporales cortos y fijos (iteraciones de un mes natural y hasta de dos semanas, si así se necesita). Cada iteración tiene que proporcionar un resultado completo, un incremento de producto final que sea susceptible de ser entregado con el mínimo esfuerzo al cliente cuando lo solicite.
  • 7. METODOLOGIA KANBAN Kanban se basa en un sistema de producción que dispara trabajo solo cuando existe capacidad para procesarlo. El disparador de trabajo es representado por tarjetas kanban de las cuales se dispone de una cantidad limitada. Cada tarjeta Kanban acompaña a un item de trabajo durante todo el proceso de producción, hasta que éste, es empujado fuera del sistema, liberando una tarjeta. Un nuevo ítem de trabajo, solo podrá ser ingresado/aceptado si se dispone de una tarjeta kanban libre. Este proceso de producción, donde un trabajo se introduce al sistema solo cuando existe disponibilidad para procesarlo, se denomina pull (tirar) en contrapartida al mecanismo push (empujar), donde el trabajo se introduce en función de la demanda. En el desarrollo de Software, Kanban fue introducido por David Anderson de la Unidad de Negocios XIT de Microsoft, en 2004, reemplazando el sistemas de tarjetas por un tablero visual similar al de Scrum, pero con características extendidas que veremos a continuación. Las tres reglas de Kanban Con tan solo tres simples reglas, Kanban demuestra ser una de las metodologías adaptativas que menos resistencia al cambio presenta. Dichas reglas son: Regla #1: Mostrar el proceso Consiste en la visualización de todo el proceso de desarrollo, mediante un tablero físico, generalmente, públicamente asequible. El objetivo de mostrar el proceso, consiste en: Entender mejor el proceso de trabajo actual; Conocer los problemas que puedan surgir y tomar decisiones; Mejorar la comunicación entre todos los interesados/participantes del proyecto; Hacer los futuros procesos más predecibles. Regla #2: Limitar el trabajo en curso (WIP) Los límites del WIP (work in progress – trabajo en curso -) consisten en acordar anticipadamente, la cantidad de ítems que pueden abordarse por cada proceso (es decir, por columnas del tablero). El principal objetivo de establecer estos límites, es el de detectar cuellos de botella. Regla #3: Optimizar el flujo de trabajo El objetivo una la producción estable, continua y previsible. Midiendo el tiempo que el ciclo completo de ejecución del proyecto demanda (por ejemplo, cantidad de días desde el inicio del análisis hasta el fin del deploy – según el ejemplo del tablero anterior), se obtiene el CycleTime. Al dividir, el CycleTime por el WIP, se obtiene el "rendimiento de trabajo", denominado Throughput, es decir, la cantidad de ítems que un equipo puede terminar en un determinado período de tiempo.