Está en la página 1de 16

METODOLOGIAS DE DESARROLLO DE SOFTWARE

Lic. Pedro Marecos Universidad Nacional de Pilar Facultad de Ciencias Aplicadas Pilar - 2010

METODOLOGIAS DE DESARROLLO DE SOFTWARE

METODOLOGIAS DE DESARROLLO DE SOFTWARE


Modelo en Cascada Modelo Basado en Prototipos Modelo Incremental o Evolutivo Modelo Espiral Modelo OO Modelo Cascada con Sub - Proyectos Modelo Entrega por Etapas

Procesos de Software

Actividades de un proceso genrico

ANALISIS

DISEO

CODIGO

PRUEBAS

PRODUCTO

Modelo en Cascada
Planeacin Estratgica Estudio de Factibilidad Anlisis de Requerimientos Especificacin formal de requerimientos

Diseo Global Especificacin Formal del Diseo Programacin Libreras y herramientas Programacin aplicacin Pruebas de integracin Entrenamiento Operacin y Mantenimiento PRODUCTO

Modelo en Cascada

Modelo Basado en Prototipos

Obtencin de requisitos

GRUPO USUARIO / DISEADOR

Diseo Global

Construccin Prototipo

Desarrollo Prototipo

GRUPO SISTEMA / CONSTRUCTOR

Refinamiento Prototipo

Sistema Terminado

Modelo Incremental - Evolutivo

Versin #1

ANALISIS

DISEO

CODIGO

PRUEBAS

PRODUCTO

Versin #2

ANALISIS

DISEO

CODIGO

PRUEBAS

PRODUCTO NUEVAS FUNCIONALI DADES

Modelo Espiral

Planificacin Proyecto Comunicacin con Cliente

Anlisis de Riesgos

Evaluacin del Cliente

Toma de Decisin

Construccin y Adaptacin

Tiempo -Madurez del Desarrollo

Modelo Espiral

Modelo OO

Diagrama de Clases Diagramas de Objetos Diagramas de Mdulos Diagramas de Procesos

Modelo Cascada con Sub Proyectos


Definicin del Problema Anlisis Requerimientos Diseo Global

Diseo Detallado Codificacin y Depuracin Definicin del Problema Pruebas Subproyecto

Diseo Detallado Codificacin y Depuracin Definicin del Problema Pruebas Subproyecto

Prueba Integral

Producto Final

Modelo Entrega por Etapas


Definicin del problema Anlisis de Requerimientos Diseo Global Etapa I Diseo Detallado Codificacin Depuracin Prueba Entrega

Etapa II Diseo Detallado Codificacin Depuracin Prueba Entrega

Etapa I Diseo Detallado Codificacin Depuracin Prueba Entrega

Etapa N

Comparativo
MODELO ENFOQUE VENTAJAS /DESVENTAJAS APLICABILIDAD El inicio de cada etapa debe esperar a la finalizacin de la inmediatamente anterior MODELO EN CASCADA Cualquier error de diseo detectado en la etapa de prueba conduce necesariamente al rediseo y nueva programacin del cdigo afectado, aumentando los costes del desarrollo. Los proyectos raras veces siguen una evolucin secuencial. No todos los requisitos son expuestos, al principio, de forma explcita como requiere este modelo. El cliente debe tener paciencia, ya que la aplicacin slo estar disponible en un estado muy avanzado del proyecto. Ampliamente criticado desde el mbito acadmico y la industria

Utilizado cuando existen especificaciones amplias de los requerimientos del cliente.

El cliente puede pensar que el prototipo es una versin acabada.

MODELO BASADO EN PROTOTIPOS

Prototipos: No posee la funcionalidad total del sistema pero si condensa la idea principal del mismo, Paso a Paso crece su funcionalidad, alto grado de participacin del usuario.

Pueden llegar a pasarse por alto la calidad del software global o el mantenimiento a largo plazo.
Las herramientas elegidas pueden ser inadecuadas. La clave del xito de este modelo consiste en definir bien, desde el principio, las reglas del juego. Alto grado de participacin del usuario

