Patrones de diseño
Unidad II Patrones arquitectónicos
2.1 2.2 Introducción a los patrones arquitectónicos. Patrones estructurales
2.2.1 Capas 2.2.2 Tubos y filtros 2.3
2.4 2.5
Patrones para sistemas distribuidos
Patrones para sistemas interactivos Patrones para sistemas adaptables
Fuentes de Información
1.
2.
Somerville, I. Software Engineering.Addison-Wesley, 2004.
Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, S. Pattern-
Oriented Software Architecture: A System of Patterns. Wiley, 1996.
3.
Gamma, E., Helm, R., Johnson, R., Vlissides, J. Design Patterns. Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.
4.
Fayad, M. E., Schmidt, D. C. Object-oriented application frameworks. Communications of the ACM,Vol. 42, No. 10, 1997.
5.
Jonson, R. E. Frameworks = components + patterns. Communications of
the ACM, Vol. 42, No. 10, 1997.
6.
Mattson, M., Bosh, J., Fayad, M. E. Framework integration: problems, causes, solutions. Communcations of the ACM, Vol. 42, No. 10, 1997.
Introducción a Patrones Arquitectónicos
Patrones Arquitectonicos
Las arquitecturas de software sonconstruidas
bajo un cierto conjunto de principios con una estructura ya terminada.
A los principios de construccion de software se les conoce como patrones arquitectonicos.
Son plantillas para ciertas arquitecturas de
software en concreto.
Características de un patrón arquitectónico:
Expresa
un esquemas de organización estructural fundamental para los sistemas de software. Proveeun conjunto predefinido de subsistemas. Especifica sus responsabilidades e incluyen reglas y guías para organizar las relaciones entre ellas. Ayuda a especificar la estructura fundamental de una aplicación.
Características...
Son los patrones de mas alto nivel en un
sistema de patrones.
Todas las actividades de desarrollo siguientes
son gobernadas por esta estructura.
Cada patrón arquitectónico ayuda a lograr
propiedades del sistema globales y específicas.
Características...
Los patrones que apoyan propiedades similares se
agrupan como una categoría.
La selección de un patrón arquitectónico debe estar
influenciada por las propiedades generales de la aplicación específica.
La mayoría de los sistemas de software no pueden
estructurarsede acuerdo a un solo patrón arquitectónico. Se deben cumplir varios requisitos que pueden ser cubiertos por varios patrones arquitectónicos.
Patrones Estructurales
Capas Tubos y filtros
Los patrones arquitectónicos estructurales proveen divisiones del sistema desde un punto de vista de alto nivel.
Patrón de capas (layers). Patrón de tubos y filtros (pipes and filters).
Patrón decapas ( layers )
Este patrón arquitectónico ayuda a estructurar aplicaciones que pueden descomponerse en grupos
de sub tareas en las cuales cada grupo se encuentra en un nivel de abstracción específico.
Por ejemplo:
Los protocolos de red son el ejemplo mas conocido de arquitecturas de capas. Este protocolo consiste de un conjunto de reglas y convenciones que describen como se comunicanlos programas entre los límites de las computadoras. Se define el formato, contenido y significado de cada mensaje.
CONTEXTO
Un sistema grande que requiere descomposición. PROBLEMA Si se está desarrollando un sistema cuya característica dominante es una mezcla de aspectos de alto y bajo nivel, donde las operaciones de alto nivel confían en las de bajo nivel. Algunas partes del sistema manejanaspectos de bajo nivel como hardware, sensores, señales, etc.; mientras que otras partes manejan aspectos de alto nivel como la interfaz de usuario o la generación de reportes.
Un patrón del flujo de comunicación típico consiste de peticiones moviéndose del nivel alto al mas bajo y respuestas a las peticiones moviéndose en sentido inverso.
PROBLEMA (continuación)
Tales sistemas...
Regístrate para leer el documento completo.