Os padróns arquitectónicos, ou padróns de arquitectura ofrecen solucións a problemas de arquitectura software na enxeñaría de software. Un padrón arquitectónico proporciona unha descrición dos elementos que compoñen un sistema e o tipo de relación que teñen, xunto cun conxunto de restricións sobre as súas responsabilidades e interaccións. O esquema de organización estrutural e de comportamento expresado por un padrón arquitectural presenta unha solución aplicable a diferentes sistemas, en relación normalmente aos seus requirimentos funcionais ou non funcionais mais abstractos. Dise a miúdo que os padróns de arquitectura son solucións organizacionais estritamente descritas e comunmente dispoñibles. En comparación cos padróns de deseño, os padróns arquitectónicos teñen un nivel de abstracción maior.

Aínda que un padrón arquitectónico comunica unha imaxe do sistema, non é unha arquitectura como tal. Un padrón arquitectónico é un concepto que captura elementos esenciais dunha arquitectura de software. Moitas arquitecturas diferentes poden implementar un mesmo padrón e polo tanto compartir as mesmas características.

Un dos aspectos máis importantes dos padróns arquitectónicos é que encarnan diferentes atributos de calidade. Por exemplo, algúns padróns representan solucións a problemas de rendemento e outros poden ser utilizados con éxito en sistemas de alta dispoñibilidade. Durante as fases mais temperás do deseño, a persoa ou persoas co rol de arquitectas de software escollen que padróns arquitectónicos ofrecen de mellor maneira as calidades desexadas para o sistema.

Exemplos de padróns arquitectónicos inclúen os seguintes:

Padróns de acceso e configuración de servizos: Fachada envoltorio (wrapper facade) Configurador de compoñentes Interceptador Extensión de interface Padróns de xestión de eventos: Reactor Proactor Token de finalización asíncrono Aceptador-conector Padróns de concorrencia: Obxecto activo Obxecto monitor Metade-síncrono/metade-asíncrono Líder/seguidores Almacenamento específico

Dominios no deseño de padróns

Control de acceso. Hai moitas situacións nas cales o acceso a datos, características e funcionalidade son limitadas á definición dos usuarios. Desde un punto de vista arquitectónico, acceder a determinadas partes do software debe ter un rigoroso control. Concorrencia. Moitas aplicacións deben manexar múltiples tarefas de forma que simule o paralelismo. Hai moitas formas de manexar esta concorrencia e cada unha delas pode ser presentada por un padrón arquitectónico diferente. Distribución. O problema da distribución dirixe o problema de forma en que os sistemas ou compoñentes se comunican con outros nun contorno distribuído. O padrón máis común para afrontar o problema é the broker. Actuando como un home no medio entre o compoñente cliente e o servidor. O cliente envía unha mesaxe ó broker e este encárgase de completar a conexión. Persistencia. Os datos persistentes son almacenados en bases de datos ou arquivos e poden ser lidos ou modificados por outros procesos máis adiante. Nos contornos orientados a obxectos isto vai máis alá e o que pode ser accedido ou modificable son as propiedades dos obxectos.

Categoría:Enxeñaría de software