Esse artigo faz parte da revista SQL Magazine edição 54. Clique aqui para ler todos os artigos desta edição

pdf.jpg src="/imagens/imagem_pdf.jpg" width=34 border=0>

 

Projeto

Modelagem de Dados

Estudo de Caso – Cenário de Reserva de Hotel

 

O objetivo deste artigo é apresentar uma visão geral sobre modelagem de dados, uma habilidade que qualquer desenvolvedor deveria ter, mesmo que de forma básica. Eles não precisam ser sempre especialistas neste assunto, mas devem estar preparados para serem envolvidos na criação de um modelo, ler um modelo de dados existente, entender quando criar ou não um modelo de dados e conhecer as técnicas fundamentais para sua elaboração. Para facilitar o entendimento sobre modelagem de dados, neste artigo será apresentado um estudo de caso de um sistema de reserves de hotel.

O que é modelagem de dados?

Modelagem de dados se refere à atividade de especificação das estruturas de dados e regras de negócio necessárias para suportar uma área de negócios.  Assim como outros artefatos de modelagem, modelos de dados podem ser usados para uma variedade de propósitos, a partir do modelo conceitual de alto nível até o modelo físico dos dados.  Do ponto de vista de um desenvolvedor que utiliza o paradigma orientado a objetos, a modelagem de dados é conceitualmente similar à modelagem das classes. Com a modelagem dos dados você identifica tipos de entidade, assim como na modelagem de classes você identifica as classes. Atributos de dados são associados a tipos de entidades, assim como atributos e métodos são associados a classes. Existem associações entre entidades, similar às associações entre as classes – relacionamentos, herança, composição e agregação são também conceitos aplicáveis à modelagem de dados.

Entretanto, é importante destacar que a modelagem de dados tradicional é diferente da modelagem de classes porque ela foca apenas nos dados, enquanto que classes exploram também aspectos comportamentais e os dados de um domínio. Por conta desse foco, profissionais que atuam na modelagem de dados possuem uma tendência em serem melhores na definição de dados do que modeladores de objetos. No entanto, alguns deles irão modelar também métodos de bancos de dados (stored procedure, stored functions e triggers) quando eles estão modelando os dados fisicamente.

 Como modelos de dados são usados na prática?

Precisamos discutir agora como modelos de dados podem ser usados na prática.  Três estilos básicos de modelos podem ser encontrados:

·         Modelo Conceitual de Dados: esses modelos, algumas vezes chamado de modelos de domínio, são tipicamente usados para explorar conceitos do domínio com os envolvidos no projeto.  Eles normalmente são criados como parte do levantamento dos requisitos de uma aplicação e são usados para explorar a estrutura e conceitos estáticos de alto nível. Normalmente modelos conceituais de dados são criados como precursores ou alternativas para Modelos Lógicos de Dados.

·         Modelos Lógico de Dados: são usados para explorar os conceitos do domínio e seus relacionamentos. Isso pode ser feito no escopo de um simples projeto ou para uma empresa inteira. Modelos lógicos de dados descrevem os tipos lógicos de entidades, tipicamente referenciados como tipos de entidades, os atributos de dados descrevendo essas entidades e os relacionamentos entre as entidades.

·         Modelos Físico de Dados: são usados para projetar o esquema interno de banco de dados, descrevendo tabelas de dados, suas colunas e relacionamentos entre elas. Estes modelos são o foco deste artigo.

Apesar de os modelos lógicos e físicos parecerem similar, e de fato eles são, o nível de detalhe que eles modelam pode ser significantemente diferente.  Isto porque o objetivo de cada diagrama é diferente.  A Figura 1 apresenta um simples modelo lógico de dados e a ...

Quer ler esse conteúdo completo? Tenha acesso completo