Categories: All - cliente - riesgo - reutilización - evolutivo

by LUIS FERNANDO TRISTANCHO VEJARANO 4 years ago

401

Modelos tradicionales

El modelo en espiral del proceso de software evolutivo permite el desarrollo rápido de versiones incrementales y se basa en un análisis continuo de riesgos y la evaluación constante del cliente.

Modelos tradicionales

Modelo de cascada

Desventajas

Los proyectos reales raramente siguen el flujo secuencial que propone el modelo.

Ventajas

este método radica en su sencillez ya que sigue los pasos intuitivos necesarios a la hora de desarrollar el software

El software debe ser construido, rigurosamente, a través de una transformación sucesiva de documentos, siguiendo una estrategia lineal de desarrollo. Primero saber qué se quiere y después, cuando se conozca todo lo que se quiere, empezar a construirlo.

Modelos evolutivos

Modelo incremental

Software en partes pequeñas, pero utilizables
Es útil cuando el personal no esta disponible para una implementación completa.

El plan afronta la modificación del producto central a fin de cumplir mejor las necesidades del cliente y la entrega de funciones, y características adicionales.

Modelo en espiral

modelo de proceso de software evolutivo para cubrir las mejores características. Proporciona el potencial para el desarrollo rápido de versiones incrementales del software.
Ingeniería

elige un modelo para el desarrollo del sistema.

Análisis de riesgo

El proyecto se revisa y se toma la decisión de si se debe continuar con un ciclo posterior de la espiral

Evaluación del cliente

El cliente evalúa el trabajo de ingeniería

Planificacion

se definen los objetivos, las alternativas y las restricciones, se analizan e identifican los riesgos.

Modelos de proceso Modelos de proceso

Procesos agiles

Los procesos ágiles constituyen un nuevo enfoque en el desarrollo de software
Algunos ejemplos

Crystal Proceso Software Adaptativo Scrum

eXtreme Programming.

basado en el modelo incremental

Programación en parejas. Integración continua. Cliente in-situ Estándares de codificación

Caracteristicas

Menor énfasis en el análisis, diseño y documentación. Equipos pequeños. Desarrollo incremental. Programación en cajas de tiempo. Supervivencia en un entorno caótico.

Sistemas orientados a objetos

Eliminación de las fronteras entre fases. Desarrollo basado en componentes re utilizables. Desarrollo iterativo e incremental. Se pueden combinar con modelos tradicionales.
Fuente

Dos modelos de ciclo de vida

Para cada clase o módulo

Para el sistema completo

Representa gráficamente el alto grado de iteración y solapamiento que hace posible la tecnología de objetos.

Agrupamiento

Unidad organizativa básica Unidad organizativa básica. Grupo de clases relacionadas o, recursivamente, clusters relacionados. Unidad natural para el desarrollo por parte de un único desarrollador. Evita el efecto todo-nada propio del modelo en cascada

Orientados a la reutilizacion

Basado en componentes
Proceso de desarrollo unificado
Proceso que puede adaptarse y extenderse en función de las necesidades de cada empresa.

Características del Proceso Unificado de Desarrollo

Centrado en la Arquitectura.

arquitectura software incluye los aspectos estáticos y dinámicos más significativos del sistema.

Dirigido por casos de uso

Establecer el comportamiento deseado del sistema

Iterativo e Incremental

reduce el riesgo a los costos de un solo incremento

Mantenimiento

El software sufrirá cambios como: adaptarse al entorno externo, o debido a que el cliente requiera ampliaciones funcionales o del rendimiento.

Prueba

comprueba que funciona correctamente antes de ser puesto en explotación.

Ingeniería y Análisis del Sistema

establecer los requisitos de todos los elementos del sistema

Análisis de los requisitos del software

Se analizan las necesidades de los usuarios para determinar qué objetivos debe cubrir.

Diseño

Se divide en 4 atributos.

La estructura de los datos, la arquitectura del software, el detalle procedimental y la caracterización de la interfaz.

Codificación

desarrolla el código fuente

Modelos tradicionales

Basado en prototipos