You are on page 1of 5

Un planteamiento reciente, propuesto por Bass et al.

(1999), consiste en los


estilos arquitectnicos basados en atributos (ABAS), que se establecen
como una extensin de la nocin de estilo arquitectnico, mediante la
asociacin de modelos analticos de atributos de calidad. En este sentido,
los autores proponen que estos estilos incluyen un razonamiento cualitativo
o cuantitativo, basado en modelos especficos de atributos de calidad. Un
estilo arquitectnico basado en atributos incluye:
La topologa de los tipos de componentes y una descripcin del patrn de
los datos y control de interaccin entre ellos, de acuerdo con la definicin
estndar Un modelo especfico de atributos de calidad que provee un
mtodo de razonamiento acerca del comportamiento de los tipos de
componentes que interactan en el patrn definido El razonamiento que
resulta de la aplicacin del modelo especfico de atributos de calidad a la
interaccin de los tipos de componentes
21
Bass et al. (1999) proponen los estilos arquitectnicos como elementos
importantes para el diseo, en tanto estos pueden ser elegidos basndose
en el entendimiento de las metas de calidad del sistema en construccin.
En este sentido, su planteamiento incluye la extensin del concepto de
estilo arquitectnico, incluyendo modelos analticos de atributos de calidad.
Un estilo arquitectnico basado en atributos (ABAS) consta de cinco partes
(Bass et al., 1999), que se muestran en la tabla 9.
Elemento Descripcin Descripcin del problema Describe el problema de
diseo que el ABAS pretende resolver, incluyendo el atributo de calidad de
inters, el contexto de uso, y requerimientos especficos relevantes al
atributo de calidad asociado Medidas del atributo de calidad Contiene los
aspectos medibles del modelo de atributos de calidad. Incluye una discusin
de los eventos que causan que la arquitectura responda o cambie Estilo
Arquitectnico Descripcin del estilo arquitectnico en trminos de
componentes, conectores, propiedades de los componentes y conexiones,
as como patrones de datos y control de interacciones Parmetros de
atributos de calidad Especificacin del estilo arquitectnico en trminos de
los parmetros del modelo de calidad
Anlisis
Descripcin de cmo los modelos de atributos de calidad estn formalmente
relacionados con los elementos del estilo arquitectnico y las conclusiones
acerca del comportamiento arquitectnico que se desprende de los modelos
Tabla 9. Partes que conforman un estilo arquitectnico basado en atributos
(ABAS)
4.2. Patrn Arquitectnico

Buschmann et al. (1996) define patrn como una regla que consta de tres
partes, la cual expresa una relacin entre un contexto, un problema y una
solucin. En lneas generales, un patrn sigue el siguiente esquema:
Contexto. Es una situacin de diseo en la que aparece un problema de
diseo Problema. Es un conjunto de fuerzas que aparecen repetidamente
en el contexto Solucin. Es una configuracin que equilibra estas fuerzas.
sta abarca: Estructura con componentes y relaciones Comportamiento a
tiempo de ejecucin: aspectos dinmicos de la solucin, como la
colaboracin entre componentes, la comunicacin entre ellos, etc.
Partiendo de esta definicin, propone los patrones arquitectnicos como
descripcin de un problema particular y recurrente de diseo, que aparece
en contextos de diseo especfico, y presenta un esquema genrico
demostrado con xito para su solucin. El esquema de solucin se
especifica mediante la descripcin de los componentes que la constituyen,
sus responsabilidades y desarrollos, as como tambin la forma como estos
colaboran entre s.
22
As mismo, Buschmann et al. (1996) plantean que los patrones
arquitectnicos expresan el esquema de organizacin estructural
fundamental para sistemas de software. Provee un conjunto de subsistemas
predefinidos, especifica sus responsabilidades e incluye reglas y pautas para
la organizacin de las relaciones entre ellos. Propone que son plantillas para
arquitecturas de software concretas, que especifican las propiedades
estructurales de una aplicacin - con amplitud de todo el sistema - y tienen
un impacto en la arquitectura de subsistemas. La seleccin de un patrn
arquitectnico es, por lo tanto, una decisin fundamental de diseo en el
desarrollo de un sistema de software.
Visto de esta manera, el concepto de patrn arquitectnico propuesto por
Buschmann et al. (1996) equivale al establecido por Shaw y Garlan (1996)
para estilo arquitectnico, quienes tratan indistintamente estos dos
trminos.
Barbacci et al. (1997) hacen la analoga de la construccin de una
arquitectura de un sistema complejo como la inclusin de instancias de ms
de un patrn arquitectnico, compuestos de maneras arbitrarias. La
coleccin de patrones arquitectnicos debe ser estudiada en trminos de
factores de calidad e intereses, en anticipacin a su uso. Esto quiere decir
que un patrn puede ser analizado previamente, con la intencin de
seleccionar el que mejor se adapte a los requerimientos de calidad que
debe cumplir el sistema. De manera similar, Barbacci et al. (1997)
proponen que debe estudiarse la composicin de los patrones, dado que
sta puede dificultar aspectos como el anlisis, o poner en conflicto otros
atributos de calidad. La tabla 10 presenta algunos patrones arquitectnicos,

