procesos para la ingenierÍa de software€¦ · modelos de procesos de desarrollo de software...

67
Facultad de Estadística e Informática PROCESOS PARA LA INGENIERÍA DE SOFTWARE

Upload: others

Post on 21-Aug-2020

16 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

PROCESOS PARA LA INGENIERÍA DE SOFTWARE

Page 2: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Bibliografía Pressman, R.S., Ingeniería del Software. Un enfoque práctico, quinta edición, 2002, España. Parte 2

Page 3: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Clase 7. Agenda

Unidad III.Modelos de procesos de desarrollo de software◦Cascada

◦ Incremental

◦Evolutivo

◦Espiral

◦Prototipos

◦PUDS (Proceso Unificado de Desarrollo de Software)

Page 4: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Proceso de software

Se define proceso del software como una estructura para las actividades, acciones y tareas que se requieren a fin de construir software de alta calidad.

Page 5: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software¿Por qué es importante?

Porque da estabilidad, control y organización a una actividad que puede volverse caótica si se descontrola.

Sin embargo, un enfoque moderno de ingeniería de software debe ser “ágil”.

Page 6: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software¿Por qué es importante?

Debe incluir sólo aquellas actividades, controles y productos del trabajo que sean apropiados para el equipo del proyecto y para el producto que se busca obtener.

Page 7: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Proceso de software

Se define proceso del software como una estructura para las actividades, acciones y tareas que se requieren a fin de construir software de alta calidad.

Page 8: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Cada una de las actividades, acciones y tareas se

encuentra dentro de una estructura o modelo que

define su relación tanto con el proceso como entre sí.

Page 9: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelo general de

proceso

Page 10: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

La estructura general para la ingeniería de software

define cinco actividades estructurales:

comunicación, planeación, modelado,

construcción y despliegue.

Page 11: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Actividades EstructuralesC

OM

UN

ICA

CIÓ

NP

LAN

EAC

IÓN

MO

DEL

AD

O

CO

NST

RU

CC

IÓN

DES

PLI

EGU

E

Actividades Sombrilla

Page 12: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Los Modelos de proceso describen:

Actividades estructurales.

Acciones de ingeniería de software.

Tareas.

Productos del trabajo.

Page 13: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Los Modelos de proceso

describen:

Aseguramiento de la calidad y

Mecanismos de control del cambio

para cada proyecto.

Page 14: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Cada modelo del proceso también

prescribe un flujo del proceso

(también llamado flujo de trabajo)

(la manera en la que los elementos

del proceso se relacionan entre sí)

Page 15: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Flujo del proceso de las actividades estructurales

Un flujo del proceso describe la manera en que están organizadas las actividades estructurales y las acciones y tareas que ocurren dentro de cada una con respecto de la secuencia y el tiempo.

Page 16: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Flujo del proceso lineal

Ejecuta cada una de las cinco actividades estructurales en secuencia, comenzando por la comunicación y terminando con el despliegue.

Page 17: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Flujo del proceso iterativo

Repite una o más de las actividades antes de pasar a la siguiente.

Page 18: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Realiza las actividades en forma “circular”. A través de las cinco actividades, cada circuito lleva a una versión más completa del software

Flujo de proceso evolutivo

Page 19: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Ejecuta una o más actividades en paralelo con otras (por ejemplo, el modelado de un aspecto del software tal vez se ejecute en paralelo con la construcción de otro aspecto del software).

Flujo de proceso paralelo

Page 20: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

¿Por qué se crearon los Modelos de

Proceso?

Page 21: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Los modelos de proceso fueron propuestos

originalmente para poner orden en el caos del

desarrollo de software.

Otorgan cierta estructura útil al trabajo de

ingeniería de software y constituyen un mapa

razonablemente eficaz para los equipos de software.

Page 22: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Todos los modelos del proceso del software pueden

incluir las actividades estructurales generales

descritas anteriormente, pero cada una pone distinto

énfasis en ellas y define en forma diferente el flujo de

proceso que invoca cada actividad estructural (así

como acciones y tareas de ingeniería de software).

Page 23: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de procesos de desarrollo de

software existentes

Page 24: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelo en cascada

Page 25: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelo en cascada o ciclo de vida clásico

Page 26: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de softwareModelo en cascada o ciclo de vida clásico

Enfoque sistemático y secuencial.

Comienza con la especificación de los requerimientos por parte del cliente y avanza a través de planeación, modelado, construcción y despliegue, para concluir con el apoyo del software terminado

Page 27: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelo en cascada o ciclo de vida clásico

¿Cuándo se usa?

Page 28: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelo en cascada o ciclo de vida clásico

Los requerimientos para cierto problema se comprenden

bien.

El trabajo desde la comunicación hasta el despliegue fluye

en forma razonablemente lineal.

Adaptaciones o mejoras bien definidas a un sistema ya

existente

Page 29: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelo en cascada o ciclo de vida clásico

Problemas:

1. Es raro que los proyectos reales sigan el flujo secuencial

propuesto por el modelo. Aunque el modelo lineal acepta

repeticiones, lo hace en forma indirecta. Como resultado,

los cambios generan confusión conforme el equipo del

proyecto avanza.

Page 30: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de softwareModelo en cascada o ciclo de vida clásico

Problemas:

2. Es difícil para el cliente enunciar en forma explícita todos los requerimientos.

El modelo en cascada necesita que se haga y tiene dificultades para aceptar la incertidumbre natural que existe al principio de muchos proyectos.

Page 31: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelo en cascada o ciclo de vida clásico

Problemas:

3. El cliente debe tener paciencia. No se dispondrá de una

versión funcional del(de los) programa(s) hasta que el

proyecto esté muy avanzado. Un error grande sería

desastroso si se detectara hasta revisar el programa en

funcionamiento.

Page 32: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelo en cascada o ciclo de vida clásico

El trabajo de software es acelerado y está sujeto a una

corriente sin fin de cambios (en las características,

funciones y contenido de información).

Page 33: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelo en cascada o ciclo de vida clásico

Variante del modelo en cascada “Modelo en V”

Acciones de aseguramiento de la calidad

Page 34: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelo en cascada o ciclo de vida clásico

Modelo en V

Page 35: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelo incremental

Page 36: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso incremental

Page 37: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso incremental

Modelo de proceso diseñado para producir el

software en incrementos.

Requerimientos iniciales del software

razonablemente bien definidos.

Page 38: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso incremental

Necesidad imperiosa de dar rápidamente cierta

funcionalidad limitada de software a los usuarios y

aumentarla en las entregas posteriores de software.

Page 39: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso incremental

El primer incremento es el producto fundamental.

Se abordan los requerimientos básicos, pero no se

proporcionan muchas características suplementarias

(algunas conocidas y otras no).

Page 40: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso incremental

El cliente usa el producto fundamental (o lo somete

a una evaluación detallada).

Como resultado del uso y/o evaluación se desarrolla

un plan para el incremento que sigue.

Page 41: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso incremental

El plan incluye la modificación del producto fundamental

para cumplir mejor las necesidades del cliente, así como la

entrega de características adicionales y más funcionalidad.

Este proceso se repite después de entregar cada

incremento, hasta terminar el producto final.

Page 42: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso incremental

En cada incremento se entrega un producto que ya

opera.

Útil en particular cuando no se dispone de personal

para la implementación completa del proyecto en el

plazo establecido por el negocio.

Page 43: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso incremental

¿Cuándo se usa?

Page 44: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso incremental

Necesidad imperiosa de dar rápidamente cierta

funcionalidad limitada de software a los usuarios y

aumentarla en las entregas posteriores de software.

Útil en particular cuando no se dispone de personal para

la implementación completa del proyecto en el plazo

establecido por el negocio.

Page 45: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelo evolutivo

Page 46: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Modelo de proceso diseñado explícitamente

para adaptarse a un producto que evoluciona

con el tiempo.

Page 47: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Los sistemas complejos evolucionan

Es frecuente que los requerimientos del negocio y del

producto cambien conforme avanza el desarrollo.

Page 48: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Plazos apretados

Se comprende bien el conjunto de requerimientos o

el producto básico

Los detalles del producto o extensiones del sistema

aún están por definirse.

Page 49: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

oLos modelos evolutivos son iterativos.

Prototipo

Espiral

Page 50: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelo evolutivo. Prototipo

Page 51: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo

El cliente define un conjunto de objetivos generales.

No identifica los requerimientos detallados para las

funciones y características.

Page 52: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo

El desarrollador no está seguro de la eficiencia de

un algoritmo, la adaptabilidad de un sistema

operativo o de la interacción humano-computadora.

Page 53: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo

En la construcción, pueden utilizarse fragmentos de programas existentes o aplicar herramientas que permitan generar rápidamente programas que funcionen.

Page 54: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo

El modelado se centra en la

representación de aquellos aspectos

del software que serán visibles para los usuarios finales

Page 55: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo

1. Comienza con la comunicación.

Reunión con participantes para definir objetivos, requerimientos, áreas por definir mejor.

Page 56: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo

2. Plan rápido, modelado y diseño rápido.Se planea rápidamente una iteración para hacer el prototipo, y se lleva a cabo el modelado (en forma de un “diseño rápido”).

Page 57: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo

3. Construcción y DespliegueEl diseño rápido lleva a la construcción de un prototipo. Éste se entrega y es evaluado por los participantes, que dan retroalimentación para mejorar los requerimientos.

Page 58: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo

El ideal es que el prototipo sirva como mecanismo

para identificar los requerimientos del software.

Page 59: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo

¿Qué hacer con el prototipo cuando ya sirvió para el

propósito descrito?

Page 60: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo

Brooks: En la mayoría de proyectos es raro que el primer sistema elaborado sea utilizable.

Muy lento, muy grande, difícil de usar o todo a la vez.

No hay más alternativa que comenzar de nuevo.

Page 61: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo. Problemas

Los participantes ven lo que parece ser una versión

funcional del software, pero no se consideró la calidad, la

facilidad de mantenimiento, por la prisa. Los usuarios

exigen el prototipo como producto funcional.

Page 62: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo. Problemas

Se toman decisiones que inicialmente son las adecuadas

(con el fin de lograr el prototipo rápidamente): Lenguaje

de programación conocido, algoritmo ineficiente. Esta

elección formará parte del sistema final.

Page 63: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Modelos de proceso evolutivos

Prototipo. Paradigma exitoso si…

Se definen desde el principio las reglas del juego.

El prototipo sirve como el mecanismo para definir los

requerimientos. Después se descartará (al menos en

parte) y se hará la ingeniería del software real con la mirada puesta en la calidad.

Page 64: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Ejemplo

Page 65: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Videojuego

Page 66: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

Modelos de procesos de desarrollo de software

Videojuego Pac-Man

Desarrollo Modelo en Cascada

Desarrollo Modelo Incremental

(Tiempo de desarrollo, definición de requerimientos, cantidad de personal, producto final)

Page 67: PROCESOS PARA LA INGENIERÍA DE SOFTWARE€¦ · Modelos de procesos de desarrollo de software Todos los modelos del proceso del software pueden incluir las actividades estructurales

Facultad de Estadística e Informática

GRACIAS POR SU ATENCIÓN