stringtranslate.com

Modelo de datos

Descripción general de un contexto de modelado de datos: el modelo de datos se basa en datos, relaciones entre datos, semántica de datos y restricciones de datos. Un modelo de datos proporciona los detalles de la información que se almacenará y es de uso principal cuando el producto final es la generación de código de software informático para una aplicación o la preparación de una especificación funcional para ayudar a tomar una decisión de fabricación o compra de software informático . La figura es un ejemplo de la interacción entre los modelos de proceso y de datos. [1]

Un modelo de datos es un modelo abstracto que organiza elementos de datos y estandariza cómo se relacionan entre sí y con las propiedades de las entidades del mundo real . [2] [3] Por ejemplo, un modelo de datos puede especificar que el elemento de datos que representa un automóvil esté compuesto por varios otros elementos que, a su vez, representan el color y el tamaño del automóvil y definen a su propietario.

La actividad profesional correspondiente se denomina generalmente modelado de datos o, más específicamente, diseño de bases de datos . Los modelos de datos suelen ser especificados por un experto en datos, un especialista en datos, un científico de datos, un bibliotecario de datos o un estudioso de datos. Un lenguaje y una notación de modelado de datos suelen representarse en forma gráfica como diagramas. [4]

A veces, un modelo de datos se puede denominar estructura de datos , especialmente en el contexto de los lenguajes de programación . Los modelos de datos suelen complementarse con modelos de funciones , especialmente en el contexto de los modelos empresariales .

Un modelo de datos determina explícitamente la estructura de los datos ; por el contrario, los datos estructurados son datos organizados según un modelo de datos explícito o una estructura de datos. Los datos estructurados se diferencian de los datos no estructurados y de los datos semiestructurados .

Descripción general

El término modelo de datos puede hacer referencia a dos conceptos distintos pero estrechamente relacionados. A veces se refiere a una formalización abstracta de los objetos y relaciones que se encuentran en un dominio de aplicación particular: por ejemplo, los clientes, productos y pedidos que se encuentran en una organización de fabricación. En otras ocasiones se refiere al conjunto de conceptos utilizados para definir dichas formalizaciones: por ejemplo, conceptos como entidades, atributos, relaciones o tablas. Por lo tanto, el "modelo de datos" de una aplicación bancaria se puede definir utilizando el "modelo de datos" de entidad-relación. Este artículo utiliza el término en ambos sentidos.

La gestión de grandes cantidades de datos estructurados y no estructurados es una función primordial de los sistemas de información . Los modelos de datos describen los aspectos de estructura, manipulación e integridad de los datos almacenados en sistemas de gestión de datos, como las bases de datos relacionales. También pueden describir datos con una estructura más flexible, como documentos de procesamiento de textos , mensajes de correo electrónico , imágenes, audio digital y vídeo: XDM , por ejemplo, proporciona un modelo de datos para documentos XML .

El papel de los modelos de datos

Cómo los modelos de datos aportan beneficios [5]

El objetivo principal de los modelos de datos es apoyar el desarrollo de sistemas de información proporcionando la definición y el formato de los datos. Según West y Fowler (1999), "si esto se hace 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 compartirlos. Los resultados de esto se indican anteriormente. Sin embargo, los sistemas e interfaces a menudo cuestan más de lo que deberían para construirlos, operarlos y mantenerlos. También pueden limitar el negocio en lugar de respaldarlo. Una causa importante es que la calidad de los modelos de datos implementados en los sistemas e interfaces es deficiente". [5]

La razón de estos problemas es la falta de estándares que garanticen que los modelos de datos satisfagan las necesidades del negocio y sean consistentes. [5]

Un modelo de datos determina explícitamente la estructura de los datos. Las aplicaciones típicas de los modelos de datos incluyen modelos de bases de datos, diseño de sistemas de información y habilitación del intercambio de datos. Por lo general, los modelos de datos se especifican en un lenguaje de modelado de datos.[3]

Tres perspectivas

La arquitectura de tres niveles ANSI/SPARC muestra que un modelo de datos puede ser un modelo externo (o vista), un modelo conceptual o un modelo físico. Esta no es la única forma de analizar los modelos de datos, pero es una forma útil, en particular cuando se comparan modelos. [5]

