Conceito: Modelagem de Dados Conceituais
O modelo de dados conceituais descreve as entidades importantes e os respectivos relacionamentos, para explorar os conceitos de domínio com investidores que definem o escopo do problema a ser tratado pela solução do sistema.
Relacionamentos
Descrição Principal

Introdução

Conforme definido em  [NBG01], a modelagem de dados conceituais representa o estágio inicial no desenvolvimento do design dos dados persistentes e do armazenamento de dados persistentes para o sistema.  Em muitos casos, os dados persistentes do sistema são gerenciados por um RDBMS (Relational Database Management System). As entidades de negócios e de sistema identificadas em um nível conceitual a partir dos modelos de negócios e dos requisitos do sistema se desenvolverão por meio das atividades de análise de caso de uso, design de caso de uso e tarefas de design de banco de dados em designs detalhados de tabela física que serão implementados no RDBMS.  Observe que o Modelo de Dados Conceituais descrito neste documento de conceito não é um produto de trabalho separado. Ele consiste em uma visualização composta de informações contidas nos produtos de trabalho Modelagem de Negócios, Requisitos e Disciplinas de Análise e Design existentes, que são relevantes para o desenvolvimento do Modelo de Dados

O Modelo de Dados geralmente se desenvolve por meio dos três estágios gerais a seguir:

  • Conceitual-Este estágio desenvolve a identificação das principais entidades de negócios e de sistema de alto nível e os respectivos relacionamentos, que definem o escopo do problema a ser tratado pelo sistema. Essas principais entidades de negócios e de sistema são definidas utilizando os elementos de modelagem do perfil UML para a modelagem de negócios incluída no Modelo de Análise de Negócios e nos elementos do modelo de Classe de Análise do Modelo de Análise.
  • Lógico-Este estágio desenvolve o refinamento das entidades conceituais de negócios e de sistema de alto nível em entidades lógicas mais detalhadas. Opcionalmente, essas entidades lógicas e seus relacionamentos podem ser definidos em um Modelo de Dados Lógicos, utilizando os elementos de modelagem do perfil UML para o design de banco de dados, conforme descrito em Diretrizes: Modelo de Dados. Este Modelo de Dados Lógicos opcional faz parte do Produto de Trabalho: Modelo de Dados e não de um produto de trabalho separado do RUP.
  • Físico-Este estágio envolve a transformação dos designs de classe lógica em designs detalhados e otimizados de tabela de banco de dados física. O estágio físico também inclui o mapeamento dos designs de tabela de banco de dados para espaços de tabelas e para o componente de banco de dados no design de armazenamento de banco de dados.

As tarefas relacionadas ao design de banco de dados se estendem por todo o ciclo de vida do desenvolvimento de software e as tarefas iniciais de design de banco de dados podem ser iniciadas durante a fase de iniciação.  Para projetos que utilizam a modelagem de negócios para descrever o contexto de negócios do aplicativo, o design de banco de dados pode iniciar em um nível conceitual com a identificação de Agentes de Negócios e Casos de Uso de Negócios no Modelo de Casos de Uso de Negócios e de Trabalhadores e Entidades de Negócios no Modelo de Análise de Negócios.  Para projetos que não utilizam modelagem de negócios, o design de banco de dados pode iniciar no nível conceitual com a identificação de Agentes do Sistema e Casos de Uso do Sistema no Modelo de Casos de Uso e a identificação de Classes de Análise no Modelo de Análise a partir das Realizações de Casos de Uso.

A figura a seguir mostra o conjunto de elementos do Modelo de Dados Conceituais que reside nos Modelos de Negócios, Modelos de Requisitos e Modelo de Análise.

O diagrama é descrito no conteúdo.

As seções a seguir descrevem os elementos dos Modelos de Negócios, do Modelo de Casos de Uso e do Modelo de Análise que podem ser utilizados para definir o Modelo de Dados Conceituais para dados persistentes no sistema.

Elementos da Modelagem de Dados Conceituais

Modelos de Negócios

Modelo de Caso de Uso de Negócios

O Modelo de Casos de Uso de Negócios consiste em Agentes de Negócios e Casos de Uso de Negócios. Os Casos de Uso de Negócios representam os principais processos de negócios que são utilizados para definir o contexto para o sistema a ser desenvolvido. Os Agentes de Negócios representam as principais entidades externas que interagem com o negócio por meio dos Casos de Uso de Negócios. A figura a seguir mostra um exemplo de Modelo de Casos de Uso de Negócios muito simples para um aplicativo de leilão on-line.



O diagrama é descrito no conteúdo.

