Modelo de dados

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar
Visão geral de um contexto de modelagem de dados: O modelo de dados é baseado em dados, relacionamento de dados, semântica de dados e restrição de dados. Um modelo de dados fornece os detalhes das informações a serem armazenadas, e é de uso primário quando o produto final é a geração de código de software de computador para uma aplicação ou a preparação de uma especificação funcional para ajudar uma decisão de tomada ou compra de software de computador. A figura é um exemplo da interação entre processos e modelos de dados.

A Modelo de dados é um modelo abstrato que organiza elementos de dados e padroniza como eles se relacionam e com as propriedades das entidades do mundo real. Por exemplo, um modelo de dados pode especificar que o elemento de dados que representa um carro seja composto por vários outros elementos que, por sua vez, representam a cor e o tamanho do carro e definem seu proprietário.

A atividade profissional correspondente é chamada geralmente Modelagem de dados ou, mais especificamente, Design de banco de dados . Os modelos de dados são normalmente especificados por um especialista em dados, especialista em dados, cientista de dados, bibliotecário de dados ou um estudioso de dados. Uma linguagem de modelagem de dados e a notação são frequentemente representadas em forma gráfica como diagramas.

Um modelo de dados às vezes pode ser chamado de estrutura de dados, especialmente no contexto das linguagens de programação. Os modelos de dados são frequentemente complementados por modelos de função, especialmente no contexto dos modelos corporativos.

Um modelo de dados determina explicitamente a estrutura dos dados ; Por outro lado, os dados estruturados são dados organizados de acordo com um modelo de dados explícito ou estrutura de dados. Os dados estruturados contrastam com os dados não estruturados e dados semiestruturados .

Visão geral

O termo Modelo de dados pode se referir a dois conceitos distintos, mas intimamente relacionados. Às vezes, refere -se a uma formalização abstrata dos objetos e relacionamentos encontrados em um domínio de aplicativo específico: por exemplo, os clientes, produtos e pedidos encontrados em uma organização de manufatura. Outras vezes, refere -se ao conjunto de conceitos usados na definição de tais formalizações: por exemplo, conceitos como entidades, atributos, relações ou tabelas. Então, o modelo de dados " de um pedido bancário pode ser definido usando o modelo de relação de entidade " Data Model ". Este artigo usa o termo nos dois sentidos.

Gerenciando grandes quantidades de dados estruturados e não estruturados é uma função primária dos sistemas de informação. Os modelos de dados descrevem os aspectos de estrutura, manipulação e integridade dos dados armazenados em sistemas de gerenciamento de dados, como bancos de dados relacionais. Eles também podem descrever dados com uma estrutura mais solta, como documentos de processamento de texto, mensagens de email, imagens, áudio digital e vídeo: XDM, por exemplo, fornece um modelo de dados para documentos XML.

O papel dos modelos de dados

Como os modelos de dados oferecem benefícios

O principal objetivo dos modelos de dados é apoiar o desenvolvimento de sistemas de informação, fornecendo a definição e o formato dos dados. De acordo com West e Fowler (1999), se isso for feito de forma consistente entre os sistemas, a compatibilidade dos dados poderá ser alcançada. Se as mesmas estruturas de dados forem usadas para armazenar e acessar dados, diferentes aplicativos poderão compartilhar dados. Os resultados disso são indicados acima. No entanto, sistemas e interfaces geralmente custam mais do que deveriam, construir, operar e manter. Eles também podem restringir o negócio em vez de apoiá -lo. Uma causa importante é que a qualidade dos modelos de dados implementados em sistemas e interfaces é ruim "

  • "As regras de negócios, específicas de como as coisas são feitas em um determinado lugar, são muitas vezes fixadas na estrutura de um modelo de dados. Isso significa que pequenas mudanças na forma como o negócio é conduzido levam a grandes mudanças nos sistemas e interfaces de computador".
  • "Os tipos de entidade não são frequentemente identificados, ou identificados incorretamente. Isso pode levar à replicação de dados, estrutura de dados e funcionalidade, juntamente com os custos participantes dessa duplicação no desenvolvimento e manutenção".
  • "Os modelos de dados para diferentes sistemas são arbitrariamente diferentes. O resultado disso é que interfaces complexas são necessárias entre sistemas que compartilham dados. Essas interfaces podem representar entre 25-70% do custo dos sistemas atuais".
  • "Os dados não podem ser compartilhados eletronicamente com clientes e fornecedores, porque a estrutura e o significado dos dados não foram padronizados. Por exemplo, dados de projeto de engenharia e desenhos para planta de processo ainda são trocados em papel".

