You are on page 1of 55

c  


     

cc      


    
Con el paso de los años, la tecnología de tratamiento de la información ha ido
evolucionando para dar respuesta a nuevas interrogantes planteadas por el hombre.
Esta afirmación no revela nada nuevo en sí, pero nos permite tener presente que el
tratamiento de la información busca constantemente enfoques que permitan que la
representación de los datos sea lo más similar a como los encontramos en el mundo
real de donde se los toma para procesarlos.

La idea de representar fielmente la realidad nos lleva a grados de abstracción que


hacen que las actuales formas de representación vayan quedando atrás o
simplemente obsoletas. En el caso de las bases de datos, este punto se vuelve
delicado, ya que dentro de una organización las decisiones pasan por contar con
información veraz y oportuna, por lo que sus sistemas de información deben
encontrarse bien construidos y soportados por un eficiente mecanismo de
manipulación (en su más amplio sentido) de los datos necesarios para obtener
información, y ambos elementos (mecanismo de manipulación y sistemas de
información) deben ser consistentes entre sí.

En la actualidad se utiliza bastante el modelo relacional de bases de datos para


suministrar datos (valga la redundancia) a aplicaciones (que forman los sistemas de
información) construidas con lenguajes orientados a objeto. Si bien es cierto que esta
fórmula ha dado buenos resultados, el afán de búsqueda de nuevos enfoques de
representar datos está encaminado a encontrar la forma de reflejar tales datos de
forma que puedan, de alguna manera, ³comportarse´ como elementos del mundo real;
en otras palabras, se intenta ³dar vida propia´ a los datos para que sean éstos los que
se ³preocupen´ de su propia integridad.

Durante el desarrollo del presente trabajo pretendemos un enfoque de bases de


datos, el de las bases de datos orientadas a objetos, con el objetivo de conocer el
estado de desarrollo en que este enfoque se encuentra hoy en día, comprender en
qué consiste, esto es: sus conceptos, principios, fundamentos, alcances y
limitaciones, conocer los componentes de un sistema de administración de Bases de
Datos Orientadas a Objetos, para finalizar con las actuales implementaciones que se
han hecho de este enfoque.

ï 
  
   


^    
   

Tal como su nombre lo indica, las bases de datos orientadas a objeto (BDOO)
se basan en el paradigma orientado a objetos, un paradigma que involucra análisis,
diseño y lenguajes orientados a objetos, entre otros. Toda esta temática se basa en el
concepto básico de objeto, que constituye la piedra angular de estos enfoques, el que
a su vez envuelve una serie de otros conceptos que nos permiten conocer y describir
lo que un objeto es y cual es su funcionalidad. Por lo tanto, se definirán tales
conceptos, con los que empezaremos a familiarizarnos con las BDOO.

El paradigma orientado a objetos parte considerando a cada entidad del mundo real
como un objeto, por lo que, según esta idea, el mundo entero está formado por
objetos, llegando a decirse que nos encontramos viviendo rodeados de objetos. Cada
elemento del mundo real es un objeto, esto significa que en cada uno de ellos
podemos reconocer un conjunto de atributos que son propios de cada objeto y que
determinan sus características y su apariencia, además podemos asociar a cada uno
de esos objetos un conjunto de acciones que pueden realizar, lo que se conoce como
las capacidades del objeto. Esta idea en su esencia permite captar el mundo real de
una manera muy cercana a como realmente es, por lo que no es difícil de asimilar y
comprender, por ser un concepto bastante intuitivo. En este punto se describirán de
un modo más formal los conceptos involucrados en el paradigma orientado a objetos.
Tales conceptos son: objeto, clase, abstracción, herencia, encapsulamiento y método,
todos ellos fundamentales para comprender el enfoque de BDOO.

-   : Principalmente un objeto tiene asociado un conjunto de variables que


contienen los datos del objeto, siendo el valor de cada variable un objeto, además
de un conjunto de mensajes a los que el objeto responde, refiriéndonos como
mensaje al paso de solicitudes entre objetos sin tener en cuenta detalles
específicos de implementación.

-    
: Significa alcanzar un grado de reconocimiento de las similitudes
entre objetos, situaciones, o procesos del mundo real y determinar cuales de estas
similitudes considerar y cuales ignorar. Es una descripción simplificada que
enfatiza algunos detalles o propiedades mientras que suprime otros quedando solo
aquellos detalles que tiene real significación para la situación que se plantee. La
abstracción sólo existe si puede ser descrita, comprendida y analizada
independientemente del mecanismo que eventualmente será usado para
realizarla. En otras palabras, denota las características esenciales de un objeto
que lo distingue de cualquier otro tipo de objeto obteniendo así fronteras
conceptuales bien definidas relativas a la perspectiva del observador (abstracción
del objeto).

-  : Normalmente en una base de datos existen muchos objetos similares, es


decir, estos objetos responden a los mismos mensajes, utilizan los mismos
métodos y tienen variables del mismo nombre y tipo. Por tanto, agrupamos los
objetos similares para que formen una clase. A cada uno de estos objetos se les
llama instancia de su clase. Todos los objetos de una clase comparten una
definición común, aunque difieran en los valores asignados a las variables. El
concepto de clases es similar al concepto de Tipos Abstracto de Datos (TAD),
aunque en el concepto de clase los aspectos adicionales son bastante más
numerosos, entre ellos: una variable con valores en un conjunto cuyo valor es el
conjunto de todos los objetos que son instancias de la clase; implementación de
un método para el nuevo mensaje, el cual crea una nueva instancia de la clase.
Ahora bien, como la definición de una clase consta de variables, las que son en sí
una instancia de la clase a la que ellas pertenecen, se genera lo que se denomina
una jerarquía de clases, en donde una clase se compone de un conjunto de
subclases que son a su vez clases formadas por subclases y así en forma
sucesiva. Por lo general una clase se define por su nombre y por la colección de
objetos que forman parte de ella.

- j
  
: El concepto de encapsulamiento es una de las características
principales de los lenguajes y sistemas orientados a objetos. También está
relacionado con los conceptos de tipos de datos abstractos y de ocultación de
información en los lenguajes de programación. La idea principal es definir el
comportamiento de un tipo de objeto con base en las operaciones que se pueden
aplicar externamente a objetos de ese tipo. La estructura interna del objeto queda
oculta y sólo se puede tener acceso a él a través de una serie de operaciones
predefinidas, algunas de las cuales pueden servir para crear o destruir objetos,
actualizar el estado de los mismos, para obtener partes del valor del objeto o bien
aplicar cálculos a dicho valor, pudiendo estas operaciones ser mezcladas entre sí.
Los usuarios externos sólo perciben la interfaz del objeto, la que define los
nombres y argumentos de cada operación, la implementación del objeto queda
oculta, esto significa que también quedan ocultas las definiciones de estructuras
de datos internas y la implementación de las operaciones que tienen acceso a
tales estructuras.

-  : Trozo de código que sirve para implementar cada mensaje. Un método
devuelve un valor como respuesta al mensaje, que puede o no ser un objeto. En
otras palabras, los métodos definen las capacidades que el objeto posee y a las
que va a responder al recibir determinados mensajes, es decir, es la forma en que
un objeto actúa y reacciona frente a ese mensaje. Por lo regular, un método se
invoca enviando un mensaje al objeto para que se ejecute el método
correspondiente. Cabe señalar, que como parte de la ejecución de un método,
puede enviarse un mensaje subsiguiente a otro objeto y este mecanismo puede
servir para devolver valores de los objetos al entorno externo y/o a otros objetos.

- 
 : Hay situaciones que no pueden representarse adecuadamente usando
una jerarquía de clases. Esto es debido a que existen objetos que poseen
similitudes, pero que en realidad reflejan objetos diferentes. El concepto de
herencia múltiple se refiere a la capacidad para heredar variables y métodos de
múltiples superclases. Cuando se emplea la herencia múltiple es posible que se dé
ambigüedad en el caso en que puede heredarse la misma variable o método de
más de una superclase.

D     
   
 

Para definir qué es una BDOO, recordemos en que consiste una Base de
Datos. La definición de BD dice que es ³una colección de datos a los que se da una
cierta organización que permite su administración´, por lo que su propósito es el
manejo de grandes volúmenes de información. Ahora, como ya se ha dicho, las
BDOO se basan en el enfoque de orientación a objetos, por lo tanto ya no se
consideran datos en forma simple, si no que se empieza a hablar de almacenamiento
de objetos, o más bien, hacer permanente el estado de los objetos a lo largo del
tiempo. La definición de BDOO, entonces, sería algo como: ³una colección de objetos
sobre la que se definen ciertas reglas de organización en almacenamiento secundario
para poder accesarlos´. No debemos olvidar que los objetos, además de atributos
(que en cierta medida se asemejan a las tuplas del modelo relacional), poseen
métodos que definen las capacidades del objeto, además de todos los conceptos que
encierra el enfoque de orientación a objetos (entre los que cabe destacar los ya
mencionados en secciones anteriores, tales como clase, herencia y encapsulamiento
principalmente), por lo que puede decirse que estamos en presencia de un enfoque
de bases de datos bastante novedoso y revolucionario, que por lo tanto requiere de
una base teórica más fundamentada que un simple concepto. De hecho, aunque no
es una idea nueva, en la actualidad se cuenta con más de un modelo de datos para
describir las BDOO, existen varias propuestas de lenguajes de manipulación de
objetos, de lenguajes de definición de objetos, lenguajes de consulta de objetos, lo
que hace que, a diferencia del modelo relacional, cada modelo de BDOO sea difícil de
entender en forma más universal.

Entre los objetivos de las BDOO están:

- El mantener una correspondencia directa entre la base de datos y los objetos del
mundo real, de modo que estos objetos no pierdan su integridad ni su identidad,
pudiendo ser identificados y manipulados fácilmente. Para esto, las BDOO
proveen de un identificador de objeto (OID) que es único y generado por el
sistema para cada objeto.

- Los objetos pueden tener una estructura de complejidad arbitraria con el fin de
contener toda la información significativa que describe el objeto. Esto logra que no
se pierda la correspondencia entre un objeto del mundo real y su representación
en la base de datos.

    
        ï

- ^ 
 : este requisito es evidente desde el punto de vista de base de datos
y es nuevo en los lenguajes de programación orientados a objetos. Persistencia es
la habilidad que tienen los objetos para sobrevivir a un proceso, y eventualmente
ser reutilizados en el mismo u otro proceso. Esta característica, independiente del
tipo del objeto, debe ser implícita, en otras palabras, el objeto debe ser persistente
por sí mismo.
- 
   

 
 : también es un rasgo clásico de los
SGBD, se apoya en un conjunto de mecanismos tales como administración de
índices, agrupamiento de datos, manejo de buffers de datos, selección de la vía de
acceso, y optimización de consultas. Ninguno de ellos es visible a los usuarios, sin
embargo son aspectos tan críticos que la ausencia de uno de ellos puede provocar
demoras importantes. Con esto, se busca crear independencia entre el nivel lógico
y físico del SGBDOO.
- 

 : el sistema debe asegurar la existencia de un funcionamiento
armónico en ambientes donde múltiples usuarios interactúan simultáneamente con
la base de datos. Debe apoyar por tanto la noción normal de atomicidad de una
secuencia de operaciones y compartimiento controlado.
-  
: aquí el SGBDOO debe proporcionar servicios a la misma altura de
un SGBD en caso de ocurrir fallas al nivel de Software o Hardware, para lo que el
sistema debe proveer mecanismos que permitan revertir esta situación para volver
los datos a un estado últimamente más reciente.
-      
  : este servicio consiste en permitir al usuario
realizar consultas a la base de datos en un lenguaje establecido, de la misma
manera que en el modelo relacional. Esta facilidad de consulta debe estar
apoyada por un lenguaje que:
1.- Sea de alto nivel: debe permitir expresar en pocas palabras o acciones consultas
no triviales en forma concisa enfatizando el qué por sobre el cómo.
2.- Sea eficaz: es decir, debe permitir la optimización de la consulta.
3.- Sea una aplicación independiente: permitiendo trabajar en cualquier base de datos
posible.
Estos tres últimos requisitos eliminan los medios de consulta específicos,
dependientes, o aquellos que operan utilizando tipos de datos definidos por el usuario.
-    : este rasgo se refiere a que debe ser posible crear objetos
complejos por medio de objetos más simples, mediante la aplicación de
constructores adecuados. Los objetos básicos pueden ser los tipos de datos
primitivos (como por ejemplo enteros, reales, cadenas de bytes, etc.), mientras
que el conjunto mínimo de constructores que el sistema debe poseer está formado
por: conjuntos, listas y registros o tuplas. Los conjuntos sirven para representar las
colecciones del mundo real, las listas se usan para representar la idea de
ordinalidad y las tuplas, que se usan en el modelo relacional, como constructores
de objetos. Obviamente, este conjunto puede ampliarse. Lo importante es que
puedan ser aplicados a cualquier objeto en general. También debe proveerse de
los operadores adecuados para manipular tales objetos complejos.
- 
     : La existencia de un objeto es independiente de su valor, es
decir, dos objetos pueden ser idénticos (son el mismo objeto) o pueden ser
iguales (tienen el mismo valor). Esto tiene dos implicaciones: La primera, que un
mismo componente puede ser compartido por 2 o más objetos, mientras que la
segunda dice que una actualización de un objeto debiera provocar la actualización
de él en todas las referencias a tal objeto para mantener una integridad referencial.
- j
  
: proviene por un lado de la necesidad de distinguir entre la
especificación y la aplicación de la operación, y por otro lado de la necesidad de
modularidad, la que es necesaria a la hora de diseñar aplicaciones grandes y
complejas. También es necesaria como herramienta de protección y acceso. Los
lenguajes de programación asocian este concepto al de Tipo Abstracto de Datos
(TAD), donde se tiene una parte de interfaz y una parte de aplicación, donde sólo
la parte de aplicación es conocida y corresponde a la parte visible del objeto, la
que a su vez, tiene una parte de datos y una parte de operaciones. La parte de
datos corresponde al estado del objeto y la parte de operaciones especifica las
funciones en un lenguaje de programación. El encapsulamiento proporciona una
forma de independencia lógica, en el sentido de que los cambios en la aplicación
no producen cambios en los objetos que hacen uso de esa aplicación.
- u !  : un tipo resume los rasgos comunes de un conjunto de objetos
con las mismas características. Corresponde a la noción de TAD, asociándose a
los conceptos que soportan el encapsulamiento, en tanto que la noción de clase
difiere de la de tipo. Su especificación se asemeja a la especificación de tipo, pero
más orientada al tiempo de ejecución, mientras que los tipos se orientan más al
tiempo de compilación. La clase consta de 2 aspectos: la fábrica y el almacén de
objetos. La fábrica de objetos puede ser utilizada mediante una llamada al
constructor de la clase o reproduciendo un prototipo representativo de la clase,
mientras que el almacén implica que amarrado a la clase está la colección de
objetos que son instancias de la clase. Los conceptos de clase y tipo poseen
diferencias sutiles, y a menudo son usados como sinónimos. En este sentido cabe
destacar que la diferencia entre ellos va por el lado de que los tipos permiten una
comprobación estricta de tipos en tiempo de compilación, mientras que las clases
no permiten tal verificación, y de hecho no se utilizan para ese fin.
- 
 ! " #$  
 : es una herramienta poderosa de modelado,
