Slideshare.net (beta)

 
Post to TwitterPost to Twitter
Post: 
Myspace Hi5 Friendster Xanga LiveJournal Facebook Blogger Tagged Typepad Freewebs BlackPlanet gigya icons

All comments

Add a comment on Slide 1

If you have a SlideShare account, login to comment; else you can comment as a guest


Showing 1-50 of 1 (more)

MetodologíAs Y Ciclos De Vida

From vdaniel20, 3 months ago

517 views  |  0 comments  |  0 favorites  |  17 downloads
 

Categories

Add Category
 
 

Tags

 

 
 

Groups / Events

 
Embed
options

More Info

This slideshow is Public
Total Views: 517
on Slideshare: 517
from embeds: 0

Slideshow transcript

Slide 1: Ingeniería de Software Metodologías y Ciclos de Viva

Slide 2: Metodologias: Definición • El conjunto de métodos que se utilizan en una determinada actividad con el fin de formalizarla y optimizarla. • Determina los pasos a seguir y cómo realizarlos para finalizar una tarea.

Slide 3: Metodologias: Aplicación a la Ingeniería de Software • Optimiza el proceso y el producto software. • Métodos que guían en la planificación y en el desarrollo del software. • Define qué hacer, cómo y cuándo durante todo el desarrollo y mantenimiento de un proyecto

Slide 4: Metodologias: Aplicación a la Ingeniería de Software Sin metodología Con metodología

Slide 5: Metodologías: Elementos Define una estrategia global para enfrentarse con el proyecto: Fases. Tareas a realizar en cada fase. Productos (final e intermedios). E/S de cada fase, documentos. Procedimientos y herramientas. Apoyo a la realización de cada tarea. Criterios de evaluación. Del proceso y producto. Saber si se han logrado los objetivos.

Slide 6: Metodologías: Ventajas • Desde el punto de vista de gestión: – Facilitar la tarea de planificación. – Facilitar la tarea de control y seguimiento de un proyecto. – Mejorar la relación coste/beneficio. – Optimizar el uso de recursos disponibles. – Facilitar la evaluación de resultados y cumplimiento de los objetivos. – Facilitar la comunicación efectiva entre usuarios y desarrolladores.

Slide 7: Metodología: Ventajas Desde el punto de vista de los ingenieros del software: – Ayudar a la comprensión del problema. – Optimizar el conjunto y cada una de las fases del proceso de desarrollo. – Facilitar el mantenimiento del producto final. – Permitir la reutilización de partes del producto.

Slide 8: Metodología: Ventajas Desde el punto de vista del cliente o usuario final: – Garantía de un determinado nivel de calidad en el producto final. – Confianza en los plazos de tiempo fijados en la definición del proyecto. – Definir el ciclo de vida que más se adecue a las condiciones y características del desarrollo.

Slide 9: Metodología: Ventajas – Determinar las fases dentro del ciclo de vida especificando su orden de ejecución. – Definir los resultados intermedios y finales. – Proporcionar un conjunto de métodos, herramientas y técnicas para facilitar la tarea del ingeniero del software y aumentar suproductividad.

Slide 10: Ciclos de Vida: Definición • Conjunto de fases por las que pasa el sistema que se está desarrollando desde que nace la idea inicial hasta que el software es retirado o reemplazado (“muere”). • Se denomina a veces “paradigma”. – Dos puntos de vista – Transformación del producto. – Proceso que transforma el producto.

Slide 11: Ciclo de vida: funciones Un ciclo de vida debe: – Determinar el orden de las fases del proceso software. – Establecer los criterios de transición para pasar de una fase ala siguiente. – Definir las entradas y salidas de cada fase.

Slide 12: Ciclo de vida: funciones • Describir los estados por los que pasa el producto. • Describir las actividades a realizar para transformar el producto. • Definir un esquema que sirve como base para: – Planificar. – Organizar. – Coordinar. – Desarrollar. – ...

Slide 13: Ciclo de vida: Situación Real

Slide 14: Modelo ciclo de vida en cascada

Slide 15: Modelo ciclo de vida en cascada Características: • Es el más utilizado. • Es una visión del proceso de desarrollo de software como una sucesión de etapas que producen productos intermedios. • Para que el proyecto tenga éxito deben desarrollarse todas las fases. • Las fases continúan hasta que los objetivos se han cumplido. • Si se cambia el orden de las fases, el producto final será de inferior calidad,