O motivo desses problemas é a falta de padrões que garantirão que os modelos de dados atendam às necessidades dos negócios e sejam consistentes.

Um modelo de dados determina explicitamente a estrutura dos dados. As aplicações típicas dos modelos de dados incluem modelos de banco de dados, design de sistemas de informação e ativação de dados de dados. Geralmente, os modelos de dados são especificados em uma linguagem de modelagem de dados. [3]

Três perspectivas

A arquitetura de três níveis ANSI/SPARC. Isso mostra que um modelo de dados pode ser um modelo externo (ou visão), um modelo conceitual ou um modelo físico. Esta não é a única maneira de olhar para os modelos de dados, mas é uma maneira útil, particularmente ao comparar modelos.

Um modelo de dados Instância pode ser um dos três tipos de acordo com a ANSI em 1975:

  1. Modelo de dados conceitual: descreve a semântica de um domínio, sendo o escopo do modelo. Por exemplo, pode ser um modelo da área de interesse de uma organização ou indústria. Isso consiste em classes de entidade, representando tipos de coisas de significância no domínio e afirmações de relacionamento sobre associações entre pares de classes de entidades. Um esquema conceitual especifica os tipos de fatos ou proposições que podem ser expressas usando o modelo. Nesse sentido, define as expressões permitidas em uma linguagem artificial com um escopo limitado pelo escopo do modelo.
  2. Modelo lógico de dados: descreve a semântica, representada por uma tecnologia de manipulação de dados específica. Isso consiste em descrições de tabelas e colunas, classes orientadas a objetos e tags XML, entre outras coisas.
  3. Modelo de dados físicos: descreve os meios físicos pelos quais os dados são armazenados. Isso está preocupado com partições, CPUs, espaços de mesa e similares.

O significado dessa abordagem, de acordo com a ANSI, é que ela permite que as três perspectivas sejam relativamente independentes uma da outra. A tecnologia de armazenamento pode mudar sem afetar o modelo lógico ou conceitual. A estrutura da tabela/coluna pode mudar sem (necessariamente) afetar o modelo conceitual. Em cada caso, é claro, as estruturas devem permanecer consistentes com o outro modelo. A estrutura da tabela/coluna pode ser diferente de uma tradução direta das classes e atributos da entidade, mas deve finalmente cumprir os objetivos da estrutura da classe de entidade conceitual. As primeiras fases de muitos projetos de desenvolvimento de software enfatizam o design de um modelo de dados conceitual. Esse design pode ser detalhado em um modelo de dados lógicos. Nos estágios posteriores, esse modelo pode ser traduzido em modelo de dados físicos. No entanto, também é possível implementar um modelo conceitual diretamente.

História

Um dos primeiros trabalhos pioneiros na modelagem de informações de informação foi realizado por Young e Kent (1958), que defendiam uma maneira precisa e abstrata de especificar as características informativas e de tempo de um problema de processamento de dados " . Eles queriam criar uma notação que deve permitir ao analista organizar o problema em torno de qualquer peça de hardware ". Seu trabalho foi o primeiro esforço para criar uma especificação abstrata e uma base invariante para projetar diferentes implementações alternativas usando diferentes componentes de hardware. O próximo passo é a modelagem foi dada pelo Codasyl, um consórcio da indústria de TI formado em 1959, que essencialmente visava a mesma coisa que Young and Kent: o desenvolvimento de uma estrutura adequada para a linguagem de definição de problemas independente da máquina, em linguagem em O nível do sistema de processamento de dados ". Isso levou ao desenvolvimento de uma álgebra de informação específica.

Na década de 1960, a modelagem de dados ganhou mais significado com o início do conceito de sistema de informação de gerenciamento (MIS). Segundo Leondes (2002), " durante esse período, o sistema de informações forneceu os dados e informações para fins de gerenciamento. O sistema de banco de dados de primeira geração, chamado IDS (Integrated Data Store), foi projetado por Charles Bachman da General Electric. Dois modelos de banco de dados famosos, o modelo de dados de rede e o modelo de dados hierárquicos, foram propostos durante esse período de tempo -. No final da década de 1960, Edgar F. Codd elaborou suas teorias do acordo de dados e propôs o modelo relacional para gerenciamento de banco de dados com base na lógica de predicado de primeira ordem.

Na década de 1970, a modelagem de relacionamento de entidade emergiu como um novo tipo de modelagem de dados conceituais, originalmente formalizada em 1976 por Peter Chen. Os modelos de relacionamento -relacionamento estavam sendo usados na primeira etapa do design do sistema de informações durante a análise de requisitos para descrever as necessidades da informação ou o tipo de informação que deve ser armazenada em um banco de dados. Essa técnica pode descrever qualquer ontologia, ou seja, uma visão geral e classificação de conceitos e seus relacionamentos, para uma certa área de interesse.