ya que permite una descripción precisa del mundo real. Hay 4 tipos de herencia:
herencia de sustitución, herencia de inclusión, herencia de restricción y herencia
de especialización.
- %   ! j
 & 
 u $: consiste en darle el mismo nombre a
funciones diferentes (esto se denomina sobrecarga), de modo que el sistema
determine cual de ellos utilizar, lo que se realiza en tiempo de ejecución (este
proceso es conocido como enlazamiento tardío). Esto hace que la verificación de
tipos sea difícil de realizar, aunque no imposible.
-
    
: esto quiere decir que debe ser posible expresar
cualquier expresión calculable por medio del DML del sistema de bases de datos.
Esto no quita que se diseñen lenguajes de programación para SGBDOO.
- j 
  : el SABDOO debe posibilitar la creación de nuevos tipos de datos
definidos por el usuario a través del uso del conjunto de constructores de tipos que
posee el sistema. Para las aplicaciones debe ser transparente la utilización de un
tipo de datos predefinido o un tipo de datos definido por el usuario.

Los rasgos optativos, son mejoras que pueden hacerse sin ser obligatorias para los
SGBDOO. Estos mejoran la funcionalidad del sistema y no están relacionados
directamente con un aspecto de orientación a objetos. Estas características quedan
remitidas a:
- Herencia múltiple
- Verificación e inferencia de clases
- Distribución (el sistema de base de datos puede o no estar distribuido)
- Manejo de transacciones
- Control de versiones

Por otro lado los rasgos abiertos, que corresponden a los aspectos que los
implementadores de SBDOO pueden incluir libremente en sus productos, implican
que entre cada producto las diferencias en estos aspectos no son tan relevantes
debido a que no hay un acuerdo general respecto de ellos. Estos corresponden a:
- j          
: no hay razón para imponer un paradigma de
programación por sobre otro, ya que el sistema es independiente de la
programación. Además la opción de la sintaxis es libre.
- %   

: se encuentra definido por el conjunto de tipos
atómicos y el conjunto de constructores. No hay límite en la cantidad de
constructores que pueden utilizarse en un sistema.
- %    : también debe existir libertad en cuanto a los constructores de
clases. El único requisito para la creación de clases es el encapsulamiento, pero
puede haber constructores de otros tipos como por ejemplo clases genéricas.
- '
( : este aspecto considera la forma en que el sistema trata sus
componentes (es decir, si una clase es un objeto o si un método es considerado
un objeto o si las tres nociones van a ser tratadas de forma diferente). Este dilema
puede tratarse a tres niveles: a nivel de aplicación, a nivel de lenguaje de
programación y a nivel de lenguaje.

Hablando en general, los Ê Êse corresponden con las entidades del modelo E-R.
El paradigma orientado a objetos está basado en el  
 Êde los datos y
del código relacionados con cada objeto en una sola unidad cuyo contenido no es
visible desde el exterior.
Conceptualmente, todas las interacciones entre cada objeto y el resto del sistema se
realizan mediante mensajes. Por tanto, la interfaz entre cada objeto y el restodel
sistema se define mediante un conjunto de 
permitidos. En general, cada objeto está asociado con
‡ Un conjunto de    que contiene los datos del objeto; las variables se
corresponden con los atributos del modelo E-R.
‡ Un conjunto de  a los que responde; cada mensaje puede no tener
 Ê, tener uno o varios.
‡ Un conjunto de ÊÊ, cada uno de los cuales es código que implementa un
mensaje; el método devuelve un valor como 
al mensaje.
El término en un entorno orientado a objetos no implica el uso de mensajes
físicos en redes informáticas. Por el contrario hace referencia al intercambio de
solicitudes entre los objetos independientemente de los detalles concretos de su
implementación. Se utiliza a veces la expresión 
)  
  para denotar el
hecho de enviar un mensaje a un objeto y la ejecución del método correspondiente.

Se puede explicar la razón del uso de este enfoque considerando las entidades
 Ê de una base de datos bancaria. Supóngase que el sueldo anual de cada
empleado se calcula de manera diferente para los distintos empleados. Por ejemplo,
puede que los jefes obtengan una prima en función de los resultados del banco,
mientras que los cajeros reciben una prima en función de las horas que hayan
trabajado. Se puede (en teoría) encapsular el código para calcular su sueldo con cada
empleado en forma de método que se ejecute en respuesta a un mensaje de 
 Ê

 . Todos los objetos  Êresponden al mensaje 
 Ê
 , pero lo hacen
de manera diferente. Al encapsular con el objeto  Ê la información sobre el
cálculo de su sueldo anual, todos los objetos  Êpresentan la misma interfaz.
Dado que la única interfaz externa presentada por cada objeto es el conjunto de
mensajes a los que responde, resulta posible modificar las definiciones de los
métodos y de las variables sin afectar al resto del sistema. La posibilidad de modificar
la definición de un objeto sin afectar al resto del sistema se considera una de las
mayores ventajas del paradigma de la programación orientada a objetos. Los métodos
de cada objeto pueden clasificarse como  Ê  
 o  
  . Los
métodos sólo de lectura no afectan al valor de las variables de los objetos, mientras
que los métodos de actualización sí pueden modificarlo. Los mensajes a los que
responde cada objeto pueden clasificarse de manera parecida como
sólo de lectura o de actualización, según el método que los implemente.
Los atributos derivados de las entidades del modelo E-R pueden expresarse en el
modelo orientado a objetos como mensajes sólo de lectura. Por ejemplo, el atributo
derivado   de una entidad  Ê puede expresarse como el mensaje
 de un objeto  Ê. El método que implemente los mensajes, puede
determinar la antigüedad restando la  del empleado de la fecha actual.
Hablando con rigor, en el modelo orientado a objetos hay que expresar cada atributo
de las entidades como una variable y un par de mensajes del objeto correspondiente.
La variable se utiliza para guardar el valor del atributo, uno de los mensajes se utiliza
para leer el valor del atributo y el otro mensaje se utiliza para actualizar ese valor. Por
ejemplo, el atributo   de la entidad  Êpuede representarse mediante:

‡ Una variable   .


‡ Un mensaje Ê   cuya respuesta sea la dirección.
‡ Un mensaje    , que necesita un parámetro 
  , para
actualizar la dirección.

Sin embargo, en aras de la sencillez, muchos modelos orientados a objetos permiten


que las variables se lean o se actualicen de manera directa, sin necesidad de definir
los mensajes para ello.

     
Generalmente, en una base de datos hay muchos objetos similares. Por   se
entiende que responden a los mismos mensajes, utilizan los mismos métodos y tienen
variables del mismo nombre y del mismo tipo.
Sería un derroche definir por separado cada uno de estos objetos. Por tanto, los
objetos parecidos se agrupan para formar una  . Cada uno de estos objetos se
denomina   de su clase. Todos los objetos de una clase comparten una
definición común, pese a que se diferencien en los valores asignados a las variables.
El concepto de clase del modelo orientado a objetos se corresponde con el concepto
de entidad del modelo E-R. Algunos ejemplos de clases en la base de datos bancaria
son los empleados, los clientes, las cuentas y los préstamos.
El siguiente código define la clase empleado en pseudocódigo.

La definición muestra las variables y los mensajes a los que responden los objetos de
la clase. En esta definición, cada objeto de la clase  Êcontiene las variables
Ê  y   , ambas cadenas de caracteres;  , que es una fecha, y

 Ê, que es un entero. Cada objeto responde a los cinco mensajes mostrados,
llamados 
 Ê
 , Ê Ê , Ê   ,     y
 .
El nombre de tipo que precede a cada mensaje indica el tipo de la respuesta al
mismo. Obsérvese que el mensaje     utiliza el parámetro

   que especifica el nuevo valor de la calle. Aunque no lo hemos
mostrado aquí, la clase  Ê soportaría también mensajes que establecen el
nombre, el sueldo y la fecha de alta.
Los métodos para el manejo de mensajes suelen definirse separados de la definición
de clases. Los métodos Ê   () y    () estarían definidos,
por ejemplo, por el pseudocódigo:

 
Ê   ()

 
  ;
}


   ( 

  )
{
  = 
  ;
}

mientras que el método  () se definiría:



 ()
{
 
Ê() ±  ;
}

Aquí, asumimos que la función Ê() es una función que devuelve la fecha actual, y
el «±» opera con ellas devolviendo el intervalo entre las dos fechas.
   Ê{
/* Variables */
 
Ê ;
 
  ;
   ;


 Ê;
/* Mensajes */


 Ê
 ();
 
Ê Ê ();
 
Ê   ();

   ( 

  );

 ();
};

El concepto de clases es parecido al concepto de los tipos abstractos de datos. Sin


embargo, hay varios aspectos adicionales en el concepto de clase respecto al de tipos
abstractos de datos. Para representar estas propiedades adicionales, cada clase se
trata como si fuera un objeto. Un objeto clase incluye
‡ Una variable de tipo conjunto cuyo valor es el conjunto de todos los objetos que son
ejemplares de la clase.
‡ La implementación de un método para el mensaje 
Ê, que crea un nuevo
ejemplar de la clase.


   
    

