Arquitectura
La diversidad de propuestas de métodos centrados en el diseño arquitectónico, sugiere la necesidad de establecer criterios de comparación que conduzcan a la definición de los aspectos deseables que tales métodos deben poseer. Trabajos realizados en este sentido facilitarían la escogencia de un método en particular, según losrequerimientos de un proyecto; al mismo tiempo que se convierten en puntos de partida para trabajos tendientes a lograr un método general de diseño arquitectónico que intente unificar las distintas propuestas y así cubrir de forma efectiva los distintos aspectos involucrados en el diseño arquitectónico.
En este sentido, los trabajos realizados por Losavio y otros (2001) y Ali Babar, Zhu, y Jeffery(2004), presentan marcos de referencia para la comparación y evaluación de métodos de diseño arquitectónico, ofreciendo un punto de partida para la definición de un cuerpo de características concebidas como deseables en un método de diseño arquitectónico. Se considera entonces que un método de diseño arquitectónico debe:
1. Poseer una infraestructura arquitectónico-conceptual clara: el cuerpo deconceptos sobre los que se fundamenta el método debe contemplar todas las definiciones que como consecuencia de la investigación en el área de la arquitectura de software, son universalmente aceptadas. En otras palabras, debe utilizar los conceptos de componentes, conectores, interfaces (roles en el caso de conectores y puertos en el caso de los componentes), estilos arquitectónicos,restricciones arquitectónicas, comportamientos, componentes estructurados, entre otros.
2. Tratar explícitamente los requerimientos no funcionales: ya que la arquitectura de software surge como una respuesta a la creciente importancia que los investigadores han otorgado al tratamiento temprano de los atributos de calidad, esta característica es vital para que un método de diseño arquitectónico pueda serconsiderado como tal. Ciertamente, son los requerimientos funcionales el punto de partida para la generación de una arquitectura inicial, pero son los requerimientos no funcionales los que van a dar forma final a dicha arquitectura a través de la adopción de mecanismos arquitectónicos que aseguren que el sistema ofrezca sus funcionalidades dentro de un entorno de calidad, en un dominio específico.3. Proporcionar mecanismos de derivación arquitectónica: cualquier método de diseño arquitectónico se iniciará a partir de un conjunto de requerimientos funcionales y no funcionales, generado como producto final de la actividad desplegada por un ingeniero de requerimientos. Una vez definido tal conjunto, el arquitecto de software debe convertir tales requerimientos en elementos de valorarquitectónico para la estructuración de una arquitectura preliminar o inicial. Este proceso se le conoce como derivación arquitectónica (Lamsweerde, 2003).
4. Aplicar mecanismos de descripción arquitectónica: para que se puedan obtener beneficios ciertos de una visión arquitectónica de los sistemas de software, se debe contar con formas de especificación que, además de describir expresamente aspectosarquitectónicos, posibiliten la aplicación de técnicas de análisis sobre tales descripciones (Guillén, 2002). Tales formas de descripción, deben proveer medios de abstracción adecuados que permitan expresar aspectos arquitectónicos de un sistema de software, evitando hacer referencia a los detalles de especificación. Como respuesta a lo anterior, surgen los ADLs (Arquitecture DescriptionLanguages) o Lenguajes de Descripción Arquitectónica. Un ADL proporciona una sintaxis concreta y un marco conceptual dentro del cual se produce un modelo arquitectónico de un sistema (Garlan, Monroe y Wile, 1997). Diversas han sido las propuestas que en esta área se han realizado (Guillén, 2002) sin conseguirse, no obstante, que su uso sea generalizado entre los arquitectos de software. En este sentido,...
Regístrate para leer el documento completo.