Na década de 1970, G.M. Nijssen desenvolvido " Método de Análise de Informação de Linguagem Natural " (Niam) Método, e desenvolveu isso na década de 1980 em cooperação com Terry Halpin na modelagem de objetos -volumes (ORM). No entanto, foi a tese de doutorado em 1989 de Terry Halpin que criou a base formal na qual a modelagem de objetos -volumes se baseia.

Bill Kent, em seu livro de 1978, dados e realidade, compararam um modelo de dados a um mapa de um território, enfatizando que no mundo real, "as rodovias não são pintadas de vermelho, rios rios Não tenha linhas de condado no meio, e você não pode ver linhas de contorno em uma montanha ". Em contraste com outros pesquisadores que tentaram criar modelos matematicamente limpos e elegantes, Kent enfatizou a confusão essencial do mundo real e a tarefa do modelador de dados para criar ordem fora do caos sem distorcer excessivamente a verdade.

Na década de 1980, de acordo com Jan L. Harrington (2000), o desenvolvimento do paradigma orientado a objetos provocou uma mudança fundamental na maneira como analisamos os dados e os procedimentos que operam nos dados. Tradicionalmente, dados e procedimentos foram armazenados separadamente: os dados e seu relacionamento em um banco de dados, os procedimentos em um programa de aplicativos. Orientação de objetos, no entanto, combinou um procedimento de entidade com seus dados.

Durante o início dos anos 90, três matemáticos holandeses Guido Bakema, Harm van der Lek e Janpieter Zwart, continuaram o desenvolvimento no trabalho de G.M. Nijssen. Eles se concentraram mais na parte da comunicação da semântica. Em 1997, eles formalizaram o método de modelagem de informações totalmente orientadas para a comunicação FCO-IM.

Tipos

Modelo de banco de dados

Um modelo de banco de dados é uma especificação que descreve como um banco de dados é estruturado e usado.

Vários desses modelos foram sugeridos. Os modelos comuns incluem:

Modelo plano
Isso pode não se qualificar estritamente como um modelo de dados. O modelo plano (ou tabela) consiste em uma única matriz bidimensional de elementos de dados, onde todos os membros de uma determinada coluna são assumidos como valores semelhantes, e todos os membros de uma linha são assumidos como relacionados uns com os outros.
Modelo hierárquico
O modelo hierárquico é semelhante ao modelo de rede, exceto que os links no modelo hierárquico formam uma estrutura de árvore, enquanto o modelo de rede permite o gráfico arbitrário.
Modelo de rede
Este modelo organiza dados usando dois construtos fundamentais, chamados registros e conjuntos. Os registros contêm campos e definem relações únicas entre registros: um proprietário, muitos membros. O modelo de dados de rede é uma abstração do conceito de design usado na implementação de bases de dados.
Modelo relacional
é um modelo de banco de dados baseado na lógica de predicado de primeira ordem. Sua ideia central é descrever um banco de dados como uma coleção de predicados sobre um conjunto finito de variáveis predicadas, descrevendo restrições sobre os possíveis valores e combinações de valores. O poder do modelo relacional de dados reside em suas bases matemáticas e em um paradigma de nível de usuário simples.
Modelo de objeto-relacional
Semelhante a um modelo de banco de dados relacional, mas objetos, classes e herança são diretamente suportados em esquemas de banco de dados e na linguagem de consulta.
Modelagem por objeto
Um método de modelagem de dados que foi definido como "atributo livre", e "fato baseado". O resultado é um sistema verificavelmente correto, do qual outros artefatos comuns, como ERD, UML e modelos semânticos podem ser derivados. As associações entre objetos de dados são descritas durante o procedimento de projeto do banco de dados, de modo que a normalização é um resultado inevitável do processo.
Esquema de estrelas
O estilo mais simples de data warehouse schema. O esquema estrela consiste em algumas "tapas de fato" (possivelmente apenas uma, justificando o nome) referenciando qualquer número de "mesa de dimensão". O schema estrela é considerado um caso especial importante do esquema de floco de neve.

Diagrama de estrutura de dados

Exemplo de um Diagrama de Estrutura de Dados

Um diagrama de estrutura de dados (DSD) é um diagrama e um modelo de dados usado para descrever modelos de dados conceituais, fornecendo notações gráficas que documentam entidades e seus relacionamentos e as restrições que os ligam. Os elementos gráficos básicos dos DSDs são caixas, representando entidades e setas, representando relacionamentos. Os diagramas de estrutura de dados são mais úteis para documentar entidades de dados complexas.

Os diagramas de estrutura de dados

são uma extensão do modelo de relação de entidade (modelo de ER). Nos DSDs, os atributos são especificados dentro das caixas de entidade, em vez de fora deles, enquanto os relacionamentos são desenhados como caixas compostas por atributos que especificam as restrições que unem entidades. Os DSDs diferem do modelo de ER, pois o modelo de ER se concentra nas relações entre entidades diferentes, enquanto os DSDs se concentram nos relacionamentos dos elementos de uma entidade e permitem que os usuários vejam completamente os links e os relacionamentos entre cada entidade.

Existem vários estilos para representar diagramas de estrutura de dados, com a diferença notável na maneira de definir a cardinalidade. As opções estão entre as cabeças de seta, as cabeças de seta invertidas (pés de corvo) ou representação numérica da cardinalidade.

Exemplo de uma entidade IDEF1X – diagramas de relacionamento usados para modelar o próprio IDEF1X

Modelo de Entidade-Relacionamento

Um modelo de entidade -relacionamento (ERM), às vezes referido como um diagrama de relacionamento entre entidades (ERD), pode ser usado para representar um modelo de dados conceitual abstrato (ou modelo de dados semântico ou modelo de dados físicos) usado em engenharia de software para representar dados estruturados. Existem várias anotações usadas para o ERMS. Como os atributos DSD, são especificados dentro das caixas de entidade, em vez de fora deles, enquanto os relacionamentos são desenhados como linhas, com as restrições de relacionamento como descrições na linha. O modelo E-R, embora robusto, pode se tornar visualmente pesado ao representar entidades com vários atributos.

Existem vários estilos para representar diagramas de estrutura de dados, com uma diferença notável na maneira de definir a cardinalidade. As opções estão entre as cabeças de seta, as cabeças de seta invertidas (pés de corvo) ou representação numérica da cardinalidade.

Modelo de dados geográficos

Um modelo de dados em sistemas de informação geográfica é uma construção matemática para representar objetos ou superfícies geográficas como dados. Por exemplo,

  • o modelo de dados vetoriais representa a geografia como pontos, linhas e polígonos
  • o modelo de dados raster representa a geografia como matrizes de células que armazenam valores numéricos;
  • e o modelo de dados de rede irregular triangulada (TIN) representa a geografia como conjuntos de triângulos contíguos e não sobreposição.

Modelo de dados genérico

Modelos de dados genéricos são generalizações de modelos de dados convencionais. Eles definem tipos de relações gerais padronizadas, juntamente com os tipos de coisas que podem ser relacionadas por esse tipo de relação. Os modelos de dados genéricos são desenvolvidos como uma abordagem para resolver algumas deficiências dos modelos de dados convencionais. Por exemplo, diferentes modeladores geralmente produzem diferentes modelos de dados convencionais do mesmo domínio. Isso pode levar à dificuldade em reunir os modelos de pessoas diferentes e é um obstáculo para a troca e a integração de dados. Invariavelmente, no entanto, essa diferença é atribuída a diferentes níveis de abstração nos modelos e diferenças nos tipos de fatos que podem ser instanciados (os recursos de expressão semântica dos modelos). Os modeladores precisam se comunicar e concordar com certos elementos que devem ser renderizados de maneira mais concreta, a fim de tornar as diferenças menos significativas.

Modelo de dados semânticos

Modelos de dados semânticos

Um modelo de dados semântico em engenharia de software é uma técnica para definir o significado dos dados no contexto de suas inter -relações com outros dados. Um modelo de dados semântico é uma abstração que define como os símbolos armazenados se relacionam com o mundo real. Um modelo de dados semântico às vezes é chamado de modelo de dados conceitual.

A estrutura de dados lógicos de um sistema de gerenciamento de banco de dados (DBMS), seja hierárquico, de rede ou relacional, não pode atender totalmente aos requisitos de uma definição conceitual de dados porque é limitado em escopo e tendencioso em relação à estratégia de implementação empregada pelo Dbms. Portanto, a necessidade de definir dados de uma visão conceitual levou ao desenvolvimento de técnicas de modelagem de dados semânticos. Ou seja, técnicas para definir o significado dos dados no contexto de suas inter -relações com outros dados. Como ilustrado na figura. O mundo real, em termos de recursos, idéias, eventos, etc., são simbolicamente definidos nos estoques de dados físicos. Um modelo de dados semântico é uma abstração que define como os símbolos armazenados se relacionam com o mundo real. Assim, o modelo deve ser uma verdadeira representação do mundo real.

Assuntos

