“Explorando los Modelos de Datos: De la Teoría a la Práctica”



📌 Temas:
  • Describa las diversas técnicas de modelado de datos.
  •  Presente un ejemplo de cada modelo. 
  •  Describa las principales diferencias entre los modelos ENTIDAD-RELACIÓN Y RELACIONAL. 
  • Presente un ejemplo de diseño utilizando el modelo de caso de uso y relacional para una base de datos de una tienda en línea..


<-------------------------------------------------------------------->

Introducción

En el mundo actual, donde los datos se han convertido en uno de los activos más valiosos, entender cómo organizarlos, representarlos y estructurarlos es esencial. Las técnicas de modelado de datos permiten visualizar la información de forma lógica, clara y funcional antes de implementarla en una base de datos. Este blog explora las principales técnicas de modelado, sus diferencias, y presenta ejemplos prácticos que ayudan a comprender su aplicación en contextos reales como una tienda en línea. Además, se incluyen representaciones gráficas y comparaciones que facilitan el aprendizaje.


<------------------------------------------------------------------------>






<------------------------------------------------------------------------>

📌  Técnicas de Modelado de Datos


1. Modelo Entidad-Relación (E-R):

Representa datos en términos de entidades (objetos) y relaciones.

Se usa para el diseño conceptual de bases de datos.

Ejemplo:

  Una base de datos escolar con entidades como Alumno, Curso, Profesor, y relaciones como Inscribe o Imparte.


2. Modelo Relacional:

Organiza los datos en tablas (relaciones). Cada fila es un registro y cada columna, un atributo. Muy utilizado en sistemas de gestión de bases de datos (SGBD).

Ejemplo:

Tablas como Alumnos(id, nombre), Cursos(id, nombre) e Inscripciones(id_alumno, id_curso).


3. Modelo Jerárquico:

Estructura los datos en una forma de árbol, con relaciones padre-hijo.

Ejemplo:

Jerárquico: Organización de empleados de una empresa en niveles jerárquicos.

 

4. Modelo de Red:

Similar al jerárquico, pero permite relaciones más complejas (muchos a muchos).

Ejemplo:

 Sistema de inventario donde productos pueden pertenecer a múltiples categorías y viceversa.

5. Modelo Orientado a Objetos:

Combina conceptos de programación orientada a objetos con bases de datos.

Ejemplo:

 Sistema bancario con clases como Cuenta, Transacción, y herencia de Cuenta de Ahorro y Cuenta Corriente.


<----------------------------------------------->

📌Diferencias entre Modelo E-R y Relacional

Característica

Modelo E-R

Modelo Relacional

Nivel de abstracción

Conceptual

Lógico

Representación

Gráfica (diagramas)

Tabular (tablas)

Enfoque

Estructura de datos y relaciones

Almacenamiento y manipulación de datos

Usado para

Diseño inicial de la base de datos

Implementación en sistemas de bases de datos



<-------------------------------------------------->


👀 Ejemplo: Diseño para una Tienda en Línea

a. Modelo de Caso de Uso:

El modelo de caso de uso muestra cómo interactúan los actores (usuarios) con el sistema en una tienda en línea, los  Actores Principales:🎭

Cliente Persona que navega, compra productos y realiza pedidos.
Administrador Persona encargada de gestionar el catálogo de productos y revisar pedidos. 

Casos de Uso del Cliente:

  • Registrarse: Crear una cuenta en el sistema.
  • Iniciar sesión: Acceder a su cuenta.
  • Buscar productos: Explorar el catálogo.
  • Ver detalles de producto: Leer descripción, precio y stock.
  • Agregar productos al carrito: Seleccionar productos para la compra.
  • Ver carrito: Consultar productos añadidos antes de comprar.
  • Realizar pedido: Confirmar la compra y generar un pedido.
  • Realizar pago: Finalizar la transacción del pedido.

 

⚙️ Casos de Uso del Administrador:

  • Iniciar sesión como administrador
  • Agregar producto: Cargar un nuevo producto al catálogo.
  • Editar producto: Modificar precio, stock, descripción, etc.
  • Eliminar producto: Quitar un producto del sistema.
  • Ver pedidos: Revisar los pedidos realizados por los clientes.
  • Actualizar estado del pedido: Cambiar el estado a "Enviado", "Entregado", etc.

 

