viernes, 25 de mayo de 2012

Términos de orientación a aspectos en español

Las pocas y diferentes referencias en español presentan diversas traducciones sobre los conceptos de aspectos. Algunos son cercanos a la idea en inglés, pero otros son totalmente equivocados. A continuación se presenta una lista de los términos más comunes junto con una breve explicación de la traducción.

Aspect – Aspecto. No tiene problema de traducción. Es una unidad de descomposición no funcional.

Join Point – Punto de Unión. Algunas referencias lo traducen como punto de enlace. Si bien la idea parece clara, podría prestarse a confusiones. El término enlace frecuentemente equivale a unión o conexión de algo con otra cosa, pero un aspecto no es simplemente una conexión. Por el lado del término unión, se encuentra que el término hace referencia más bien a la conformidad de una cosa con otra, e incluso, involucra la parte de composición. Dado que un aspecto forma parte de un esquema de modularidad y de composición desde el punto de vista arquitectónico, la traducción Punto de Unión es más acorde al significado de la definición: es un evento (punto) identificable en la ejecución de un programa, sobre el cuál un aspecto podrá coordinarse con un componente.

Pointcut – Corte en Puntos o simplemente Corte. Este es un término que más problema presenta para su traducción. El término hace referencia a un conjunto de puntos de unión, donde un aspecto aplicará su comportamiento. Se reporta frecuentemente la traducción punto de corte, la cual es incorrecta, debido esencialmente a que en realidad es un conjunto de lugares específicos en el código y además, por reglas gramaticales del inglés, cut aplica sobre point.

Advice – Aviso. Generalmente se traduce como consejo, no obstante, mientras consejo hace referencia a un dictamen, aviso está relacionado a una noticia o advertencia aunque de alguna forma se asocia a consejo. En el contexto de aspectos, advice es un mecanismo que se activa tras la identificación de un punto de unión; la activación en este contexto es el resultado de una notificación.

Crosscutting – Corte. Inicialmente esta palabra se escribió como cross-cut e incluso como cut across. Esencialmente se enfatizó ampliamente que un aspecto corta la funcionalidad básica del sistema atravesando potencialmente varios objetos, e incluso a otros aspectos. De esto se desprende que el corte es transversal, por lo que la traducción concreta es corte transversal, indicando que un aspecto interfiere con la funcionalidad básica del sistema. No obstante se prefiere simplemente escribirlo como corte. Mientras que corte (pointcut) como colección de puntos de unión es una cuestión técnica de lenguajes de programación, corte (crosscutting) como interferencia es una cuestión de modelación y descomposición no funcional.

Concern – Asunto, en algunos casos, Interés. Este es otro término que ha presentado problemas de traducción. En las primeras traducciones se encuentran palabras como incumbencias y preocupaciones, y ésta última se sigue utilizando erróneamente en muchos lugares y no es correcto expresar definiciones como “preocupaciones o incumbencias del software”. Para el caso de la palabra interés, es un término mucho más adecuado, no obstante al expresar qué es un interés, se suele definir en los mismos términos de interés, es decir, un interés es el interés de una persona en el software, generando en ocasiones una falta de precisión en el término. La palabra asunto describe la materia de que se trata, mientras interés describe el valor de algo. Si bien los dos términos son acordes a la traducción, es preferible utilizar asunto. Así, un asunto es el interés que tiene cada uno de los involucrados en el sistema (stakeholders) para su realización.


Ulises Juárez Martínez, PhD
Instituto Tecnológico de Orizaba