Una instancia de modelo de datos puede ser de tres tipos según ANSI en 1975: [6]

  1. Modelo de datos conceptual : describe la semántica de un dominio, siendo el alcance del modelo. Por ejemplo, puede ser un modelo del área de interés de una organización o industria. Este consta de clases de entidad, que representan tipos de cosas de importancia en el dominio, y afirmaciones de relación sobre asociaciones entre pares de clases de entidad. Un esquema conceptual especifica los tipos de hechos o proposiciones que se pueden expresar utilizando el modelo. En ese sentido, define las expresiones permitidas en un "lenguaje" artificial con un alcance que está limitado por el alcance del modelo.
  2. Modelo lógico de datos : describe la semántica, tal como se representa mediante una tecnología de manipulación de datos en particular. Consiste en descripciones de tablas y columnas, clases orientadas a objetos y etiquetas XML, entre otras cosas.
  3. Modelo de datos físicos : describe los medios físicos mediante los cuales se almacenan los datos. Esto se relaciona con particiones, CPU, espacios de tablas y similares.

La importancia de este enfoque, según ANSI, es que permite que las tres perspectivas sean relativamente independientes entre sí. La tecnología de almacenamiento puede cambiar sin afectar ni al modelo lógico ni al conceptual. La estructura de tabla/columna puede cambiar sin afectar (necesariamente) al modelo conceptual. En cada caso, por supuesto, las estructuras deben permanecer consistentes con el otro modelo. La estructura de tabla/columna puede ser diferente de una traducción directa de las clases de entidad y atributos, pero en última instancia debe llevar a cabo los objetivos de la estructura de clase de entidad conceptual. Las primeras fases de muchos proyectos de desarrollo de software enfatizan el diseño de un modelo de datos conceptual . Tal diseño puede detallarse en un modelo de datos lógico . En etapas posteriores, este modelo puede traducirse en un modelo de datos físico . Sin embargo, también es posible implementar un modelo conceptual directamente.

Historia

Uno de los primeros trabajos pioneros en el modelado de sistemas de información fue realizado por Young y Kent (1958), [7] [8] quienes abogaron por "una forma precisa y abstracta de especificar las características informativas y temporales de un problema de procesamiento de datos ". Querían crear "una notación que permitiera al analista organizar el problema en torno a cualquier pieza de hardware ". Su trabajo fue el primer esfuerzo por crear una especificación abstracta y una base invariante para diseñar diferentes implementaciones alternativas utilizando diferentes componentes de hardware. El siguiente paso en el modelado de SI lo dio CODASYL , un consorcio de la industria de TI formado en 1959, que esencialmente apuntaba a lo mismo que Young y Kent: el desarrollo de "una estructura adecuada para el lenguaje de definición de problemas independiente de la máquina, a nivel de sistema de procesamiento de datos". Esto condujo al desarrollo de un álgebra de información de SI específica . [8]

En la década de 1960, el modelado de datos adquirió mayor importancia con el inicio del concepto de sistema de información gerencial (MIS). Según Leondes (2002), "durante ese tiempo, el sistema de información proporcionaba los datos y la información para fines de gestión. El sistema de base de datos de primera generación , llamado Integrated Data Store (IDS), fue diseñado por Charles Bachman en General Electric. Dos modelos de base de datos famosos, el modelo de datos de red y el modelo de datos jerárquico , se propusieron durante este período de tiempo". [9] Hacia finales de la década de 1960, Edgar F. Codd elaboró ​​sus teorías de ordenamiento de datos y propuso el modelo relacional para la gestión de bases de datos basado en la lógica de predicados de primer orden . [10]

En la década de 1970, el modelado de entidad-relación surgió como un nuevo tipo de modelado de datos conceptual, formalizado originalmente en 1976 por Peter Chen . Los modelos de entidad-relación se utilizaban en la primera etapa del diseño de sistemas de información durante el análisis de requisitos para describir las necesidades de información o el tipo de información que se debe almacenar en una base de datos . Esta técnica puede describir cualquier ontología , es decir, una descripción general y clasificación de conceptos y sus relaciones, para un área de interés determinada .

En la década de 1970, GM Nijssen desarrolló el método de análisis de información en lenguaje natural (NIAM, por sus siglas en inglés) y, en la década de 1980, lo desarrolló en cooperación con Terry Halpin para convertirlo en modelado de roles de objetos (ORM, por sus siglas en inglés). Sin embargo, fue la tesis doctoral de Terry Halpin de 1989 la que creó la base formal sobre la que se basa el modelado de roles de objetos.

Bill Kent, en su libro de 1978 Datos y realidad, [11] comparó un modelo de datos con un mapa de un territorio, enfatizando que en el mundo real, "las carreteras no están pintadas de rojo, los ríos no tienen límites de condado que los recorran por el medio y no se pueden ver las curvas de nivel en una montaña". A diferencia de otros investigadores que intentaron crear modelos que fueran matemáticamente limpios y elegantes, Kent enfatizó el desorden esencial del mundo real y la tarea del modelador de datos de crear orden a partir del caos sin distorsionar excesivamente la verdad.

En la década de 1980, según Jan L. Harrington (2000), “el desarrollo del paradigma orientado a objetos trajo consigo un cambio fundamental en la forma en que analizamos los datos y los procedimientos que operan sobre ellos. Tradicionalmente, los datos y los procedimientos se almacenaban por separado: los datos y sus relaciones en una base de datos, los procedimientos en un programa de aplicación. La orientación a objetos, en cambio, combinaba el procedimiento de una entidad con sus datos”. [12]

A principios de los años 90, tres matemáticos holandeses, Guido Bakema, Harm van der Lek y JanPieter Zwart, continuaron el desarrollo del trabajo de GM Nijssen . Se centraron más en la parte comunicativa de la semántica. En 1997 formalizaron el método Fully Communication Oriented Information Modeling (FCO-IM) .

Tipos

Modelo de base de datos

Un modelo de base de datos es una especificación que describe cómo se estructura y utiliza una base de datos.

Se han sugerido varios modelos de este tipo. Los modelos más comunes incluyen:

Modelo plano
Es posible que esto no se pueda considerar estrictamente un modelo de datos. El modelo plano (o de tabla) consiste en una única matriz bidimensional de elementos de datos, donde se supone que todos los miembros de una columna dada son valores similares y se supone que todos los miembros de una fila están relacionados entre sí.
Modelo jerárquico
El modelo jerárquico es similar al modelo de red excepto que los enlaces en el modelo jerárquico forman una estructura de árbol, mientras que el modelo de red permite gráficos arbitrarios.
Modelo de red
Este modelo organiza los datos utilizando dos estructuras fundamentales, llamadas registros y conjuntos. Los registros contienen campos y los conjuntos definen relaciones de uno a muchos entre registros: un propietario, muchos miembros. El modelo de datos de red es una abstracción del concepto de diseño utilizado en la implementación de bases de datos.
Modelo relacional
es un modelo de base de datos basado en la lógica de predicados de primer orden. Su idea central es describir una base de datos como una colección de predicados sobre un conjunto finito de variables de predicado, describiendo restricciones sobre los posibles valores y combinaciones de valores. El poder del modelo de datos relacionales reside en sus fundamentos matemáticos y en un paradigma simple a nivel de usuario.
Modelo objeto-relacional
Similar a un modelo de base de datos relacional, pero los objetos, las clases y la herencia se admiten directamente en los esquemas de base de datos y en el lenguaje de consulta.
Modelado de objetos y roles
Un método de modelado de datos que se ha definido como "libre de atributos" y "basado en hechos". El resultado es un sistema verificablemente correcto, del que se pueden derivar otros artefactos comunes, como ERD, UML y modelos semánticos. Las asociaciones entre objetos de datos se describen durante el procedimiento de diseño de la base de datos, de modo que la normalización es un resultado inevitable del proceso.
Esquema de estrella
El estilo más simple de esquema de almacén de datos. El esquema en estrella consta de unas pocas "tablas de hechos" (posiblemente solo una, lo que justifica el nombre) que hacen referencia a cualquier cantidad de "tablas de dimensiones". El esquema en estrella se considera un caso especial importante del esquema en forma de copo de nieve .

Diagrama de estructura de datos

Ejemplo de un diagrama de estructura de datos

Un diagrama de estructura de datos (DSD) es un diagrama y modelo de datos que se utiliza para describir modelos de datos conceptuales al proporcionar notaciones gráficas que documentan entidades y sus relaciones , y las restricciones que las vinculan. Los elementos gráficos básicos de los DSD son cuadros , que representan entidades, y flechas , que representan relaciones. Los diagramas de estructura de datos son más útiles para documentar entidades de datos complejas.

Los diagramas de estructura de datos son una extensión del modelo entidad-relación (modelo ER). En los diagramas de estructura de datos, los atributos se especifican dentro de los cuadros de entidad en lugar de fuera de ellos, mientras que las relaciones se dibujan como cuadros compuestos de atributos que especifican las restricciones que unen a las entidades. Los diagramas de estructura de datos se diferencian del modelo ER en que este último se centra en las relaciones entre diferentes entidades, mientras que los diagramas de estructura de datos se centran en las relaciones de los elementos dentro de una entidad y permiten a los usuarios ver completamente los vínculos y las relaciones entre cada entidad.

Existen varios estilos para representar diagramas de estructuras de datos, con la notable diferencia en la forma de definir la cardinalidad . Las opciones son: puntas de flecha, puntas de flecha invertidas ( patas de gallo ) o representación numérica de la cardinalidad.

Ejemplo de un diagrama de entidad-relación de IDEF1X utilizado para modelar IDEF1X en sí [13]

Modelo entidad-relación

Un modelo entidad-relación (ERM), a veces denominado diagrama entidad-relación (ERD), se podría utilizar para representar un modelo de datos conceptual abstracto (o modelo de datos semántico o modelo de datos físico) utilizado en ingeniería de software para representar datos estructurados. Existen varias notaciones utilizadas para los ERM. Al igual que en los DSD, los atributos se especifican dentro de los cuadros de entidad en lugar de fuera de ellos, mientras que las relaciones se dibujan como líneas, con las restricciones de relación como descripciones en la línea. El modelo ER, aunque sólido, puede volverse visualmente engorroso al representar entidades con varios atributos.

Existen varios estilos para representar diagramas de estructuras de datos, con una diferencia notable en la forma de definir la cardinalidad. Las opciones son: puntas de flecha, puntas de flecha invertidas (patas de gallo) o representación numérica de la cardinalidad.

Modelo de datos geográficos

Un modelo de datos en los sistemas de información geográfica es una construcción matemática para representar objetos o superficies geográficas como datos. Por ejemplo,

Modelo de datos genérico

Los modelos de datos genéricos son generalizaciones de los modelos de datos convencionales. Definen tipos de relaciones generales estandarizadas, junto con los tipos de cosas que pueden estar relacionadas por dicho tipo de relación. Los modelos de datos genéricos se desarrollan como un enfoque para resolver algunas deficiencias de los modelos de datos convencionales. Por ejemplo, diferentes modeladores suelen producir diferentes modelos de datos convencionales del mismo dominio. Esto puede generar dificultades para reunir los modelos de diferentes personas y es un obstáculo para el intercambio y la integración de datos. Sin embargo, invariablemente, esta diferencia se puede atribuir a diferentes niveles de abstracción en los modelos y diferencias en los tipos de hechos que se pueden instanciar (las capacidades de expresión semántica de los modelos). Los modeladores deben comunicarse y acordar ciertos elementos que se deben representar de manera más concreta, para que las diferencias sean menos significativas.

Modelo de datos semánticos

Modelos de datos semánticos [13]

Un modelo de datos semántico en ingeniería de software es una técnica para definir el significado de los datos dentro del contexto de sus interrelaciones con otros datos. Un modelo de datos semántico es una abstracción que define cómo los símbolos almacenados se relacionan con el mundo real. [13] Un modelo de datos semántico a veces se denomina modelo de datos conceptual .

La estructura lógica de datos de un sistema de gestión de bases de datos (DBMS), ya sea jerárquica , de red o relacional , no puede satisfacer totalmente los requisitos de una definición conceptual de los datos porque tiene un alcance limitado y está sesgada hacia la estrategia de implementación empleada por el DBMS. 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ántico es una abstracción que define cómo se relacionan los símbolos almacenados con el mundo real. Por lo tanto, el modelo debe ser una verdadera representación del mundo real. [13]

