Documente Academic
Documente Profesional
Documente Cultură
Diseo arquitectnico
1 edicin (2002)
Facultad de Informtica
objetivo
Los sistemas grandes se descomponen en subsistemas que suministran un conjunto relacionado de servicios. Se trata del proceso de diseo inicial donde se identifican los subsistemas y se establece el marco de trabajo para el control y comunicacin de los mismos. Produce la descripcin de la arquitectura del software.
Diseo arquitectnico
contenido
Actividades del diseo Subsistemas y mdulos Documento de diseo Estructuracin del sistema Modelo de depsito Modelo cliente-servidor Caractersticas del modelo c-s Modelo de capas Modelos de control Control centralizado Tipos de control centralizado Sistemas dirigidos por eventos Modelos de transmisin Modelos dirigidos por interrupciones Descomposicin modular Modelos de objetos Modelos de flujo de datos Arquitecturas de dominio especfico Modelos genricos Modelos de referencia Referencias bibliogrficas
Diseo arquitectnico
Diseo arquitectnico
subsistemas y mdulos
Un subsistema es un sistema por s mismo cuya operacin no depende de los servicios suministrados por otros subsistemas. Se compone de mdulos y utiliza interfaces definidas para la comunicacin con otros mdulos. Un mdulo es un componente del sistema que suministra uno o ms servicios a otros mdulos. Utiliza servicios suministrados por otros mdulos. No se considera un sistema independiente. Se componen de otros elementos simples del sistema.
Diseo arquitectnico
documento de diseo
Representaciones grficas de los modelos del sistema con el texto explicativo asociado. Describe cmo se estructura el sistema en subsistemas y cmo cada subsistema se estructura en mdulos. Los modelos grficos muestran diferentes perspectivas de la arquitectura. v Modelo estructural esttico v Modelo de proceso dinmico v Modelo de interfaz v Modelos de relacin
Diseo arquitectnico
Diseo arquitectnico
modelo de depsito
Los subsistemas deben intercambiar informacin con el fin de poder trabajar de forma conjunta y efectiva. Existen dos formas de poder hacerlo:
v Los datos compartidos se ubican en una base de datos central que puede ser accedida por todos los subsistemas: modelo de depsito. v Cada subsistema tiene su propia base de datos. Los datos se intercambian con otros subsistemas pasando mensajes entre ellos.
Diseo arquitectnico
modelo cliente-servidor
Es un modelo de sistemas distribuido que muestra cmo los datos y el procesamiento se distribuyen entre varios procesadores. Los componentes de este modelo c-s son:
v Un conjunto de servidores independientes que ofrecen servicios a otros subsistemas. v Un conjunto de clientes que llaman a los servicios ofrecidos por los servidores. v Una red que permite a los clientes acceder a estos servicios.
Diseo arquitectnico
Diseo arquitectnico
10
modelo de capas
Modela la interaccin entre los subsistemas. Organiza el sistema en una serie de capas cada una de las cuales suministra un conjunto de servicios. Permite el desarrollo incremental del sistema. Esta arquitectura es fcil de cambiar y portable.
Diseo arquitectnico
11
modelos de control
Los subsistemas deben controlarse para funcionar como un sistema. Los servicios deben entregarse en el destino correspondiente y en el momento justo. Los modelos estructurales no incluyen informacin de control. Estos modelos complementan a los modelos estructurales.
Diseo arquitectnico
12
control centralizado
Los modelos de control complementan a los modelos estructurales. Un subsistema se designa como controlador del sistema y tiene la responsabilidad de administrar la ejecucin de otros subsistemas. Las decisiones de control se determinan por el valor de algunas variables de estado del sistema. Los modelos de control centralizado se dividen en dos clases, dependiendo de si los subsistemas controlados se ejecutan secuencialmente o en paralelo. v Modelo de llamada-retorno v Modelo del administrador
Diseo arquitectnico
13
Diseo arquitectnico
14
Diseo arquitectnico
15
modelos de transmisin
Son efectivos para integrar subsistemas distribuidos. En principio, un evento se transmite a todos los subsistemas y cualquier subsistema que pueda manejar el evento responde al mismo. Los subsistemas registran un inters en eventos especficos. Cuando los eventos ocurren, el control se transfiere al subsistema que pueda manejar el evento. La poltica de control no est contenida en el controlador de eventos y mensajes. Los subsistemas deciden qu eventos requieren y el controlador asegura que estos eventos sean enviados a dichos subsistemas. El controlador mantiene un registro de subsistemas y de los eventos que a stos les interesa. Tambin comprende la comunicacin punto a punto.
Diseo arquitectnico
16
Diseo arquitectnico
17
descomposicin modular
Consiste en descomponer los subsistemas en mdulos. No existe una distincin clara entre descomposicin del sistema y descomposicin modular. Se pueden utilizar los modelos de estructuracin del sistema aunque existen otros modelos alternativos de descomposicin. Por otra parte, los componentes de los mdulos son ms pequeos que los subsistemas. Se debe evitar tomar decisiones prematuras a cerca de la concurrencia. v Modelos de objetos v Modelos de flujo de datos
Diseo arquitectnico
18
modelos de objetos
Los mdulos son objetos. El sistema se estructura en un conjunto de objetos dbilmente acoplados con interfaces bien definidas. Los objetos llaman a servicios ofrecidos por otros objetos haciendo referencia explcita al nombre y a la interfaz de los objetos. Las modificaciones se pueden realizar sin afectar a otros objetos. La estructura del sistema es bastante comprensible. Los objetos se pueden reutilizar.
Diseo arquitectnico
19
Diseo arquitectnico
20
Diseo arquitectnico
21
modelos genricos
Son abstracciones de varios sistemas reales que encapsulan las caractersticas principales de estos sistemas. Se pueden utilizar directamente en el diseo. Se derivan de forma ascendente a partir de los sistemas existentes. Pocos modelos genricos estn disponibles al pblico; las organizaciones que desarrollan estos modelos los ven como una propiedad intelectual necesaria para el desarrollo de futuros sistemas.
Diseo arquitectnico
22
modelos de referencia
Son modelos abstractos idealizados del dominio que describen a una clase mayor de sistemas. No necesariamente reflejan la arquitectura real de sistemas existentes en el dominio. Se utilizan para comunicar conceptos del dominio y comparar las posibles arquitecturas. Se derivan de forma descendente. Algunos patrones de diseo se consideran como arquitecturas de referencia.
Diseo arquitectnico
23
referencias bibliogrficas
Sommerville, I. Ingeniera de software, Addison Wesley, 2002. Pressman, R. Ingeniera del software: un enfoque prctico. McGrawHill, 2002.
Diseo arquitectnico
24