Fundamentos de Arquitectura de Software: Estilos, ADLs y Vistas Clave

Clasificado en Informática

Escrito el en español con un tamaño de 4,99 KB

Estilos Arquitectónicos y su Clasificación

A diferencia de los patrones de diseño, que son centenares, los estilos arquitectónicos se organizan en seis o siete clases fundamentales y unos veinte ejemplos, como máximo. Cabe destacar el esfuerzo por subsumir todas las formas existentes de aplicaciones en un conjunto de dimensiones tan modestas.

Las arquitecturas complejas o compuestas resultan del agregado o la composición de estilos más básicos. Algunos estilos típicos incluyen:

  • Arquitecturas basadas en flujo de datos
  • Arquitecturas peer-to-peer
  • Arquitecturas de invocación implícita
  • Arquitecturas jerárquicas
  • Arquitecturas centradas en datos
  • Arquitecturas de intérprete-máquina virtual

Lenguajes de Descripción Arquitectónica (ADLs)

Los Lenguajes de Descripción Arquitectónica (ADLs) ocupan una parte importante del trabajo arquitectónico desde la fundación de la disciplina.

Se trata de un conjunto de propuestas de variado nivel de rigor, casi todas ellas de extracción académica, que fueron surgiendo desde comienzos de la década de 1990 hasta la actualidad, más o menos en paralelo con el proyecto de unificación de los lenguajes de modelado bajo la forma de UML.

Los ADLs difieren sustancialmente de UML, que al menos en su versión 1.x se estima inadecuado en su capacidad para expresar conectores en particular, y en su modelo semántico en general, para las clases de descripción y análisis que se requieren.

Los ADLs permiten modelar una arquitectura mucho antes de la programación de las aplicaciones que la componen, analizar su adecuación, determinar sus puntos críticos y, eventualmente, simular su comportamiento.

Existen unos veinte ADLs de gran relevancia y tal vez unos cuarenta o cincuenta propuestos en ponencias que no han resistido el paso del tiempo o que no han encontrado su camino en el mercado.

Frameworks y Vistas en Arquitectura de Software

Se examinarán primero las propuestas sobre organización de vistas desarrolladas en el contexto de los frameworks más influyentes.

Existen varios organismos de estándares (ISO, CEN, IEEE, OMG) que han codificado diferentes aspectos de la Arquitectura de Software (AS), cuando no la AS en su totalidad, con el objetivo de homogeneizar la terminología, los modelos y los procedimientos. Los resultados del trabajo de sus comités son especificaciones y recomendaciones de variada naturaleza, como:

  • RM-ODP
  • RUP
  • RDS
  • MDA
  • MOF
  • MEMO
  • XMI
  • IEEE 1471-2000

Los marcos arquitectónicos, como las metodologías de modelado de los organismos, suelen organizar las diferentes perspectivas de una arquitectura en términos de vistas (views). La mayoría de los frameworks y estrategias reconocen entre tres y seis vistas. Una vista es, para definirla sucintamente, un subconjunto resultante de practicar una selección o abstracción sobre una realidad, desde un punto de vista determinado [Hil99].

El Marco de Referencia de John Zachman

El marco de referencia para la arquitectura empresarial de John Zachman [Zac87] identifica 36 vistas en la arquitectura (“celdas”) basadas en seis niveles y seis aspectos:

  • Niveles:
    • Alcance (Scope)
    • Empresa
    • Sistema Lógico
    • Tecnología
    • Representación Detallada
    • Funcionamiento Empresarial
  • Aspectos:
    • Datos
    • Función
    • Red
    • Personas
    • Tiempo
    • Motivación

En el uso corriente de la AS, se ha estimado que este modelo es excesivamente rígido y demasiado articulado. Existe cierto consenso sobre su excesiva ambición y su posible obsolescencia. Los manuales recientes de ingeniería de software (por ejemplo [Pre02] [Pfl02]) suelen omitir toda referencia a este marco, que se estima perteneciente a una esfera de Gestión de la Información y estrategia empresarial, antes que inscrito en el campo de la arquitectura.

El framework ha estado también bajo considerables críticas [Cib98] [Keen91]. No obstante, hay que reconocer que tres de las vistas propuestas por Zachman ya en 1982 (conceptual, lógica y física) se corresponden con el modelo de vistas de los marcos de referencia posteriores.

Modelo de Referencia para Procesamiento Distribuido Abierto (RM-ODP)

El Modelo de Referencia para Procesamiento Distribuido Abierto (RM-ODP) es un estándar de ISO y de ITU (anteriormente CCITT) que define un marco para la especificación arquitectónica de grandes sistemas distribuidos. Define, entre otras cosas, cinco puntos de vista (viewpoints) para un sistema y su entorno:

  • Empresa
  • Información
  • Computación
  • Ingeniería
  • Tecnología

Entradas relacionadas: