Articulo de referencia

AOP distribuido

La Programación Orientada a Aspectos (POA) presenta el principio de separación de responsabilidades , lo que permite una menor interdependencia y una mayor transparencia. Un asp...

La Programación Orientada a Aspectos (POA) presenta el principio de separación de responsabilidades , lo que permite una menor interdependencia y una mayor transparencia. Un aspecto es un módulo que encapsula una responsabilidad transversal y se compone de puntos de corte y cuerpos de consejos. La intercepción de un aspecto se realiza en un punto de unión (un punto en el flujo de ejecución) y se define dentro de un punto de corte (un conjunto de puntos de unión). Cada vez que la ejecución de la aplicación alcanza un punto de corte, se ejecuta un consejo (es decir, una función de devolución de llamada) asociado a él. Sin embargo, esta implementación no tiene en cuenta la separación de responsabilidades en entornos distribuidos. [ 1 ]

En contraste, la AOP distribuida es un paradigma que permite la intercepción distribuida. Define muchos conceptos nuevos, como los puntos de corte remotos, que son similares a las llamadas a métodos remotos tradicionales, ya que la ejecución se realiza en un host remoto. De esta manera, la AOP distribuida establece un contexto donde los aspectos pueden implementarse en un conjunto de hosts. En este sentido, la abstracción de punto de corte remoto [ 2 ] se considera el punto de partida de la AOP distribuida. Posteriormente, algunos trabajos [ 3 ] [ 4 ] [ 5 ] [ 6 ] han extendido esta idea de alguna manera, pero todos comparten el concepto de punto de corte remoto.

Un aspecto distribuido se define [ 7 ] como un módulo de software transversal que puede operar en múltiples hosts remotos para interceptar y alterar el comportamiento general de una aplicación distribuida . Esta entidad distribuida puede modificar o adaptar el sistema distribuido aplicando funcionalidades adicionales (asesoramiento remoto) en varios puntos de conexión ubicados en diferentes hosts (puntos de unión) y activados mediante conexiones distribuidas (puntos de corte remotos).

Referencias

  1. AS Tanenbaum y M. van Steen. Sistemas distribuidos: principios y paradigmas (2.ª edición). Prentice-Hall, Inc., Upper Saddle River, NJ, EE. UU., 2006.
  2. M. Nishizawa, S. Chiba y M. Tatsubori. Remote pointcut: una construcción de lenguaje para AOP distribuido. En AOSD '04. Nueva York, NY, EE. UU., 2004.
  3. Pawlak, R., Seinturier, L., Duchien, L., Florin, G., Legond-Aubry, F. y Martelli, L. 2004. JAC: un marco dinámico distribuido basado en aspectos. Softw. Pract. Exper. 34, 12 (octubre de 2004), 1119-1148.
  4. Benavides Navarro, LD, Südholt, M., Vanderperren, W., De Fraine, B., Suvée, D.: AOP explícitamente distribuido usando AWED. En Actas de la 5.ª Conferencia Internacional ACM sobre Desarrollo de Software Orientado a Aspectos (AOSD'06), marzo de 2006. ACM Press.
  5. Eric Tanter y Rodolfo Toledo, Un núcleo versátil para AOP distribuido, Lecture Notes in Computer Science 4025, pp. 316-331, 2006.
  6. B. Lagaisse y W. Joosen. Composición distribuida verdadera y transparente de componentes de aspecto. En Actas de Middleware'06, volumen 4290 de Lecture Notes in Computer Science, 2006.
  7. R. Mondéjar, P. García-Lopez, C. Pairot y L. Pamies-Juarez. Damon: un middleware AOP distribuido para escenarios a gran escala. Information and Software Technology (2011).