sesion 6_2 diseño - análisis arquitectural

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

Upload: q

Post on 12-Jul-2015

86 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 1/21

Diseño: Análisis Arquitectural

Lic. César Alcántara Loayza

Page 2: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 2/212CAL/Fundamentos

El análisis es presentado aquí como ladefinición del problema mientras que el

diseño, como la definición de lasolución. Una solución que colmarátodos los requerimientos funcionalesque se deban construir. La solución

debe tomar ventaja de la tecnologíadisponible para proporcionar el mejorsoporte y rendimiento al menor costo.

 Análisis Arquitectural

Page 3: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 3/213CAL/Fundamentos

El análisis arquitectural es el punto en elproceso de desarrollo donde se revisa los

tipos de problemas que se trata de resolverpara deducir que tecnología proporcionarála solución óptima.

Si decimos diseño arquitectural estaremos

implicando que estamos diseñando unanueva arquitectura – lo cual no es, almenos no usualmente.

 Análisis Arquitectural

Page 4: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 4/214CAL/Fundamentos

Existe un número limitado de formas deorganizar una aplicación. El análisis

arquitectural es el proceso deemparejar una necesidad con unaaproximación tecnológica. Para alcanzar

esta meta, necesitamos partir, oparticionar el problema.

 Análisis Arquitectural

Page 5: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 5/215CAL/Fundamentos

Particionando El Modelo Particionando el modelo de análisis:

Explicar el propósito del particionamiento

y los dos tipo de particionamiento.

Page 6: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 6/216CAL/Fundamentos

El particionamiento organiza elproblema que desea resolver en

unidades discretas para crear unsistema de software exitoso. Dos tiposde particionamiento:

Particionamiento de dominio Particionamiento tecnológico

Particionando El Modelo

Page 7: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 7/217CAL/Fundamentos

El particionamiento de dominio organiza lascaracterísticas del sistema en unidadescohesivas de trabajo basadas en lasespectativas del usuario, las que se definenen las dos primeras fases del proyecto. Elparticionamiento tecnológico parte cadapartición de dominio de acuerdo con lastecnologías que mejor implementará elsoftware. La siguiente figura muestra lamatriz que resulta de aplicar estos dos tiposde particionamiento.

Particionando El Modelo

Page 8: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 8/218CAL/Fundamentos

Particionando El Modelo

Particiones de Dominio

   P  a  r   t   i  c   i  o  n  e  s   d  e   T  e  c  n  o   l  o  g   í  a

   C  a  p  a   d  e   C  o  m  u  n   i  c  a  c   i   ó  n   (   i  n   t  e  r   f  a  c  e   )

Define perfiles

de Seguridad

de la aplicación

Fija el perfil de

seguridad del

usuario

Verifica usuario

Interface de

Usuario

Interface de

Usuario

Interface de

Usuario

Aplicación

Cliente

Aplicación

Cliente

Aplicación

Cliente

Aplicación

Servidor 

Acceso de Seguridad a Datos

Seguridad del DBMS

Matriz de particionamientoDe dominio vs tecnológico

Page 9: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 9/219CAL/Fundamentos

Particionar el dominio significaorganizar los diferentes tipos de

funciones que el sistema debe soportar.Estas funciones están definidas en elmodelo de casos de uso. Los casos deuso deberían estar organizador usando

los principios de cohesión yacoplamiento de modo que los casos deuso relacionados aparezcan juntos.

Particionando El Modelo

Page 10: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 10/2110CAL/Fundamentos

Cada uno de los grupos resultantesdeberían proporcionar todos los recursos 

de datos que el usuario necesita paracompletar con éxito una unidad detrabajo. Estos recursos están definidos en

los diagrama de clases y de interaccióndel dominio del problema.

Particionando El Modelo

Page 11: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 11/2111CAL/Fundamentos

El particionamiento del dominio esalgunas veces subjetivo e involucra

interacción significativa con losusuarios. Sin embargo a medida queaprenda el proceso, desarrollará

tecnicas para medir la calidad de losagrupamientos mas objetivamente.

Particionando El Modelo

Page 12: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 12/2112CAL/Fundamentos

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 desoftware, tal como el diseño de la interface

del usuario, la lógica de la aplicación, gestiónde las transacciones o acceso y persistenciade datos.

Page 13: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 13/2113CAL/Fundamentos

 A su vez la naturaleza de cada tipo defuncionalidad tecnológica usualmente

necesitará un tipo diferente de programacióny tecnología. Por ejem. El acceso a datosimplica la capacidad de comunicar conarchivos o bases de datos y la necesidad de

seleccionar una base de datos adecuada. Eldiseño de la interface de usuario implicaelementos gráficos y manejo de eventos.

Particionamiento Tecnológico

Page 14: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 14/2114CAL/Fundamentos

La meta del proceso de particionamiento esproporcionar una matriz de problemas

únicos para la fase de diseño de objetos.Cada tipo de problema requiere diferentespatrones de diseño y tecnologías. Aislar cadatipo único de problema de programación

hace mas fácil identificar las habilidades yrecursos necesarios para diseñar eimplementar la solución.

Objetivo Del Particionamiento

Page 15: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 15/21

15CAL/Fundamentos

El número de responsabilidades diferentesque ud. asigna a cada partición afecta lacomplejidad de la partición. Cada particiónserá una unidad de software. Este podría serun único programa o un conjunto deprogramas y otros recursos que cooperanpara cumplir una función. Lasresponsabilidades que ud. decida incluir encada partición influye en la calidad decohesión de cada unidad y la calidad delacoplamiento entre unidades.

Objetivo Del Particionamiento

Page 16: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 16/21

16CAL/Fundamentos

Estos factores a su vez, afectandirectamente el costo de desarrollo,

prueba y mantenimiento.

Objetivo Del Particionamiento

Page 17: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 17/21

17CAL/Fundamentos

Después que divida el sistema enparticiones, las nuevas particiones

deben conversar unas con otras comosi no estuvieran particionadas. Unacapa de comunicación se debeintroducir donde quiera que ud. divida

la arquitectura. Estas capas decomunicación vienen a ser parte delesfuerzo de diseño.

Objetivo Del Particionamiento

Page 18: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 18/21

18CAL/Fundamentos

Por ejemplo, en la matriz anterior la interface deusuario y la aplicación del cliente debencomunicarse. Igualmente, la aplicación clientedebe comunicarse con una o mas bases dedatos. En algunos casos la interface es tansimple como un protocolo. En otros casos, lacapa de comunicación es un producto como

CORBA o JDBC, o una aplicación que estáseparada de las dos particiones que la usan. Unejemplo es la capa de acceso de seguridad dedatos incluida en la matriz anterior.

Objetivo Del Particionamiento

Page 19: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 19/21

19CAL/Fundamentos

El particionamiento identifica todos losproblemas de programación y diseño

necesarios para crear la aplicacióncompleta. Este vista le permite atacarcada problema aisladamente mientras

ve como todo encaja junto.

Conclusión Particionamiento

Page 20: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 20/21

20CAL/Fundamentos

Resumen El particionamiento es una herramienta simple 

para controlar y comprender el diseño eimplementación del sistema.

El particionamiento es el proceso de partir losrequerimientos en preparación para el diseñodetallado.

El particionamiento del dominio aislarequerimientos en términos de interfaces deusuario (casos de uso), recursos del dominio delproblema (clases), e interacciones con el

sistema (diagramas de interacción).

Page 21: Sesion 6_2 Diseño - Análisis Arquitectural

5/12/2018 Sesion 6_2 Dise o - An lisis Arquitectural - slidepdf.com

http://slidepdf.com/reader/full/sesion-62-diseno-analisis-arquitectural 21/21

21CAL/Fundamentos

Las particiones tecnológicas identifican lasresponsabilidades de la aplicación de software

y empareja productos y técnicas deprogramación para cubrir estasresponsabilidades.

El resultado de particionar es una matriz de

tareas de diseño específicas que serántrabajadas ya sea por productos existentes oprogramación.

Resumen