Professional Documents
Culture Documents
arquitectura de software
Unidad 1
Cuatrimestre 5
Patrones de arquitectura de software
Los patrones arquitectnicos podemos definirlos como La descripcin de un problema
particular y recurrente de diseo, que aparece en contextos de diseo especifico, y
presenta un esquema genrico de diseo, que aparece en contextos de diseo
especifico, 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 si.
Los patrones que dan soporte a propiedades similares pueden ser agrupados en las
siguientes categoras:
Sistemas Distribuidos
Sistemas Interactivos
Patrones Adaptables
Pizarra
Repositorio
Broker
CAGS
Cliente-Servidor
Modelo Vista Controlador
Presentacin Abstraccin Control
Microkernel
Reflexion
El nivel de abstraccin de estos patrones, es en un nivel alto, por lo que nos dan una
idea mas clara, de cmo estar conformada nuestra arquitectura, es decir, nos dan
una base donde apoyarnos.
As mismo, tenemos que tener claro, que la solucin optima y final, no necesariamente
implica utilizar solo un determinado patrn; podemos recurrir , en casi de ser necesario
al uso y combinacin de distintos patrones dependiendo de cmo se vaya
estructurando cada uno de los componentes del sistema
Por lo antes expuesto, es necesario tambin mencionar, que existen patrones con un
nivel de abstraccin mas bajo, es decir, mas detallados, que nos ayudan tener mayor
control sobre los componentes que vayamos a implementar en el sistema. Dichos
patrones son conocidos como: Patrones de diseo y patrones elementales.
Patrones de diseo:
Buschman nos dice al respecto que los patrones de diseo nos Proveen de un
esquema para refinar los subsistemas o componentes de un sistema de software, o las
relaciones entre ellos. Describe la estructura comnmente recurrente de los
componentes en comunicacin, que resuelve un problema general de diseo en un
contexto particular.
Clasificacin
Dentro de los patrones de diseo existen variaciones segn su nivel de granularidad y
abstraccin, lo que permite clasificarlo bajo dos criterios: Propsito, refleja que hace un
patrn teniendo en cuenta si es de creacin, estructural o de comportamiento; y
Ambito, especifica si un patrn se aplica primariamente a una clase o a un objeto.
De creacin: Abstrae el proceso de instalacin de objetos, su misin es permitir
construir sistemas independientes de la forma de creacin, composicin o
representacin de objetos. Un patrn de creacin de clases utiliza la herencia para
variar la clase que es instanciada. Un patrn de creacin de objetos delega la
instalacin en otro objeto.
Estructural: Controla como se componen las clases u objetos en la construccin de
estructuras mayores. Un patrn estructural de clases utiliza la herencia para componer
interfaces o implementaciones. Un patrn estructural de objetos describe la forma en
que se componen objetos para obtener nueva funcionalidad, adems se aade la
flexibilidad de cambiar la composicin en tiempo de ejecucin, lo cual no es posible
con la composicin de clases estticas.
De Comportamiento: Se relaciona con algoritmos, la forma en la que interactan las
clases u objetos y la asignacin de responsabilidades entre ellos. Los patrones de
comportamiento de clases utilizan la herencia para distribuir el comportamiento entre
las clases. As mismo, los patrones de comportamiento de objetos cooperan como un
grupo de objetos interconectados para realizar una tarea que un solo objeto no puede
realizar por si solo.
Comportamiento
Estructura
Creacin
Chain
Command
Interpreter
Iterator
Meadiator
Memento
Observer
State
Strategy
Metodo plantilla
Visitante
Adapter
Bridge
Composite
Decorator
Facade
Flyweight
Proxy
Modulo
Abstract Factory
Factory Method
Builder
Prototype
Sigleton
Patrones elementales
Modularidad
Interfaces mnimas
Encapsulacin
Objetos
Acciones y Eventos