Title: Presentaci
12.- Metodologías de desarrollo software Justo N.
Hidalgo Sanz DEPARTAMENTO DE INGENIERÍA
INFORMÁTICA
2Contenidos
- Definición
- Un hecho
- Ventajas de la metodología
- Ciclo de vida
- Funciones básicas de una metodología
- Ciclos de vida clásicos
- Ciclo de vida en cascada
- Ciclo de vida en cascada con refinamiento por
mejoras - Prototipado y maquetaje
- Ciclo de vida en espiral
- Procesos clásicos
- IEEE
- Métrica v3
- Proceso Unificado
3Definición
- Conjunto de métodos que se utilizan para
desarrollar una actividad con el objetivo de
formalizarla y optimizarla. - En ISW optimización del proceso y producto SW.
- Elementos de una metodología
- Fases jerarquización ordenada del desarrollo
completo. - Productos -intermedios y final-.
- Procedimientos y herramientas.
- Criterios de evaluación.
4Un hecho
- La mayor parte de los proyectos SW FRACASAN
- Mala evaluación de objetivos.
- Mala planificación de recursos/tiempos/costes.
- Participación insuficiente de la dirección.
- Falta de acuerdos entre objetivos y
planificación. - Rotación del personal clave.
- Cambio de objetivos sin revisar la planificación.
- Propósito no claro por/para los usuarios.
- Falta de hitos y metas.
- Poca comprensión del problema.
- Poca calidad del producto.
- Mala planificación A PROPÓSITO.
5Ventajas de la metodología (I)
- Desde el punto de vista de gestión
- Facilita la planificación
- Facilita el control y seguimiento de los
proyectos - Mejora del ratio coste/beneficio
- Optimiza la gestión de recursos
- Facilita la comunicación entre los participantes
- Facilita la evaluación de los proyectos
6Ventajas de la metodología (II)
- Desde el punto de vista de los Ingenieros en el
desarrollo - Comprensión del problema
- Optimización del proceso, y dentro del proceso
las fases a seguir - Facilidad de mantenimiento
- Algunos criterios sobre reusabilidad
7Ventajas de la metodología (y III)
- Desde el punto de vista del cliente/usuario final
- Garantiza en la medida de lo posible la calidad
del producto - Mayor confianza
8Ciclo de vida
- o PARADIGMA conjunto de fases por las que pasa
el sistema que se está desarrollando desde que
nace la idea hasta que el SW se retira o se
reemplaza.
9Funciones básicas de una metodología
- Definición del ciclo de vida
- Que se adecúe a las condiciones y características
del desarrollo. - Determinación de las fases dentro del ciclo de
vida. - Definición de resultados intermedios y finales.
- Conjunto de métodos, herramientas y técnicas para
facilitar la tarea del IS y aumentar su
productividad.
10Ciclos de vida clásicos (I)
- Ciclo de vida en cascada
- Características
- Visión del proceso de desarrollo como una
sucesión de etapas que producen productos
intermedios. - Deben desarrollarse todas las fases.
- Limitaciones
- No se permiten iteraciones.
- Los requisitos SE CONGELAN AL PRINCIPIO DEL
PROYECTO. - No existe un producto enseñable hasta el final
del proyecto.
11Ciclos de vida clásicos (II)
12Ciclos de vida clásicos (III)
- Ciclo de vida en cascada con refinamiento por
mejoras - Añade la capacidad de retorno de cada fase a la
fase anterior. - Después se permitió pasar a cualquier fase.
13Ciclos de vida clásicos (IV)
14Ciclos de vida clásicos (V)
- Prototipado y maquetaje
- Para evitar la tercera limitación del ciclo de
vida en cascada se crean los siguientes modelos
de desarrollo de productos SW - Desarrollo basado en prototipo
- Valida la solución informática.
- Es ya parte del sistema.
- Da una visión de la dificultad del proyecto
final. - Desarrollo basado en maqueta
- No valida la solución informática.
- Se usa si no se conoce bien el nivel de
dificultad. - Interfaz de usuario y módulo de comunicaciones.
15Ciclos de vida clásicos (VI)
- Ciclo de vida en espiral
- Utilizado cuando existen muchos riesgos y hay que
buscar alternativas. - Desventajas
- Muy complicado.
- Consume muchos recursos.
- Las fases no están claramente definidas.
16Ciclos de vida clásicos (y VII)
17Procesos Clásicos
- Introducimos ahora brevemente un conjunto de
procesos que se han utilizado y se utilizan a lo
largo de la historia de la ingeniería de
software - Proceso IEEE 12207.
- Proceso Métrica v3.
- Proceso Unificado.
18Procesos Clásicos IEEE (I)
- Sobre él se define el ciclo de vida y su
funcionamiento, no sólo del desarrollo sino de
gestión, desarrollo integral, etc - Procesos de Gestión del Proyecto
- Creación de la estructura del proyecto
- Iniciación del proyecto
- Estimación y planificación
- Selección de estándares, metodología,
herramientas, - Planes de gestión objetivos de cada fase.
- Seguimiento y control de proyecto
- Análisis de riesgos -comparación con los
previstos-. - Gestión y coordinación del proyecto.
- Gestión de la calidad del SW
- Definición y control de métricas.
- Plan de validación y verificación.
- Plan de gestión de configuraciones del producto
SW.
19Procesos Clásicos IEEE (II)
- Procesos Orientados al desarrollo del SW
- Predesarrollo
- Exploración de conceptos análisis de viabilidad.
- Asignación del sistema
- Identificación de las funciones HW, SW e
interfaces. - Definición global de requisitos
- Entradas y salidas del sistema.
- Relación con otros elementos del entorno.
- Personas que van a participar en el proyecto.
- Arquitectura general del sistema.
- Flujo de datos del sistema.
- Criterios de evaluación.
20Procesos Clásicos IEEE (III)
- Procesos de desarrollo
- Análisis de requisitos.
- Diseño.
- Implementación
- Procesos de post-desarrollo
- Instalación/entrega.
- Operación y soporte
- Asistencia técnica.
- Consultas.
- Operación del SW.
- Mantenimiento
- Actividades perfectivas/evolutivas mejoras.
- Actividades adaptativas modificaciones.
- Actividades correctivas correcciones de fallos.
- Actividades preventivas mediante mantenimiento
continuo. - Retiro
- Finalización de operaciones y retiro del sistema.
21Procesos Clásicos IEEE (y IV)
- Procesos Integrales del Proyecto
- Pruebas
- Verificación, validación y evaluación.
- Gestión de configuraciones
- Identificación de los elementos de un proyecto.
- Control de la evolución de los elementos.
- Generación de informe de estados de la
configuración. - Documentación
- Planificación de documentación.
- Realización de la documentación.
- Distribución y mantenimiento -a veces
internamente-. - Formación
- Planificación del programa de formación.
- Desarrollo de los materiales necesarios.
- Ejecución del programa.
22Procesos Clásicos Métrica v3 (I)
- http//www.map.es/csi/metrica3
- Forma común de trabajo en el seno de las
organizaciones. - Reducción de plazos y costes.
- Aumento de la calidad y productividad.
- Mayor satisfacción.
23Procesos Clásicos Métrica v3 (II)
- Procesos Principales
- Planificación (PSI)
- Desarrollo
- Estudio de viabilidad (EVS)
- Análisis (ASI)
- Diseño (DSI)
- Construcción (CSI)
- Implantación y aceptación (IAS)
- Mantenimiento (MSI)
24Procesos Clásicos Métrica v3 (III)
25Procesos Clásicos Métrica v3 (IV)
26Procesos Clásicos Métrica v3 (V)
27Procesos Clásicos Métrica v3 (VI)
28Procesos Clásicos Métrica v3 (VII)
29Procesos Clásicos Métrica v3 (VIII)
30Procesos Clásicos Métrica v3 (IX)
31Procesos Clásicos Métrica v3 (y X)
32Procesos Clásicos PU (I)
- Contaremos poco del PU ahora, pues lo
estudiaremos en detalle posteriormente. - El proceso unificado proviene de otros exitosos
procesos anteriores creados por - James Rumbaugh OMT (Object Modeling Technique)
- Grady Booch Chief Scientist.
- Ivar Jacobson
- Concepto de Building Blocks.
- Diagramas de secuencia.
- SDL.
- Casos de uso.
- Objectory Process.
33Procesos Clásicos PU (y II)
- Proviene de
- Objectory
- OMT
- Rational Approach
34Otros procesos
- Método Shlaer/Mellor
- www.projtech.com
- Particionamiento del sistema en dominios para su
posterior análisis. - Verificación del análisis mediante ejecución.
- Método Coad/Yourdon
- Aproximación orientada a prototipo
- Aproximación ligera
35Bibliografía
- Artículos
- Theory-W Software Project Management principles
and examples. B.Boehm, R. Ross, UCLA. IEEE
Transactions on Software Engineering, 1989. - The Shlaer-Mellor method. S. Shlaer, S. J.
Mellor. Project Technology. - Enlaces
- Cetus Links sobre metodologías
http//www.cetus-links.org/oo_ooa_ood_methods.html