Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Email: FA1214963@unadmexico.mx
Asignatura: Diseo y arquitectura de software
Unidad: 1
Tema: Evidencia de aprendizaje. Lenguaje
descriptor y patrones de arquitectura de software
Tabla de contenido
Lenguaje descriptor y patrones de arquitectura de software ....................................... 4
Acme ................................................................................................................... 5
Aesop .................................................................................................................. 5
ArTek ................................................................................................................... 5
Armani ................................................................................................................. 5
C2 SADL .............................................................................................................. 5
CHAM .................................................................................................................. 5
2. Identifica y describe los patrones de arquitectura y agrega la utilidad que tienen. 6
Ejemplo 1 ........................................................................................................... 10
Ejemplo 2 ........................................................................................................... 12
Aesop
Se basa en el estilo de tubera y filtros propio de UNIX.
ArTek
Capacidad de modelar ciertos aspectos de una arquitectura.
Armani
Es un lenguaje puramente declarativo que describe la estructura del sistema y las
restricciones a respetar, pero no hace referencia alguna a la generacin del
sistema o a la verificacin de sus propiedades no funcionales o de consistencia
C2 SADL
Los conectores trasmiten mensajes entre componentes, los cuales mantienen el
estado, ejecutan operaciones e intercambian mensajes con otros componentes a
travs de dos interfaces (llamadas top y bottom).
CHAM
Proporciona una base til para la descripcin de una arquitectura debido a su
capacidad de componer especificaciones para las partes y describir explcitamente
las reglas de composicin.
Arquitectura en pizarra
La arquitectura en pizarra consta de mltiples elementos funcionales,
denominados agentes, y un instrumento de control denominado pizarra.
Los agentes suelen estar especializados en una tarea concreta o elemental. Todos
ellos cooperan para alcanzar una meta comn, si bien, sus objetivos individuales
no estn aparentemente coordinados.
El comportamiento bsico de cualquier agente consiste en examinar la pizarra,
realizar su tarea y escribir sus conclusiones en la misma pizarra. De esta manera,
otro agente puede trabajar sobre los resultados generados por otro.
Peer-to-peer
Una red peer-to-peer, red de pares, red entre iguales, red entre pares o red punto
a punto (P2P, por sus siglas en ingls) es una red de computadoras en la que
todos o algunos aspectos funcionan sin clientes ni servidores fijos, sino una serie
de nodos que se comportan como iguales entre s.
Es decir, actan simultneamente como clientes y servidores respecto a los
dems nodos de la red. Las redes P2P permiten el intercambio directo de
informacin, en cualquier formato, entre los ordenadores interconectados.
Normalmente este tipo de redes se implementan como redes superpuestas
construidas en la capa de aplicacin de redes pblicas como Internet.
Ejemplo 2
El siguiente ejemplo ilustra la descripcin de un modelo de tubera y filtros en
Armani:
Style Pipe-and-Filter = {
// Definir el vocabulario de diseo
// Definir el tipo de flujo
Property Type flowpathRecT = Record [ fromPt : string; toPt : string; ];
// Definir tipos de puerto y rol
Port
Port
Role
Role
Type
Type
Type
Type
Peso Ligero (Flyweight): Elimina la redundancia o la reduce cuando tenemos gran cantidad
de objetos con informacin idntica.
Lenguajes descriptores
Darwin
Darwin es un lenguaje de descripcin arquitectnica desarrollado por Jeff Magee y
Jeff Kramer [MEDK95, MK96]. Darwin describe un tipo de componente mediante
una interfaz consistente en una coleccin de servicios que son ya sea provistos
(declarados por ese componente) o requeridos (o sea, que se espera ocurran en
el entorno).
Las configuraciones se desarrollan instanciando las declaraciones de
componentes y estableciendo vnculos entre ambas clases de servicios.
Darwin soporta la descripcin de arquitecturas que se reconfiguran dinmicamente
a travs de dos construcciones: instanciacin tarda [lazy] y construcciones
dinmicas explcitas. Utilizando instanciacin laxa, se describe una configuracin y
se instancian componentes slo en la medida en que los servicios que ellos
provean sean utilizados por otros componentes. La estructura dinmica explcita,
en cambio, se realiza mediante constructos de configuracin imperativos. De este
modo, la declaracin de configuracin deviene un programa que se ejecuta en
tiempo de ejecucin, antes que una declaracin esttica de la estructura.
Cada servicio de Darwin se modeliza como un nombre de canal, y cada
declaracin de binding es un proceso que trasmite el nombre del canal al
componente que requiere el servicio. En una implementacin generada en Darwin,
Rapide
Se puede caracterizar como un lenguaje de descripcin de sistemas de propsito
general que permite modelar interfaces de componentes y su conducta
observable. Sera tanto un ADL como un lenguaje de simulacin. La estructura de
Rapide es sumamente compleja, y en realidad articula cinco lenguajes: el lenguaje
de tipos describe las interfaces de los componentes; el lenguaje de arquitectura
describe el flujo de eventos entre componentes; el lenguaje de especificacin
describe restricciones abstractas para la conducta de los componentes; el
lenguaje ejecutable describe mdulos ejecutables; y el lenguaje de patrones
describe patrones de los eventos. Los diversos sub-lenguajes comparten la misma
visibilidad, scoping y reglas de denominacin, as como un nico modelo de
ejecucin.