Se utiliza si en el mercado no se encuentra el producto pero el cliente desea resultados inmediatos. Conveniente en caso de ser necesario desarrollar mdulos Para sistemas interactivos pequeos o de tamao pequeo. 1. Para partes de sistemas grandes 2. Para sistemas con vida corta.

Comparativo
MODELO ENFOQUE Modelo Lineal-Secuencial con el Modelo Basado en Prototipos El sistema no se entrega de una vez, sino que se divide y se entregan incrementos. Con cada incremento se entrega la parte de la funcionalidad que se ha establecido. Los requisitos son priorizados. Los requisitos con una ms alta prioridad se incluyen en los incrementos ms tempranos. Los requisitos de un incremento son inamovibles. Sin embargo estos puede verse modificados en incrementos posteriores. VENTAJAS /DESVENTAJAS Los clientes no tienen que esperar hasta tener el sistema completo. El primer incremento satisface los requisitos ms crticos. Los primeros incrementos sirven como prototipo y ayudan en la tarea de detectar los posteriores requisitos. 1. Existe un riesgo bajo de fallar en el proyecto total. Los servicios del sistema con la prioridad ms alta tienden a ser los ms probados. Puede ser difcil ajustar los requisitos a los incrementos. APLICABILIDAD Reemplazar el antiguo desarrollo con uno nuevo que satisfaga las nuevas necesidades segn las redefiniciones del problema Manejo de Versiones

MODELO INCREMENTAL O EVOLUTIVO

Este proceso se repite hasta la obtencin de un producto completo.


Sin embargo el modelo incremental se centra en la entrega de un producto operativo en cada incremento. Es una mejora del Modelo Basado en prototipos Cada vuelta en la espiral representa una fase del proceso. No hay fases fijas, cada vuelta en la espiral determina las actividades a realizar. La dimensin radial representa el coste acumulado en la financiacin de las fases. La dimensin angular representa el progreso hecho en completar cada ciclo de la espiral. Un ciclo a travs de la espiral es simular un paso a travs de un modelo en cascada

MODELO ESPIRAL

Requiere comunicacin permanente con el cliente por lo tanto si se cambia el contacto con le cual se realiza desarrollo es necesario que est al tanto de lo realizado y lo pendiente, cliente debe ser gran conocedor del sistema.

Utilizado para el desarrollo de aplicaciones complejas y/o especficas. (Ej. Investigacin Gentica)

Comparativo
MODELO ENFOQUE VENTAJAS /DESVENTAJAS APLICABILIDAD MODELO BASADO EN COMPONENTES (ORIENTADO A OBJETOS) Es programacin orientada a Objetos. Se utilizan objetos, clases y se reutilizan en diferentes partes del sistema. Optimiza los tiempos de respuesta a los requerimientos del cliente y facilita la labor del programador pues hay un alto aprovechamiento del cdigo. Facilita mantenimiento del software. Desarrollo Rpido No requiere planeacin y se trata de codificar y corregir. Se trabaja mediante prueba y error. Especial para desarrollos rpidos y sencillos No garantiza calidad

Sistemas robustos y de alta proyeccin.

CODE AND FIX

Desarrollo muy pequeos con claridad de objetivos, requerimientos pequeos o de mantenimientos con bajo impacto.

CASCADA CON SUBPROYECTOS

Requiere planeacin.

Plantea Organizacin y planeacin de un gran proyecto Se pueden realizar varias partes del proyecto al mismo tiempo por diferentes desarrolladores

Adecuada para el desarrollo de proyectos complejos que estiman de 1 a 3 aos de desarrollo.

ENTREGA POR ETAPAS

Cascada con entregas grandes en diferentes etapas del desarrollo. Cascada con Evolutivo.

Debe entregarse una etapa para continuar con la siguiente

Desarrollos robustos. Desarrollo depende del presupuesto directamente Ej. Ppto adjudicado anual/..