Para que tenga sentido utilizar una base de datos, debe existir un mecanismo
que permita recuperar la información necesaria desde ella. En este punto surge la
pregunta ¿cómo saber si existe un objeto en un estado determinado dentro de la base
de datos? El lenguaje de consulta de objetos (OQL) otorga la respuesta a esta
bastante simple pero clarificativa pregunta. OQL es el otro lenguaje que apoya al
modelo de objetos de ODMG ( 
 
 Ê Êy, al igual que ODL
( 
   Ê Ê, se basa en ciertos principios:

-OQL cuenta con el modelo de objetos de ODMG


-OQL se asemeja mucho a SQL92, las extensiones que posee OQL apuntan a
conceptos exclusivamente presentes en el enfoque orientado a objetos (polimorfismo,
objetos complejos, identidad de objeto, etc.).
-OQL proporciona sentencias de alto nivel para tratar conjuntos de objetos sin
restringirse exclusivamente a ellos, también es capaz de procesar listas, arreglos y
tuplas con la misma eficiencia.
-OQL es un lenguaje funcional donde los operadores se pueden mezclar libremente,
tanto como permita el sistema de tipos.
-OQL no es un lenguaje computacionalmente completo, sino más bien un lenguaje de
consulta fácil de usar que permite fácil acceso a cualquier SGBDOO.
-OQL puede ser invocado desde cualquier lenguaje de programación para el que se
haya definido una conexión. Recíprocamente, es capaz de invocar métodos escritos
en ese lenguaje.

Al igual que con ODL, este lenguaje de consulta tiene el mérito de ser una
implementación que ya está caminando, pero que le falta llegar a ser comúnmente
aceptada para convertirse en un estándar para las BDOO.

Los lenguajes de las bases de datos se diferencian de los lenguajes de programación


tradicionales en que trabajan directamente con datos que son persistentes, es decir,
los datos siguen existiendo una vez que el programa que los creó ha concluido. Las
relaciones de las bases de
datos y las tuplas de las relaciones son ejemplos de datos persistentes. Por el
contrario, los únicos datos persistentes con los que los lenguajes de programación
tradicionales trabajan directamente son los archivos.
El acceso a las bases de datos es sólo un componente de las aplicaciones del mundo
real. Mientras que los lenguajes para el tratamiento de datos como SQL son bastante
efectivos en el acceso a los datos, se necesita
un lenguaje de programación para implementar otros componentes de las
aplicaciones como las interfaces de usuario o la comunicación con otras
computadoras. La manera tradicional de realizar las interfaces de las bases de datos
con los lenguajes de programación es incorporar

Para poder utilizarlos en la3 práctica en un sistema de bases de datos hay que
expresarlos en algún lenguaje. Esta expresión puede realizarse de dos maneras:
c Los conceptos de la programación orientada a objetos se utilizan simplemente
como herramientas de diseño y se codifican, por ejemplo, en una base de datos
relacional. Se sigue este enfoque cuando se utilizan los diagramas entidad-relación
para modelar los datos y luego se convierten de manera manual en un conjunto de
relaciones.
* Los conceptos de la programación orientada a objetos se incorporan en un lenguaje
que se utiliza para trabajar con la base de datos. Con este
enfoque hay varios lenguajes posibles en los que se pueden integrar los conceptos:
‡ Una opción es extender un lenguaje para el tratamiento de datos como SQL
añadiendo tipos complejos y la programación orientada a objetos. Los sistemas que
proporcionan extensiones orientadas a objetos a los sistemas relacionales se
denominan sistemas   Ê  Ê Ê  Ê Ê  Ê    Ê 


  Ê   Ê Ê  Ê Ê      Ê  

 Ê  Ê
Ê 
  Ê  
        
  
 Ê 

 
Ê

Ê
ÊÊ ÊÊ


£  
  
   


El propósito de los sistemas de bases de datos es la gestión de grandes


cantidades de información. En años recientes, la tecnología de base de datos se ha
adaptado a aplicaciones fuera del ámbito de procesamiento de datos entre las que
podemos incluir:

- Objetos Complejos: Un objeto complejo es un dato visto como un simple objeto en


el mundo real, pero que contiene otros objetos. Estos objetos pueden tener una
estructura interna compleja arbitaria. A menudo los objetos están estructurados
jerárquicamente, representando las relaciones entre ellos. El modelo de objetos
complejos ha llevado al desarrollo de las bases de datos orientadas a objetos, las
cuales están basadas en los conceptos de los lenguajes de programación
orientados a objetos y a las bases de datos relacionales anidadas, en las que las
relaciones pueden almacenarse dentro de otras relaciones.
- Diseño Asistido por Computador (CAD): una base de datos para una aplicación
CAD debe almacenar los datos de un diseño de ingeniería incluyendo los
componentes del dato, la relación de los componentes y las versiones antiguas de
los diseños.
- Ingeniería de Software Asistida por Computador (CASE): una base de datos
diseñada para aplicaciones CASE debe contener datos tales como código fuente,
dependencias entre módulos de software, definiciones y usos de variables e
historial del desarrollo del sistema de software.
- Bases de datos multimediales: en donde se almacenan imágenes, audio y video
que pueden ser usados en sistemas de información geográficos, aplicaciones
gráficas y toda aplicación que utilice tales tipos de datos.
- Sistemas de información de oficinas: una base de datos para este tipo de
aplicaciones debe permitir consultas que permitan planificar reuniones, administrar
documentos, mantener calendarios de citas, etc.
Estas nuevas aplicaciones de las bases de datos no fueron consideradas en la
década del setenta cuando se diseñaron la mayoría de los actuales sistemas de
bases de datos. En la actualidad su aplicación práctica es muy factible debido a los
avances de la tecnología computacional junto con la reducción de sus costos y por
otro lado la mejor comprensión que se ha logrado en los últimos años de la
administración de las bases de datos.
Estas aplicaciones requieren nuevos modelos de datos, nuevos lenguajes de consulta
y nuevos modelos de transacciones. Entre los requisitos de estas nuevas aplicaciones
están:
- Datos de comportamiento: puede que distintos objetos necesiten responder de
distinta forma a la misma orden. Por ejemplo, la eliminación de ciertas tuplas
puede requerir de la eliminación de otras tuplas, como en el caso de las entidades
débiles. En las aplicaciones CAD y CASE el comportamiento de distintos objetos
en respuesta a una orden dada puede ser muy diferente. Esta información del
comportamiento puede capturarse almacenando código ejecutable con objetos en
la base de datos. Los métodos de los sistemas de BDOO y la regla base de los
sistemas basados en comportamiento otorgan esta capacidad.
- A menudo los datos más importantes sobre aplicaciones son reglas generales
acerca de la aplicación más que de las tuplas específicas. Las reglas forman una
parte importante de los sistemas expertos de bases de datos.
- Transacciones de larga duración: Las aplicaciones CAD y CASE implican
interacción humana con los datos. Algunas de estas acciones pueden ser
aplicaciones que el usuario puede querer deshacer. Los esfuerzos del diseño
concurrente que implican varios diseñadores, pueden conducir a conflictos entre
transacciones. Debido a que estas transacciones implican interacción humana con
el sistema, las consecuencias de abortos de transacciones, esperas por bloqueos,
etc., son mucho más serias que en las transacciones interactivas cortas
comúnmente usadas en aplicaciones tipo negocios. Entre los conceptos que se
introdujeron están los de transacciones anidadas y ejecuciones no serializables
correctas.

ï  

Antecedentes:

SQL3 fue originalmente planeado para su uso sobre el año 1996, pero los planes no
salieron bien. Está caracterizado como ³SQL orientado a objetos´ y es la base de
algunos sistemas de manejo de bases de datos orientadas a objetos(incluyendo
ORACLE, Informix Universal Server, IBM¶s DB Universal Database y Cloudscape,
además de otros).

Esto es una convicción general de que es buena cosa, pero tardó 7 años en
desarrollarse en vez de los tres o cuatro que se pensaba iba a tardar.



  

Además de las características discutidas hasta ahora, SQL:1999 se caracteriza


porque fue desarrollado principalmente para manejar objetos. Algunas de las
características que están dentro de esta categoría fueron definidas en el estándar
SQL/PSM publicado en 1996 específicamente para llamadas a funciones y
procedimientos desde SQL. SQL:1999 mejora esta capacidad que llamó SQL-invoked
routines, para añadir una tercera clase de rutina conocida como método.
u      (
     

La mayor facilidad en SQL:1999 que soportan la orientación a objetos son los tipos
estructurados definidos por el usuario; Los tipos estructurados tienen un número de
características, las más importantes son:
- Pueden ser definidos para tener uno o más atributos, cada uno de ellos pueden ser
algún tipo de SQL, incluyendo tipos empotrados como INTEGER, tipos de colección
como ARRAY, u otro tipo de estructuras.
- Todos los aspectos de su comportamiento son provistos mediante
métodos,funciones y procedimientos.
- Sus atributos son encapsulados mediante el uso del sistema generador observador
y mutador de funciones (funciones get y set ) que provee el único acceso a
susvalores. Sin embargo, este sistema no puede ser sobrecargado; todas las otras
funciones y métodos pueden ser sobrecargados.
- Las comparaciones de sus valores son únicamente realizadas mediante funciones
definidas por el usuario.
- Ellos pueden participar en jerarquías de tipo, en las cuales más tipos
especializados (subtipos) tienen todos sus atributos y usan todas las rutinas
asociadas con más tipos generalizados (supertipos), pero pueden agregar nuevos
atributos y rutinas.

O       


    



Si se busca información sobre bases de datos en internet, enseguida te sorprenderás


del mundo que existe en torno a ellas. Diariamente hay cantidad de noticias,
novedades y opiniones en la carrera al trono de las bases de datos.

Access es tal vez la base de datos más simple y conocida con la que nos podemos
encontrar. Para entendernos, diremos que Access es una base de datos para andar
por casa, es decir, sirve para lo básico, para bases de datos pequeñitas, de pocos
usuarios, y que no va a ser constantemente atacada. Si lo que queremos es
montarnos una pequeña base de datos para le gestión de algún recurso, por ejemplo,
las convalidaciones de ERASMUS, o la gestión de una empresa de comida rápida con
reparto a domicilio, pues en Access la podremos realizar de una manera simple y
rápida.
Es este tipo de bases de datos la gestión de la base se vuelve mucho más lenta
conforme aumenta de tamaño y es necesario a recurrir a bases de datos
profesionales.

Pero por el contrario cuando se está pensando en la gestión de una gran empresa o
una importante página web en la que la gran cantidad de información debe ser
gestionada eficientemente, pues la solución son las grandes bases de datos como la
de compañías como Oracle, IBM, Sun Microsystems, la sueca MySQL AB, Microsoft
corp., etc.
Además estas bases de datos permiten realizar transacciones, cosa que Access u
otras del estilo no lo permiten. Además tienen muchas más posibilidades y facilidades
para trabajar en grupo.

La compañía que actualmente está en cabeza en las bases de datos es Oracle. Sus
licencias son caras, pero cuando el número de usuarios de una base de datos
aumenta y los accesos a una misma información de una base de datos se hace por
muchos usuarios y al mismo tiempo, y se requiere de una compleja estadística
relacional, pues es una base de datos con gran capacidad como la de Oracle la que
da la talla.

El gran inconveniente que presenta esta bases de datos, es el de siempre, el


económico. Las licencias resultan muy caras y para muchos usuarios y empresas
inalcanzables. Hay bases de datos de software libre como MySQL, de grandísima
potencia, que aunque aún no alcanzan la calidad de bases de datos como Oracle pero
que se han convertido en un estándar y es la que la mayoría de las personas utilizan.

¿Por qué son muchas las compañías que confian en MySQL?


Ojo, que esta base de datos tampoco es totalmente gratuita, es gratis usarla, tenerla y
aprender a manejarla, pero si lo que deseas es usarla para tu negocio tendrás que
adquirir una licencia. Aún así esta licencia es mucho más barata que el resto.
Para ampliar un poco la información sobre lo que una base de datos SQL te puede
dar, he cogido la MySQL 3.22.32

Características de MySQL 3.22.32


- Está preparado principlamente para trabajar en entornos UNIX, está liderando las
bases de datos que están de las páginas webs de todo el mundo. Aunque también
funciona en Windows, el sistema operativo limita el poder de este sevidor de bases de
datos.

- Controlan los datos de servidores DNS, paginas con accesos a bases de datos,
hechas en perl o PhP, los usuarios del servidor y sus claves encriptadas.

Así se han asegurado un mercado y lideran los entornos UNIX. Su infinidad de


módulos lo hacen compatible con cualquier fuente ODBC existente, igualmente con
otras bases SQL no basadas en ODBC. Hay infinidad de Runtimes que lo combierten
en una excelente base de datos Access, Oracle, Postgres, y todo esto sin tener que
aprender las diferencias entre uno y otro.
solo instalar el runtime y lo demás es meter y sacar registros.

- Puedes mantener una seguridad al 100% con las actualizaciones.

- Su instalación se ha simplificado muchísimo por dos grandes motivos.


· el primero es que la mayoría de las distribuciones LINUX ya lo incluyen en sus
discos.
· Y el segundo motivo reside en que cuando lo bajas d e la pagina oficial te estás
bajando un binario listo para correr (ready to run).
- Tienes las fuentes al alcance para poder compilarlo tu mismo y hacer las
modificaciones que necesites si eres un programador experto.

La novedad más importante del Nuevo Oracle 10g es la dotación de las capacidades
de regilla (Grid). Pero, ¿qué es Grid?
Grid Computing es una respuesta a la necesidad de acceso a recursos
computacionales geograficamente dispersos (como las centrales eléctricas) con la
misma facilidad con que se enchufa un electrodoméstico a la red eléctrica. Este nuevo
paradigma fue propuesto a mediados de los años 90 por Ian Foster y Carl Kesselman
y está siendo adoptado por compañías como IBM, HP y Sun Microsystems.
Las capacidades de malla (grid) de Oracle 10G permitirán a una compañía crear un
conjunto común de capacidad de procesamiento enlazando varios servidores. En
lugar de tener a un servidor dedicado a una sola aplicación, la malla permitirá a varias
aplicaciones aprovecharse de la capacidad de proceso de los servidores conectados.
Esto permitirá ahorrar dinero a las compañías porque la formación en malla puede
dedicar capacidad de proceso basándose en cambios en la demanda.
Y como estas empresas, SUN Microsystems con su paquete SUN ONE, Microsoft con
su .NET con sus plataformas de desarrollo entre otras. Para más información visítese
sus respectivos dominios en internet.

c*       



 +,-

c*c ,(

! 
     ,
El uso de dimensiones es una forma de mostrar (y a veces almacenar) datos muy útil
en sistemas con grandes cantidades de información. Las dimensiones son ejes de
análisis o criterios de clasificación de la información que ofrecen un índice a los datos
mediante una lista de valores. Por ejemplo son dimensiones <Tiempo>, <Geografía> y
<Producto>.
Se llama Ä!Ê
 al almacén de datos que reúne la información histórica
generada por todos los distintos departamentos de una organización, orientada a
consultas complejas y de alto rendimiento. Un DataWarehouse pretende conseguir
que cualquier departamento pueda acceder a la información de cualquiera de los otros
mediante un único medio, así como obligar a que los mismos términos tengan el
mismo significado para todos. Un Ä  es un almacén de datos históricos
relativos a un departamento de una organización, así que puede ser simplemente una
copia de parte de un DataWarehouse para uso departamental.
Tanto el DataWarehouse como el Datamart son sistemas orientados a la consulta, en
los que se producen procesos batch de carga de datos (altas) con una frecuencia baja
y conocida. Ambos son consultados mediante herramientas OLAP "# $   
%Ê  que ofrecen una visión multidimensional de la información. Sobre estas
bases de datos se pueden construir EIS " 
 &Ê  Ê' ('  
&Ê   Ä  Ê y DSS "Ä  Ê'
Ê' ('  $

 Ê   Ä  Ê. Por otra parte, se conoce como Data Mining al proceso no
trivial de análisis de grandes cantidades de datos con el objetivo de extraer
información útil, por ejemplo para realizar clasificaciones o predicciones.
Los sistemas de procesamiento de transacciones se utilizan mucho hoy en día y las
empresas han acumulado una enorme cantidad de información generada por esos
sistemas.
Por ejemplo, las bases de datos de las empresas suelen contener enormes
cantidades de información sobre los clientes y las transacciones. El tamaño del
almacenamiento de la información necesario puede llegar a varios centenares de
gigabytes o, incluso, a los terabytes, para las cadenas de grandes almacenes. La
información de las transacciones de un gran almacén puede incluir el nombre o
identificador (como puede ser el número de la tarjeta de crédito) del cliente, los
artículos adquiridos, el precio pagado y las fechas en que se realizaron las compras.
La información sobre los artículos adquiridos puede incluir el nombre del artículo,
el fabricante, el número del modelo, el color y la talla.
La información sobre los clientes puede incluir su historial de crédito, sus ingresos
anuales, su domicilio, su edad e, incluso, su nivel académico. Estas bases de datos
de gran tamaño pueden resultar minas de información para adoptar decisiones
empresariales, como los artículos que debe haber en inventario y los descuentos que
hay que ofrecer. Por ejemplo, puede que una cadena de grandes almacenes note un
aumento súbito de las compras de camisas de franela en la Sierra de Guadarrama,
darse cuenta de que hay una tendencia y comenzar a almacenar un mayor número
de esas camisas en las tiendas de esa zona. O puede que una empresa
automovilística descubra, al consultar su base de datos, que la mayor parte de los
coches deportivos de pequeño tamaño los compran mujeres jóvenes cuyos ingresos
anuales superan los 50.000.00. Puede que la empresa dirija su publicidad para que
atraiga más mujeres de esas características a que compren coches deportivos de
pequeño tamaño y evite desperdiciar dinero intentando atraer a otras categorías de
consumidores para que compren esos coches. En ambos casos la mpresa ha
identificado pautas de comportamiento de los consumidores y las ha utilizado para
adoptar decisiones empresariales.
El almacenamiento y recuperación de los datos para la ayuda a la toma de decisiones
plantea varios problemas:
‡ Aunque muchas consultas para ayuda a la toma de decisiones pueden escribirse en
SQL, otras no pueden expresarse en SQL o no pueden hacerlo con facilidad. En
consecuencia, se han propuesto varias extensiones de SQL para facilitar el análisis de
los datos. El área de Ê Ê ) Ê )( $   %Ê (
OLAP) trata de las herramientas y de las técnicas para el análisis de los datos que
pueden dar respuestas casi instantáneas a las consultas que soliciten datos
resumidos, aunque la base de datos sea extremadamente grande.
‡ Los lenguajes de consulta de bases de datos no resultan adecuados para el
rendimiento de los
.  $  detallado de los datos. Hay varios paquetes,
como SAS y S++, que ayudan en el análisis estadístico. Aestos paquetes se les han
añadido interfaces con las bases de datos para permitir que se almacenen en la base
de datos grandes volúmenes de datos y se recuperen de manera eficiente para su
análisis. El campo del análisis estadístico es una gran disciplina por sí misma, véanse
las referencias en las notas bibliográficas para obtener más información
‡ Las técnicas de búsqueda de información intentan descubrir de manera automática
las reglas y las pautas estadísticas de los datos. El campo de la Ê  Ê
combina las técnicas de búsqueda de información creadas por los investigadores
en inteligencia artificial y los expertos en análisis estadístico con las técnicas de
implementación eficiente que permiten utilizarlas en bases de datos extremadamente
grandes.
‡ Las grandes empresas tienen varios orígenes de datos que necesitan utilizar para
adoptar decisiones empresariales. Los orígenes pueden almacenar los datos según
diferentes esquemas. Por motivos de rendimiento (así como por motivos de control de
la organización) los orígenes de datos no suelen permitir que otras partes de la
empresa recuperen datos a petición

c**  
    



En una base de datos multidimensional, la información se representa como matrices


multidimensionales, cuadros de múltiples entradas o funciones de varias variables
sobre conjuntos finitos. Cada una de estas matrices se denomina O .
El esquema de un cubo queda determinado dando a conocer sus ejes con sus
respectivas estructuras y la estructura de los datos que se presentan en cada celda de
la matriz. Se asume que los datos en todas las celdas son uniformes, es decir, todas
las posiciones de la matriz tienen datos con igual estructura.

Figura 1

Una instancia de un cubo, queda determinada por un conjunto de datos para cada eje
y un conjunto de datos para la matriz. (Fig. 2)
A los ejes se les llama   y al dato que se presenta en la matriz, se le
llama 

. A los elementos del producto cartesiano de los eje (dimensiones) se le
llama O

. La matriz definida, puede ser dispersa. (Es una función parcial).
Figura 2

c*/        


Los cubos de información o cubos OLAP funcionan como los cubos de rompecabezas
en los juegos, en el juego se trata de armar los colores y en el data warehouse se
trata de organizar los datos por tablas o relaciones; los primeros (el juego) tienen 3
dimensiones, los cubos OLAP tienen un número indefinido de dimensiones, razón por
la cual también reciben el nombre de hipercubos. Un cubo OLAP contendrá datos de
una determinada variable que se desea analizar, proporcionando una vista lógica de
los datos provistos por el sistema de información hacia el data warehouse, esta vista
estará dispuesta según unas dimensiones y podrá contener información calculada. El
análisis de los datos está basado en las dimensiones del hipercubo, por lo tanto, se
trata de un análisis multidimensional.
A la información de un cubo puede acceder el ejecutivo mediante ³tablas dinámicas´
en una hoja de cálculo o a través de programas personalizados. Las tablas dinámicas
le permiten manipular las vistas (cruces, filtrados, organización, totales) de la
información con mucha facilidad. Las diferentes operaciones que se pueden realizar
con cubos de información se producen con mucha rapidez. Llevando estos conceptos
a un data warehouse, éste es una colección de datos que está formada por
«dimensiones» y «variables», entendiendo como dimensiones a aquellos elementos
que participan en el análisis y variables a los valores que se desean analizar.
Dimensiones
Las dimensiones de un cubo son atributos relativos a las variables, son las
perspectivas de análisis de las variables (forman parte de la tabla de dimensiones).
Son catálogos de información complementaria necesaria para la presentación de los
datos a los usuarios, como por ejemplo: descripciones, nombres, zonas, rangos de
tiempo, etc. Es decir, la información general complementaria a cada uno de los
registros de la tabla de hechos.
Variables
También llamadas ³indicadores de gestión´, son los datos que están siendo
analizados. Forman parte de la tabla de hechos. Más formalmente, las variables
representan algún aspecto cuantificable o medible de los objetos o eventos a analizar.
Normalmente, las variables son representadas por valores detallados y numéricos
para cada instancia del objeto o evento medido. En forma contraria, las dimensiones
son atributos relativos a la variables, y son utilizadas para indexar, ordenar, agrupar o
abreviar los valores de las mismas. Las dimensiones poseen una granularidad menor,
tomando como valores un conjunto de elementos menor que el de las variables;
ejemplos de dimensiones podrían ser: ³productos´, ³localidades´ (o zonas), ³el tiempo´
(medido en días, horas,

c*0 j   
.#  ! .#     

Generalmente, las dimensiones se estructuran en jerarquías de agregación En la Fig.


se muestra una instancia de una dimensión con una jerarquía de agregación en donde
los vendedores se agrupan en ciudades y las ciudades en regiones.
Figura
£  
  
 !     O" #$#

,1    , 2      j#  
  
 



A cada nivel de una jerarquía se le llama Ñ


 £  o simplemente
Ñ .
De esta forma, se puede considerar que toda dimensión siempre tiene por lo
menos una jerarquía con un único nivel. Una dimensión puede tener más de una
jerarquía. Un ejemplo típico, es una dimensión que representa tiempo (Fig. 5). En
este caso, los niveles y  no están relacionados entre sí, a pesar
de que ambos están
relacionados con y *Ê. Si existe más de una jerarquía, la relación que une
datos de un nivel con datos de otro nivel superior debe ser confluente. Esto
significa que todos los
caminos que parten de un elemento del nivel , llegan al mismo elemento del
nivel Äsuperior a , independientemente de la jerarquía recorrida. Siguiente
figura
Si no se cumpliera la confluencia, entonces el primer trimestre que figura
relacionado con 1998, podría aparecer relacionado, por ejemplo, con 1999. En
este caso, al recorrer la jerarquía por trimestre, el mes de marzo de 1998
aparecería en 1999.
figura

c*3          





Las operaciones multidimensionales se pueden agrupar en tres conjuntos básicos:

· De   %  &  o ï  ' .

· De £ .

· De    .

En la bibliografía revisada, no se ha encontrado consenso en la definición de ï  '


. Sin embargo, se acepta en general, que hay tres operaciones asociadas a ï 
' : Una que selecciona ³dimensiones de trabajo´ de un cubo mayor, otra que
selecciona ³secciones´ del cubo en función de valores de las dimensiones y otra que
permite ³presentar´ diferentes planos de un cubo. A la primera se le llama ' , a la
segunda Ä o + Êy a la tercera ,Ê .

El grupo de las operaciones de £  está constituido, por


operaciones que surgen de realizar ³movimientos´ en las jerarquías de las
dimensiones. Cuando se ³sube´ de nivel por una jerarquía, se agrupan todos los
valores del nivel original que están relacionados con el mismo valor del nivel superior,
mientras que al ³bajar´ por la jerarquía se produce la desagregación de dichos
valores. La primera operación se conoce como Ä - y la segunda, su inversa, como
Ä ÄÊ..

Cuando se realiza un Ä - , se debe calcular una nueva medida en función del


conjunto de los valores de las medidas que se agrupan. A esta operación se le llama
,Ê 
o /ÊÊ  . Esta última operación también pertenece al grupo de
operaciones de £  y su aplicación se traduce, típicamente, en funciones de
agregación como las presentes en SQL (sum, avg, etc.).

A partir de un cubo, mediante las operaciones de   , se puede acceder


a otros datos. Si éstos últimos están en un cubo, la operación se suele llamar de Ä 
$Ê, mientras que si están en el Data Warehouse o en la base operacional, la
operación se suele llamar Ä 0Ê
.

Dado un cubo, al aplicar operaciones de Ä - o Ä ÄÊ., se recorre un ³espacio


de cubos´. Dicho espacio está determinado por las dimensiones que participan en el
cubo origen y la forma en que se deben realizar los cálculos con las medidas (RollUp)
en cada Ä - . Ver siguiente figura
*      ! 
 $  2 

*c  


 ! 
 $        2 

*cc
    
    +j, -

Es un Conjunto coherente de datos, estructurados conforme a normas de mensajes


acordadas, para la transmisión por medios electrónicos, preparados en un formato capaz
de ser leído por el ordenador y de ser procesado automáticamente y sin ambigüedad.

Es aquella parte de un sistema de información capaz de cooperar con otros sistemas de


información mediante el intercambio de mensajes EDI.

D  (  

(  ! 

Intercambio electrónico de datos es el intercambio entre sistemas de información, por


medios electrónicos, de datos estructurados de acuerdo con normas de mensajes
acordadas. A través del EDI, las partes involucradas cooperan sobre la base de un
entendimiento claro y predefinido acerca de un negocio común, que se lleva a cabo
mediante la transmisión de datos electrónicos estructurados.

En el EDI, las interacciones entre las partes tienen lugar por medio de aplicaciones
informáticas que actúan a modo de interfaz con los datos locales y pueden intercambiar
información comercial estructurada. El EDI establece cómo se estructuran, para su
posterior transmisión, los datos de los documentos electrónicos y define el significado
comercial de cada elemento de datos. Para transmitir la información necesita un servicio
de transporte adicional (por ejemplo, un sistema de tratamiento de mensajes o de
transferencia de ficheros).

Debe destacarse que el EDI respeta la autonomía de las partes involucradas,

no impone restricción alguna en el procesamiento interno de la información intercambiada


o en los mecanismos de transmisión.

^   
 £  

Los típicos campos de aplicación del EDI son el intercambio de información industrial,
comercial, financiera, médica, administrativa, fabril o cualquier otro tipo similar de
información estructurada. Esta información, con independencia de su tipo concreto, se
estructura en unos formatos que pueden ser procesados por las aplicaciones informáticas.
Ejemplos de datos EDI son las facturas, órdenes de compra, declaraciones de aduanas,
etc.

La automatización de las interacciones por medio del EDI minimiza las transacciones
sobre papel y la intervención humana, reduciéndose las tareas relativas a la
reintroducción de datos, impresión, envío de documentos vía correo o vía fax. A través del
EDI, las Administraciones Públicas pueden incrementar la eficiencia de las operaciones
diarias y mejorar las relaciones con agentes externos como empresas, instituciones
económicas y financieras, y otras Administraciones Públicas.

El universo de clientes potenciales del servicio EDI es muy amplio, debido a que ésta
dirigido a empresas que se relacionan comercialmente, en forma independiente de su
tamaño.

Como ejemplo de grupos de potenciales clientes, podemos mencionar:

* Sector de la Distribución (Supermercados y Proveedores)

* Sector de las Automotrices (Terminales, Proveedores y Concesionarios)

* Sector Farmacéutico (Farmacias y Laboratorios)


* Sector de la Administración Pública

* Sector del Transporte y Turismo

Ñ
  "

Básicamente, las normas EDI proporcionan las reglas de sintaxis que definen los
documentos electrónicos estructurados (llamados mensajes EDI) y un número cada vez
mayor de mensajes EDI acordados internacionalmente.

El módulo ephos sobre EDI se basa en las normas y documentos desarrollados por las
Naciones Unidas y recogidos en "ISO 9735 - Intercambio Electrónico de Datos para la
Administración, Comercio y Transporte (EDIFACT) - Reglas de aplicación de la sintaxis"
(en 29735). Si bien por razones históricas, en diferentes dominios regionales o sectoriales
se utilizan otras reglas de sintaxis (no normalizadas), EDIFACT es la única sintaxis
normalizada.

^ ( 
 ï   (   ! 

El Intercambio Electrónico De Datos

Hoy en día, el sistema informativo contable de cualquier empresa, por pequeña que sea,
se encuentra informatizado, de forma que habitualmente se logran unos elevados niveles
de automatización de las tareas administrativo-contables. Por ejemplo, es frecuente que
se encuentren integrados los programas de contabilidad con los que gestionan la
tesorería o la nómina y que estos datos se procesen muy rápidamente.

Pero suele suceder que dos empresas que mantienen una intensa relación comercial
cliente-proveedor y que disponen de sendos sistemas informativos contables avanzados,
realicen sus transacciones económicas introduciendo las órdenes de compra, las facturas
y el resto de documentos en sobres, que posteriormente son enviados por correo. Hoy en
día, también es habitual enviar estos documentos a través del fax, con lo que se agiliza la
gestión. Si la empresa utiliza un fax-modem conectado al ordenador y gestionado por un
programa informático, se evita tener que imprimir los documentos, enviándolos
directamente desde su ordenador hasta el fax de la otra empresa.

Otra solución más sofisticada, pero menos frecuente, consiste en enviar dichos
documentos a través del correo electrónico. El correo electrónico permite enviar mensajes
entre diferentes ordenadores que estén conectados a redes de ordenadores como por
ejemplo Internet o Compuserve. Sin embargo, este procedimiento no está exento de
inconvenientes, debido a que el correo electrónico no está normalizado y, salvo que el
cliente y el proveedor acuerden previamente componer de alguna forma sus mensajes,
exige que el receptor traduzca los documentos recibidos. Además, el uso de mero correo
electrónico no es un medio seguro para realizar las transmisiones comerciales ni
garantiza su confidencialidad.

La solución que desde hace varios años están adoptando muchas empresas se denomina
EDI o Intercambio Electrónico de Datos. El EDI básicamente consiste en transmitir
electrónicamente documentos comerciales y administrativos entre aplicaciones
informáticas, en un formato normalizado. En este trabajo describimos qué es el EDI, qué
diferentes normas EDI existen, por dónde viajan los datos, cual es la estructura de un
mensaje EDI, los beneficios y los costes que para una empresa puede suponer el
implantar este sistema y el impacto que puede tener sobre la Contabilidad.

! ! ) D       

Así como en los años ochenta y noventa el ordenador ha sido la herramienta

de trabajo básica del profesional de la Contabilidad, desde hace varios años asistimos a
una verdadera revolución en la transmisión electrónica de información, de forma que se
intuye que en los umbrales del siglo XXI las herramientas que utilizará este profesional
estarán ligadas a las telecomunicaciones. En palabras de René Ricol (1995), presidente
de la orden de expertos contables de Francia, "de todos los progresos que acompañarán
a la profesión contable, el EDI es ciertamente el más inminente". En este apartado
analizamos las novedades organizativas que implica la utilización del EDI en la empresa,
revisamos los principales intentos de normalización y la situación actual de los diferentes
estándares EDI.

El EDI consiste en transmitir electrónicamente documentos comerciales y administrativos


entre aplicaciones informáticas en un formato normalizado, de forma que la información
entre las empresas pueda ser procesada sin intervención manual. Las empresas que
desean utilizar el EDI se suelen poner en contacto con compañías ligadas al sector de las
telecomunicaciones que ofrecen servicios EDI. Un servicio EDI, es el conjunto de
prácticas asociadas a la explotación de un sistema telemático particular de EDI que
cubren todos los aspectos funcionales del servicio (técnicos, organizativos, de formación,
de soporte y mantenimiento, comerciales y administrativos), dando así forma a una
aplicación EDI concreta para un segmento industrial particular.

*   

    
El sistema tradicional en el que se basan las transmisiones de documentos entre las
empresas, al estar centrado en el uso del papel, presenta dos inconvenientes. En primer
lugar, la lentitud. Documentos que se generan en ordenadores que procesan la
información a gran velocidad, posteriormente sufren retrasos producidos al tener que
procesarse de forma manual en las empresas de correos. Por este motivo, muchas
empresas han sustituído el correo como medio para enviar sus documentos por el fax, lo
que ha agilizado en buena medida la gestión. Sin embargo, se mantiene otro problema: la
diversidad de modelos de facturas, pedidos, hojas de precios, etc. Esta falta de
normalización es causa de muchos errores administrativos y, de nuevo, de lentitud. La
figura 1, adaptada de Heath (1991) muestra el procedimiento convencional simplificado de
transmisión de documentos administrativos entre las empresas.

Fig 1: Procedimiento convencional de transmisión de documentos entre las empresas.

En donde :

La primera empresa extrae la información necesaria de la base de datos del sistema


informático contable e imprime los documentos necesarios. Estos documentos se envían
por correo a la otra empresa, quien debe introducir de nuevo los datos en su sistema
informático. Por lo tanto, en el procedimiento tradicional frecuentemente se producen
redundancias ya que los documentos que se imprimen en una empresa son introducidos
manualmente por sus empleados en el sistema informático de la otra.
La figura 2 muestra, grosso modo, los cambios que supone implantar un sistema EDI.
Como se aprecia en la nueva figura, el EDI no supone una verdadera revolución desde el
punto de vista conceptual.

Lo cual consiste simplemente en incorporar un procedimiento electrónico de transmisión


de información al documento administrativo-contable. De la simple observación de la
figura podemos apreciar cómo la empresa puede obtener ahorro de varias formas tras
implantar un sistema electrónico de intercambio de datos. En primer lugar, aparece un
ahorro de tiempo, ya que la información viaja por redes de comunicación. En segundo
lugar, se producen menos errores, ya que el proceso está completamente automatizado y
los ordenadores se equivocan menos. Además puede haber un importante ahorro en
dinero, dependiendo de lo que cueste enviar estos documentos.
ï!  O ï !

Como ya mencionamos anteriormente EDI es el intercambio electrónico de documentos


estandarizados, a través de redes de telecomunicaciones, entre aplicaciones informáticas
de empresas relacionadas comercialmente. El EDI sustituye el soporte papel de los
relacionadas comercialmente. El EDI sustituye el soporte papel de los documentos
comerciales más habituales (órdenes de compra, remito, factura, lista de precios, etc.)
por transacciones electrónicas con formato normalizados y acordados previamente entre
los usuarios del servicio.

Este servicio, a diferencia del correo electrónico, relaciona aplicaciones informáticas que
residen en las computadoras de las distintas empresas. Por lo tanto, el intercambio de
información se realiza entre aplicaciones informáticas y no entre personas.
^  (

EDI sin duda nos ofrece una amplia gama de oportunidades de trabajo y beneficios
para nuestra empresa entre los que se destacan :

* Agilización de procesos comerciales

* Importante disminución de errores en los documentos

* Disminución de stocks, debido a la facilidad de aplicación de técnicas "Just-in-Time"

* Ahorro de costos de administración

* Mejora de la competitividad de la empresa que lo adopta

O
 !

EDI cuenta con algunos componentes que a continuación se describen uno a uno.

/ 10,Ä /2% 1'$/&31

La función básica del Centro de Compensación es la de recibir, almacenar y reenviar a


sus destinatarios los documentos comerciales que los usuarios del servicios intercambian.
Así, se asegura la integridad y confidencialidad de la información. En él cada empresa
tiene asignado un buzón electrónico, a través del cual el usuario recibe y recupera la
información que sus interlocutores comerciales le envían. La plataforma hardware del
Centro es "Fault Tolerant", lo cual garantiza la plena disponibilidad del servicio: 24 horas
por día, 365 días del año.

Los aspectos de seguridad tales como: control de acceso, suministro de energía eléctrica,
etc. han sido especialmente cuidados, con el objeto de garantizar a los usuarios la plena
integridad y confidencialidad de su información.
Los clientes sólo necesitan realizar una conexión física para intercambiar documentos con
todos sus interlocutores, circunstancia que facilita el uso diario del Servicio. Además de
esta simplificación introducida por el centro Servidor, existe otra serie de ventajas, como
las siguientes:

* Una sola conexión sirve para enviar a TODOS los destinatarios y

recibir de TODOS los remitentes

* Alta disponibilidad - Confidencialidad absoluta

* Integridad de datos implícita en los protocolos utilizados

* Mantiene y facilita control de documentos

, ÄÄ 0 # /2-1&/$/&1 '

Las empresas usuarias del servicio tiene acceso al Centro de Compensación a través de
la red Terrestre y/o Satelital de STARTEL. El ingreso a la misma podrá ser por medio de
acceso directos (X.25, X.28) o por la red telefónica conmutada al centro más cercano
(acceso RAC X.28). La elección del vínculo se determina en función del tráfico que las
empresas necesitan cursar.

Los accesos a la red terrestre con que cuenta el Centro de Compensación

tiene la facilidad de cobro revertido. Es decir, los clientes que se comunican con el Centro
no abonan el tráfico generado en la Red.

El protocolo utilizado es el OFTP (Odette File Transfer Protocol), el cual fue diseñado
especialmente para intercambios EDI y es en la actualidad el de mayor difusión.

'0$/&31Ä -'-$,&

La estación de trabajo es la herramienta software que permite realizar la conexión del


sistema informático de cada Cliente con el Centro de Compensación. La misma cubre la
siguientes funciones:

* Comunicaciones

* Traducción de mensajes al formato estandarizado

* Interfase con las aplicaciones del sistema informático del Cliente

* Entrada manual de datos e impresión de documentos recibidos


El equipo necesario para soportar la Estación de Trabajo, en su configuración
básica, es una computadora AT, un modem compatible Hayes y una conexión telefónica.

DO 
   ! 

Generalmente, se utiliza el EDI cuando:

* Las partes involucradas en el intercambio son autónomas y comparten un

entendimiento predefinido, claro y común sobre los negocios y

servicios a utilizar;

* La información a intercambiar puede mapearse sobre mensajes

normalizados.

Debe destacarse que aunque no se disponga de mensajes normalizados para todas las
aplicaciones, ello no debe impedir la utilización del EDI. En la Sección se proporcionan
directrices o guías para el diseño de nuevos mensajes EDI.

Un uso típico del EDI es la automatización de los intercambios entre un departamento y


una organización externa (por ejemplo, una compañía suministradora) o entre dos
grandes departamentos de la misma Administración, cada uno de ellos dotado con su
propio sistema de información y diferentes formas de representar la misma información.
No obstante, dentro de un mismo departamento pueden existir unidades que tienen sus
propios dominios de aplicación implementados sobre diferentes sistemas informáticos, y
necesitan automatizar el intercambio de datos mediante el EDI.

La existencia de conjuntos de mensajes acordados internacionalmente es el elemento


clave para la automatización de los procedimientos administrativos o comerciales. Como
se indicará posteriormente en el Escenario 4, el número actual de mensajes normalizados
o en fase de borrador, abarca una extensa área de aplicaciones relevantes para las
Administraciones Públicas.

La introducción del EDI debería decidirse teniendo en cuenta los siguientes aspectos:

* el volumen de documentos comerciales/administrativos intercambiados;

* el actual porcentaje de error en el tratamiento de documentos sobre papel;

* el coste del tratamiento y mantenimiento de documentos sobre papel;

* el factor tiempo (si es crítico o no);


* el valor estratégico asignado al EDI en términos de beneficios a largo plazo.

Este análisis debería compararse con la evaluación del coste necesario para

implementar una solución basada en el EDI. A los costes de contratación previstos


deberían añadirse los costes derivados de procedimientos internos (por ejemplo,
preparación del personal).

*c*  !  




Día a día debemos sumar nuevas palabras a nuestro vocabulario, el  y el


 
 no son la excepción.
Pero uno de los mayores problemas que encontramos es que existen tantos términos
que terminamos no conociendo la diferencia entre ellos, y muchas veces ni su
significado.
Para tratar de entender estos términos iniciare por definir cada uno de ellos intentando
con esto dar un panorama sencillo pero suficiente para entender las diferencias
básicas entre el e-Business y el e-Commerce:
Usare a lo largo de este resumen los términos  y   

indistintamente, así como  
 y
  
$
 .
Muchas veces se presenta confusión entre los términos $ % $  ,
tratándolos como sinónimos y esto no es así. Aunque existe una relación entre ambos
no podemos decir que son los mismos términos. Veamos cuales son las definiciones
para conocer mejor de lo que estamos hablando.

,(


j 

Es una "interacción con los socios de negocio, donde la interacción es permitida por
tecnología de información". Esto es una definición exacta, pero no nos da mucha
penetración en el eBusiness, o también se le define como un sistema de información o
aplicación a la cual se le delegan procesos de negocios.
El uso tanto de tecnología como de nuevas estrategias de negocios para realizar
negocios en línea. El negocio en línea provee un canal de ventas, marketing, e
información on-line. (Negocio en línea).
Se define al j
 como cualquier actividad empresarial que se efectúa a
través de Internet, no sólo de compra y venta, sino también dando servicio a los
clientes y/o colaborando con socios comerciales.
Desde el punto de vista del negocio, j
 (4  j 
) es el
proceso que están utilizando las empresas para hacer negocios usando redes
(Internet). Ocurre cuando se conectan los sistemas informáticos de una compañía a
sus clientes, empleados, distribuidores o proveedores, y todos se entrelazan a través
de la Internet, Intranets o Extranet´s.
Las tres definiciones anteriores muestran que resulta difícil dar una definición
completamente apropiada para el $  . ³Definiciones incompletas, sólo para
bienes (producción, promoción, venta y distribución de productos a través de redes de
telecomunicaciones), sólo para servicios (intercambio de información a través de
transacciones electrónicas) o sólo desde el punto de vista empresarial (uso de las
tecnologías de la información para realizar negocios entre compradores, vendedores y
socios con el fin de mejorar el servicio al cliente, reducir costos y finalmente, aumentar
el valor de los accionistas) nos conducen a dar una definición más integradora y
general tal y como la siguiente:
$  es la aplicación de las tecnologías de la información para facilitar la
compraventa de productos, servicios e información a través de redes públicas
basadas en estándares de comunicaciones. Tiene que existir en uno de los extremos
de la relación comercial un programa de ordenador y en el otro extremo o bien otro
programa de ordenador, o una persona utilizando un ordenador o una persona con los
medios necesarios para acceder a la red´.
El paradigma del e-business, comprende la combinación del Internet con los sistemas
de información tradicionales de una organización (Web + Tecnología de Información)
y permite potenciar los procesos vitales de negocios que constituyen la base y
esencia de una empresa. Las aplicaciones basadas en los conceptos de e-business
se caracterizan por ser interactivas, con alta intensidad de transacciones, y porque
permiten un relanzamiento de los negocios hacia nuevos mercados.
j !$   &  +
  
5  

 
 6 
   
La diferencia fundamental entre el . y cualquier otro medio electrónico (fax,
teléfono, etc.) es que va más allá de facilitar la comunicación pues permite la
interacción entre los usuarios, compradores y vendedores en un entorno que no es
fijo, ni es físico siquiera, sino que es creado por la confluencia de redes estándares,
navegadores . , software, contenidos y personas. Por ello, las barreras físicas de
tiempo y distancia existentes entre los proveedores y sus clientes se ven reducidas al
mínimo.
Sin estas barreras, el comprador y el vendedor se enfrentan el uno con el otro
directamente a través de una conexión electrónica. No hay que desplazarse a la
tienda física, no hay vendedor, no hay que rellenar datos y no hay una cajera a la
salida. En lugar de todo eso hay un sitio . . Por tanto, 4
  representa un
cambio en la forma de interactuar entre el comprador y el vendedor.
Para el comprador, significa que los costos de buscar o cambiar de proveedor son
mínimos. Para el vendedor, el riesgo de no atraer la atención del comprador y
perderlo es muy elevado. En este nuevo entorno, la mayor parte de la responsabilidad
de decidir cómo se hace una operación de compraventa se ha traspasado de los
vendedores a los compradores.
En tanto que el e-Commerce es en esencia el Comercio Electrónico. Sin embargo
existen definiciones mucho más específicas como las siguientes:

j
j es el paso más reciente de la evolución de las transacciones de negocio.
Substituye (o aumenta) el intercambio del dinero o de las mercancías por el
intercambio de la información de la computadora a la computadora.
j: Comprende la compra, venta, marketing, y servicios para productos o
servicios por medio de redes de computadoras. Se puede ver como aplicaciones e-
business aplicadas a las transacciones comerciales.
En resumen, ³El  j 
 (  ) es, básicamente, el uso de
medios electrónicos, para realizar la totalidad de actividades involucradas en la
gestión de negocios: ofrecer y demandar productos y/o servicios, buscar socios y
tecnologías, hacer las negociaciones con su contraparte, seleccionar el transporte y
los seguros que más le convengan, realizar los trámites bancarios, pagar, cobrar,
comunicarse con los vendedores de su empresa, recoger los pedidos; es decir todas
aquellas operaciones que requiere el comercio´.
El Comercio Electrónico, a través de Internet, implica la utilización de esta red como
medio para facilitar el intercambio de bienes y servicios. La forma más avanzada es
aquella en la que un cliente: visualiza, selecciona y formaliza la adquisición de
productos o servicios cuya descripción está disponible en un servidor conectado a
Internet. Las empresas pueden colocar el catálogo completo de sus productos o
servicios en Internet, y dar acceso abierto a sus potenciales clientes a una enorme
vidriera virtual, así como también, renovar estos productos, dialogar con sus clientes y
por lo tanto ajustarse a sus necesidades.
La utilización de la red Internet como un canal comercial debe obedecer a un
planteamiento estratégico y de negocios de la organización. Para algunas empresas
será el medio prioritario de desarrollo de su actividad. Para otras será un canal
complementario. Es un canal en el que la tecnología tiene un papel importante pero
no puede ser ésta la que condicione de forma exclusiva las decisiones a tomar.
En la actualidad, existe una gran cantidad de empresas que se dedican a esta
actividad, quizás el caso más conocido sea el de ð &
7 el cual es un sitio
web que inicialmente se diseñó para la venta y distribución de libros a través de la
World Wide Web y en donde actualmente un usuario cualquiera puede adquirir
artículos de casi cualquier tipo, los mismos que llegan a vuelta de correo,
prácticamente a cualquier lugar del mundo, después de la respectiva confirmación de
la venta.
El comercio electrónico, o el e-commerce, es un término muy amplio. El e- commerce
se da entre el negocio y los consumidores y también entre un negocio y otro, para el
intercambio de datos electrónicos (EDI) es un formato para las redes privadas del
excedente de la información del negocio de cambio.
Fue creado para automatizar y para apresurar el intercambio de la información entre
las compañías que hacen regularmente negocios juntas.
Después de ver las definiciones podemos notar que existen diferencias entre ambos
términos,    
 (    
  
$
 , y no
comprende todo el e-business. Es por esto que no podemos decir que el e-business
es igual al e-commerce, sino que    


 .  

.
En la siguiente imagen creo que podemos apreciar lo dicho anteriormente. También
podemos apreciar otros elementos que componen el e-business y que a continuación
detallare.
: dentro del comercio electrónico tenemos varias acciones que podemos
realizar como son: la transferencia electrónica de fondos, manejo de la cadena de
producción, el e-marketing (marketing orientado a Internet), y el procesamiento de
transacciones en línea. Estos son algunos de los elementos que pueden estar
comprendidos dentro del e-commerce, no es necesario implementar todos ellos para
hablar de e-commerce.

Quizás el tipo de   


 +- . (
 es el   
  , es en el cual el cliente selecciona los productos que quiere comprar,
ingresa sus datos, y envía el pedido. El pago puede ser tanto por los medios
tradicionales, o directamente puede ser realizado en línea (el cliente ingresa su
número de tarjeta de crédito, se verifican sus datos, y se debita automáticamente el
importe de la operación de su cuenta).
Este tipo de e-commerce, considero que es a la fecha el más popular y que gran
número de empresas en la red lo manejan.


 
!   
  : esta parte del $  se ocupa de
     
 
para lograr una mejor integración de los
sistemas y eficiencia. A su vez podemos enumerar algunas de las funciones que
pueden ser incorporadas en esta parte: e-mail, mail de voz, foros de discusión,
sistemas de Chat, video conferencias, y sistemas de colaboración.

%   

 
 : quizás esta sea una de las partes menos visibles del
$  , pero no por ello la menos importante. Dependiendo de la escala de
nuestro negocio,   
 
    
( 
#
 
       
 !  &    

  .
Debemos poder delegar en los sistemas informáticos la mayor cantidad de procesos
posibles, para poder dedicarnos verdaderamente a nuestro negocio, y no perder
tiempo en procesos que no hacen al negocio. Dentro de los sistemas internos de
negocio podemos enumerar algunos de ellos:
O   Customer Relationship Management (Manejo de las Relaciones con el Cliente).
! ^  Enterprise Resource Planning (Planeamiento de los Recursos de la Empresa),
sistemas para el manejo del conocimiento, sistemas para el manejo de la
documentación, control de procesos, etc.
%- Supply Chain Management (Gerencia de la cadena de Suministro).
!$  es la automatización de procesos internos y externos relacionados
con el requerimiento, compra, suministro, pago y control de productos utilizando el
Internet como medio principal en la comunicación cliente-proveedor. Es una
tecnología relacionada con la administración de la cadena de suministros ('

/  2 ), y entre sus principales características puedo mencionar la
utilización de información de requerimientos, inventarios, material en tránsito, entre
otros, desplegados a través de una página de Internet. El flujo de información se
realiza en tiempo real, y permite conocer los datos al instante de producirse algún
cambio en las variables.
Otra de las ventajas es el acceso desde cualquier punto en donde exista servicio de
Internet sin importar las distancias geográficas, o estar fuera de las instalaciones de la
empresa. Además cuenta con acceso restringido al personal que previamente ha sido
autorizado por cliente y proveedor para intercambiar información; esto es muy
importante para mantener la protección a la información estratégica del negocio y
cumple con los parámetros establecidos en las relaciones negocio a negocio (454).
Podemos apreciar que el mundo del  
  !  e 

  )   .  de una organización. Es por esto que su implementación
dentro de una organización debe ser correctamente planeada e implementada de
manera tal que tenga el menor impacto negativo en los empleados.
Las implementaciones deben ser realizadas por etapas, y debe permitir la integración
con los demás sistemas.
La diferencia entre e-business y e-commerce, es absolutamente artificial, pero
diversos términos llevan diversos significados.

, jj4 % j4uj jjj 8 j'% 4j%%


Usualmente los términos e-commerce y e-business se utilizan como sinónimos, sin
embargo son diferentes y es importante que las empresas conozcan estas diferencias
De acuerdo con los artículos leídos en la red y en algunos libros, estas diferencias
consisten en:
r El  cubre los procesos por los cuales se llega a los consumidores,
proveedores y socios de negocio, incluyendo actividades como ventas,
marketing, toma de órdenes de pedido, entrega, servicios al consumidor, y
administración de lealtad del consumidor.
r El  
 incluye al e-commerce, pero también cubre procesos internos
como producción, administración de inventario, desarrollo de productos,
administración de riesgo, finanzas, desarrollo de estrategias, administración del
conocimiento y recursos humanos.
       es más estrecha, está más orientada a las ventas y es
más simple que otras iniciativas:
r Sirve para analizar como usar Internet para mejorar áreas como ventas,
marketing, compras y objetivos de servicio al consumidor.
r Puede hacer foco en las ventas y las órdenes tomadas sobre Internet, y puede
servir para realizar mediciones acerca del crecimiento o decrecimiento de la
curva de ganancias.
         
 tienen un alcance mayor, son más desafiantes,
ofrecen más recompensas y probablemente requieren de fuertes cambios
estructurales dentro de la organización:
r Implican el rediseño total de los negocios, cambiando y revisando todos los
procesos en la compañía para capturar las eficiencias que pueden proveer el
uso de la tecnología en redes.
r Las estrategias de e-business incluyen oportunidades de obtener ganancias,
pero el foco principal está en los costos y la eficiencia en las operaciones.
r Las estrategias de e-business implican una cuarta categoría de integración: a
través de la empresa, con una integración funcional profunda entre nuevas
aplicaciones y procesos de negocios rediseñados, y horizontalmente a través
de una integración mayor de aplicaciones ERP o CRM. (Términos ya descritos
anteriormente).
r El empleo de un sistema de e±Business proporciona notables ventajas tanto
para la empresa como para el consumidor, las mismas que son adicionales a
aquellas que se consiguen en los negocios normales (sin acceso web) y que
se constituyen en el verdadero valor agregado del e-Business
En la siguiente imagen muestro la evolución de las empresas en el mundo digital, que
en sus inicios fue tan sólo el manejo del e-mail, y como estas prácticas de envío y
recepción de datos e información ha venido evolucionando a pasos agigantados,
hasta poner en una posición un tanto difícil a las empresas con una administración
tradicional; en la que sus ejecutivo y directivos deberán evolucionar de igual manera
en su forma de administrar el negocio, y crear nuevas redes de contacto, de acuerdo
a las exigencias de los clientes, proveedores, accionistas, colaboradores, etc.
X
    
     1$ 
Cuando una compañía emprende una estrategia de E±Business adquiere las
siguientes ventajas:
j 

 9  Ahora la tienda (empresa), puede llegar a todo el
territorio nacional e incluso alcanzar el público internacional.
j 

   La tienda permanece abierta 24 horas al día, 7 días a la
semana, 365 días al año, sin necesidad de personal adicional o pago de horas
extraordinarias.

  Los menores costos permiten ofrecen precios más bajos, que
son a la vez una condición necesaria en el agresivo mercado en línea, donde la
competencia incluye, en buena parte de los casos, al mundo entero.
    
)
 $
 El costo de establecer una tienda en línea es
reducido comparado con el costo de abrir un nuevo establecimiento o intentar llegar
por otros medios al público que la tienda virtual puede alcanzar.
^  
 .  !   &  Por definición, las ordenes son
recibidas, procesadas y almacenadas por un sistema computarizado que puede
producir reportes detallados y compartir sus informaciones con los sistemas existentes
de ventas, inventario, despachos y contabilidad.

    ) ! 

 Pueden automatizarse buena parte de
los servicios de atención al cliente, como registro de usuarios, recepción de
reclamaciones, sugerencias, solicitudes de servicio, consultas, etc.

 )  ! ( )     1  Podemos saber
específicamente cuántas personas visitan nuestra tienda, cuáles departamentos son
los más visitados, de qué país nos visitan, a cuáles horas y si vienen de otra página o
siguiendo un anuncio en particular.
       9   &  La construcción de un
departamento o sección especializada en nuestra tienda general tiene un costo
reducido una vez establecida la tienda. Y si nuestra tienda va dirigida a un público
especializado, podemos llegar a un número mayor del mismo al expandir los
horizontes geográficos.

    
 5  

 !   
 Como
no necesitamos inventario para mostrar, podemos reducir los montos y volúmenes de
las órdenes de compra, incluso despachando los productos directamente desde la
fábrica o desde el mayorista sin tener que realizar pedidos por adelantado y
almacenarlos o desplegarlos en nuestros escaparates.
    
( 
 
 Al vender, podemos solicitar
informaciones adicionales del cliente para registrarlas en una base de datos que
podemos usar para seguimiento, mejor servicio y soporte, promociones relacionadas
a su perfil, telemercadeo, etc.
 ! ! .  
 

 
 Conociendo el perfil
y los datos relevantes de cada cliente, podemos contactarle con la frecuencia que
apruebe para hacerle llegar ofertas de su interés, premios, etc. y recibir respuesta
directa de cada uno de ellos a través de la red.

X
     

Para el consumidor común, la interacción con negocios que cuentan con un E-
Business, le proporciona los siguientes beneficios:
. 
      !   Cada día son más las tiendas en
línea ofreciendo una gama cada vez más amplia de productos y servicios. Y como las
tiendas en línea exhiben un catálogo y no un ejemplar físico del producto, están en
capacidad de mostrar la línea completa de productos y todos los modelos o variantes
para que el cliente pueda escoger.

      !    El consumidor puede consultar
simultáneamente los precios y modelos ofrecidos por varias tiendas y está en mayor
libertad de escoger los que mejor se ajusten a su presupuesto y necesidades.

  La competencia entre las tiendas en línea es agresiva, fuerte,
y despiadada, con márgenes de beneficios bastante bajos y en algunos casos
prácticamente inexistentes (las compañías de Internet aplican éste tipo de estrategias
con el fin de construir una base amplia y consistente de clientes), lo cual se traduce en
precios bajos y por ende muy accesibles para el consumidor.
      !  .(  El cliente puede comprar a cualquier hora,
cualquier día, desde su casa, desde un cafenet, o desde su lugar de trabajo. También
puede realizar compras desde la casa de un amigo o familiar o consultar las compras
con otra persona a distancia mientras intercambia opiniones por ICQ, MSN (o
cualquier otro software de mensajería instantánea), sistemas de chat, correo
electrónico, fax o teléfono. Al mismo tiempo, Internet hace posible también adquirir
productos extranjeros localizados en cualquier tienda, en cualquier parte del mundo.
Es decir que, el consumidor no se encuentra limitado solamente a las tiendas locales
y a los productos importados por éstas en su país de residencia.
 (  !  
 

  .( Obviando las molestias que
puede causar un acceso lento a Internet o una conexión difícil, el cliente está libre del
tráfico vehicular y de las grandes colas en los establecimientos de consumo, además
cuenta con la comodidad de su hogar y la libertad para realizar otras tareas mientras
realiza sus compras.




En base a las lecturas realizadas del libro de texto propuesto por UNID; ³Del e-
Commerce al e.Business de los autores Kalakota, Robinson; Addison Wesley, de la
editorial Pearson Educación, se describe   desde la perspectiva de un
proceso de negocio como la aplicación de la tecnología hacia la automatización de las
transacciones de los negocios y el flujo del trabajo.
El e-business es la
) (   


 , sin fronteras, con un
nuevo planteamiento de los modelos empresariales, clientes globales, nuevos
sistemas de pago y estrategias innovadoras. Si una empresa quiere estar presente y
de forma rentable, en los nuevos mercados es necesario que sus profesionales
conozcan las 
 
     
  
 $ requerida. Por
ello, cualquier profesional actualmente debe estar capacitado para  
5  
! 
(  
   programas que se adapten a las necesidades empresariales
existentes en el mercado.
El e-
  es llamado la tercera fase del e-Ê , como lo mencionan
Kalakota y Robinson. Esto incluye todas las aplicaciones y procesos que permiten a
una compañía efectuar una transacción del negocio.
Por otra parte el j es el tipo de transacción económica -compra y venta-
que se realiza a través de sistemas electrónicos. Una empresa, comúnmente presente
en la red, vende productos o servicios a través de Internet. Allí llega el comprador que
suele pagar con tarjeta de crédito un producto que en un plazo acordado recibirá en la
puerta de su casa. Los productos que más se venden por medio de las redes
electrónicas son CD-ROOM, música, libros y programas informáticos, aunque la lista
de opciones de compra es casi infinita.
El "e-commerce" es la parte del proceso que se limita a la comercialización de
productos y servicios por web. El e-commerce consiste en el uso de internet,
comunicaciones digitales o aplicaciones de las tecnologías de la información para
comprar o vender.
Sin embargo en el e-business se involucra a la organización por completo, no
solamente al e-commerce (Procesos de compra y venta) para optimizar toda su
cadena de valor, valiéndose para ello del uso de internet como el principal medio de
comunicación.
*c/  


   significa literalmente aprendizaje electrónico. Constituye una propuesta de
formación que contempla su implementación predominantemente mediante internet,
haciendo uso de los servicios y herramientas que esta tecnología provee.
Dentro de la modalidad a distancia, el    es una de las opciones que
actualmente se utiliza con mayor frecuencia para atender la necesidad de educación
continua o permanente. La generación de programas de perfeccionamiento
profesional no reglados está en crecimiento debido a que existe un reconocimiento de
que los trabajadores se capaciten y se adapten a los nuevos requerimientos
productivos. El e-learning, dadas sus características y el soporte tecnológico que lo
respalda, se constituye en una alternativa para aquellos que combinan trabajo y
actualización, ya que no es necesario acudir a una aula permanente.
Si la educación a distancia es, desde sus orígenes, una opción para atender la
formación de personas adultas, el e-learning tiene la ventaja de que los usuarios
eligen sus propios horarios, y puede entrar a la plataforma desde cualquier lugar
donde puedan acceder a una computadora y tengan conexión a internet.
Entre los avances tecnológicos más recientes que han venido impulsando la
competitividad de las empresas, tales como los centros de contacto (call centers), la
administración de la cadena de suministro (SCM, supply chain management), el
comercio electrónico (e-Commerce), la administración de la relación con clientes
(CRM, customer relationship management) y la dirección del recurso humano (e-
Employee), hay una tecnología que está por desarrollar su máximo potencial: la
educación electrónica (e-Learning).
Por definición, el e-Learning es el suministro de programas educacionales y sistemas
de aprendizaje a través de medios electrónicos. El e-Learning se basa en el uso de
una computadora u otro dispositivo electrónico (por ejemplo, un teléfono móvil) para
proveer a las personas de material educativo. La educación a distancia creó las bases
para el desarrollo del e-Learning, el cual viene a resolver algunas dificultades en
cuanto a tiempos, sincronización de agendas, asistencia y viajes, problemas típicos de
la educación tradicional.
Así mismo, el e-Learning puede involucrar una mayor variedad de equipo que la
educación en línea. El término de e-Learning o educación electrónica abarca un
amplio paquete de aplicaciones y procesos, como el aprendizaje basado en Web,
capacitación basada en computadoras, salones de clases virtuales y colaboración
digital (trabajo en grupo).
El concepto de e-Learning es comprendido fácilmente por la mayoría de la gente. Aun
así, esta industria tiene pendiente una definición precisa de este término. Para darnos
una idea de las variantes que existen actualmente en la concepción del aprendizaje
electrónico, examinemos algunas de las definiciones más comunes:
Técnicamente, el e-Learning es la entrega de material educativo vía cualquier medio
electrónico, incluyendo el Internet, Intranets, Extranets, audio, vídeo, red satelital,
televisión interactiva, CD y DVD, entre otros medios.
Para los educadores, e-Learning es el uso de tecnologías de redes y comunicaciones
para diseñar, seleccionar, administrar, entregar y extender la educación.
Siendo breves y prácticos, el e-Learning es el aprendizaje basado en tecnología.
Para los elocuentes, el e-Learning es el empleo del poder de la red mundial para
proporcionar educación, en cualquier momento, en cualquier lugar.
Siendo descriptivos, la educación electrónica es la capacitación y adiestramiento de
estudiantes y empleados usando materiales disponibles para Web a través del
Internet, llegando a ofrecer sofisticadas facilidades como flujo de audio y vídeo,
presentaciones en PowerPoint, vínculos a información relativa al tema publicada en el
Web, animación, libros electrónicos y aplicaciones para la generación y edición de
imágenes.
Para los epigrafistas, el e-Learning representa la convergencia del aprendizaje y el
Internet.
Y finalmente, para los visionarios y futuristas, el e-Learning es a la educación
convencional lo que el e-Business a los negocios ordinarios.
Es importante entonces que Usted tome en cuenta que no porque se envíe un curso
electrónicamente, tendrá necesariamente que tratarse de e-Learning.
X
          


En seguida presentamos lo que los expertos en esta materia consideran como las
ventajas más importantes de la educación electrónica:
 !  ) : Las soluciones de aprendizaje electrónico como la
capacitación basada en Web (WBT, web-based training) y la capacitación basada en
computadora (CBT computer-based training) permite a los alumnos estudiar desde su
propio escritorio. La entrega directa de los cursos puede disminuir los tiempos
muertos que implican una escasa productividad y ayuda a eliminar costos de viajes.
j
  
: Durante la puesta en marcha de un nuevo producto o servicio, el
e-Learning puede proveer entrenamiento simultáneo a muchos participantes acerca
de los procesos y aplicaciones del nuevo producto. Un buen programa de e-Learning
puede proveer la capacitación necesaria justo a tiempo para cumplir con una fecha
específica de inicio de operaciones.
   
(  : Un sistema e-Learning cuenta por lo general con un diseño
modular. En algunos casos, los participantes pueden escoger su propia ruta de
aprendizaje. Adicionalmente, los usuarios pueden marcar ciertas fuentes de
información como referencia, facilitando de este modo el proceso de cambio y
aumentando los beneficios del programa.
 
      
: Tal vez el mayor beneficio del e-Learning
es que el costo total de la capacitación por participante es menor que en un sistema
tradicional guiado por un instructor. Sin embargo, los programas de e-Learning
diseñados a la medida pueden de entrada ser más costosos debido al diseño y
desarrollo de los mismos. Se recomienda llevar a cabo un análisis minucioso para
determinar si el e-Learning es la mejor solución para sus necesidades de capacitación
y adiestramiento antes de invertir en el proyecto.
:;  
   

<
Entre las principales barreras que han impedido la integración de estas tecnologías
del e-Learning en los programas de capacitación de las empresas, se encuentran:
1. Estructura organizacional y tradicionalismo.
2. La falta de ejemplos de mejores prácticas.
3. La falta de soporte y experiencia.
4. La falta de comprensión y visión acerca del e-Learning.
5. La falta de recurso humano y aceptación por parte del usuario.
6. Organizaciones y procesos tradicionales.
7. La falta de de habilidad por parte de profesores e instructores, aunada a una actitud
negativa.
8. Falta de acciones estratégicas.
9. Falta de entrenamiento y soporte a los profesores e instructores.
10. El tiempo requerido para la preparación del material.
  . 

Como toda tecnología emergente, la educación electrónica requiere de la participación
de consultores expertos que puedan implementar un programa que conduzca a las
organizaciones a buenos resultados. En seguida se presentan los diez errores más
comunes al definir una estrategia de e-Learning:
1. No tener visión.
2. Confundir la estrategia con la tecnología.
3. Colocar el Sistema de Administración de Aprendizaje (LMS, learning management
system) como eje central de la estrategia.
4. Concentrarse en el desarrollo y en la entrega más que en el propio negocio.
5. Enfocarse en transformar un programa de capacitación convencional en un
programa de educación en línea.
6. No lograr un consenso entre los asociados.
7. No diagnosticar a tiempo la falta de soporte por parte de la alta dirección.
8. Pensar que esta nueva función es una labor de tiempo parcial o de corta duración.
9. Ignorar las debilidades y los peligros.
10. Fallar en la administración del cambio.
%1   


  
Una forma de poder diagnosticar que el proyecto cuenta con una apropiada identidad
y dirección es a través de la identificación de los siguientes elementos:
% : "Deseamos que esto se logre".
^ 
: "Estamos proveyendo los recursos para que los objetivos del proyecto se
cumplan".

  
: "Deseamos que nuestros esfuerzos se enfoquen en las necesidades
reales del negocio".
%)
: "Estaré observando personal y continuamente los avances para
asegurarme que los objetivos se cumplan".
^   
: "Me estoy conectando en este momento a la red para experimentar
esto por mí mismo"
De hecho, estos últimos cinco puntos son comunes a proyectos de implementación de
otras tecnologías, como pueden ser los sistemas de información y la mercadotecnia
en Internet.
,1
   
  1

A pesar de que en México ya existen empresas que ofrecen soluciones de e-Learning,
que involucran contenido desarrollado por expertos, plataformas de administración e
infraestructura y otros servicios, la aceptación de estas tecnologías todavía no es la
que esta industria desearía tener. Afirman expertos que la adopción de e-learning en
México ha sido lenta, pues existen barreras culturales.
Al igual que otras iniciativas como e-México, las instituciones públicas y privadas
están obligadas a diseñar e implementar programas específicos para impulsar la
educación electrónica en América Latina. Es imprescindible movilizar a las
comunidades educacionales y culturales, así como a los actores económicos y
sociales, para acelerar los cambios en los sistemas de educación y capacitación para
que nuestros países se muevan hacia una sociedad basada en conocimientos.
Una iniciativa de e-Learning podría ser un camino más para modernizar nuestra
economía. Al mismo tiempo, a través de los componentes de la educación electrónica,
se pueden proveer a toda la comunidad, pero particularmente a nuestros jóvenes, de
las habilidades y herramientas que ellos necesitan para tener éxito en una economía
globalizada y basada en el conocimiento. Quienes se encuentran más interesados en
este tipo de proyectos son desde luego las instituciones educativas, que por la
reducción de costos tanto para el alumno como para la propia institución, significan un
gran incentivo.
Mientras que las empresas continúen contratando egresados de las universidades
que demanden recursos de Internet y acceso a información basada en tecnologías
Web, es cuestión de tiempo que las mismas organizaciones se den cuenta de que la
adopción de esta nueva generación de tecnologías es inminente.

Plataformas de e-learning
Libres (Código abierto)
‡ Moodle
‡ Sakai (http://es.wikipedia.org/wiki/Proyecto_Sakai)
‡ Claroline
‡ Docebo
‡ Dokeos
‡ ILIAS
‡ .LRN
‡ ATutor
‡ LON-CAPA
‡ JClic
No Libres (Privativas)
‡ eCollege
‡ e-doceo (www.e-doceo.net)
‡ Desire2Learn
‡ Blackboard
‡ Skillfactory
‡ SITEA Sistema de Teleformación Avanzado
‡ Delfos LMS
‡ Prometeo
‡ Composica
‡ EKP
‡ e-ducativa
‡ FormacionOnline
‡ EducaciOnline
‡ Distance Educational Network

** = +j 
   6 
 -
La mayoría de la gente ha oído hablar de XML (Lenguaje de Marcas Extensible,
Extensible Markup Language), siendo muy corriente que se tenga la idea de que es
una especie de HTML avanzado, por lo que siempre que sale el tema de XML surgen
cuestiones fundamentales como: ¿qué es exactamente XML?, ¿es XML una nueva
versión de HTML?, ¿para que sirve?, ¿cuáles fueron los motivos de su creación?,
¿tiene alguna aplicación en la actualidad?.
Como es sabido HTML (Hypertex Markup Language) se ha convertido en un lenguaje
de inmensa popularidad durante los últimos años. También debemos notar que nos
hemos encontrado con sus propias limitaciones, que algunas de ellas se han querido
subsanar con scripts, javascripts, Active X, HTML dinámico, etc; pero en la realidad
todas estas herramientas no aportan una solución global a las limitaciones del HTML.
Hasta hace poco tiempo o actualmente cuando un web master diseña un programa de
compras para una tienda virtual, basándose en HTML, debe invertir un arduo trabajo
que muchas veces no puede exportarse para su uso por otras tiendas. Quizá su
diseño estaba previsto para Windows NT y no funciona en plataformas UNIX, o hacía
uso de Perl pero no se integraba con Java. La implantación de XML viene a eliminar
este tipo de situaciones permitiendo la creación de herramientas más estructuradas.

XML es un lenguaje de marcas que ofrece un formato para la descripción de datos


estructurados, el cual conserva todas las propiedades importantes del antes
mencionado SGML. Es decir, XML es un metalenguaje, dado que con él podemos
definir nuestro propio lenguaje de presentación y, a diferencia del HTML, que se
centra en la representación de la información, XML se centra en la información en si
misma. La particularidad más importante del XML es que no posee etiquetas
prefijadas con anterioridad, ya que es el propio diseñador el que las crea a su antojo,
dependiendo del contenido del documento. De esta forma, los documentos XML con
información sobre libros deberían tener etiquetas como <AUTOR>, <EDITORIAL>,
<Nº_DE_PÁGINAS>, <PRECIO>, etc., mientras que los documentos XML
relacionados con educación incluyen etiquetas del tipo de <ASIGNATURA>,
<ALUMNO>, <CURSO>, <NOTA>, etc.
Por ejemplo en la siguiente tabla se muestra la información incluida por un código
típico HTML y su versión equivalente en XML. Se puede apreciar en este ejemplo, que
es mucho más fácil de entender la representación en XML.
i  
   
 

u =

uj  %

u  

u,Título u, u u'AutoSketch u u'

u,Autor u, 'uRamón Montero 'u

u,Precio u, ^j 33 ^j 

u  

u  

u,AutoSketch u, u u'Windows 98 u u'

u,Ramón Montero u, 'uJaime Perez 'u

u,33 u, ^j 3.250 ^j 

u  

u  

u,Windows 98 u, u u'Web Graphics u u'

u,Jaime Perez u, 'uRon Wodaski 'u

u,3.250 u, ^j 8.975 ^j 

u  

u  %

u,Web Graphics u,

u,Ron Wodaski u,

u,8.975 u,

u

uj

  ) ! $ 

XML fue desarrollado por un grupo de trabajo bajo los auspicios del consorcio World
Wide Web (W3C) a partir de 1996. Este fue constituido en 1994 con el objetivo de
desarrollar protocolos comunes para la evolución de Internet. Se trata de un consorcio
de la industria internacional con sedes conjuntas en el Instituto Tecnológico de
Massachussets, de Estados Unidos, el Instituto Nacional de Investigación en
Informática y Automática europeo y la Keio University Shonan Fujisawa Campus de
Japón. El W3C tiene como misión la publicación para uso público de protocolos o
estándares globales de uso libre. Al comenzar el proyecto, los objetivos planteados
por el grupo de desarrollo del XML fueron diez puntos [Young M. 2000] :
1. XML debe ser directamente utilizable sobre Internet.
2. XML debe soportar una amplia variedad de aplicaciones.
3. XML debe ser compatible con SGML.
4. Debe ser fácil la escritura de programas que procesen documentos XML.
5. El número de características opcionales en XML debe ser absolutamente
mínimo, idealmente cero.
6. Los documentos XML deben ser legibles por los usuarios de este lenguaje y
razonablemente claros.
7. El diseño de XML debe ser formal, conciso y preparado rápidamente.
8. XML debería ser simple pero perfectamente formalizado.
9. Los documentos XML deben ser fáciles de crear.
10. La brevedad en las marcas XML es de mínima importancia.

   $    =


XML es un formato basado en texto, específicamente diseñado para almacenar y
transmitir datos. Un documento XML se compone de elementos XML, cada uno de los
cuales consta de una etiqueta de inicio, de una etiqueta de fin y de los datos
comprendidos entre ambas etiquetas. Al igual que los documentos HTML, un
documento XML contiene texto anotado por etiquetas. Sin embargo, a diferencia de
HTML, XML admite un conjunto ilimitado de etiquetas, no para indicar el aspecto que
debe tener algo, sino lo que significa. Por ejemplo: un elemento XML puede estar
etiquetado como precio, número de pedido o nombre. El autor del documento es quien
decide qué tipo de datos va a utilizar y qué etiquetas son las más adecuadas.
Los documentos XML son fáciles de crear. En este ejemplo se utiliza XML para
describir un parte meteorológico. Este documento se puede guardar con una
extensión de XML, por ejemplo Tiempo.xml.
  
( March 25, 1998 ( 
 08:00  
 
  
MVD    
 
 Montevideo  
 Uruguay  
  
 
parcialmente nublado 
  16    
)


SO 

) 16 ) 
)


51 

 87  
)  10 )  
)
1 )

 
  

En lugar de describir el orden y la disposición de la presentación de los datos, las


etiquetas indican qué significa cada elemento de datos (si es un elemento <fecha>, un
elemento <area>, etc.). Cualquier receptor de estos datos puede descodificar el
documento y utilizarlo para sus propios fines.

 &  ! ,    =


La meta fundamental del XML es hacer la cooperación y la interoperabilidad más
fáciles entre módulos que pertenecen a diferentes sistemas, e incluso a diferentes
oganizaciones. Entonces, ¿por qué el XML se ha convertido en tecnología del alto
nivel tan rápidamente? La respuesta es simple: XML es texto simple, pero es también
elegante. Un lenguaje de marcas hace fácil identificar (y extraer en un tiempo
posterior) segmentos específicos de información con significados especiales. Usar
texto simple y mantener el contenido universalmente interpretable son dos
condiciones para implementar una tecnología exitosamente entre sistemas
heterogéneos. Una cadena del texto se puede transferir y se puede manejar
fácilmente en cualquier plataforma destino. Sin embargo, si usted solo planea definir
un protocolo basado en texto para hacer que sus módulos se comuniquen, usted no
necesita necesariamente XML. El ASCII, de hecho, ha existido durante mucho tiempo.
La diferencia recae en las etiquetas XML que se utilizan para delimitar segmentos de
información.
La principal fortaleza del XML es también, actualmente, su debilidad principal. El XML
es demasiado genérico para ser utilizado sin definir externamente la sintaxis exacta
de un documento y cómo puede localizarse y extraerse cada fragmento de datos
intercambiados. Tal estandarización es más simple alcanzar dentro de una sola
aplicación corporativa, incluso si atraviesa varias plataformas heterogéneas de
hardware y de software. Conseguir el mismo resultado en un contexto más amplio
requiere un enorme esfuerzo para llegar a algunas definiciones estándares. Este
roceso puede tomar años en ser completado [MSDN Latinoamérica].
Desgraciadamente, cuando se trata de integrar sistemas de diferentes
organizaciones, especialmente de una manera abierta, el XML muestra algunas
limitaciones. El XML trata de la descripción de los datos, pero solamente es útil
cuando la gente está de acuerdo en la manera que los datos deben ser descritos. Una
factura, por ejemplo, es lógicamente el mismo tipo de documento para cualquier
proceso que lo manipule. Pero diferentes procesos pueden convertirla en formatos
binarios diferentes. A pesar del formato de almacenamiento físico, el documento
necesita ser transmitido y ser recibido en un formato comúnmente reconocido
disponible en todas las plataformas. Por supuesto, el XML se puede utilizar como este
formato.
Imagine el enorme costo que supondría para los consumidores y las empresas si cada
empresa definiera su propia forma de publicar la información. Incluso con la Web, los
costos asociados a la configuración y el mantenimiento de un sitio Web superan la
capacidad de algunas empresas. Al no haber ningún límite al número de empresas
que podrían publicar esta información, la falta de estándares que definan el modo de
publicarla de una forma segura y controlada tendría como consecuencia miles y miles
de implementaciones, enfoques de exploración de la Web y profundidad del contenido
distintos.

**/ ^  =

**/c > 


El >  es un software de conectividad que ofrece un conjunto de servicios que
hacen posible el funcionamiento de aplicaciones distribuidas sobre plataformas
heterogéneas. Funciona como una capa de abstracción de software distribuida, que se
sitúa entre las capas de aplicaciones y las capas inferiores (sistema operativo y red). El
Middleware nos abstrae de la complejidad y heterogeneidad de las redes de
comunicaciones subyacentes, así como de los sistemas operativos y lenguajes de
programación, proporcionando una API para la fácil programación y manejo de
aplicaciones distribuidas. Dependiendo del problema a resolver y de las funciones
necesarias, serán útiles diferentes tipo de servicios de middleware.

Por lo general el middleware del lado cliente está implementado por el Sistema Operativo
subyacente, el cual posee las librerías que implementan todas las funcionalidades para la
comunicación a través de la red.

Los Middleware han aparecido de manera relativamente reciente en el mundo de la


informática, hoy en día tecnologías móviles(celulares) están aplicando esta tecnología
para el soporte de llamadas VOIP. En el pasado ganaron popularidad en la década de
los 80, ya que eran la solución de cómo integrar las nuevas aplicaciones con los
sistemas heredados (legacy systems), en todo caso, el termino ha sido usado desde
1968.1 También facilitaba la computación distribuida, mediante conexión de múltiples
aplicaciones para crear una mucho mayor, sobre una red.
Middleware es software que es usado en aplicaciones "basadas en datos" para
transferir datos entre documentos XML y Bases de Datos. Están escritos en diferentes
lenguajes, pero la mayoría de estos utilizan ODBC, JDBC, o OLEDB. Aunque algunos
de estos pueden enviar datos a través de Internet, la mayoría de estos necesitan ser
usados con un servidor Web si se necesita acceso remoto a los datos. Dentro de esta
categoría de productos podemos encontrar los siguientes productos:
^  ,  
ADO® Microsoft®
Allora® HiT Software®
ASP2XML® Stonebroom®
Attunity Connect® Attunity Ltd.®
DatabaseDom® IBM®
DataCraft® IBM®
DB2XML® Volker Turau®
DB/XML Vision® DATA Mirror Corp.®
IConnector® Infoteria®
idx -xmnesia® IDEALX®
InterAccess® XML Software Corporation®
ODBC2XML® Intelligent Systems Researc®
ODBC Socket Server® Team FXML®
PerXML Smart Transformation System® PerCurrence®
XML Lightweight Extractor (XLE)® IBM®
XML SQL Utility for Java and XSQL® Oracle®
, Desarrollador: Microsoft
ADO provee de un camino para transferir datos entre documentos XML y una Base de
Datos, usando Recordsets como objetos intermedios. Si el Recordset tiene pendiente
updates, deletes, o inserts, estos son especificados por banderas especificas de ADO.
**/*     
Este tipo de Bases de Datos son (usualmente relacionales) que brindan la posibilidad
de transferir datos entre documentos XML y ellas mismas. Estas Bases de Datos son
generalmente diseñadas para almacenar y recuperar documentos "basados en datos".
Esto es porque los datos son transferidos desde y hacia tablas definidas por el
usuario, en lugar de tablas especialmente diseñadas para modelar el documento XML.
Sin embargo, muchas de estas pueden almacenar documentos "basados en
documentos" en una sola columna.
Muchas de las Bases de Datos pueden publicar documentos en el Web, esto implica
que la línea que separa entre las Bases de Datos XML-Enabled y los Servidores de
XML es confusa, pero cabe destacar que estos últimos están diseñados
primariamente para construir aplicaciones basadas en el Web. Con más claridad se
puede diferenciar las Bases de Datos XML-Enabled y los Servidores de Aplicaciones
XML, los cuales no puede recibir datos como documentos XML. Dentro de este tipo de
Bases de Datos, encontramos los productos:
^  ,  
DB2 XML Extender and DB2 Text Extender® IBM®
Informix® Informix®
Microsoft SQL Server 2000® Microsoft®
Oracle 8i 9i® Oracle®
,* = j 
 ! ,* u j 
 Desarrollador: IBM
El DB2 XML permite transferir datos entre documentos XML y DB2. Los DTDs de XML
son mapeados a esquemas (y viceversa) con el lenguaje XML-based Data Access
Definition (DAD). Una herramienta visual es provista para construir documentos DAD,
de forma de mapear elementos y atributos a las tablas y columnas. Las aplicaciones
son procedimientos almacenados, que invocan el Extender, quien luego guarda o trae
datos basados en el documento DAD. El XML Extender administra documentos DAD y
DTDs en sus propias tablas, evitando que las aplicaciones tengan que hacer esto y
optimizando el acceso. Además, el DB2 Text Extender contiene una variedad de
tecnologías para realizar búsquedas.


(  Desarrollador: Informix
Informix soporta XML a través de su traductor "Object Translator " y el producto "Web
DataBlade." El Object Translator genera código, incluyendo la capacidad de que los
objetos transfieran sus datos desde y hacia la Base de Datos. También soporta
funcionalidades como transacciones y tipos de bloqueos pesimistas y optimistas. El
soporte de XML está provisto a través de métodos generados que pueden transferir
datos entre objetos y documentos XML. Los usuarios deben mapear los documentos
XML a un árbol de objetos de datos con una herramienta visual. El Web DataBlade es
una aplicación que crea Documentos XML desde templates conteniendo sentencias
embebidas de SQL.

( %; %) *??? Desarrollador: Microsoft


Microsoft SQL Server 2000 soporta XML de tres formas distintas: La cláusula FOR
XML en sentencias SELECT, consultas XPath que utilizan esquemas XML-Data, y la
función OpenXML en procedimientos almacenados. Los esquemas XML-Data,
también llamados "esquemas de mapeo", contienen atributos extras que mapean
elementos y atributos a tablas y columnas. Esto modela un documento XML como un
árbol de objetos de datos y son usados para consultar la Base de Datos usando un
subset de XPath. Existe una herramienta gráfica para construir esquemas de mapeo.

La función OpenXML es usada para extraer cualquier parte de un documento XML


como una tabla y puede ser usado como una tabla en la mayoría de los lugares donde
estas son utilizadas, como por ejemplo en la cláusula FROM de una sentencia
SELECT. Esto se puede utilizar en forma conjunta con una sentencia INSERT para
transferir datos de un documento XML a la Base de Datos. Una expresión XPath
identifica el elemento o atributo que representa una fila de datos. Inserts, updates, y
deletes son realizados a través de documentos XML llamados "update grams". Estos
contienen los datos de antes y después (ambos en caso de un update), solamente el
después en el caso de un insert, y sólo el antes en caso de un delete.

  @5 A ,    


Oracle 8i puede almacenar documentos XML de tres maneras distintas: en el Internet
File System (iFS), usando el utilitario para Java XML SQL, y como un objeto binario
que puede ser buscado utilizando el Oracle Intermedia XML Search. Oracle 8i también
incluye un número de otras herramientas relacionadas con XML, la más interesante
de las cuales es el XML Class Generator, quien puede generar clases Java desde un
DTD.

Con iFS, una o más definición de tipos de documentos definen como se van a mapear
un documento XML como un árbol de objetos de datos específicos. iFS usa ese
mapeo de documentos tanto para construir tablas en cuales el documento XML puede
ser almacenado, y para transferir datos entre documentos XML y la Base de Datos.
Oracle Intermedia XML Search es un utilitario que puede automáticamente indexar y
buscar documentos XML y fragmentos de estos, de cualquier tamaño hasta 4
Gigabytes.
Oracle 9i incluye Base de Datos con soporte nativo de XML, e introduce un nuevo tipo
de objeto de datos (XMLType).

   ,   = 4 )


Dentro de las Bases de Datos de XML Nativo encontramos dos tipos de categorías:
r  

   
  Guarda el documento entero en forma de
texto. Una estrategia simple es guardar documento como un BLOB (Binary
Large Object) en una Base de Datos relacional o como un documento en un
File system que brinde búsquedas sobre documentos.
r  

   
  Grabar un modelo binario del
documento en un repositorio de datos existente. Por ejemplo, estos deben
mapear el DOM a tablas relacionales como los elementos, atributos o
entidades.
Las Bases de Datos de XML Nativo difieren de las Base de Datos XML-Enabled en
tres formas principales:
r Las Bases de Datos de XML Nativo pueden preservar la estructura física, como
también los comentarios, DTDs, etc. Mientras que las Bases de Datos XML-
Enabled pueden hacer esto en teoría, pero es no es realidad en la practica.
r Las Base de Datos de XML Nativo pueden almacenar documentos XML sin
conocer su esquema (DTD).
r La única conexión con los datos de una Base de Datos de XML Nativo es XML
y las tecnologías relacionadas como XPath, DOM u otras API. En el otro
sentido, las Base de Datos XML-enabled, ofrecen acceso directo a los datos
como por ejemplo por ODBC.
Dentro de esta categoría podemos encontrar los siguientes productos:
^  ,  
4Suite - 4Suite Server® FourThought®
Birdstep DataBase Engine® Birdstep®
DbXML® The dbXML Group®
EXcelon® eXcelon Corp.®
Lore® Stanford University®
Virtuoso® OpenLink Software®

**// %    


  
 


Los Sistemas de Administración de Contenidos sirven para almacenar, recuperar e
integrar documentos XML. Estos incluyen características como editores, controladores
de versiones y control de accesos a usuarios concurrentes. Estas ofrecen
funcionalidades en el manejo de documentos, como por ejemplo controlador de
versiones. La mayoría de los Sistemas de Administración de Contenidos pueden
publicar XML en el Web, pero son primariamente diseñados para administrar
documentos "basados en documentos".
^  ,  
Astoria® Chrystal Software®
BladeRunner® Interleaf®
Documentum® Documentum®
Dynabase® eBusiness Technologies®
Epic® Arbortext®
Frontier® UserLand Software®
GEM Content Management X.Systems®
System®
GroveMinder® TechnoTeacher®
Hynet Directive® Hynet Technologies®
Information Manager® Interleaf®
POET Content Management Sorman®
Suite®
Prowler® Infozone®
Target 2000® Progressive Information Technologies®

**/0    
 
Motores de consulta XML son programas que puede realizar consultas sobre un Documento XML.
Actualmente, existen una gran variedad de lenguajes: XQL, XPath, XML-QL, Quilt, XQuery, etc. Se
espera que en el futuro el W3C logre estandarizar estos lenguajes en: XPath y XQuery

You might also like