Temas

Arquitectura de datos

La arquitectura de datos es el diseño de datos para su uso en la definición del estado objetivo y la planificación posterior necesaria para alcanzarlo. Suele ser uno de los diversos dominios de arquitectura que forman los pilares de una arquitectura empresarial o de una solución .

Una arquitectura de datos describe las estructuras de datos que utiliza una empresa o sus aplicaciones. Hay descripciones de datos almacenados y en movimiento; descripciones de almacenes de datos, grupos de datos y elementos de datos; y asignaciones de esos artefactos de datos a calidades de datos, aplicaciones, ubicaciones, etc.

La arquitectura de datos, esencial para alcanzar el estado objetivo, describe cómo se procesan, almacenan y utilizan los datos en un sistema determinado. Proporciona criterios para las operaciones de procesamiento de datos que permiten diseñar flujos de datos y también controlar el flujo de datos en el sistema.

Modelado de datos

El proceso de modelado de datos

El modelado de datos en ingeniería de software es el proceso de creación de un modelo de datos mediante la aplicación de descripciones formales de modelos de datos utilizando técnicas de modelado de datos. El modelado de datos es una técnica para definir los requisitos comerciales de una base de datos. A veces se lo denomina modelado de bases de datos porque un modelo de datos se implementa finalmente en una base de datos. [16]

La figura ilustra la forma en que se desarrollan y utilizan los modelos de datos en la actualidad. Se desarrolla un modelo de datos conceptual en función de los requisitos de datos para la aplicación que se está desarrollando, tal vez en el contexto de un modelo de actividad . El modelo de datos normalmente constará de tipos de entidades, atributos, relaciones, reglas de integridad y las definiciones de esos objetos. Esto se utiliza luego como punto de partida para el diseño de la interfaz o la base de datos . [5]

Propiedades de los datos

Algunas propiedades importantes de los datos [5]

Algunas propiedades importantes de los datos para las que se deben cumplir requisitos son:

Organización de datos

Otro tipo de modelo de datos describe cómo organizar los datos mediante un sistema de gestión de bases de datos u otra tecnología de gestión de datos. Describe, por ejemplo, tablas y columnas relacionales o clases y atributos orientados a objetos. Este modelo de datos a veces se denomina modelo de datos físico , pero en la arquitectura de tres esquemas ANSI original, se denomina "lógico". En esa arquitectura, el modelo físico describe los medios de almacenamiento (cilindros, pistas y espacios de tabla). Idealmente, este modelo se deriva del modelo de datos más conceptual descrito anteriormente. Sin embargo, puede diferir para tener en cuenta restricciones como la capacidad de procesamiento y los patrones de uso.

Si bien el análisis de datos es un término común para el modelado de datos, la actividad en realidad tiene más en común con las ideas y métodos de síntesis (inferir conceptos generales a partir de instancias particulares) que con el análisis (identificar conceptos componentes a partir de otros más generales). { Presumiblemente nos llamamos analistas de sistemas porque nadie puede decir que somos sintetistas de sistemas . } El modelado de datos se esfuerza por reunir las estructuras de datos de interés en un todo cohesivo e inseparable eliminando redundancias de datos innecesarias y relacionando las estructuras de datos con relaciones .

Un enfoque diferente es utilizar sistemas adaptativos como redes neuronales artificiales que pueden crear de forma autónoma modelos implícitos de datos.

Estructura de datos

Un árbol binario , un tipo simple de estructura de datos enlazada y ramificada

Una estructura de datos es una forma de almacenar datos en una computadora para que puedan usarse de manera eficiente. Es una organización de conceptos matemáticos y lógicos de datos. A menudo, una estructura de datos cuidadosamente elegida permitirá que se use el algoritmo más eficiente . La elección de la estructura de datos a menudo comienza con la elección de un tipo de datos abstracto .

