Documentos de Académico
Documentos de Profesional
Documentos de Cultura
LCC1231
LCC1231
1 Introducción
Las bases de datos relacionales o basadas en tablas copan la práctica totalidad del panorama
internacional en lo que a software de gestión se refiere (más del 85% de la cuota de
mercado se reparte entre Oracle, DB2 de IBM y SQL Server de Microsoft) [7]. El
aprendizaje de cómo gestionar bases de datos ha sido una tarea que ha sufrido, en esencia,
poca evolución en las dos últimas décadas, ya que a finales de los 70 el modelo teórico
relacional estándar se encontraba plenamente estabilizado y contaba ya con algunas
implementaciones importantes.
Pero esta estabilización del modelo no implica una fácil asimilación por parte de aquéllos
que se intentan adentrar en sus entresijos, ya sea en estudios universitarios, secundarios o en
enseñanzas no regladas. Los que alguna vez han impartido docencia sobre algún paquete
ofimático saben que resulta mucho más fácil para un alumno desenvolverse con una hoja de
cálculo que con una tabla de una base de datos.
Esta situación obliga a los docentes a trabajar con una dualidad enfrentada; de un lado un
sistema ineludible de almacenamiento masivo de datos basado en tablas y completamente
establecido; de otro lado, una complejidad conceptual difícil de superar para los no
iniciados.
Desde el grupo SICUMA (Sistemas de Información Cooperativos de la Univ. de Málaga;
TIC-160 de la Junta de Andalucía, España) presentamos en este trabajo una aproximación
pedagógica que permite, a los alumnos de cursos introductorios, asimilar los conceptos
preliminares propios de bases de datos. Para dejar clara la importancia de la visión
aportada, se introduce en el apartado 2 los métodos más extendidos para el aprendizaje de
los fundamentos de bases de datos relacionales, y se discuten sus ventajas e inconvenientes.
También se aborda brevemente el ejemplo que utilizaremos a lo largo de toda la
exposición. El apartado 3 explica los fundamentos del modelo que se propone, tanto desde
el punto de vista teórico como práctico, así como las herramientas desarrolladas para
fomentar el interés de los alumnos. Por último, el punto 4 expone nuestras experiencias en
la aplicación de este sistema en distintos entornos docentes, y algunas ventajas colaterales
que su empleo ha demostrado. Finalmente en el apartado 5 se resumen las principales
conclusiones y las próximas líneas de investigación de nuestro equipo.
Ya en el famoso artículo de Peter Chen en 1976 [1] puede apreciarse un leve sesgo hacia
el modelo de tablas, cuando propone el modelo E/R (Entidad/Relación) como mecanismo
de unificación de los modelos de bases de datos más extendidos de la época: relacional,
jerárquico y en red. Y es que la orientación del mercado se veía venir desde hacía ya varios
años y el potencial de un modelo basado en tablas ya era, de por sí, lo suficientemente
general como para aglutinar a los otros dos de manera elegante y eficiente. Hoy día, el
modelo E/R es el más utilizado para abstraer las necesidades de datos en el análisis de un
sistema de información, y la idea es que sea totalmente independiente de cualquier
implementación.
A pesar de que la mayoría de cursos y asignaturas que versan sobre bases de datos
incluyen uno o varios temas dedicados al diseño conceptual -esto es, desde un punto de
vista abstracto y al margen de una base de datos concreta- tarde o temprano confluyen en un
modelo relacional que permita poner en práctica las necesidades de datos propuestas en
ejercicios y enunciados más o menos reales. La verdadera necesidad de un modelo
conceptual, como el ampliamente extendido E/R, completamente independiente de uno
lógico -podemos llamar así al modelo relacional- sólo puede percibirse con la experiencia,
lo que hace que los alumnos nunca lleguen a comprender su necesidad vital pues no se han
enfrentado con situaciones reales de suficiente envergadura como para echarlo de menos.
En ocasiones esto mismo les sucede a los propios docentes, quienes abordan el modelo E/R
desde una perspectiva sesgada y fuera de contexto, acercándola peligrosamente al modelo
relacional, y desvirtuando su objetivo de ser, en esencia, una abstracción alejada de
cualquier connotación de implementación.
Este hecho se ve aumentado por la utilización de herramientas informáticas de diseño de
modelos E/R, pero que han sido creadas, a su vez, por los mismos desarrolladores de los
Sistemas Gestores de Bases de Datos Relacionales (SGBDR). En definitivas cuentas, se
trata de sucedáneos o “extensiones” del modelo E/R con una clara intención
propagandística y “cercana” a su propuesta relacional.
Y es que hay que reconocer que, a primera vista, resulta paradójico el emplear esfuerzo y
tiempo de estudio en un modelo que va a acabar siendo implementado mediante un único
mecanismo: las tablas. A pesar de ello, hoy por hoy, casi nadie discute sobre la necesidad
de realizar una abstracción previa a la implementación del modelo de la realidad cuya
información se desea guardar en una base de datos.
Sí cabe más discusión, sin embargo, sobre la forma de construir las tablas del modelo
relacional destinadas a almacenar los datos reales. Básicamente puede hablarse de dos
aproximaciones: ascendente y descendente.
La ascendente consiste en producir una lista de campos sobre los que se desea almacenar
información -a la que se llama diccionario de datos- y agruparlos de manera consistente
mediante dependencias funcionales. Obviamente, este mecanismo es inviable ante casos
prácticos de cierta envergadura y sólo suele usarse en los inicios del aprendizaje. Un
mecanismo parecido a este también puede utilizarse para obtener el modelo E/R en lugar de
las tablas.
La descendente requiere un mayor control de las características del modelo relacional.
Con una visión global del dominio del problema que se pretende modelar, consiste en
realizar agrupaciones preliminares de los datos en tablas y, posteriormente mediante
refinamientos sucesivos, asegurar que las distintas relaciones entre los datos se cumplen
mediante las adecuadas restricciones. Si se parte de un modelo E/R esta fase no resulta
demasiado complicada de abordar.
De la explicación anterior se desprende que lo verdaderamente complicado en el diseño
de bases de datos es la creación de un modelo E/R que de una visión de conjunto de los
datos. Y es que construir, e incluso sólo validar, un diagrama E/R resulta demasiado
abstracto para quien carece de una formación sobre la importancia de estos modelos. La
figura 1 ilustra un ejemplo de estos diagramas. En él se ha modelado parte del sistema de
información de un Hotel. Los rectángulos representan las entidades de las que se quieren
guardar datos, y los rombos establecen relaciones entre ellas. Bajo ciertas circunstancias,
una relación puede hacer las veces de entidad (un rombo inscrito en un rectángulo) con
objeto de relacionarse, a su vez, con otras entidades; es lo que se llama una reinterpretación.
Los rectángulos pequeños constituyen los datos que se desean almacenar sobre cada
entidad.
0..n Número
Características
Habitaciones
Nombre
Apellidos
NIF Código
Dirección 1..n 0..n Nombre
Teléfono
Clientes Estancia Hoteles Dirección
Localidad
País
Cupo
Precio simple
Precio doble
0..n Precio Recargo temporada
0..n Nombre
Cobros Servicios Precio
Somos conscientes de que proponer un nuevo modelo conceptual, por muy bueno que sea,
está condenado al fracaso debido a la arrolladora inercia de la maquinaria ya establecida: el
modelo E/R. Por ello, no trataremos de sustituir a éste en aquellos entornos donde ya ha
echado raíces, pero sí en aquellos lugares en donde se muestra incapaz de establecerse: la
docencia de bases de datos para alumnos no especialistas en informática.
Nuestra idea surgió en una asignatura de bases de datos de la Diplomatura de Turismo en la
Universidad de Málaga. Es una asignatura orientada a alumnos no especialistas que, a pesar
de ello, quieren profundizar en sus estudios de informática aplicada en el campo de las
bases de datos. Inicialmente se diseñó un programa que introducía levemente el modelo
E/R; el resultado fue poco exitoso: la mayoría de los alumnos no sólo no comprendían sus
fundamentos sino, mucho menos, su necesidad, y los diseños eran verdaderamente
arbitrarios.
Sin embargo, observamos que los diseños de tablas que los alumnos creaban eran más
cercanos a lo que se pretendía modelar. O sea, los alumnos ignoraban sistemáticamente el
modelo E/R a la hora de producir las tablas finales, y comprendían mejor el modelo
relacional si se olvidaban del E/R. Finalmente se concluyó que este hecho se debía a dos
motivos principales:
• El tamaño de los problemas propuestos era lo suficientemente pequeño como para
abarcar globalmente la comprensión de las tablas construidas. A medida que los
problemas se hacían más grandes, los errores del modelo relacional se acercaban a
los desbarros cometidos en el E/R.
• El modelo E/R se diseñaba exclusivamente en papel, mientras que el modelo
relacional se implantaba realmente mediante un SGBDR real (en nuestro caso
Access), lo que les permitía realizar comprobaciones y correcciones del modelo.
Nuestro objetivo se centró en obtener un mecanismo por el cual los alumnos fueran
capaces de producir modelos viables ante problemas más grandes y para ello era evidente
que se les debía suministrar alguna herramienta electrónica con una potente interfaz gráfica
que les permitiese interaccionar y validar dichos modelos. La solución fue construir un
modelo que no se basa en entidades ni en objetos, como el E/R o el MOS, sino en el
elemento más extendido en cualquier sistema de información: el documento o formulario.
Así surgió el modelo semántico de formularios: MSF.
3.1 Fundamentos
Facturas Hoteles
m n m
m m
m
Campañas m Clientes Servicios
La idea es que mediante un mecanismo sistemático, que parte de los diseños, se obtengan
diagramas similares a los E/R y a partir de estos se generen las tablas del modelo relacional.
En la figura 3 puede verse uno de estos diagramas que, al igual que la figura 1, modela parte
del sistema de información de un Hotel. En estos diagramas se han sustituido los rombos
propios del E/R por círculos seccionados en colores, que también representan relaciones.
Cada diseño construido posee un color distinto, y constituye una entidad que se representa
por un rectángulo, al igual que en el E/R. Se asume que cuando una entidad se conecta con
un círculo, le transfiere su color. El color de las líneas que conectan un diseño con una
relación se asigna en función de los datos que dicho diseño contenga de otros diseños. Por
ejemplo, si Servicios es azul, Hoteles es rosa, y el diseño de Servicios contiene datos de
Hoteles, entonces la conexión entre Servicios y su relación con Hoteles es rosa. Un
ejemplo parecido, pero más desarrollado que éste puede encontrarse en [5].
Para poder poner todo esto en práctica es necesaria una herramienta que facilite a los
alumnos los cambios de diseño para observar cómo influyen en el comportamiento del
modelo producido.
3.3 Prototipado
Las experiencias proporcionadas por este modelo varían enormemente en función del
tipo de alumnos y/o profesionales a los que les es presentada. Básicamente nos centraremos
en usuarios no especialistas, representados por los alumnos de la Diplomatura de Turismo
antes mencionada, y alumnos de Informática en un curso de posgrado. Los diagramas
Formulario/Relación mencionados en el apartado 3.1 han sido muy útiles durante el proceso
de revisión y evaluación de la calidad de los resultados producidos por ambos tipos de
usuarios.
Resulta curiosa la tenaz resistencia de los alumnos que ya conocen el modelo E/R a
adaptarse al modelo de formularios. Pero lo más insólito es que, a pesar de mantener su
preferencia por el modelo E/R, ante supuestos prácticos para ser resueltos mediante dicho
modelo, producen esquemas incorrectos y que no se ajustan a la filosofía E/R.
No queremos decir con esto que las tablas relacionales resultantes las construyeran mal,
sino que el esquema E/R que producen suele tener un sesgo evidente hacia el modelo de
tablas. Todo esto evidencia que, después de todo, el modelo E/R ha sido desvirtuado por los
profesionales del mañana.
Para dejar claro los motivos de esta resistencia, este tipo de alumnos también fue
aleccionado en otros modelos (como el ORM [6] o el MOS). A medida que el modelo es
más parecido al E/R va obteniendo más simpatía por parte de los alumnos, lo que denota un
sesgo por los conocimientos ya adquiridos. Es más, dado que siguen aplicando mal el
propio modelo E/R, se evidencia que tampoco les queda clara la verdadera naturaleza y
utilidad de un modelo conceptual, sea éste el que sea.
5 Conclusiones
Las posibilidades que nos brinda CBD en el futuro son múltiples, especialmente por el
camino abierto por los propios alumnos en lo referente a que CBD junto con SGF pudiera
convertirse en un gestor más de bases de datos, a la altura de Access o Fox Pro (guardando
las diferencias), pero con una interfaz claramente orientada al usuario.
Actualmente nos encontramos en pleno desarrollo del sistema IGO (Interfaz Guiada por
Objetivos), que pretende utilizar un mecanismo de aprendizaje rápido en base a pseudo-
asistentes no agresivos. En los primeros escarceos de un usuario con MSF se enfrentaría a
una interfaz de tipo IGO, cuya vida útil sería muy corta. Una vez aprendidos los conceptos
básicos, podría pasar directamente a trabajar con CBD. Este mecanismo podría disminuir la
fase de formación previa que un usuario requiere sobre MSF.
Por último, y para poder evaluar realmente hasta qué punto influye el conocimiento del
modelo E/R en la opinión que los usuarios expertos tienen de CBD, resultaría interesante
que éstos comenzasen su aprendizaje profesional con CBD y ver cómo evolucionan en
asignaturas posteriores. Sin embargo, poner en práctica este experimento resulta sumamente
complicado sin influir en la formación de los alumnos (probablemente de forma negativa,
ya que el modelo E/R sigue siendo el modelo conceptual más extendido).
Referencias
1. Peter Pin-Shan Chen: “The E-R Model.Toward a Unified View of Data”. ACM Transactions on
Database Systems. vol. 1, nº 1: pgs. 9-36. Marzo, 1976.
2. A.Carrillo, A.Guevara, S.Galvez, J.Falgueras:,” Análisis de tareas básicas en CBD: Herramienta
orientada al usuario para el diseño cooperativo de bases de datos”. Actas del II Congreso
Internacional de Interacción Persona-Ordenador, pgs. 261-272. Salamanca, 2001.
3. A.Carrillo, A.Guevara, S.Galvez, J.L. Caro: “Interacción Guiada por Objetivos”. Actas de
INTERACCION 2002, pgs. 68-75. Leganés, 2002.
4. S. Gálvez: “Participación del usuario en el diseño cooperativo de bases de datos. Metodología y
herramientas”. Tesis doctoral. Universidad de Málaga, 1999.
5. S.Galvez, A.Guevara, J.L. Caro, A.Aguayo: “Cooperative techniques and tools to increase the
quality of the software in tourism companies”. Actas de Information and Communication
Technologies in Tourism 2000, pgs. 178-188. Austria, 2000.
6. T.A. Halpin: “Object Role Modeling (ORM/NIAM)”. Handbook on Information Systems
Architectures, Springer-Verlag. 1998.
7. IDC noticias. Marzo, 2003. http://www.noticiasdot.com/publicaciones/2003/
0303/1404/noticias140403/noticias140403-20.htm
8. D.M. Kroenke: “Database Processing: Fundamentals, Design, and Implementation”. Prentice Hall.
2003.
9. P. Mogin, I. Lukovic: “A New Approach to Database Design”. International Journal of Industrial
Systems, Novi Sad, Yugoslavia, vol. 1, nº 2, pgs. 59-68. Diciembre, 1999.
10. D. Moody: “Graphical Entity Relationship Models: Towards a More User Understandable
Representation of Data”. LNCS Conceptual Modeling ER’96, pgs. 227-244. Eds. B. Thalheim..
1996.
11 V. Ovchinnikov: “A Semantically Complete Conceptual Modeling Technique”. Journal of
Conceptual Modelling, Mayo, 2004. http://www.inconcept.com/jcm/