2.procesos de desarrollo de software

17
2.Procesos de Desarrollo de Software

Transcript of 2.procesos de desarrollo de software

2.Procesos de Desarrollo de Software

➔ Es un proceso de aprendizaje humano.➔ Es un diálogo entre personas, en el que el conocimiento

se convierte en software. ➔ Se genera interacción entre usuarios, diseñadores y

herramientas en evolución.➔ Es un proceso que se repite: con cada nueva ronda del

diálogo se genera más conocimiento útil.

¿Qué es el Desarrollo de Software?

La ingeniería de software define cinco actividades:

1. Comunicación.2. Planeación.3. Modelado.4. Construcción.5. Despliegue.

Además, a lo largo del proceso se aplica: seguimiento del proyecto, administración de riesgos, aseguramiento de la calidad, configuración, revisiones técnicas, entre otras.

Actividades

Un flujo de proceso lineal ejecuta cada una de las cinco actividades en secuencia.

Un flujo de proceso iterativo puede repetir las actividades antes de pasar a la siguiente.

Proceso Lineal vs Iterativo

Un flujo de proceso evolutivo 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.

Proceso Evolutivo

Un flujo de proceso paralelo ejecuta una o más actividades en paralelo con otras.

Proceso Paralelo

Muchos piensan que es estado ideal está en la naturaleza.

El modelo en cascada es un enfoque secuencial, que comienza con la especificación de los requerimientos y avanza hasta concluir con el software terminado.

El progreso fluye de arriba hacía abajo, como una cascada.

Modelo en cascada

A menudo, es difícil para el cliente enunciar al principio todos los requerimientos.

Es raro que un proyecto real sigan el flujo secuencial propuesto por el modelo.

El cliente debe tener paciencia: No se tendrá una versión funcional hasta que el proyecto está avanzado.

M.Cascada - Desventajas

En muchas situaciones existe necesidad de dar rápidamente cierta funcionalidad de software a los usuarios y aumentarla en las entregas posteriores.

En tales casos, se elige un modelo de proceso diseñado para producir el software en incrementos.

“El modelo incremental aplica secuencias lineales en forma escalonada a medida que avanza el calendario de actividades”.

El Modelo Incremental.

El software, como todos los sistemas complejos, evolucionan en el tiempo.

Los plazos apretados hacen que sea imposible la terminación de un software perfecto. Muchas veces la competencia obliga a lanzar una versión funcional.

En esta situación se necesita un modelo diseñado para adaptarse a un producto que evoluciona con el tiempo.

Modelos Evolutivos.

Es frecuente que un cliente defina algunos objetivos, pero sin estar seguro de los detalles del sistema.

En estas situaciones, el paradigma de hacer prototipos ofrece un enfoque efectivo.

Ventajas:

Ayuda a mejorar la comprensión de lo que hay que elaborar cuando los requerimientos no están claros.

Permite acelerar el proceso a partir de un prototipo funcional.

El Prototipo

Consiste en una serie de ciclos que se repiten en forma de espiral, comenzando desde el centro.

Permite hacer un desarrollo rápido de versiones.

Desventajas:

1. Incertidumbre en el número de vueltas necesarias.2. Es difícil convencer a los clientes.

El modelo espiral

1.¿Qué es el desarrollo de software? 2.¿Qué es un proceso del Software?3.¿Cuáles son las 5 actividades estructurales para la I.S.?4.¿Cómo funciona el Flujo del Proceso Lineal?5.¿Cómo funciona el Flujo del Proceso Iterativo?6.¿Cómo funciona el Flujo del Proceso Evolutivo?7.¿Cómo funciona el Flujo del Proceso Paralelo?8.¿Cómo funciona el Modelo en Cascada?9.¿Cómo funciona el Modelo Incremental?10.¿Cuáles son desventajas del modelo en Espiral?

Responder aquí

Preguntas