Un modelo de datos describe la estructura de los datos dentro de un dominio determinado y, por implicación, la estructura subyacente de ese dominio en sí. Esto significa que, de hecho, un modelo de datos especifica una gramática dedicada a un lenguaje artificial dedicado a ese dominio. Un modelo de datos representa clases de entidades (tipos de cosas) sobre las que una empresa desea mantener información, los atributos de esa información y las relaciones entre esas entidades y las relaciones (a menudo implícitas) entre esos atributos. El modelo describe la organización de los datos hasta cierto punto, independientemente de cómo se puedan representar los datos en un sistema informático.

Las entidades representadas por un modelo de datos pueden ser entidades tangibles, pero los modelos que incluyen esas clases de entidades concretas tienden a cambiar con el tiempo. Los modelos de datos robustos a menudo identifican abstracciones de esas entidades. Por ejemplo, un modelo de datos puede incluir una clase de entidad llamada "Persona", que representa a todas las personas que interactúan con una organización. Una clase de entidad abstracta de ese tipo suele ser más apropiada que las llamadas "Proveedor" o "Empleado", que identifican funciones específicas desempeñadas por esas personas.

Teoría de modelos de datos

El término modelo de datos puede tener dos significados: [17]

  1. Una teoría del modelo de datos , es decir, una descripción formal de cómo se pueden estructurar y acceder a los datos.
  2. Una instancia de modelo de datos , es decir, aplicar una teoría de modelo de datos para crear una instancia de modelo de datos práctica para alguna aplicación particular.

Una teoría de modelos de datos tiene tres componentes principales: [17]

Por ejemplo, en el modelo relacional , la parte estructural se basa en un concepto modificado de la relación matemática ; la parte de integridad se expresa en lógica de primer orden y la parte de manipulación se expresa utilizando el álgebra relacional , el cálculo de tuplas y el cálculo de dominios .

Una instancia de modelo de datos se crea aplicando una teoría de modelos de datos. Esto se hace típicamente para resolver algún requisito empresarial. Los requisitos empresariales normalmente se capturan mediante un modelo de datos lógico semántico . Este se transforma en una instancia de modelo de datos físico a partir de la cual se genera una base de datos física. Por ejemplo, un modelador de datos puede usar una herramienta de modelado de datos para crear un modelo de entidad-relación del repositorio de datos corporativos de alguna empresa comercial. Este modelo se transforma en un modelo relacional , que a su vez genera una base de datos relacional .

Patrones

Los patrones [18] son ​​estructuras de modelado de datos comunes que aparecen en muchos modelos de datos.

Modelos relacionados

Diagrama de flujo de datos

Ejemplo de diagrama de flujo de datos [19]

Un diagrama de flujo de datos (DFD) es una representación gráfica del "flujo" de datos a través de un sistema de información . Se diferencia del diagrama de flujo en que muestra el flujo de datos en lugar del flujo de control del programa. Un diagrama de flujo de datos también se puede utilizar para la visualización del procesamiento de datos (diseño estructurado). Los diagramas de flujo de datos fueron inventados por Larry Constantine , el desarrollador original del diseño estructurado, [20] basándose en el modelo de computación de "gráfico de flujo de datos" de Martin y Estrin.

Es una práctica común dibujar primero un diagrama de flujo de datos a nivel de contexto que muestre la interacción entre el sistema y las entidades externas. El DFD está diseñado para mostrar cómo se divide un sistema en partes más pequeñas y para resaltar el flujo de datos entre esas partes. Luego, este diagrama de flujo de datos a nivel de contexto se "descompone" para mostrar más detalles del sistema que se está modelando.

Modelo de información

Ejemplo de un modelo de información EXPRESS G

Un modelo de información no es un tipo de modelo de datos, sino más o menos un modelo alternativo. En el campo de la ingeniería de software, tanto un modelo de datos como un modelo de información pueden ser representaciones abstractas y formales de tipos de entidades que incluyen sus propiedades, relaciones y las operaciones que se pueden realizar en ellas. Los tipos de entidades del modelo pueden ser tipos de objetos del mundo real, como dispositivos en una red, o pueden ser abstractos, como las entidades utilizadas en un sistema de facturación. Normalmente, se utilizan para modelar un dominio restringido que se puede describir mediante un conjunto cerrado de tipos de entidades, propiedades, relaciones y operaciones.

