sesion 5 2 del análisis al diseño

37
Diseño: Del Análisis Al Diseño Lic. César Alcántara Loayza

Upload: julio-pari

Post on 22-Jan-2018

727 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Sesion 5 2 del análisis al diseño

Diseño:Del Análisis Al Diseño

Lic. César Alcántara Loayza

Page 2: Sesion 5 2 del análisis al diseño

2CAL/Fundamentos

Del Análisis Al Diseño Para manejar el proceso de desarrollo se

debe comprender como se relacionan las fases de desarrollo una con otra y con el proceso general.

Comprender las relaciones entre los productos de trabajo facilita el mejoramiento y refinamiento de los modelos. Así como en el análisis, los modelos se deben reconciliar para probar su integridad y exactitud. Los procesos de prueba del proceso continuarán a través del diseño.

Page 3: Sesion 5 2 del análisis al diseño

3CAL/Fundamentos

Comprender como estos mismos productos del trabajo evolucionan desde una fase hacia la siguiente facilitan el manejo del proceso general. Cada fase entrega los productos de trabajo a un nivel que les permita usarse como recursos en la siguiente fase.

Del Análisis Al Diseño

Page 4: Sesion 5 2 del análisis al diseño

4CAL/Fundamentos

Revisión Del Ciclo De Vida En las lecciones anteriores aprendimos

acerca de las dos primeras fases, Inicio del proyecto y análisis del problema. Al final de estas dos fases, ha creado y probado un modelo completo del dominio del problema. Se ha definido todos los objetivos y recursos que el sistema final deberá soportar. Estos productos del trabajo representan su objetivo

Page 5: Sesion 5 2 del análisis al diseño

5CAL/Fundamentos

El diseño es cuando Ud. toma el objetivo como el blanco. Es importante que no dispare hasta que que tenga el blanco. En otras palabras, diseñar trata acerca del planear como conseguir los objetivos definidos en los productos de trabajo del análisis. El proceso de planeamiento identifica la solución deseada, no la solución completa.

Revisión Del Ciclo De Vida

Page 6: Sesion 5 2 del análisis al diseño

6CAL/Fundamentos

El diseño trata la funcionalidad asi como el rendimiento, la flexibilidad y la capacidad de mantenimiento.

Revisión Del Ciclo De Vida

Page 7: Sesion 5 2 del análisis al diseño

7CAL/Fundamentos

Diseño vs. Implementación Probablemente preguntará, ¿pero el lenguaje y

el ambiente de implementación no dictan el diseño?, En parte es así. Habrá un esfuerzo convenido durante la implementación para reconciliar el diseño deseado y lo que la tecnología soportará. El valor de separar estos dos pasos viene del hecho de que el diseño retiene la imagen del resultado deseado, mientras que la implementación se debe conformar con las limitaciones de la tecnología y entornos actuales.

Page 8: Sesion 5 2 del análisis al diseño

8CAL/Fundamentos

Las tecnologías y los entornos cambian rápidamente, presentando nuevas oportunidades para mejorar la implementación. El diseño proporciona un marco a através del cual medir estas nuevas oportunidades y planear su introducción en la implementación.

Diseño vs. Implementación

Page 9: Sesion 5 2 del análisis al diseño

9CAL/Fundamentos

El Proceso De Desarrollo Inicio del Proyecto Documenta las espectativas del usuario.

Page 10: Sesion 5 2 del análisis al diseño

10CAL/Fundamentos

Análisis del problema Define los recursos del dominio del problema.

Page 11: Sesion 5 2 del análisis al diseño

11CAL/Fundamentos

Análisis arquitectural Selecciona la aproximación arquitectónica

para la solución.

Page 12: Sesion 5 2 del análisis al diseño

12CAL/Fundamentos

Diseño de Objetos Selecciona y define la implementación para la

solución de software.

Page 13: Sesion 5 2 del análisis al diseño

13CAL/Fundamentos

Construcción Construye, compra, integra el código para

satisfacer el diseño.

Page 14: Sesion 5 2 del análisis al diseño

14CAL/Fundamentos

Instalación Coloca la aplicación en producción

Page 15: Sesion 5 2 del análisis al diseño

15CAL/Fundamentos

