Categories: All - desventajas - reutilización - ventajas - incremental

by Sofia Barbeito 3 years ago

159

PROCESOS DE SOFTWARE

La ingeniería de software comprende diversos modelos de desarrollo, cada uno con etapas y características definidas. El modelo en cascada sigue una secuencia lineal de fases desde la definición de requerimientos hasta el mantenimiento.

PROCESOS DE SOFTWARE

Modelo en Espiral de Bohem

Sectores de cada ciclo:

Planeación
Desarrollo y Validación
Valoración y Reducción del Riesgo
Establecimiento de Objetivos

Entrelazadas

MODELOS

REUTILIZACIÓN

Desventajas
Se pierde control sobre la evolución del sistema
Compromisos de requerimientos

Sistema no cubre necesidades reales de clientes

Ventajas
Reducir cantidad de software a desarrollar

Entregas más rápidas

Disminuir costos y riesgos

Componentes de Software
Sistemas de Software Independientes
Colecciones de Objetos
Servicios Web
Desarrollo e Integración
Diseño de Sistema con Reutilización
Modificación de Requerimientos
Análisis de Componentes

INCREMENTAL

Problemas
Estructura se degrada en cada incremento
Proceso no es visible
Beneficios
Mas rápida entrega e implementación de software útil
Retroalimentación del cliente
Reduce costo de adaptar requerimientos cambiantes del cliente
Especificación
Validación
Fundamental en Enfoques Ágiles

CASCADA

Operación y Mantenimiento
Integración y Prueba de Sistema
Implementación y Prueba de Unidad
Diseño del Sistema y del Software
Análisis y Definición de Requerimientos

PROCESOS DE SOFTWARE

RUP

Buenas Prácticas
Controlar los cambios al software
Verificar la calidad del software
Software modelado visualmente
Usar arquitecturas basadas en componentes
Gestión de requerimientos
Desarrollo de software de manera iterativa
Fases
Transición

Cambio del sistema hacia la comunidad de usuarios y que funcione en un ambiente real

Construcción

Diseño, programación y pruebas del sistema

Elaboración

Diseñar el plan del proyecto

Identificar los riesgos clave del proyecto

Establecer un marco conceptual arquitectónico para el sistema

Desarrollar la comprensión del problema de dominio

Concepción

Identificar entidades externas que interactuarán con el sistema y definirán interacciones

Perspectivas
Práctica
Estática
Dinámica

ENFRENTAR EL CAMBIO

ENFOQUES
Tolerancia al cambio

Entrega Incremental

Implementar incremento

Validar sistema

Integrar incremento

Validar incremento

Desarrollo de incremento

Diseño de Arquitectura

Asignación de requerimeintos

Evitar el cambio

Prototipo del Sistema

Etapas

Evaluación

Desarrollo

Definir la funcionalidad

Establecer objetivos

CLASIFICACIÓN

Procesos Ágiles
Dirigidos por un plan

DESCRIPCIONES DE LOS PROCESOS

Precondiciones y Postcondiciones
Roles
Productos

ACTIVIDADES DE UN PROCESO

Evolución del Software
Mantenimiento de Software
Validación del Software
Pruebas de Aceptación
Pruebas del Sistema
Prueba de desarrollo
Diseño e Implementación del Software
Diseño de Base de Datos
Diseño de Componentes
Diseño de Interfaz
Diseño Arquitectónico
Especificación del Software
Validación de Requerimientos
Especificación de Requerimientos
Obtención y Análisis de Requerimientos
Estudio de factibilidad