Según Lee (1999) [21] un modelo de información es una representación de conceptos, relaciones, restricciones, reglas y operaciones para especificar la semántica de datos para un dominio de discurso elegido. Puede proporcionar una estructura compartible, estable y organizada de requisitos de información para el contexto del dominio. [21] De manera más general, el término modelo de información se utiliza para modelos de cosas individuales, como instalaciones, edificios, plantas de proceso, etc. En esos casos, el concepto se especializa en Modelo de información de instalaciones , Modelo de información de edificios , Modelo de información de plantas, etc. Un modelo de información de este tipo es una integración de un modelo de la instalación con los datos y documentos sobre la instalación.

Un modelo de información proporciona formalismo a la descripción de un dominio de problemas sin limitar la forma en que esa descripción se asigna a una implementación real en el software. Puede haber muchas asignaciones del modelo de información. Dichas asignaciones se denominan modelos de datos, independientemente de si son modelos de objetos (por ejemplo, utilizando UML ), modelos de entidad-relación o esquemas XML .

Modelo de objetos de documento , un modelo de objetos estándar para representar HTML o XML

Modelo de objeto

Un modelo de objetos en informática es una colección de objetos o clases a través de los cuales un programa puede examinar y manipular algunas partes específicas de su mundo. En otras palabras, la interfaz orientada a objetos para algún servicio o sistema. Se dice que dicha interfaz es el modelo de objetos del servicio o sistema representado. Por ejemplo, el Modelo de objetos de documento (DOM) [1] es una colección de objetos que representan una página en un navegador web , utilizada por programas de script para examinar y cambiar dinámicamente la página. Existe un modelo de objetos de Microsoft Excel [22] para controlar Microsoft Excel desde otro programa, y ​​el Controlador de telescopio ASCOM [23] es un modelo de objetos para controlar un telescopio astronómico.

En informática, el término modelo de objetos tiene un segundo significado distinto de las propiedades generales de los objetos en un lenguaje de programación informática , tecnología, notación o metodología específica que los utiliza. Por ejemplo, el modelo de objetos de Java , el modelo de objetos de COM o el modelo de objetos de OMT . Dichos modelos de objetos suelen definirse utilizando conceptos como clase , mensaje , herencia , polimorfismo y encapsulamiento . Existe una amplia literatura sobre los modelos de objetos formalizados como un subconjunto de la semántica formal de los lenguajes de programación .

Modelado de objetos y roles

Ejemplo de la aplicación del modelado de objetos y roles en un “esquema para superficies geológicas”, Stephen M. Richard (1999) [24]

El modelado de objetos y roles (ORM) es un método de modelado conceptual y puede utilizarse como herramienta para el análisis de información y reglas. [25]

El modelado de objetos y roles es un método basado en hechos para realizar análisis de sistemas a nivel conceptual. La calidad de una aplicación de base de datos depende fundamentalmente de su diseño. Para garantizar la corrección, la claridad, la adaptabilidad y la productividad, lo mejor es especificar primero los sistemas de información a nivel conceptual, utilizando conceptos y un lenguaje que las personas puedan comprender fácilmente.

El diseño conceptual puede incluir perspectivas de datos, procesos y comportamiento, y el DBMS real utilizado para implementar el diseño puede basarse en uno de muchos modelos de datos lógicos (relacional, jerárquico, de red, orientado a objetos, etc.). [26]

Modelos de lenguaje de modelado unificado

El lenguaje de modelado unificado (UML) es un lenguaje de modelado de propósito general estandarizado en el campo de la ingeniería de software . Es un lenguaje gráfico para visualizar, especificar, construir y documentar los artefactos de un sistema con uso intensivo de software. El lenguaje de modelado unificado ofrece una forma estándar de escribir los planos de un sistema, que incluye: [27]

UML ofrece una combinación de modelos funcionales , modelos de datos y modelos de bases de datos .

Véase también

