Tabla de contenido
Después de conocer cuáles son los Fundamentos de bases de datos, es importante aprender a determinar las entidad y atributos que actuarán o que estarán implicados dentro de mi modelo relacional o representados dentro de mi diagrama entidad-relación.
Es por ello que en esta publicación te explicaré como realizar el proceso para poder determinar las entidades y atributos dentro de una base de datos.
¿Qué son las entidades y atributos?
En principio, debemos de recordar que una entidad, es cualquier objeto de la vida real, que intentamos adaptar a nuestros sistemas informáticos, mientras que los atributos son las características generales de ese objeto, el proceso en el cual identificamos esas características generales o atributos, normalmente se denomina abstracción.
¿Qué es abstracción en bases de datos?
El proceso de abstracción consiste en poder identificar cuales serán los objetos y características de esos objetos que funcionarán o que están implicados en nuestro sistema, esos objetos y características los nombramos entidades y atributos.
Es importante mencionar que para poder identificar estas entidades y atributos, es necesario que podamos contextualizar correctamente todo nuestro sistema, delimitando correctamente los alcances y futuros procesos de escalabilidad que le podríamos dar a nuestro sistema, así que empecemos con un ejemplo:
Imagina que queremos empezar a diseñar un sistema de bases de datos, probablemente estés pensando que la primera entidad que tenemos que definir es la de los usuarios, ya que justamente serán las personas de evaluar y/o usar nuestro sistema, entonces, con base en ese análisis, ya tenemos identificada nuestra primera entidad: Usuarios
Partiendo de que ya conocemos cual es la entidad que debemos de diseñar, ahora nos toca el turno identificar cuales serán las características generales que comparten los usuarios, esas características serán sus atributos, por lo que podríamos hacer un lista de los más comunes, pregúntate: ¿Qué información querrías saber de un usuario?
Determinación de atributos y entidades
Probablemente los atributos generales serán: nombre, teléfono, correo electrónico, password o contraseña y tal vez algún status o estado para poder saber si está activo o inactivo, como puedes observar, los atributos son los que comúnmente intentamos conocer de cualquier usuario, sin embargo, el análisis tendrá que ser un poco más exahustivo que eso.
En principio, debemos delimitar cual es el alcance o dominio que tendrá nuestro sistema, por ejemplo, ¿Crees que es necesario registrar información referente a sus padres o familiares? Aquí empiezan a existir algunas divisiones de pensamiento, por lo que la respuesta más correcta probablemente sería: depende.
¿Cómo que depende? ¿De qué depende? Pues justamente es necesario que podamos tener mayor información del sistema, si pusiste atención a tus clases de Ingeniería de Software, probablemente sabrás que la primera etapa es el análisis de requerimientos y dentro de ella, se establecen los criterios, alcances y dominios de lo que queremos construir.
Entonces, si el sistema que estamos realizando es para un sistema de inventarios o un sistema de gastos, probablemente no necesitemos incluir la información de los padres o familiares, sin embargo, si por otro lado, el sistema a realizar es un sistema escolar o un sistema para pruebas psicológicas, sin duda se deberá integrar esa información dentro de nuestras entidades y atributos.
Otro punto importante que debemos de tener en consideración es la escalabilidad de nuestro sistema, ¿Quién lo usará?, ¿Dónde lo usarán?, ¿Cuántas personas lo van a usar?, ¿Se puede expandir con facilidad?
Con base en esa seríe de preguntas, podríamos agregar algunas entidades y atributos adicionales a nuestro sistema, por ejemplo, saber a ¿qué país pertenecen los usuarios?, o ¿cuál es el departamento donde trabajan?, ¿Es un cliente, un vendedor, un supervisor?.
Todas estás son preguntas que un buen Ingeniero de Software tendrá que realizar para entender el contexto y alcance de su sistema, así como será de suma importancia saber que tan escalable podrá ser en un futuro, es decir, tal vez hoy la empresa para la cual hacemos el sistema solo radica en México, ¿pero será lo mismo en 5 años?
Entonces, para ir cerrando esta explicación, podríamos volver a estructurar la entidad usuarios, adicional a que contendrá los atributos: nombre, teléfono, correo electrónico, password o contraseña y status, probablemente también tengamos que añadir atributos como: país, departamento y/o rol.
El poder determinar las entidades y atributos de una base de datos, es un proceso iterativo, ya que cada vez que se agregan nuevas reglas de negocio, o cada vez que se incluyen nuevos contextos, es importante volver a revisar que nuestro diseño sigue siendo funcional, pero sobre todo, está optimizado.
El identificar las entidades y los atributos, es el primer paso de una serie un poco más compleja dentro del diseño de bases de datos, otro proceso de suma importancia y que te platicaré en los siguientes artículos, es la normalización de las bases de datos, sus reglas o formas normales y en qué consiste el proceso de normalización.
Si te ha gustado este artículo y te aporta valor te pido me sigas en mi:
🖥️ Youtube: https://www.youtube.com/@eightdev?sub_confirmation=1
🎵 Tik Tok: https://www.tiktok.com/@8devmx
✅ Facebook: https://www.facebook.com/8devmx/
📸 Instagram: https://www.instagram.com/8devmx/