Mantenimiento Revisa / mejora la aplicación en producción.

Page 16: Sesion 5 2 del análisis al diseño

16CAL/Fundamentos

Transición Análisis - Diseño La transición desde el análisis hacia el

diseño requiere que se comprenda la diferencia entre lo que se modeló en el análisis y lo que se modelará en el diseño. Durante el inicio del proyecto y del análisis del problema se procedió bajo el supuesto de que el “sistema” que estaba modelando no tenía nada que hacer en absoluto con el software y hardware.

Page 17: Sesion 5 2 del análisis al diseño

17CAL/Fundamentos

La funcionalidad (modelo de casos de uso), los recursos (modelo de objetos) y la interacción de los recursos para soportar la funcionalidad (Diagramas de secuencia y colaboración) podrían existir se proporcione o no automatización. p.e en el sistema de venta de boletos, se identificó la necesidad de fijar asiento, fijar presentaciones, los precios por asiento en las presentaciones y la venta de boletos. No hay nada tecnológico en estas funciones. De hecho ellas han sido realizadas manualmente durante centurias.

Transición Análisis - Diseño

Page 18: Sesion 5 2 del análisis al diseño

18CAL/Fundamentos

Todo lo que definió en el análisis debe permanecer intacto a medida que se mueve hacia el diseño. De hecho, el modelo de objetos a nivel de análisis será la base para su diseño de base de datos. Pocos objetos nuevos, si hay alguno, que se adicionan en el diseño formarán parte de la base de datos. Aquellos que se agregan durante el diseño de objetos serán para mejorar el rendimiento no la funcionalidad.

Transición Análisis - Diseño

Page 19: Sesion 5 2 del análisis al diseño

19CAL/Fundamentos

Diseño: el diseño añade una “capa” de funcionalidad mas arriba del modelo de análisis. Esta capa es el software que facilita el uso de los recursos del dominio del problema usando interfaces, bases de datos, control de transacciones y comunicación que conforma al modelo de casos de uso.

Transición Análisis - Diseño

Page 20: Sesion 5 2 del análisis al diseño

20CAL/Fundamentos

Esta capa de tecnología probablemente cambie a menudo, pero el dominio del problema subyacente permanecerá relativamente estable.

Transición Análisis - Diseño

Page 21: Sesion 5 2 del análisis al diseño

21CAL/Fundamentos

Transición Análisis - Diseño

Capa de diseño

Capa de análisis

Page 22: Sesion 5 2 del análisis al diseño

22CAL/Fundamentos

Revisión Productos del Análisis Diccionario de datos:

Define el vocabulario del dominio del problema. Este vocabulario forma la base para todos los modelos.

Modelo de casos de uso: Incluye los diagramas de casos de uso,

como también la descripción narrativa y los escenarios de cada caso de uso.

Page 23: Sesion 5 2 del análisis al diseño

23CAL/Fundamentos

Modelo de casos de uso El propósito del modelo de casos de uso es

establecer lo que el usuario espera ver cuando interactúe con el sistema. La vista es de alguien de fuera del sistema. Los escenario proporcionan los casos de prueba para cada caso de uso y así son recursos críticos para el resto del proyecto. Estos casos de prueba pueden y deben ser aplicados en cada iteración del proceso de análisis y diseño.

Revisión Productos del Análisis

Page 24: Sesion 5 2 del análisis al diseño

24CAL/Fundamentos

Modelo de objetos: Proporciona dos recursos: el diagrama de

clases y el diagrama de objetos. Los dos diagramas representan los recursos del dominio del problema que los usuarios podrían requerir aún si el sistema no fuera automatizado. El diagrama de clases (frecuentemente llamado modelo de objetos) es el modelo principal.

Revisión Productos del Análisis

Page 25: Sesion 5 2 del análisis al diseño

25CAL/Fundamentos

Modelo de objetos: El diagrama de clases genera el código y

proporciona la mejor definición para los objetos persistentes del sistema –los objetos que deberán manejarse en la base de datos. El diagrama de objetos es una herramienta para prueba y compresión de los objetos que son representados por clases en el diagrama de clases.

Revisión Productos del Análisis

Page 26: Sesion 5 2 del análisis al diseño

26CAL/Fundamentos

