Modelado de datos

Compartir Imprimir Citar

El modelado de datos en ingeniería de software es el proceso de creación de un modelo de datos para un sistema de información mediante la aplicación de ciertas técnicas formales.

Visión de conjunto

El modelado de datos es un proceso utilizado para definir y analizar los requisitos de datos necesarios para respaldar los procesos comerciales dentro del alcance de los sistemas de información correspondientes en las organizaciones. Por lo tanto, el proceso de modelado de datos involucra a modeladores de datos profesionales que trabajan en estrecha colaboración con las partes interesadas del negocio, así como con los usuarios potenciales del sistema de información.

Hay tres tipos diferentes de modelos de datos producidos mientras se avanza desde los requisitos hasta la base de datos real que se utilizará para el sistema de información. Los requisitos de datos se registran inicialmente como un modelo de datos conceptual que es esencialmente un conjunto de especificaciones independientes de la tecnología sobre los datos y se utiliza para discutir los requisitos iniciales con las partes interesadas del negocio. Luego, el modelo conceptual se traduce en un modelo de datos lógicos, que documenta las estructuras de los datos que se pueden implementar en las bases de datos. La implementación de un modelo de datos conceptuales puede requerir múltiples modelos de datos lógicos. El último paso en el modelado de datos es transformar el modelo de datos lógicos en un modelo de datos físicos que organiza los datos en tablas y da cuenta de los detalles de acceso, rendimiento y almacenamiento. El modelado de datos define no solo los elementos de datos, sino también sus estructuras y las relaciones entre ellos.

Las técnicas y metodologías de modelado de datos se utilizan para modelar datos de una manera estándar, consistente y predecible para administrarlos como un recurso. Se recomienda encarecidamente el uso de estándares de modelado de datos para todos los proyectos que requieran un medio estándar para definir y analizar datos dentro de una organización, por ejemplo, utilizando el modelado de datos:

El modelado de datos se puede realizar durante varios tipos de proyectos y en múltiples fases de proyectos. Los modelos de datos son progresivos; no existe el modelo de datos final para una empresa o aplicación. En cambio, un modelo de datos debe considerarse un documento vivo que cambiará en respuesta a un negocio cambiante. Lo ideal es que los modelos de datos se almacenen en un repositorio para que puedan recuperarse, expandirse y editarse con el tiempo. Whitten et al. (2004) determinaron dos tipos de modelado de datos:

El modelado de datos también se utiliza como técnica para detallar los requisitos comerciales para bases de datos específicas. A veces se denomina modelado de base de datos porque finalmente se implementa un modelo de datos en una base de datos.

Temas

Modelos de datos

Los modelos de datos proporcionan un marco para que los datos se utilicen dentro de los sistemas de información al proporcionar una definición y un formato específicos. Si un modelo de datos se usa de manera consistente en todos los sistemas, se puede lograr la compatibilidad de los datos. Si se utilizan las mismas estructuras de datos para almacenar y acceder a los datos, diferentes aplicaciones pueden compartir datos sin problemas. Los resultados de esto se indican en el diagrama. Sin embargo, los sistemas y las interfaces suelen ser costosos de construir, operar y mantener. También pueden limitar el negocio en lugar de apoyarlo. Esto puede ocurrir cuando la calidad de los modelos de datos implementados en los sistemas e interfaces es deficiente.

Algunos problemas comunes que se encuentran en los modelos de datos son:

Esquemas conceptuales, lógicos y físicos

En 1975, ANSI describió tres tipos de instancias de modelos de datos:

Según ANSI, este enfoque permite que las tres perspectivas sean relativamente independientes entre sí. La tecnología de almacenamiento puede cambiar sin afectar el esquema lógico o conceptual. La estructura de la tabla/columna puede cambiar sin (necesariamente) afectar el esquema conceptual. En cada caso, por supuesto, las estructuras deben permanecer consistentes en todos los esquemas del mismo modelo de datos.

Proceso de modelado de datos

En el contexto de la integración de procesos comerciales (ver figura), el modelado de datos complementa el modelado de procesos comerciales y, en última instancia, da como resultado la generación de bases de datos.

El proceso de diseño de una base de datos implica producir los tres tipos de esquemas descritos anteriormente: conceptual, lógico y físico. El diseño de la base de datos documentado en estos esquemas se convierte a través de un lenguaje de definición de datos, que luego se puede utilizar para generar una base de datos. Un modelo de datos con atributos completos contiene atributos detallados (descripciones) para cada entidad dentro de él. El término "diseño de base de datos" puede describir muchas partes diferentes del diseño de un sistema de base de datos general. Principalmente, y de manera más correcta, se puede considerar como el diseño lógico de las estructuras de datos base utilizadas para almacenar los datos. En el modelo relacional son las tablas y las vistas. En una base de datos de objetos, las entidades y relaciones se asignan directamente a clases de objetos y relaciones con nombre. Sin embargo, el término "diseño de base de datos"

