2 GESTION DE PROYECTOS INFORMATICOS Facultad de Ingeniería Universidad Nacional de Jujuy Analista Programador Universitario Ciclo 2012 A.P.U. Jorge R. Mendoza
2 METODOLOGÍAS Y CICLOS DE VIDA
3 Metodologías
Metodologías: Definición 4 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.
Metodologías 5 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
6 Metodologias: Aplicación a la Ingeniería de Software Sin metodología Con metodología
Metodologías: Elementos 7 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. EJEMPLOS: RUP XP - SCRUM, ETC. * PRESENTAN PROCEDIMIENTOS METODOLOGICOS ADAPTATIVOS A LAS DIFERENTES ORGANIZACIONES MEDIANTE PRINCIPIOS, TECNICAS, ARTEFACTOS Y METODOS. * UNA METODOLOGIA FORMAL ES LA METRICA VERSION 3 (ESPAÑOLA) Criterios de evaluación. Del proceso y producto. Saber si se han logrado los objetivos.
8 Ciclos de Vida Cascada Cascada Mejorado Iterativo Incremental Prototipado
Ciclos de Vida: Definición 9 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 ).
Ciclo de vida: funciones 10 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.
Ciclo de vida: Situación Real 11
Modelo ciclo de vida en cascada 12
Modelo ciclo de vida en cascada 13 Características: 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.
Modelo ciclo de vida en cascada mejorado 14
Iterativo 15
Iterativo 16 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.
Incremental 17
Incremental 18 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.
Modelo ciclo de vida prototipado 19
Modelo ciclo de vida prototipado 20
Modelo ciclo de vida prototipado 21 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 El prototipo no presenta calidad ni robustez Una vez identificados todos los requisitos mediante el prototipo, se construye el producto de ingeniería.
Modelo ciclo de vida prototipado 22 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 Énfasis 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
Modelo ciclo de vida prototipado 23 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.