1 / 21

Diseño: Análisis Arquitectural

Diseño: Análisis Arquitectural. Lic. César Alcántara Loayza. Análisis Arquitectural.

ivi
Télécharger la présentation

Diseño: Análisis Arquitectural

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Diseño:Análisis Arquitectural Lic. César Alcántara Loayza

  2. Análisis Arquitectural • El análisis es presentado aquí como la definición del problema mientras que el diseño, como la definición de la solución. Una solución que colmará todos los requerimientos funcionales que se deban construir. La solución debe tomar ventaja de la tecnología disponible para proporcionar el mejor soporte y rendimiento al menor costo.

  3. Análisis Arquitectural • El análisis arquitectural es el punto en el proceso de desarrollo donde se revisa los tipos de problemas que se trata de resolver para deducir que tecnología proporcionará la solución óptima. • Si decimos diseño arquitectural estaremos implicando que estamos diseñando una nueva arquitectura – lo cual no es, al menos no usualmente.

  4. Análisis Arquitectural • Existe un número limitado de formas de organizar una aplicación. El análisis arquitectural es el proceso de emparejar una necesidad con una aproximación tecnológica. Para alcanzar esta meta, necesitamos partir, o particionar el problema.

  5. Particionando El Modelo • Particionando el modelo de análisis: • Explicar el propósito del particionamiento y los dos tipo de particionamiento.

  6. Particionando El Modelo • El particionamiento organiza el problema que desea resolver en unidades discretas para crear un sistema de software exitoso. Dos tipos de particionamiento: • Particionamiento de dominio • Particionamiento tecnológico

  7. Particionando El Modelo • El particionamiento de dominio organiza las características del sistema en unidades cohesivas de trabajo basadas en las espectativas del usuario, las que se definen en las dos primeras fases del proyecto. El particionamiento tecnológico parte cada partición de dominio de acuerdo con las tecnologías que mejor implementará el software. La siguiente figura muestra la matriz que resulta de aplicar estos dos tipos de particionamiento.

  8. Particionando El Modelo Matriz de particionamiento De dominio vs tecnológico

  9. Particionando El Modelo • Particionar el dominio significa organizar los diferentes tipos de funciones que el sistema debe soportar. Estas funciones están definidas en el modelo de casos de uso. Los casos de uso deberían estar organizador usando los principios de cohesión y acoplamiento de modo que los casos de uso relacionados aparezcan juntos.

  10. Particionando El Modelo • Cada uno de los grupos resultantes deberían proporcionar todos los recursos de datos que el usuario necesita para completar con éxito una unidad de trabajo. Estos recursos están definidos en los diagrama de clases y de interacción del dominio del problema.

  11. Particionando El Modelo • El particionamiento del dominio es algunas veces subjetivo e involucra interacción significativa con los usuarios. Sin embargo a medida que aprenda el proceso, desarrollará tecnicas para medir la calidad de los agrupamientos mas objetivamente.

  12. Particionamiento Tecnológico • El particicionamiento tecnológico identifica y separa las diferentes responsabilidades del software para cada partición del dominio. Cada partición tecnológica trabajará típicamente un tipo de funcionalidad de software, tal como el diseño de la interface del usuario, la lógica de la aplicación, gestión de las transacciones o acceso y persistencia de datos.

  13. Particionamiento Tecnológico • A su vez la naturaleza de cada tipo de funcionalidad tecnológica usualmente necesitará un tipo diferente de programación y tecnología. Por ejem. El acceso a datos implica la capacidad de comunicar con archivos o bases de datos y la necesidad de seleccionar una base de datos adecuada. El diseño de la interface de usuario implica elementos gráficos y manejo de eventos.

  14. Objetivo Del Particionamiento • La meta del proceso de particionamiento es proporcionar una matriz de problemas únicos para la fase de diseño de objetos. Cada tipo de problema requiere diferentes patrones de diseño y tecnologías. Aislar cada tipo único de problema de programación hace mas fácil identificar las habilidades y recursos necesarios para diseñar e implementar la solución.

  15. Objetivo Del Particionamiento • El número de responsabilidades diferentes que ud. asigna a cada partición afecta la complejidad de la partición. Cada partición será una unidad de software. Este podría ser un único programa o un conjunto de programas y otros recursos que cooperan para cumplir una función. Las responsabilidades que ud. decida incluir en cada partición influye en la calidad de cohesión de cada unidad y la calidad del acoplamiento entre unidades.

  16. Objetivo Del Particionamiento • Estos factores a su vez, afectan directamente el costo de desarrollo, prueba y mantenimiento.

  17. Objetivo Del Particionamiento • Después que divida el sistema en particiones, las nuevas particiones deben conversar unas con otras como si no estuvieran particionadas. Una capa de comunicación se debe introducir donde quiera que ud. divida la arquitectura. Estas capas de comunicación vienen a ser parte del esfuerzo de diseño.

  18. Objetivo Del Particionamiento • Por ejemplo, en la matriz anterior la interface de usuario y la aplicación del cliente deben comunicarse. Igualmente, la aplicación cliente debe comunicarse con una o mas bases de datos. En algunos casos la interface es tan simple como un protocolo. En otros casos, la capa de comunicación es un producto como CORBA o JDBC, o una aplicación que está separada de las dos particiones que la usan. Un ejemplo es la capa de acceso de seguridad de datos incluida en la matriz anterior.

  19. Conclusión Particionamiento • El particionamiento identifica todos los problemas de programación y diseño necesarios para crear la aplicación completa. Este vista le permite atacar cada problema aisladamente mientras ve como todo encaja junto.

  20. Resumen • El particionamiento es una herramienta simple para controlar y comprender el diseño e implementación del sistema. • El particionamiento es el proceso de partir los requerimientos en preparación para el diseño detallado. • El particionamiento del dominio aisla requerimientos en términos de interfaces de usuario (casos de uso), recursos del dominio del problema (clases), e interacciones con el sistema (diagramas de interacción).

  21. Resumen • Las particiones tecnológicas identifican las responsabilidades de la aplicación de software y empareja productos y técnicas de programación para cubrir estas responsabilidades. • El resultado de particionar es una matriz de tareas de diseño específicas que serán trabajadas ya sea por productos existentes o programación.

More Related