Beruflich Dokumente
Kultur Dokumente
Arquitectura
Evidencia de aprendizaje. Lenguaje descriptor y patrones de arquitectura de software Alumno: Jernimo Coln Ortiz, Matrcula: AL10506040
1. Identifica y describe los diferentes lenguajes descriptores de arquitectura y agrega la utilidad que tiene.
AESOP
Su objetivo es explorar las bases formales de la arquitectura de software, el desarrollo del concepto de estilo arquitectnico y la produccin de herramientas tiles a la arquitectura.
1994
Garlan (CMU)
Es una herramienta para construir ambientes de diseo de software basada en principios de arquitectura.
ARTEK
Se lo conoce tambin como ARDEC/Teknowledge Architecture Description Language. El propsito de ADML (Architecture Description Markup Language) es estandarizar la descripcin de arquitecturas en base a XML, de modo que pueda ser leda por cualquier parser de XML.
1994
ADML
2000
Terry, Hayes-Roth, Erman (Teknowledge, DSSA) The Open Group Architectural Framework
Lenguaje especfico de dominio No es ADL Vincular descripciones arquitectnicas y modelos directamente con cualquier binario, scripting o entidad en cualquier plataforma y en cualquier lenguaje.
DARWIN
1. Soporta la descripcin de arquitecturas que se reconfiguran dinmicamente a travs de dos construcciones. 2. 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.
1991
C2 SADL
1. Los mensajes de requerimiento slo se pueden enviar hacia arriba en la arquitectura, y los de notificacin slo hacia abajo. 3. La comunicacin es a travs de MENSAJES.
1996
Taylor/Medvidovic (UCI)
ADL estilo
especfico
de
LILEANNA
MetaH
1. Soporta diferentes estilos de comunicacin, tales como variables compartidas, tuberas, paso de mensajes y blackboarding. 2. Mediante un sistema auxiliar llamado TOOR, se hace el rastreo (tracing) de dependencias entre objetos potencialmente evolutivos y relaciones entre objetos en funcin del tiempo. 1. MetaH est exclusivamente ligado a desarrollos hechos en Ada en el dominio de referencia. 1. En Rapide los puntos de interfaz de los componentes se llaman constituyentes. 2. En Rapide (al igual que en Darwin) no es posible poner nombre, sub-tipear o reutilizar un conector.
1993
1993
de
Rapide
1990
Luckham (Stanford)
Wright
1994
Garlan (CMU)
BlackBoard
Es una aplicacin de inteligencia artificial basada en una base comn de conocimientos llamada el pizarrn. A partir de la especificacin de un problema se plantea la solucin. Cada sistema experto enva a la pizarra una posible solucin. Si la solucin es aplicable queda como un borrador. Cada sistema experto interacta con el borrador hasta hallar una solucin final.
Cliente-Servidor
Se tiene una mquina cliente, que requiere un servicio de una mquina servidor, y ste realiza la funcin para la que est programado. El sistema queda distribuido entre mltiples procesadores donde hay clientes que solicitan servicios y servidores que los proporcionan. Los servicios se separan situndolos en su plataforma ms adecuada. Esto permite a los usuarios finales obtener acceso a la informacin en forma transparente an en entornos multiplataforma. En el modelo cliente servidor, el cliente enva un mensaje solicitando un determinado servicio a un servidor (hace una peticin), y este enva uno o varios mensajes con la respuesta (provee el servicio).
Computo Distribuido
Las computadoras interactan entre s, para lograr un objetivo en comn. Utiliza un gran nmero de computadoras organizado en racimos por medio de una estructura de telecomunicaciones. Cada usuario comparte tiempo de procesamiento de su mquina para manejar grandes volmenes de informacin.
Front-End, Back-End
Front-End.- Es la parte del software que interacta con los usuarios Back-End.- Es la parte que procesa la entrada de datos proveniente del Front-End El Front-End es responsable de recolectar los datos de entrada y los procesa conforme a las especificaciones del Back-End para que este las pueda utilizar. La conexin del Frot-End y el Back-End es de tipo interface ya sea de manera fsica o virtual.
Monoltico
Toda la estructura y grupo funcional est en un mismo lugar. Existen interfaces grficas de usuario (GUI). Servicios de presentacin, negocio y persistencia en la misma mquina. No hay concurrencia de usuarios. Alto acoplamiento entre niveles.
Tres capas
Cada capa est separada, nicamente puede comunicarse con la siguiente capa. Es la ms utilizada debido a su escalabilidad y flexibilidad La interfaz del usuario, la lgica funcional del proceso, almacenamiento de datos y acceso a los datos son desarrollados y mantenidos como mdulos independientes comnmente en plataformas separadas. Permite que cualquiera de sus capas sea reemplazada sin afectar a las dems.
Caso 1
Problema:
Varios usuarios manipulan la misma informacin almacenada en un Server, conectndose intermitentemente a dicho Server.
Principio de usabilidad:
Cada computadora es provista de un Sync Engine.
Contexto:
Se debe desarrollar un sistema que permita tener informacin idntica almacenada en diferentes equipos los cuales se encuentran conectados intermitentemente a la red. Muchos usuarios aplican cambios a la informacin de manera simultnea.
Fuerza:
La informacin almacenada en los equipos de cada usuario pierde el sincronismo cuando el usuario aplica cambios a su copia local y los equipos se conectan intermitentemente a la red.
Solucion:
El Sync Engine mantiene un seguimiento de las modificaciones que se aplican a la informacin local, intercambia modificaciones con otros dispositivos cada vez que se reconectan y detecta conflicto e implementa una estrategia de resolucin
Usuario
Usuario
Consecuencias:
Este patrn puede ser utilizado cuando la informacin almacenada en diferentes equipos no tiene que estar actualizada en tiempo real. La informacin poco estructurada debe ser comparada registro por registro lo que incrementa la probabilidad de conflictos no deseados. Este patrn no es aplicable a informacin de video o audio.
Caso 2
Problema:
Dada la gran cantidad de tareas que debe de realizar un usuario, tiene la necesidad de tener abiertos al mismo tiempo varios ventanas.
Solucion:
1. Retroalimentacin visual de navegacin directa: 2. Permite al usuario seleccionar directamente la ventana de la interfaz y mostrar de forma continua la ventana activa y desactiva.
Consecuencias:
El acceso directo a las ventanas del sistema no solo beneficia la manipulacin directa de ellas sino tambin la manipulacin de los objetos que retienen ya que cada ventana es definida en trminos de sus objetos de interaccin (e.g. iconos, tems de men, radio botones) los cuales permiten la adquisicin y la restitucin de informacin que requiere el usuario
5. En un archivo de texto, redacta un reporte con los elementos solicitados en los puntos 1, 2, 3 y 4.
2. Redacta una lista de manera tabular para cada patrn de arquitectura, incluyendo sus principales caractersticas.
Comentario Patrones de Arquitectura Relacionados a la interaccin de objetos dentro o entre niveles arquitectnicos Conceptos de ciencia de computacin en general, independiente de aplicacin
Problema Problemas arquitectnicos, adaptabilidad a requerimientos cambiantes, performance, modularidad, acoplamiento Claridad de diseo, multiplicacin de clases, adaptabilidad a requerimientos cambiantes, etc
Solucin Patrones de llamadas entre objetos (similar a los patrones de diseo), decisiones y criterios arquitectnicos, empaquetado de funcionalidad Comportamiento de factora, Clase-ResponsabilidadContrato (CRC)
Etapa de desarro
Diseo i
Patrones de Diseo
Diseo de
Patrones de Anlisis
Modelado del dominio, completitud, integracin y equilibrio de objetivos mltiples, planeamiento para capacidades adicionales comunes Productividad, comunicacin efectiva y eficiente
Modelos de dominio, conocimiento sobre lo que habr de incluirse (p. ej. logging & reinicio
Anli
Armado de equipo, ciclo de vida del software, asignacin de roles, prescripciones de comunicacin
Planeam
Implemen Mantenimiento