por Mayda Kurdian y Pablo Musso, del equipo
de desarrollo de ARTech
Construir aplicaciones capaces de ser adaptadas a diferentes realidades es de
vital importancia para el desarrollo de software. De esta forma, es posible
adaptarse rápidamente a los cambios que ocurren en las organizaciones y
reutilizar una aplicación en un amplio espectro de realidades.
Por esta razón se desarrollan aplicaciones genéricas que
son adaptadas en el momento de ejecución -o por lo menos en el momento de
instalación- utilizando por ejemplo, el patrón de desarrollo OAV (objeto,
atributo, valor).
Si bien el desarrollo de aplicaciones genéricas tiene
muchas ventajas, la explotación y realización de consultas sobre este tipo de
aplicaciones resulta confusa para el usuario final. Esto se debe básicamente a
que las bases de datos de estas aplicaciones pierden "semántica" y
"expresividad" ya que modelan una realidad más amplia, una realidad genérica
adaptable a diferentes clientes.
Para facilitar la
explotación de datos sobre las metadatas de atributos de aplicaciones genéricas
se incluyó en el Upgrade 1 de GXquery 2.0 y en la modalidad query
de GXplorer 5.0, la posibilidad de definir Atributos en el momento de ejecución.
De esta manera se permite reincorporar la semántica perdida en el modelo,
ocultando la complejidad de las aplicaciones genéricas y otorgando al usuario
final la posibilidad de realizar consultas sencillas.
Por ejemplo, si el atributo "Color del Producto" no está
representado en la base de datos como un atributo con nombre propio (Color del
producto) sino que está en una tabla genérica de características del producto
(OAV de producto), se permitirá definir en el GXquery, el atributo "Color de
Producto" y especificar dónde se almacena el mismo. De ahí en más, el usuario
final consultará en GXquery al atributo Color de Producto, como si se tratase de
un atributo cualquiera.
El desarrollo de aplicaciones genéricas incrementa la
complejidad de la aplicación, no obstante esta complejidad no se debe trasladar
al usuario final quien puede consultar dichas bases de datos en forma más
amigable y transparente con GXquery.
Más información técnica:
http://www.gxtechnical.com/gxdlsp/pub/gxquery/docum/releasenotes/20/oav.htm