Diagramas de interacción: Los diagramas de secuencia y

colaboración representan las interacciones entre objetos. Como tal son herramientas valiosas para identificar interfaces de objetos. Las interfaces a su vez ayudan a identificar los atributos que debe soportar el diagrama de clases. Los atributos contienen valores de datos.

Revisión Productos del Análisis

Page 27: Sesion 5 2 del análisis al diseño

27CAL/Fundamentos

... Los valores de datos son pasados como argumentos y valores de retorno en las interfaces. Un valor no se puede pasar como argumento si no está contenido en un atributo en algún objeto o creado por alguna operación que pertenece a un objeto (atributo derivado).

Revisión Productos del Análisis

Page 28: Sesion 5 2 del análisis al diseño

28CAL/Fundamentos

Revisión Productos del Análisis

Modelo de Casos de Uso

Diagrama deSecuencia ó

Diagramas deActividad

Diagrama deEstados

Modelo de Objetos

Mas útil para describir el

negocio

Page 29: Sesion 5 2 del análisis al diseño

29CAL/Fundamentos

Diseño En Dos Pasos El diseño está dividido en dos pasos:

Análisis arquitectural y Diseño de objetos.

Por ejemplo la diferencia entre aplicaciones locales y distribuidas son significativas. Los retos de latencia, acceso a memoria, fallas parciales y concurrencia, requieren diseños significativamente diferentes para soluciones locales que para distribuidas.

Page 30: Sesion 5 2 del análisis al diseño

30CAL/Fundamentos

Arquitecturas diferentes dictan diferentes diseños de bajo nivel. Consecuentemente, las decisiones arquitecturales proporcionan el contexto para el diseño de bajo nivel.

Diseño En Dos Pasos

Page 31: Sesion 5 2 del análisis al diseño

31CAL/Fundamentos

El análisis arquitectural evalúa los requerimientos del sistema contra las tecnologías que ofrecen los mas promisorios marcos para una solución. El problema se particiona para soportar tanto los requerimientos tecnológicos como los funcionales.

Análisis Arquitectural

Page 32: Sesion 5 2 del análisis al diseño

32CAL/Fundamentos

Los casos de uso con utilizado como fuente para la división funcional. Los diagramas de clases proporcionan los recursos de cada área funcional. Los diagramas de interacción proporcionan la visión de las dependencias entre las particiones funcionales. Las particiones resultantes se modelan en un diagrama de paquetes.

Análisis Arquitectural

Page 33: Sesion 5 2 del análisis al diseño

33CAL/Fundamentos

Cada paquete (partición funcional) está dividido para representar las capas de tecnología que se usarán para implementar la solución.

Análisis Arquitectural

Page 34: Sesion 5 2 del análisis al diseño

34CAL/Fundamentos

Análisis ArquitecturalModelo de Casos de Uso modelo de objetos Diagramas de Interacción (Funcionalidad) (Recursos) (Comunicación)

Diagrama de PaquetesRepresentación de las particiones del Sistema

A B

C D

Page 35: Sesion 5 2 del análisis al diseño

35CAL/Fundamentos

Diseño De Objetos Durante el diseño de objetos cada

partición representa un tipo diferente de reto de diseño. Por ejemplo, la partición de interface del usuario trata un conjunto muy diferente de problemas que la partición de acceso a datos. Una partición de Servidor de Transacciones es muy diferente de una partición de Aplicación del Cliente.

Page 36: Sesion 5 2 del análisis al diseño

36CAL/Fundamentos

El diseño de objetos utilizará el diagrama de estados adicionalmente a otras herramientas de análisis. Juntas estas herramientas proporcionan modelos activos de todos los aspectos del diseño de software.

Diseño De Objetos

Page 37: Sesion 5 2 del análisis al diseño

37CAL/Fundamentos

Resúmen Las fases del proceso de desarrollo se

asignan para soportan la evolución de los modelos desde la definición del problema hasta la definición de la solución. Las mismas herramientas se usan a través del proceso. Sin embargo el nivel de detalle y la clase de objetos agregados a cada fase sucesiva son diferentes. La clave para manejar y aplicar el proceso con éxito está en comprender las relaciones entre las fases y los productos de trabajo que ellos afectan.