📌 Relaciones:

  • El Cliente puede ejecutar múltiples casos de uso relacionados con navegación y compras.
  • El Administrador interactúa con funciones de gestión del sistema.

b. Modelo Relacional: 

🗃️ 1. Tabla: Clientes

Campo

Tipo de Dato

Descripción

id_cliente

INT (PK, AUTO_INCREMENT)

Identificador único del cliente

nombre

VARCHAR(100)

Nombre completo

correo

VARCHAR(100)

Correo electrónico único

contraseña

VARCHAR(100)

Contraseña encriptada

direccion

VARCHAR(200)

Dirección de envío



🗃️ 2. Tabla: Productos

Campo

Tipo de Dato

Descripción

id_producto

INT (PK, AUTO_INCREMENT)

Identificador del producto

nombre

VARCHAR(100)

Nombre del producto

descripcion

TEXT

Detalles del producto

precio

DECIMAL(10,2)

Precio unitario

stock

INT

Cantidad disponible


🗃️ 3. Tabla: Carrito

Campo

Tipo de Dato

Descripción

id_carrito

INT (PK, AUTO_INCREMENT)

Identificador del carrito

id_cliente

INT (FK)

Cliente dueño del carrito

fecha_creacion

DATETIME

Fecha de creación del carrito


🗃️ 4. Tabla: DetalleCarrito

Campo

Tipo de Dato

Descripción

id_carrito

INT (FK)

Carrito asociado

id_producto

INT (FK)

Producto en el carrito

cantidad

INT

Cantidad del producto


🗃️ 5. Tabla: Pedidos

Campo

Tipo de Dato

Descripción

id_pedido

INT (PK, AUTO_INCREMENT)

Identificador del pedido

id_cliente

INT (FK)

Cliente que realizó el pedido

fecha

DATETIME

Fecha del pedido

total

DECIMAL(10,2)

Total del pedido

estado

VARCHAR(50)

Estado: pendiente, enviado, etc.


🗃️ 6. Tabla: DetallePedido

Campo

Tipo de Dato

Descripción

id_pedido

INT (FK)

Pedido asociado

id_producto

INT (FK)

Producto en el pedido

cantidad

INT

Cantidad del producto

precio_unitario

DECIMAL(10,2)

Precio del producto en ese pedido



🗃️ 7. Tabla: Administrador

Campo

Tipo de Dato

Descripción

id_admin

INT (PK, AUTO_INCREMENT)

Identificador del admin

usuario

VARCHAR(50)

Nombre de usuario

contraseña

VARCHAR(100)

Contraseña encriptada

 <--------------------------------------------------------->

🟨 Reflexión

Al investigar sobre las distintas técnicas de modelado de datos, comprendí que cada una responde a necesidades específicas del desarrollo de sistemas. El modelo Entidad-Relación permite entender de forma conceptual la relación entre los elementos de un sistema, mientras que el modelo relacional permite llevar esa estructura al mundo real mediante tablas y datos concretos. Esta transición del diseño abstracto a la implementación técnica es clave para construir sistemas sólidos, escalables y eficientes. Además, herramientas como los diagramas de casos de uso enriquecen la visión del sistema al enfocarse en las interacciones con los usuarios, lo cual resulta crucial en el desarrollo de aplicaciones modernas.


🟩 Conclusión

Dominar las técnicas de modelado de datos no solo es una habilidad técnica, sino también una herramienta de pensamiento lógico y estructurado. A través de esta investigación he reforzado la importancia de planificar antes de construir, de analizar antes de implementar, y de diseñar pensando tanto en los datos como en las personas que los usarán. Las bases de datos bien modeladas son el corazón de cualquier sistema informático exitoso, y entender sus fundamentos es dar un paso firme hacia el desarrollo de soluciones tecnológicas efectivas.

<-⇨⇨⇨⇨-----------------------------------------------👀--->

Referencia Bibliográfica

Elmasri, R., & Navathe, S. B. (2015). Fundamentals of Database Systems. Pearson Education.

Coronel, C., & Morris, S. (2017). Database Systems: Design, Implementation, & Management. Cengage Learning.

Comments