Referencias

  1. ^ Publicaciones Paul R. Smith y Richard Sarfaty, LLC 2009
  2. ^ "¿Qué es un modelo de datos?". princeton.edu . Consultado el 29 de mayo de 2024 .
  3. ^ "Modelado de dominios UML - Desbordamiento de pila". Desbordamiento de pila . Stack Exchange Inc . Consultado el 4 de febrero de 2017 .
  4. ^ Michael R. McCaleb (1999). "Un modelo conceptual de datos de sistemas de datos". Archivado el 21 de septiembre de 2008 en Wayback Machine . Instituto Nacional de Normas y Tecnología. Agosto de 1999.
  5. ^ abcdefghijk Matthew West y Julian Fowler (1999). Desarrollo de modelos de datos de alta calidad. El Ejecutivo de enlace técnico de STEP de las industrias de proceso europeas (EPISTLE).
  6. ^ Instituto Nacional Estadounidense de Normas. 1975. Grupo de estudio ANSI/X3/SPARC sobre sistemas de gestión de bases de datos; informe provisional . FDT (Boletín de ACM SIGMOD) 7:2.
  7. ^ Young, JW, y Kent, HK (1958). "Formulación abstracta de problemas de procesamiento de datos". En: Journal of Industrial Engineering . Nov-Dic 1958. 9(6), pp. 471-479
  8. ^ ab Janis A. Bubenko jr (2007) "Del álgebra de la información al modelado empresarial y las ontologías: una perspectiva histórica sobre el modelado de sistemas de información". En: Modelado conceptual en ingeniería de sistemas de información . John Krogstie et al. eds. pp 1-18
  9. ^ Cornelius T. Leondes (2002). Sistemas de bases de datos y redes de comunicación de datos: técnicas y aplicaciones . Página 7
  10. ^ "Derivabilidad, redundancia y consistencia de las relaciones almacenadas en grandes bancos de datos" , EF Codd, Informe de investigación de IBM, 1969
  11. ^ Datos y realidad
  12. ^ Jan L. Harrington (2000). Explicación clara del diseño de bases de datos orientadas a objetos . p. 4
  13. ^ abcd Publicación FIPS 184 Archivado el 3 de diciembre de 2013 en Wayback Machine de IDEF1X publicada por el Laboratorio de Sistemas Informáticos del Instituto Nacional de Estándares y Tecnología (NIST). 21 de diciembre de 1993 (retirada en 2008).
  14. ^ Wade, T. y Sommer, S. eds. SIG de la A a la Z
  15. ^ abcd David R. Soller1 y Thomas M. Berg (2003). Proyecto de base de datos de mapas geológicos nacionales: descripción general y progreso, Informe de archivo abierto 03–471 del Servicio Geológico de Estados Unidos.
  16. ^ Whitten, Jeffrey L .; Lonnie D. Bentley y Kevin C. Dittman (2004). Métodos de análisis y diseño de sistemas . Sexta edición. ISBN 0-256-19906-X
  17. ^ de Beynon-Davies P. (2004). Sistemas de bases de datos, 3.ª edición. Palgrave, Basingstoke, Reino Unido. ISBN 1-4039-1601-2 
  18. ^ "El libro de recursos del modelo de datos: patrones universales para el modelado de datos" Len Silverstone y Paul Agnew (2008).
  19. ^ John Azzolini (2000). Introducción a las prácticas de ingeniería de sistemas. Julio de 2000.
  20. ^ W. Stevens, G. Myers, L. Constantine, "Diseño estructurado", IBM Systems Journal, 13 (2), 115-139, 1974.
  21. ^ ab Y. Tina Lee (1999). "Modelado de información desde el diseño hasta la implementación" Instituto Nacional de Estándares y Tecnología.
  22. ^ Descripción general del modelo de objetos de Excel
  23. ^ "Requisitos generales de ASCOM". 13 de mayo de 2011. Consultado el 25 de septiembre de 2014 .
  24. ^ Stephen M. Richard (1999). Modelado de conceptos geológicos. Informe de archivo abierto del Servicio Geológico de Estados Unidos 99–386.
  25. ^ Joachim Rossberg y Rickard Redler (2005). Diseños de aplicaciones escalables .NET 2.0. Página 27.
  26. ^ Modelado de roles de objetos: una descripción general (msdn.microsoft.com). Consultado el 19 de septiembre de 2008.
  27. ^ Grady Booch, Ivar Jacobson y Jim Rumbaugh (2005) Especificación del lenguaje de modelado unificado OMG.

Lectura adicional