Como entidades de significância para o problema de espaço do sistema, os Agentes de Negócios são entidades candidatas para o Modelo de Dados Conceituais.  No exemplo anterior, os Agentes de Negócios Comprador e Vendedor são entidades candidatas para as quais o aplicativo de leilão on-line deve armazenar informações.

Modelo de Análise de Negócios

O Modelo de Análise de Negócios contém classes que modelam os Trabalhadores de Negócios e Entidades de Negócios identificados a partir da análise do fluxo de trabalho no Caso de Uso de Negócios. Os Trabalhadores de Negócios representam os trabalhadores participantes que executam as ações necessárias para executar esse fluxo de trabalho.  As Entidades de Negócios são "itens" que os Trabalhadores de Negócios utilizam ou produzem durante esse fluxo de trabalho. Em muitos casos, as Entidades de Negócios representam tipos de informações que o sistema deve armazenar persistentemente. 

A figura a seguir mostra um exemplo de diagrama de seqüência que representa os Trabalhadores de Negócios e as Entidades de Negócios de um cenário do Caso de Uso de Negócios intitulado "Fornecer Leilão On-line", para gerenciar um leilão.

O diagrama é descrito no conteúdo.

Neste exemplo simplificado, o objeto Gerenciador de Leilão representa uma função Trabalhador de Negócios que provavelmente será executada pelo próprio sistema de gerenciamento de leilão on-line.  Os objetos Leilão e Item de Leilão são Entidades de Negócios que são utilizadas ou produzidas pelo Gerenciador de Leilão, que atua como um agente para os Agentes de Negócios Vendedor e Comprador.  De uma perspectiva de design de banco de dados, as Entidades de Negócios Leilão e Item de Leilão são entidades candidatas ao Modelo de Dados Conceituais. 

Requisitos e Modelos de Análise

Para projetos que não executam modelagem de negócios, os Requisitos (Caso de Uso do Sistema) e os Modelos de Análise contêm elementos do modelo que podem ser utilizados para desenvolver um Modelo de Dados Conceituais.  Para projetos que utilizam modelagem de negócios, as entidades de negócios e os relacionamentos identificados nos Modelos de Análise de Negócios são refinados e detalhados no Modelo de Análise como Classes de Entidade.  

Modelo de Casos de Uso de Sistema

O Modelo de Casos de Uso de Sistema contém Agentes de Sistema e Casos de Uso de Sistema que definem as principais interações dos usuários com o sistema. Os Casos de Uso de Sistema definem os requisitos funcionais do sistema.

De uma perspectiva de modelagem de dados conceituais, os Agentes de Sistema representam entidades externas ao sistema para os quais o sistema pode precisar armazenar informações persistentes. Isso é importante nos casos em que o Agente de Sistema é um sistema externo que fornece dados para e/ou recebe dados do sistema sob desenvolvimento.  Os Agentes de Sistema podem ser derivados dos Agentes de Negócios no Modelo de Casos de Uso de Negócios e dos Trabalhadores de Negócios no Modelo de Análise de Negócios. 

A figura a seguir representa o Modelo de Casos de Uso de Negócios para o sistema de leilão on-line. Neste modelo, os Agentes de Negócios Comprador e Vendedor são agora derivados de um Agente de Negócios genérico Usuário.Um novo Agente de Sistema denominado Agência de Serviço de Crédito foi incluído para refletir a necessidade de processar pagamentos por meio de uma entidade externa. Este novo Agente de Sistema é uma outra entidade candidata ao Modelo de Dados Conceituais.



O diagrama é descrito no conteúdo.



Modelo de Análise

O Modelo de Análise contém as Classes de Análise identificadas nas Realizações de Casos de Uso para os Casos de Uso de Sistema. Os tipos de Classes de Análise de interesse fundamental de uma perspectiva de modelagem de dados conceituais são as as Classes de Análise de Entidade. Conforme definido em Diretrizes: Classe de Análise, as Classes de Análise de Entidade representam informações gerenciadas pelo sistema que devem ser armazenadas de modo persistente.  As Classes de Análise de Entidade e seus relacionamentos formam a base do Modelo de Dados inicial para o aplicativo. 

As Classes de Análise de Entidade no Modelo de Análise podem ser refinadas e detalhadas para Classes de Design Persistente lógicas no Modelo de Design. Essas classes de design classes representam tabelas candidatas no Modelo de Dados. Os atributos das classes são colunas candidatas às tabelas e também representam chaves candidatas para elas. Diretrizes: Bancos de Dados Relacionais de Engenharia de Redirecionamento para obter uma descrição de como os elementos no Modelo de Design podem ser mapeados para os elementos do Modelo de Dados.