adems de los atributos que propician y los atributos en conflicto, de


acuerdo a Buschmann et al. (1996).
Patrn Arquitectnico Descripcin Atributos asociados
Atributos en conflicto
Layers
Consiste en estructurar aplicaciones que pueden ser descompuestas en
grupos de subtareas, las cuales se clasifican de acuerdo a un nivel particular
de abstraccin.
Reusabilidad Portabilidad Facilidad de Prueba
Desempeo Mantenibilidad
Pipes and Filters
Provee una estructura para los sistemas que procesan un flujo de datos.
Cada paso de procesamiento est encapsulado en un componente filtro
(filter). El dato pasa a travs de conexiones (pipes), entre filtros adyacentes.
Reusabilidad Mantenibilidad Desempeo
Blackboard
Aplica para problemas cuya solucin utiliza estrategias no determinsticas.
Varios subsistemas ensamblan su conocimiento para construir una posible
solucin parcial aproximada.
Modificabilidad Mantenibilidad Reusabilidad Integridad
Desempeo Facilidad de Prueba
Broker
Puede ser usado para estructurar sistemas de software distribuido con
componentes desacoplados que interactan por invocaciones a servicios
remotos. Un componente broker es responsable de coordinar la
comunicacin, como el reenvo de solicitudes, as como tambin la
transmisin de resultados y excepciones. Modificabilidad Portabilidad
Reusabilidad Escalabilidad Interoperabilidad
Desempeo
23
Model-View- Controler
Divide una aplicacin interactiva en tres componentes. El modelo (model)
contiene la informacin central y los datos. Las vistas (view) despliegan
informacin al usuario. Los controladores (controlers) capturan la entrada

del usuario. Las vistas y los controladores constituyen la interfaz del


usuario.
Funcionalidad Mantenibilidad
Desempeo Portabilidad
Tabla 10 (a) Patrones arquitectnicos y atributos de calidad
Patrn Arquitectnico Descripcin Atributos asociados
Atributos en conflicto
Presentation- Abstraction- Control
Define una estructura para sistemas de software interactivos de agentes de
cooperacin organizados de forma jerrquica. Cada agente es responsable
de un aspecto especfico de la funcionalidad de la aplicacin y consiste de
tres componentes: presentacin, abstraccin y control.
Modificabilidad Escalabilidad Integrabilidad
Desempeo Mantenibilidad
Microkernel
Aplica para sistemas de software que deben estar en capacidad de adaptar
los requerimientos de cambio del sistema. Separa un ncleo funcional
mnimo del resto de la funcionalidad y de partes especficas pertenecientes
al cliente.
Portabilidad Escalabilidad Confiablidad Disponibilidad
Desempeo
Reflection
Provee un mecanismo para sistemas cuya estructura y comportamiento
cambia dinmicamente. Soporta la modificacin de aspectos fundamentales
como estructuras tipo y mecanismos de llamadas a funciones.
Modificabilidad Desempeo
Tabla 10 (b). Patrones arquitectnicos y atributos de calidad (Continuacin)
Con la intencin de hacer una comparacin clara entre estilo arquitectnico
y patrn arquitectnico, la tabla 11 presenta las diferencias entre estos
conceptos, construida a partir del planteamiento de Buschmann et al.
(1996).
Estilo Arquitectnico Patrn Arquitectnico Slo describe el esqueleto
estructural y general para aplicaciones Existen en varios rangos de escala,
comenzando con patrones que definen la estructura bsica de una
aplicacin Son independientes del contexto al que puedan ser aplicados

Partiendo de la definicin de patrn, requieren de la especificacin de un


contexto del problema
Cada estilo es independiente de los otros
Depende de patrones ms pequeos que contiene, patrones con los que
interacta, o de patrones que lo contengan
Expresan tcnicas de diseo desde una perspectiva que es independiente
de la situacin actual de diseo
Expresa un problema recurrente de diseo muy especfico, y presenta una
solucin para l, desde el punto de vista del contexto en el que se presenta
Son una categorizacin de sistemas Son soluciones generales a problemas
comunes
Tabla 11. Diferencias entre estilo arquitectnico y patrn arquitectnico.
24
4.3. Patrn de Diseo
Un patrn de diseo provee un esquema para

You might also like