viernes, 28 de agosto de 2015

LENGUAJES DE PATRONES DE ARQUITECTURA DE SOFTWARE

Como siempre en cada entrada de este blog, lo que trato es de compartir temas relacionados con la clase y en esta ocasión encontré un articulo de la universidad de Pereira algo interesante, el cual hablan un poco de la arquitectura de software visto como una herramienta de ayuda y su vez resaltando el arte que esta contiene, profundizando hasta el tema de lenguajes de patrones de arquitectura de software. Lo que intentare en esta entrada sera de resaltar las características mas importantes que considero encontrados en este articulo.



Como primera medida me parece importante dar una referencia de la definición de arquitectura de software, que de manera general, se define como un nuevo paradigma o nueva forma de ver un sistema de información desde un punto de vista holístico, donde cada componente afecta los requerimientos fundamentales, ya sean funcionales o no funcionales. Esta disciplina aborda estos requerimientos rigurosamente y garantiza un buen diseño de la aplicación final, lo que redunda en mejor calidad, un mayor retorno de inversión de los proyectos y garantiza una mejor mantenibilidad de los sistemas de información construidos. Otra definición es la de George Fairbanks quien define la Arquitectura de Software como: La ciencia que trata el diseño de un sistema de información y del impacto de sus cualidades como: desempeño, seguridad, modificabilidad entre otras.

De forma histórica y evolutiva, el articulo muestra el cambio que se tuvo de la ingeniería de software a la arquitectura de software.

La Ingeniería de Software tuvo sus inicios en la década de los sesenta y a partir de allí a evolucionado de forma constante a través de las últimas seis décadas. En los años cincuenta se inició con el intentó imitar la ingeniería de hardware y se pensó en ese entonces que la utilización del método científico brindaría un soporte investigativo suficiente para obtener un proceso técnico coherente. Finalizando el siglo XX la ingeniería evolucionó como un área de estudio más estructurada y con fundamentos teóricos fuertes. Desde entonces la voluntad de los ingenieros fue de mejorar la calidad del software construido y de dar herramientas que facilitaran el trabajo a diseñadores e implementadores de sistemas de información en general.



Dominios específicos de aplicación


Los lenguajes de patrones han ocupado un lugar muy importante en los diseños de Arquitectura de Software. Se aplican tanto en proyectos de investigación y como en proyectos comerciales de desarrollo de software.

Una ejemplo de cómo los lenguajes de patrones pueden ser usados en dominios específicos se puede observar en el proyecto realizado por IBM donde se define un lenguaje de patrones para aplicaciones eBusiness. Este lenguaje divide los patrones de arquitectura en cuatro categorías: Patrones de negocios, patrones de integración, patrones de aplicación y patrones de ejecución, los cuales parten la arquitectura completa en tres capas principales como se sigue: Capa de negocios, capa de integración y Middleware o Capa de infraestructura. A continuación se define cada uno de las categorías que conformaron el lenguaje propuesto.

Patrones de negocio: mapea las interacciones entre los actores del negocio y las funcionalidades del sistema en particular. Patrones de Integración: Estos se definen como ortogonales a la capa de negocios, creando soluciones particulares que al integrarse soportan las funcionalidades de un sistema en particular.
Patrones de Aplicación: Estos patrones refinan los patrones de negocio e integración subdividiendo los subsistemas en componentes que proveen interfaces claras de implementación de funcionalidades del sistema a diseñar.
Patrones de Ejecución: Refinan los componentes del patrón de aplicación descomponiéndolos en componentes más pequeños sobre la infraestructura o middleware. Ya en este lenguaje los patrones intervienen directamente en la capa física de la aplicación con infraestructura y tecnología.

Esta subdivisión de patrones permite una variedad de soluciones de diseño reusables por diversas aplicaciones en este dominio en particular.

Los Lenguajes de Patrones citados anteriormente han sido utilizados por la industria, y estos se originaron de proyectos de investigación. Otras universidades e investigadores han desarrollado diversos Lenguajes los cuales hoy en día se han convertido en estándares de facto. A continuación se mencionan algunos estos.



http://200.21.217.140/index.php/revistaciencia/article/view/8595

No hay comentarios:

Publicar un comentario