Arquitetura de dados

Arquitetura de dados é o design de dados para uso na definição do estado -alvo e o planejamento subsequente necessário para atingir o estado de destino. Geralmente é um dos vários domínios de arquitetura que formam os pilares de uma arquitetura corporativa ou arquitetura de soluções.

Uma arquitetura de dados descreve as estruturas de dados usadas por uma empresa e/ou seus aplicativos. Existem descrições de dados em armazenamento e dados em movimento; descrições de armazenamentos de dados, grupos de dados e itens de dados; e mapeamentos desses artefatos de dados para qualidades de dados, aplicativos, locais etc.

Essencial para realizar o estado de destino, a arquitetura de dados descreve como os dados são processados, armazenados e utilizados em um determinado sistema. Ele fornece critérios para operações de processamento de dados que possibilitam projetar fluxos de dados e também controlar o fluxo de dados no sistema.

Modelagem de dados

O processo de modelagem de dados

A modelagem de dados em engenharia de software é o processo de criação de um modelo de dados aplicando descrições formais do modelo de dados usando técnicas de modelagem de dados. A modelagem de dados é uma técnica para definir os requisitos de negócios para um banco de dados. Às vezes, é chamado de modelagem de banco de dados porque um modelo de dados é eventualmente implementado em um banco de dados.

A figura ilustra a maneira como os modelos de dados são desenvolvidos e usados hoje. Um modelo de dados conceitual é desenvolvido com base nos requisitos de dados para o aplicativo que está sendo desenvolvido, talvez no contexto de um modelo de atividade. O modelo de dados normalmente consiste em tipos de entidades, atributos, relacionamentos, regras de integridade e as definições desses objetos. Isso é usado como ponto de partida para o design de interface ou banco de dados.

Propriedades de dados

Algumas propriedades importantes dos dados

Algumas propriedades importantes dos dados para os quais os requisitos precisam ser atendidos são:

  • propriedades relacionadas à definição
    • relevância relevância relevância relevância relevância relevância: a utilidade dos dados no contexto do seu negócio.
    • clareza: a disponibilidade de uma definição clara e compartilhada para os dados.
    • consistência: a compatibilidade do mesmo tipo de dados de diferentes fontes.
  • propriedades relacionadas ao conteúdo
    • cronograma: a disponibilidade de dados no momento necessário e como up-to-date que os dados são.
    • precisão: quão perto da verdade os dados são.
  • propriedades relacionadas com definição e conteúdo
    • plenitude: quanto dos dados necessários está disponível.
    • acessibilidade: onde, como, e a quem os dados estão disponíveis ou não disponíveis (por exemplo, segurança).
    • custo de custo: o custo incorrido na obtenção dos dados, e tornando-o disponível para uso.

Organização de dados

Outro tipo de modelo de dados descreve como organizar dados usando um sistema de gerenciamento de banco de dados ou outra tecnologia de gerenciamento de dados. Ele descreve, por exemplo, tabelas e colunas relacionais ou classes e atributos orientados a objetos. Esse modelo de dados às vezes é chamado de modelo de dados físicos , mas na arquitetura original do ANSI Three Schema, é chamado " lógico " Nessa arquitetura, o modelo físico descreve os meios de armazenamento (cilindros, faixas e espaços de tabela). Idealmente, esse modelo é derivado do modelo de dados mais conceitual descrito acima. Pode diferir, no entanto, explicar restrições, como capacidade de processamento e padrões de uso.

