Conceitos: Modelagem de Dados Conceituais
Tópicos
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 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 artefato separado. Ele consiste em uma visualização composta de informações
contidas nos artefatos 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 Artefato:
Modelo de Dados e não de um artefato 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 atividades relacionadas ao design de banco de dados se estendem por todo o ciclo de
vida do desenvolvimento de software e as atividades iniciais de design de banco de dados
podem iniciar 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
Atores 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 Atores 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.

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 Casos de Uso de Negócios
O Modelo de Casos de Uso de Negócios consiste em Atores 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 Atores 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.

Como entidades de significância para o problema de espaço do sistema, os Atores de
Negócios são entidades candidatas para o Modelo de Dados Conceituais. No exemplo
anterior, os Atores 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 workflow 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 workflow. As Entidades de Negócios são "itens"
que os Trabalhadores de Negócios utilizam ou produzem durante esse workflow. 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.

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
Atores 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 Atores 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 Atores 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 Ator de Sistema é um sistema externo que
fornece dados para e/ou recebe dados do sistema sob desenvolvimento.
Os Atores de Sistema podem ser derivados dos Atores 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 Atores de Negócios Comprador e Vendedor são agora
derivados de um Ator de Negócios genérico Usuário.Um novo Ator 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 Ator de Sistema é uma outra entidade candidata ao Modelo
de Dados Conceituais.

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 um 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. Consulte Diretrizes: Bancos de Dados
Relacionais de Engenharia Avançada para obter uma descrição de como os elementos no Modelo de Design
podem ser mapeados para os elementos do Modelo de Dados.
|