Slide 16: Modelo ciclo de vida en cascada CRITICAS: • No refleja realmente el proceso de desarrollo del software • Se tarda mucho tiempo en pasar por todo el ciclo • Perpetua el fracaso de la industria del software en su comunicación con el usuario final • El mantenimiento se realiza en el código fuente • Las revisiones de proyectos de gran complejidad son muy difíciles • Impone una estructura de gestión de proyectos

Slide 17: Modelo ciclo de vida en cascada Limitaciones: • No se permiten las iteraciones. • Los requisitos se congelan al principio del proyecto. • No existe un proyecto “enseñable” hasta el final del proyecto.

Slide 18: Modelo ciclo de vida en cascada

Slide 19: Modelo de ciclo de vida en espiral

Slide 20: Modelo de ciclo de vida en espiral

Slide 21: Modelo de ciclo de vida en espiral • Trata de mejorar los ciclos de vida clásicos y prototipos. • Permite acomodar otros modelos • Incorpora objetivos de calidad y gestión de riesgos • Elimina errores y alternativas no atractivas al comienzo • Permite iteraciones, vuelta atrás y finalizaciones rápidas • Cada ciclo empieza identificando: – Los objetivos de la porción correspondiente – Las alternativas – Restricciones • Cada ciclo se completa con una revisión que incluye todo el ciclo anterior y el plan para el siguiente

Slide 22: Modelo de ciclo de vida en espiral • Se usa en proyectos en los que se prevén riesgos. • Representa un enfoque dirigido por el riesgo para el análisis y estructuración del proceso software. • Ventajas: – Utiliza las fases de modelos tradicionales. Se centra en la eliminación de errores y alternativas poco atractivas. – Su orientación a detectar y prevenir el riesgo evita muchas dificultades. • Desventajas: – Complicado: Consume muchos recursos. – Las etapas y sus E/S no están claramente definidas.

Slide 23: Modelos de refinamiento sucesivo por pasos o por mejora iterativa

Slide 24: Iterativo

Slide 25: Iterativo

Slide 26: Iterativo • Es una repetición de varios ciclos de vida en cascada. • Al final de cada ciclo se entrega una versión completa del software mejorada respecto a la anterior. • Los ciclos se repiten hasta obtener un producto satisfactorio. • Los usuarios deben evaluar el producto en cada iteración y proponer mejoras. • Se suele aplicar en desarrollos en los que los requisitos no están claros, las primeras versiones pueden ser prototipos que se desechan posteriormente.

Slide 27: Incremental

Slide 28: Incremental • Es una repetición de varios ciclos de vida en cascada. • Al final de cada ciclo se entrega una versión parcial del software incrementada con cierta funcionalidad nueva respecto a las entregas anteriores. • Los ciclos se repiten hasta obtener un producto completo. • Los usuarios disponen antes del software, aunque no sea completo, por lo que pueden sugerir mejoras. • Se suele aplicar a desarrollos de gran tamaño.

Slide 29: Incremental • Se evitan proyectos largos y se entrega “Algo de valor” a los usuarios con cierta frecuencia • El usuario se involucra más • Difícil de evaluar el coste total • Requiere gestores experimentados • Los errores en los requisitos se detectan tarde. • El resultado es ser muy positivo

Slide 30: Modelo ciclo de vida prototipado

Slide 31: Modelo ciclo de vida prototipado

Slide 32: Modelo ciclo de vida prototipado • No modifica el flujo del ciclo de vida • Reduce el riesgo de construir productos que no satisfagan las necesidades de los usuarios • Reduce costos y aumenta la probabilidad de éxito • Exige disponer de las herramientas adecuadas • No presenta calidad ni robustez • Una vez identificados todos los requisitos mediante el prototipo, se construye el producto de ingeniería.

Slide 33: Modelo ciclo de vida prototipado EL PROTOTIPADO PARA QUE SEA EFECTIVO: • Debe ser un sistema con el que se pueda experimentar • Debe ser comparativamente barato (< 10%) • Debe desarrollarse rápidamente • Enfasis en la interfaz de usuario • Equipo de desarrollo reducido • Herramientas y lenguajes adecuados • “El prototipado es un medio excelente para recoger el ‘feedback’ (realimentación) del usuario final”

Slide 34: Modelo ciclo de vida prototipado PELIGROS DEL PROTOTIPO • 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 aun no ha sido construido. • El desarrollador puede caer en la tentación de ampliar el prototipo para construir el sistema final sin tener en cuenta los compromisos de calidad y de mantenimiento que tiene con el cliente.