Enquanto Análise de dados é um termo comum para modelagem de dados, a atividade realmente tem mais em comum com as idéias e métodos da síntese (inferindo conceitos gerais de instâncias particulares) do que isso com análise (identificando conceitos de componentes de mais gerais). { Presumivelmente, nos chamamos de analistas de sistemas porque ninguém pode dizer sintetistas de sistemas. estruturas com relacionamentos.

Uma abordagem diferente é usar sistemas adaptativos, como redes neurais artificiais que podem criar modelos implícitos de dados implícitos.

Estrutura de dados

Uma árvore binária, um tipo simples de ramificação estrutura de dados vinculados

Uma estrutura de dados é uma maneira de armazenar dados em um computador para que possam ser usados com eficiência. É uma organização de conceitos matemáticos e lógicos de dados. Freqüentemente, uma estrutura de dados cuidadosamente escolhida permite que o algoritmo mais eficiente seja usado. A escolha da estrutura de dados geralmente começa com a escolha de um tipo de dados abstrato.

Um modelo de dados descreve a estrutura dos dados em um determinado domínio e, por implicação, a estrutura subjacente desse domínio em si. Isso significa que um modelo de dados de fato especifica uma gramática dedicada para uma linguagem artificial dedicada para esse domínio. Um modelo de dados representa classes de entidades (tipos de coisas) sobre as quais uma empresa deseja manter informações, os atributos dessas informações e relacionamentos entre essas entidades e relacionamentos (geralmente implícitos) entre esses atributos. O modelo descreve a organização dos dados, até certo ponto, independentemente de como os dados podem ser representados em um sistema de computador.

As entidades representadas por um modelo de dados podem ser as entidades tangíveis, mas os modelos que incluem essas classes de entidade de concreto tendem a mudar com o tempo. Modelos de dados robustos geralmente identificam abstrações de tais entidades. Por exemplo, um modelo de dados pode incluir uma classe de entidade chamada " Person ", representando todas as pessoas que interagem com uma organização. Essa classe de entidade abstrata é tipicamente mais apropriada do que a chamada " fornecedor " OR "funcionário", que identifica papéis específicos desempenhados por essas pessoas.

Teoria do modelo de dados

O termo modelo de dados pode ter dois significados:

  1. Um modelo de dados teoria, isto é, uma descrição formal de como os dados podem ser estruturados e acessados.
  2. Um modelo de dados instância, ou seja, aplicando um modelo de dados teoria para criar um modelo de dados prático instância para uma aplicação específica.

Uma teoria do modelo de dados tem três componentes principais:

  • A parte estrutural: uma coleção de estruturas de dados que são usadas para criar bases de dados representando as entidades ou objetos modelados pelo banco de dados.
  • A parte de integridade: uma coleção de regras que regem as restrições colocadas sobre essas estruturas de dados para garantir a integridade estrutural.
  • A parte de manipulação: uma coleção de operadores que podem ser aplicados às estruturas de dados, para atualizar e consultar os dados contidos no banco de dados.

Por exemplo, no modelo relacional, a parte estrutural é baseada em um conceito modificado da relação matemática; A parte da integridade é expressa na lógica de primeira ordem e a parte de manipulação é expressa usando a álgebra relacional, o cálculo da tupla e o cálculo do domínio.

Uma instância do modelo de dados é criada aplicando uma teoria do modelo de dados. Isso geralmente é feito para resolver alguns requisitos de negócios. Os requisitos de negócios são normalmente capturados por um modelo de dados lógicos semânticos. Isso é transformado em uma instância do modelo de dados físicos, da qual é gerado um banco de dados físico. Por exemplo, um modelador de dados pode usar uma ferramenta de modelagem de dados para criar um modelo de entidade -relacionamento do repositório de dados corporativos de algumas empresas de negócios. Este modelo é transformado em um modelo relacional, que por sua vez gera um banco de dados relacional.

Padrões

Os padrões são estruturas comuns de modelagem de dados que ocorrem em muitos modelos de dados.

Diagrama de fluxo de dados

Exemplo de Diagrama de Dados

Um diagrama de fluxo de dados (DFD) é uma representação gráfica do " Flow " de dados através de um sistema de informação. Difere do fluxograma, pois mostra o fluxo em vez do fluxo de controle do programa. Um diagrama de fluxo de dados também pode ser usado para a visualização do processamento de dados (design estruturado). Os diagramas de fluxo de dados foram inventados por Larry Constantine, o desenvolvedor original do design estruturado, baseado em Martin e Estrin. Modelo de computação.

É prática comum desenhar um diagrama de fluxo de dados no nível de contexto primeiro, que mostra a interação entre o sistema e as entidades externas. O dfd foi projetado para mostrar como um sistema é dividido em porções menores e para destacar o fluxo de dados entre essas partes. Este diagrama de fluxo de dados no nível de contexto é então " explodido " para mostrar mais detalhes do sistema sendo modelado

Modelo de informação

Exemplo de um modelo de informação EXPRESS G

Um modelo de informação não é um tipo de modelo de dados, mas mais ou menos um modelo alternativo. No campo da engenharia de software, um modelo de dados e um modelo de informação podem ser representações formais abstratas dos tipos de entidades que incluem suas propriedades, relacionamentos e as operações que podem ser executadas nelas. Os tipos de entidade no modelo podem ser tipos de objetos do mundo real, como dispositivos em uma rede, ou eles mesmos podem ser abstratos, como para as entidades usadas em um sistema de cobrança. Normalmente, eles são usados para modelar um domínio restrito que pode ser descrito por um conjunto fechado de tipos de entidades, propriedades, relacionamentos e operações.

De acordo com Lee (1999), um modelo de informação é uma representação de conceitos, relacionamentos, restrições, regras e operações para especificar a semântica de dados para um domínio escolhido do discurso. Ele pode fornecer estrutura compartilhável, estável e organizada dos requisitos de informação para o contexto do domínio. Mais em geral, o termo Modelo de informação é usado para modelos de coisas individuais, como instalações, edifícios, plantas de processo etc. nesses casos, o conceito é especializado em modelo de informação da instalação, modelo de informação de construção, planta Modelo de informação, etc. Esse modelo de informação é uma integração de um modelo da instalação com os dados e documentos sobre a instalação.

Um modelo de informação fornece formalismo à descrição de um domínio de problema sem restringir como essa descrição é mapeada para uma implementação real no software. Pode haver muitos mapeamentos do modelo de informação. Tais mapeamentos são chamados de modelos de dados, independentemente de serem modelos de objetos (por exemplo, usando um UML), modelos de relação de entidade ou esquemas XML.

Document Object Model, um modelo de objeto padrão para representar HTML ou XML

Modelo de objeto

Um modelo de objeto na ciência da computação é uma coleção de objetos ou classes através das quais um programa pode examinar e manipular algumas partes específicas de seu mundo. Em outras palavras, a interface orientada a objetos para algum serviço ou sistema. Diz -se que essa interface é o modelo de objeto do serviço ou sistema representado. Por exemplo, o Modelo de Objeto do Documento (DOM) [1] é uma coleção de objetos que representam uma página em um navegador da Web, usado por programas de script para examinar e alterar dinamicamente a página. Existe um modelo de objeto Microsoft Excel para controlar o Microsoft Excel de outro programa, e o driver do Telescope ASCOM é um modelo de objeto para controlar um telescópio astronômico.

Ao calcular o termo modelo de objeto tem um segundo significado distinto das propriedades gerais dos objetos em uma linguagem específica de programação de computador, tecnologia, notação ou metodologia que os usa. Por exemplo, o modelo de objeto java , o modelo de objeto com ou o modelo de objeto de OMT . Tais modelos de objetos são geralmente definidos usando conceitos como classe, mensagem, herança, polimorfismo e encapsulamento. Há uma extensa literatura sobre modelos de objetos formalizados como um subconjunto da semântica formal das linguagens de programação.

Modelagem por objeto

Exemplo da aplicação do Object–Role Modeling em um "Schema for Geologic Surface", Stephen M. Richard (1999)

Modelagem de Role (ORM) é um método para modelagem conceitual e pode ser usado como uma ferramenta para análise de informações e regras.

A modelagem de objeto-role é um método orientado a fatos para realizar análises de sistemas no nível conceitual. A qualidade de um aplicativo de banco de dados depende criticamente de seu design. Para ajudar a garantir a correção, a clareza, a adaptabilidade e a produtividade, os sistemas de informação são melhor especificados primeiro no nível conceitual, usando conceitos e linguagem que as pessoas podem entender prontamente.

O design conceitual pode incluir dados, processo e perspectivas comportamentais, e os DBMs reais usados para implementar o design podem ser baseados em um dos muitos modelos de dados lógicos (relacional, hierárquico, de rede, orientados a objetos, etc.).

Modelo Unificado Modelos de linguagem

A linguagem de modelagem unificada (UML) é uma linguagem de modelagem de uso geral padronizado no campo da engenharia de software. É uma linguagem gráfica para visualizar, especificar, construir e documentar os artefatos de um sistema intensivo de software. A linguagem de modelagem unificada oferece uma maneira padrão de escrever os projetos de um sistema, incluindo:

  • Coisas conceituais como processos de negócios e funções do sistema
  • Coisas concretas como demonstrações de linguagem de programação, esquemas de banco de dados e
  • Componentes de software reutilizáveis.

UML oferece uma mistura de modelos funcionais, modelos de dados e modelos de banco de dados.

Ver também

  • Modelo de processo de negócios
  • Modelo de dados de arquitetura de núcleo
  • Modelo de dados comum, qualquer modelo de dados padronizado
  • Sistema de coleta de dados
  • Dicionário de dados
  • Data Format Descrição Idioma (DFDL)
  • Banco de dados distributivo-relacional
  • JC3IEDM
  • Modelo de processo

Referências

  1. ^ Paul R. Smith & Richard Sarfaty Publications, LLC 2009
  2. ^ "O que é um modelo de dados?". Princeton.edu. Retrieved 29 de Maio 2024.
  3. ^ «UML Domain Modeling - Stack Overflow» (em inglês). Overflow em pilha. Troca de pilhas Inc.. Retrieved 4 de Fevereiro 2017.
  4. ^ Michael R. McCaleb (1999). "A Conceptual Data Model of Datum Systems" Arquivado em 2008-09-21 no Wayback Machine. Instituto Nacional de Normas e Tecnologia. Agosto 1999.
  5. ^ a b c d e f g h i j c a Matthew West e Julian Fowler (1999). Desenvolvimento de alta qualidade Modelos de dados. A European Process Industries STEP Technical Liaison Executive (EPISTLE).
  6. ^ American National Standards Institute. 1975. ANSI/X3/SPARC Grupo de Estudo sobre Sistemas de Gestão de Base de Dados; Relatório Interino. FDT (Bulletin of ACM SIGMOD) 7:2.
  7. ^ Young, J. W., e Kent, H. K. (1958). «Abstract Formulation of Data Processing Problems» (em inglês). Em: Revista de Engenharia Industrial. Nov-Dec 1958. 9(6), pp. 471-479
  8. ↑ a b Janis A. Bubenko jr (2007) «From Information Algebra to Enterprise Modelling and Ontologies - a Historical Perspective on Modelling for Information Systems» (em inglês). Em: Modelagem conceitual em Engenharia de Sistemas de Informação. John Krogstie et al. pp 1-18
  9. ^ Cornelius T. Leondes (2002). Comunicação de Banco de Dados e Dados Sistemas de Rede: Técnicas e Aplicações. Página 7
  10. ^ "Derivabilidade, redundância e consistência das relações armazenadas em grandes bancos de dados", E.F. Codd, IBM Research Report, 1969
  11. ^ Dados e realidade
  12. ^ Jan L. Harrington (2000). Design de banco de dados orientado a objetos claramente explicado. p.4
  13. ↑ a b d 184 Arquivado em 2013-12-03 no Wayback Machine lançado do IDEF1X pelo Laboratório de Sistemas de Computação do Instituto Nacional de Normas e Tecnologia (NIST). 21 de Dezembro de 1993 (retirada em 2008).
  14. ^ Wade, T. e Sommer, S. Eds. A a Z GIS
  15. ↑ a b d David R. Soller1 e Thomas M. Berg (2003). O Projeto Nacional de Banco de Dados de Mapa Geologic: Visão geral e Progresso Relatório de Arquivo Aberto de Pesquisa Geológica dos EUA 03-471.
  16. ^ Whitten, Jeffrey L.; Lonnie D. Bentley, Kevin C. Dittman. (2004). Métodos de Análise e Design de Sistemas. 6a edição. ISBN 0-256-19906-X.
  17. ↑ a b Beynon-Davies P. (2004). Database Systems 3a Edição. Palgrave, Basingstoke, Reino Unido. ISBN 14039-1601-2
  18. ^ «The Data Model Resource Book: Universal Patterns for Data Modeling» Len Silverstone & Paul Agnew (2008).
  19. ^ John Azzolini (2000). Introdução às Práticas de Engenharia de Sistemas. Julho de 2000.
  20. ^ W. Stevens, G. Myers, L. Constantine, "Structured Design", IBM Systems Journal, 13 (2), 115-139, 1974.
  21. ↑ a b Y. Tina Lee (1999). " Modelagem de informação do projeto à implementação" Instituto Nacional de Padrões e Tecnologia.
  22. ^ Excel Object Model Visão geral
  23. ^ «ASCOM General Requirements» (em inglês). 2011-05-13. Retrieved 2014-09-25.
  24. ^ Stephen M. Richard (1999). Modelo de conceito geológico. Relatório de Arquivo Aberto da Pesquisa Geológica dos EUA 99–386.
  25. ^ Joachim Rossberg e Rickard Redler (2005). Pro Scalable.NET 2.0 Projetos de Aplicação.. Página 27.
  26. ^ Função do objeto Modelagem: An Overview (msdn.microsoft.com). Consultado em 19 de setembro de 2008.
  27. ^ Grady Booch, Ivar Jacobson & Jim Rumbaugh (2005) OMG Unified Modeling Language Specification.

Leitura adicional

  • David C. Hay (1996). Modelo de Dados Padrões: Convenções de Pensamento. Nova Iorque:Dorset House Publishers, Inc.
  • Len Silverston (2001). O Livro de Recursos do Modelo de Dados Volume 1/2. John Wiley & Sons.
  • Len Silverston & Paul Agnew (2008). O livro de recursos do modelo de dados: Padrões universais para modelagem de dados Volume 3. John Wiley & Sons.
  • Matthew West (2011) Desenvolvimento de alta qualidade Modelos de dados Morgan Kaufmann
Más resultados...
Tamaño del texto:
undoredo
format_boldformat_italicformat_underlinedstrikethrough_ssuperscriptsubscriptlink
save