Está en la página 1de 11

Las Bases del Proceso de

Desarrollo
Ambientes de Desarrollo

El desarrollo de Software requiere de un proceso


que:
o Proporcione orientacin para ordenar las
actividades de un equipo.
o Dirija las tareas de los desarrolladores
individuales y del equipo en su conjunto.
o Especifique los objetos que deben ser
desarrollados.
o Ofrezca criterios para el seguimiento y la
medicin de los productos y actividades de un
proyecto.
Requerimientos
de Usuario

POCESO DE DESARROLLO

Sistema

Proceso de Desarrollo:
Conjunto de Actividades necesarias para transformar los
requerimientos del usuario en un sistema.

Dos Grandes Tendencias:


Construccin de Modelos: Describir incrementalmente el
sistema a travs de un proceso estable.
Construccin de Cdigo: Desarrollo gil de aplicaciones.

Taller

EL HUEVO VOLADOR
Se trata de plantear una solucin para ganar un concurso que consiste en
lanzar un huevo de gallina la mayor distancia posible y recuperarlo intacto.
El huevo debe estar en condiciones normales.
Ejercicio 1: Elaborar el diagrama de Casos de uso de la solucin (15)

Ejercicio 2: Modelar el diseo de la solucin propuesta. (20)


Ejercicio 3: Centrado en el Lanzador refinar los casos de uso. (5)

Dirigido por Casos de Uso


Caso de Uso: Es una funcionalidad del sistema que le
proporciona al usuario un resultado valioso.
Los casos de uso capturan los requerimientos funcionales del
sistema.
El Modelo de Casos de Uso: describe la funcionalidad completa
del sistema.

Una Especificacin Funcional contesta a la pregunta: Que hace


el Sistema?
La estrategia de Casos de Uso puede caracterizarse si se le
agrega al final de la pregunta: Para cada Usuario?

Usuario

Caso de Uso
5

USUARIO: Alguien o Algo que interacta con el


sistema.
Los Casos de Uso: Dirigen el proceso de
desarrollo. Significa que el proceso sigue un flujo
de actividades que derivan de los casos de uso.
o Inician el proceso de desarrollo.
o Son especificados.
o Son diseados.
o Son probados.

Usuario

Caso de Uso

Centrado en la Arquitectura

El concepto de Arquitectura involucra los aspectos estticos y dinmicos


ms significativos del sistema. Provee una descripcin desde diferentes
puntos de vista del sistema.

La arquitectura nace de las necesidades de la organizacin, segn son


detectadas por los usuarios y otras partes interesadas, y se refleja en los
casos de uso.

Sin embargo, tambin se ve influenciada por muchos otros factores, como


la Plataforma del software a utilizar, los bloques de construccin
reutilizables disponibles, consideraciones de implementacin, sistemas
legados, y los requerimientos no funcionales.

La arquitectura es una vista de todo el diseo con las caractersticas ms


importantes hechas visibles, dejando de lado los detalles.

Relacin Arquitectura Casos de Uso

Casos de Uso: Funcionalidad.


Arquitectura: Forma (estructura).
Ambos deben ser concebidos en paralelo. Los casos
de uso deben poderse realizar en la arquitectura, y
esta debe ser capaz de permitir la realizacin de
todos los casos de uso requeridos.
La arquitectura evoluciona desde los casos de uso
claves (Las funciones bsicas o centrales del
sistema).
Arquitectura
Bsica

Casos de uso
claves

Ajuste de la
Arquitectura

El proceso es Iterativo e Incremental


Una forma de lidiar con la complejidad es dividir el trabajo en
pequeos trozos: Una Iteracin es un mini proyecto que da como
resultado un incremento.
Seleccionar que debe hacerse en cada iteracin tiene que ver con
dos aspectos principales:
o Un conjunto de casos de uso que extienden la funcionalidad
del sistema al ser desarrollados.
o Identificacin y mitigacin de los principales riesgos.
Los incrementos no necesariamente son aditivos, en especial en
las primeras etapas en donde se reemplazan diseos muy
generales con diseos ms detallados.

El Proceso es Iterativo e Incremental


Los pasos generales son:
Identificar y especificar los casos de uso relevantes.
Crear un diseo usando la arquitectura de base escogida como
gua.
Implementar el diseo en componentes.
Verificar que los componentes satisfacen los casos de uso.
Los beneficios de un proceso iterativo controlado:
Reduccin de los costos por riesgos involucrados en el desarrollo de
un solo incremento.
Disminuir el riego de no estar a tiempo.
Disminuir el impacto sobre el desarrollo del cambio en los
requerimientos.

10

Preguntas?
Comentarios?
Sugerencias?