En el proceso, las interfaces del sistema representan del 25% al ​​70% de los costos de desarrollo y soporte de los sistemas actuales. La razón principal de este costo es que estos sistemas no comparten un modelo de datos común. Si los modelos de datos se desarrollan sistema por sistema, entonces no solo se repite el mismo análisis en áreas superpuestas, sino que se deben realizar más análisis para crear las interfaces entre ellos. La mayoría de los sistemas dentro de una organización contienen los mismos datos básicos, rediseñados para un propósito específico. Por lo tanto, un modelo de datos básico diseñado eficientemente puede minimizar la repetición del trabajo con modificaciones mínimas para los diferentes sistemas dentro de la organización.

Metodologías de modelado

Los modelos de datos representan áreas de información de interés. Si bien hay muchas formas de crear modelos de datos, según Len Silverston (1997), solo se destacan dos metodologías de modelado, top-down y bottom-up:

A veces, los modelos se crean con una combinación de los dos métodos: al considerar las necesidades de datos y la estructura de una aplicación y al hacer referencia consistentemente a un modelo de área temática. Desafortunadamente, en muchos entornos, la distinción entre un modelo de datos lógico y un modelo de datos físicos es borrosa. Además, algunas herramientas CASE no distinguen entre modelos de datos lógicos y físicos.

Diagramas de entidad-relación

Hay varias notaciones para el modelado de datos. El modelo real se denomina con frecuencia "modelo de entidad-relación", porque representa los datos en términos de las entidades y relaciones descritas en los datos. Un modelo entidad-relación (ERM) es una representación conceptual abstracta de datos estructurados. El modelado entidad-relación es un método de modelado de bases de datos de esquemas relacionales, utilizado en ingeniería de software para producir un tipo de modelo de datos conceptuales (o modelo de datos semánticos) de un sistema, a menudo una base de datos relacional, y sus requisitos de forma descendente.

Estos modelos se utilizan en la primera etapa del diseño del sistema de información durante el análisis de requisitos para describir las necesidades de información o el tipo de información que se almacenará en una base de datos. La técnica de modelado de datos se puede utilizar para describir cualquier ontología (es decir, una descripción general y clasificaciones de los términos utilizados y sus relaciones) para un cierto universo de discurso, es decir, un área de interés.

Se han desarrollado varias técnicas para el diseño de modelos de datos. Si bien estas metodologías guían a los modeladores de datos en su trabajo, dos personas diferentes que utilicen la misma metodología a menudo obtendrán resultados muy diferentes. Los más notables son:

Modelado de datos genéricos

Los modelos de datos genéricos son generalizaciones de los modelos de datos convencionales. Definen tipos de relaciones generales estandarizados, junto con los tipos de cosas que pueden estar relacionadas por tal tipo de relación. La definición de modelo de datos genérico es similar a la definición de lenguaje natural. Por ejemplo, un modelo de datos genérico puede definir tipos de relaciones como una 'relación de clasificación', siendo una relación binaria entre una cosa individual y un tipo de cosa (una clase) y una 'relación parte-todo', siendo una relación binaria entre dos cosas, una con el papel de parte, la otra con el papel de todo, independientemente de la clase de cosas que estén relacionadas.

Dada una lista extensible de clases, esto permite la clasificación de cualquier cosa individual y especificar relaciones parte-todo para cualquier objeto individual. Mediante la estandarización de una lista extensible de tipos de relaciones, un modelo de datos genérico permite la expresión de un número ilimitado de tipos de hechos y se acercará a las capacidades de los lenguajes naturales. Los modelos de datos convencionales, por otro lado, tienen un alcance de dominio fijo y limitado, porque la creación de instancias (uso) de dicho modelo solo permite expresiones de tipos de hechos que están predefinidos en el modelo.

Modelado de datos semánticos

La estructura lógica de datos de un DBMS, ya sea jerárquica, de red o relacional, no puede satisfacer totalmente los requisitos para una definición conceptual de datos porque tiene un alcance limitado y está sesgada hacia la estrategia de implementación empleada por el DBMS. Eso es a menos que el modelo de datos semánticos se implemente en la base de datos a propósito, una opción que puede afectar levemente el rendimiento pero, en general, mejora enormemente la productividad.

Por lo tanto, la necesidad de definir los datos desde una perspectiva conceptual ha llevado al desarrollo de técnicas de modelado semántico de datos. Es decir, técnicas para definir el significado de los datos dentro del contexto de sus interrelaciones con otros datos. Como se ilustra en la figura, el mundo real, en términos de recursos, ideas, eventos, etc., se define simbólicamente dentro de los almacenes de datos físicos. Un modelo de datos semánticos es una abstracción que define cómo los símbolos almacenados se relacionan con el mundo real. Por lo tanto, el modelo debe ser una representación fiel del mundo real.

Un modelo de datos semánticos se puede utilizar para muchos propósitos, como:

El objetivo general de los modelos de datos semánticos es captar más significado de los datos mediante la integración de conceptos relacionales con conceptos de abstracción más potentes conocidos en el campo de la inteligencia artificial. La idea es proporcionar primitivas de modelado de alto nivel como parte integral de un modelo de datos para facilitar la representación de situaciones del mundo real.