Buscar

PBD livro capitulo02 ProjetoConceitual

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 28 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 28 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 28 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Unidade 2. Projeto Conceitual 
 
2.1 Primeiras Palavras 
Os objetivos deste capítulo são: 
 Apresentar conceitos avançados do Projeto Conceitual, envolvendo: 
 Projeto de Visão; 
 Integração de Visões; 
 Transformações de um Esquema para Melhorar a Qualidade do Mesmo; 
 
A meta na fase de projeto conceitual é obter um esquema conceitual do banco de 
dados que seja tão completo e expressivo quanto possível. Esse esquema deve 
procurar expressar o máximo da semântica envolvida na informação. Mecanismos de 
representação de alto nível são empregados, tais como representação de hierarquias 
de subconjunto e de generalização, representação de restrições de cardinalidade e de 
atributos compostos e multivalorados. Para a representação do esquema conceitual 
geralmente utiliza-se uma extensão do modelo Entidade-Relacionamento. 
 
2.2 Problematizando o tema 
O que é projeto conceitual? Quais suas etapas? Como refinar desenvolver um projeto 
de banco de dados? Como dividir o trabalho? 
 
2.3 Meta do Projeto Conceitual 
A meta de desenvolvimento de um esquema conceitual é chegar a um esquema: 
 Completo: atende todos os requisitos do usuário; 
 Correto: sem erros de modelagem; 
 Fácil de entender: os dados e seus relacionamentos devem ser claros e 
expressivos; 
 Livre de redundâncias e replicações (de dados e conceitos); 
 Simples: o esquema deve ser o mais simples possível, mas que atenda todos 
os requisitos do usuário; 
 
O desenvolvimento do esquema conceitual deve levar em consideração o tempo. Um 
dos problemas a ser considerado é o que fazer com dados antigos, por exemplo, 
registros com mais de 5 anos. Além disso, o projeto deve incorporar as necessidades 
futuras previsíveis do cliente. Por exemplo: o usuário pode não necessitar cadastrar o 
celular de clientes. No entanto, é possível que no futuro ele necessite dessa 
informação, portanto, a informação deve ser adicionada no esquema. 
 
Para atingir a meta é necessário fazer uso do recurso de usar vários níveis de 
abstrações para captar o máximo de semântica possível: partindo das abstrações de 
níveis mais altos para aquelas de níveis mais baixo. Além disso, devemos usar a 
estratégia de dividir para conquistar, usando todos os recursos de semânticos e de 
abstração e restrições presentes no modelo Entidade-Relacionamento Estendido 
descritos no capítulo anterior. 
 
 
 
 1
2.4 Visões 
Uma visão é o que um determinado indivíduo enxerga de uma determinada realidade. 
Aqui, conceitos da abordagem Top-Down se misturam com a abordagem Bottom-Up 
(Engenharia Reversa) para podermos modelar as visões de um usuário. A Engenharia 
Reversa é o que chamamos de abordagem Bottom-Up: parte de dados ou produto 
anterior já existente. 
 
Quando as aplicações são complexas e usualmente diferentes analistas estão 
envolvidos no processo de projeto do banco de dados, a aplicação pode ser 
particionada em atividades menores, representando visões de grupos de usuários. 
Visão, na fase de projeto conceitual, é a parte de um banco de dados ou dos requisitos 
de dados de uma aplicação que é vista por um usuário ou grupo de usuários. 
 
 
2.5 Projeto de Visão 
O objetivo do projeto de visões é decompor aplicações complexas em problemas 
menores. Refere-se à modelagem da parte do banco de dados de interesse de um 
usuário ou grupo de usuários, com base nos requisitos de dados, usando os conceitos de 
um modelo de dados. Os requisitos podem estar expressos através de: 
 
 Descrições em linguagem natural, através da qual os usuários expõem suas 
necessidades; 
 Formulários impressos em papel, que são utilizados para coletar dados. Se já 
houver um sistema preexistente, esses formulários podem ser telas formatadas 
para entrada de dados; 
 Declarações de registros pertencentes a aplicações preexistentes. 
 
 
2.6 Projeto de Visão com base em Linguagem Natural 
Geralmente os requisitos são colhidos em linguagem natural na estratégia top-down 
do projeto de banco de dados. O projeto de visão nessa etapa compreende em: 
 Análise de requisitos; 
 Desenvolvimento de esquema da visão ; 
 Refinamento do esquema; 
A etapa de análise de requisitos pode ainda ser dividida nos seguintes passos: 
 Identificar as entidades envolvidas; 
 Identificar ambigüidades; 
 Eliminar ambigüidades; 
 Determinar relacionamento entre as entidades. 
 
Um dos primeiros passos na análise de requisitos é eliminar os termos ambíguos ou 
genéricos, re-escrevendo os requisitos. Para isso é necessário identificar os: 
 Sinônimos: 
o Palavras diferentes com o mesmo significado (referenciam o mesmo 
elemento); 
 Homônimos: 
o Palavras iguais com significados diferentes (referenciam elementos 
diferentes. 
 
 2
Exemplo 2.1 Identifique as ambigüidades na especificação abaixo: 
 
“Um comprador ao efetuar a compra de um produto, deve fornecer seu número de 
cliente. O cliente deve conseguir visualizar os itens que possuem desconto.” 
 
É possível identificar as ambigüidades em negrito na frase anterior: 
“Um comprador ao efetuar a compra de um produto, deve fornecer seu número de 
cliente. O cliente deve conseguir visualizar os itens que possuem desconto.” 
 
Observe que o cliente e comprador são usados como sinônimos, assim como produto 
e itens. 
 
 
Exemplo 2.2 Elaborar o esquema conceitual da especificação da Figura seguindo as 
seguintes etapas: identificação das entidades evidentes; identificação das 
ambigüidades; eliminação das ambigüidades; determinação das demais entidades e 
relacionamento entre as entidades envolvidas. Os atributos das entidades serão 
omitidos no esquema conceitual deste neste exemplo, fica como exercício adicioná-
los. 
 
Especificação. Em um banco de dados de uma companhia de cartão de créditos é 
necessário guardar informações sobre clientes e funcionários. Para clientes são 
armazenados nome, idade, sexo, rua, nro, cidade e estado de residência, telefone, 
local e estado de origem, com o período de residência e renda atual. É necessário 
para cada usuário do cartão de crédito determinar o valor de seu limite de cartão, valor 
disponível e dívida. O sistema deve guardar dados da fatura feita com o cartão, como 
o nome da loja onde os clientes compraram, valor compra, data da compra e 
vencimento da fatura. De cada estabelecimento comercial, onde o cliente realiza 
transação com o cartão deve-se armazenar o nome, cnpj, endereço e telefone. Sobre 
os funcionários se armazenam, nome, data nascimento, local, estado, data de 
contratação e a renda que recebem da companhia. Os funcionários são encarregados 
de vender cartões e cancelar os mesmos, além de registrar reclamações dos usuários. 
 
Passo 1: Identificação das entidades evidentes 
Observe que a especificação acima pode ser dividida conforme mostra a Figura 2.1, 
onde cada trecho entre colchetes é relacionado a uma entidade evidente. 
 
 3
 
Figura 2.1. Identificação das entidades evidentes a partir da especificação do 
Exemplo 2.2. 
Da separação apresentada na Figura 2.1 é possível identificar as seguintes entidades: 
 Cliente; 
 Compra; 
 Funcionário; 
 Estabelecimento Comercial; 
 Fatura. 
 
 
Passo 2. Identificar as ambigüidades. 
 
A Figura 2.2 mostra os termos com sinônimos e homônimos do texto. 
 4
 
 
Figura 2.2 Identificação das ambiguidades a partir da especificação do Exemplo 
2.2. 
Passo 3. Tratar as ambigüidades. 
 
Observe o passo dos tratamentos das ambigüidades da especificação do Exemplo 2.2: 
 
1. Substituir o termo genérico por um mais específico para evitar interpretações 
duvidosas; 
 Exemplo: Local é genérico, substituir por Cidade; 
2. Substituir termos ambíguos: 
 Usuário é ambíguo. É o usuário do sistema (funcionário) ou usuário do 
cartão (cliente)? Substituir no item 3 para cliente. 
3. Eliminartermos distorcidos: 
 Renda no item 6 significa salário que o funcionário recebe da 
companhia e não a renda mensal (que pode envolver outras 
remunerações de fora da companhia, como outro emprego). Substituir 
por salário. 
4. Trocar termo específico para genérico mais adequado: 
 Loja no item 6, significa estabelecimento comercial, sendo mais 
genérico, englobando além de lojas, sorveterias, açougues. Nesse 
caso, o termo mais genérico, estabelecimento comercial é mais 
adequado. 
5. Em alguns casos deve-se escolher um entre dois sinônimos, o mais adequado 
para o contexto específico: 
 Trocar guardar por armazenar (item 1) 
 Trocar Realiza transação por Compra (item 5) 
 Cuidado: Compra e fatura não são sinônimos: manter distinção! 
 
 
 
 
 
 5
 
Figura 2.3. Especificação do Exemplo 2.2 com as ambigüidades tratadas. 
 
Passo 4. Identificar as entidades envolvidas. 
Uma vez com as ambigüidades tratadas, a especificação deve ser usada para determinar 
as entidades envolvidas no diagrama ER. As entidades envolvidas no Exemplo 2.2 são: 
 Cartão; 
 Pessoa; 
 Funcionário; 
 Cliente; 
 Fatura; 
 Compra; 
 Estabelecimento Comercial; 
 Reclamações 
 
Passo 5. Identificar os relacionamentos 
 
Uma vez as entidades identificadas, a especificação corrigida deve ser usada para 
identificar os relacionamentos entre as entidades e também para a identificação dos 
atributos. A Figura 2.4 mostra o diagrama ER produzido para a especificação do 
Exemplo 2.2. 
 
 6
 
 
Figura 2.4 Diagrama ER do Exemplo 2.2 com os atributos omitidos. 
 
 
 
2.7 Projeto de Visão com base em Formulários 
 
Um formulário possui: 
 Partes que não apresentam informações relevantes a serem armazenadas 
(assinaturas, data de emissão, cabeçalho, etc.). 
 Partes que são pré-impressas e que se referem a nomes de campos; 
 Partes que devem ser preenchidas pelos usuários e que serão armazenadas no 
sistema; 
 Partes descritivas referentes às instruções que devem ser seguidas para 
preencher os campos do formulário. 
 
O formulário deve ser avaliado de maneira a ter seus campos agrupados por assuntos 
que podem ser posteriormente mapeados para entidades. Após isso, o diagrama ER 
correspondente deve então ser desenvolvido. 
 
A Figura 2.5 apresenta um exemplo de formulário. 
 7
 
 
Figura 2.5 Exemplo de formulário a ser usado no levantamento de requisitos de 
um projeto de visão. 
 
Observe que é possível agrupar o assunto dos dados apresentados no formulário, 
como mostra Figura 2.6. 
 
 
Figura 2.6 Agrupamento dos dados apresentados no formulário por assunto. 
 
Após o agrupamento dos dados do formulário é possível apresentar um esboço do 
diagrama ER. Um diagrama ER gerado a partir do formulário da Figura 2.5 é ilustrado 
na Figura 2.7. 
 
 
 8
 
 
Figura 2.7 Diagrama ER gerado a partir do formulário da Figura 2.5. 
 
Exercícios. 
 
1. Faça o Diagrama ER gerado a partir do formulário da Figura 2.8. 
 
 
Figura 2.8 Formulário de informação de docentes de Ensino à Distância 
 
 
2. Altere o formulário anterior adicionando as informações de tutores apresentadas na 
Tabela 2.1. Além disso, para os professores acrescente campos para assinalar as 
opções: 
 Ministra aula de pós-graduação; 
 Professor contrato (tempo integral, tempo parcial); 
Após essas alterações no formulário, faça o diagrama ER com base no formulário 
modificado. 
Tabela 2.1 Dados de tutores 
Formação Bolsista Disciplinas de 
Interesse 
 
 
 
 
 9
 
 
2.8 Projeto de Visão com base em Declarações de Registro em Cobol 
 
A seguir são tratados alguns aspectos relativos à estrutura de declaração de arquivos 
como guia para a modelagem de esquemas conceituais utilizando o diagrama ER. 
 
As aplicações comerciais geralmente utilizam arquivos compostos de registros que 
são armazenados na memória secundária. Esses arquivos são acessados, 
consultados e/ou alterados de acordo com as funções executadas pelo sistema. Os 
registros são compostos de campos. Os campos por sua vez podem ser compostos de 
sub-campos. Como conseqüência, geralmente têm uma estrutura hierárquica, e cada 
campo se coloca numa posição desta hierarquia. Em Cobol, a declaração dos arquivos 
que irão fazer parte do sistema é realizada em uma estrutura chamada DATA 
DIVISION. 
 
Observe o exemplo apresentado na Figura 2.9 de declaração de registros em Cobol. 
Observe que a partir dessa declaração é possível diretamente diferenciar campos 
simples, compostos e multivalorados. A partir dessa declaração é possível fazer o 
diagrama ER apresentado na Figura 2.10. 
 
 
 
Figura 2.9 Exemplo de declaração de registro em Cobol. 
 
 
 
Figura 2.10 Diagrama ER construído a partir da declaração de registro 
apresentada na Figura 2.9. 
 
. 
 
 10
Requisitos com base em documentos XML (eXtensible Markup Language) 
 
Os requisitos também podem ser colhidos a partir de documentos XML, que possuem 
os dados organizados e separados através de tags. O documento apresentado na 
Figura 2.11 apresenta um exemplo de documento XML que pode ser usado para a 
coleta de requisitos. A Figura 2.12 mostra um diagrama ER gerado a partir do 
documento XML da Figura 2.11. 
 
 
Figura 2.11 Exemplo de documento XML que pode ser usado para coleta de 
requisitos. 
 
 
Figura 2.12 Diagrama ER gerado gerado a partir do XML apresentado na Figura 
2.11 
 
 
2.9 Integração de Visões 
 
A integração de visões corresponde ao processo de fusão de vários esquemas 
conceituais em um esquema conceitual global que representa todos os requisitos da 
aplicação. 
Aconselha-se o uso do processo de integração principalmente para aplicações 
complexas, onde o volume de informações é grande, podendo haver vários analistas 
envolvidos no processo de projeto. O projetista estabelece uma prioridade entre os 
esquemas com base em sua importância, confiabilidade e completitude. 
 
A integração de visões se dá aos pares, conforme ilustrado na Figura 2.13: 
 as duas visões com maior quantidade de conceitos em comum são integradas; 
 11
 a visão resultante será integrada com a próxima que possui a maior quantidade 
de conceitos em comum e assim por diante... 
 
 
Figura 2.13 Integração de Visões. 
 
O processo de Integração de Visões também é conhecido como processo de 
Integração de Esquemas. A integração de visões também é utilizada na abordagem 
Bottom-Up (Engenharia Reversa). Os atributos de uma mesma entidade ou 
relacionamento após a integração são reunidos em uma única tabela. Além disso, 
redundâncias de dados devem ser eliminadas na integração. 
 
Análise de Conflitos 
Realiza-se uma análise nos esquemas a serem integrados, para verificar se há algum 
conflito entre informações de diferentes esquemas. Os tipos de conflitos que podem 
ocorrer são discutidos a seguir. 
 
Conflitos de nome: 
 Sinônimos: nomes diferentes para a mesma informação em diferentes 
esquemas: 
o Solução: Escolher um nome e renomear os demais com esse nome; 
 Homônimos: nomes iguais para informações diferentes em diferentes 
esquemas: 
o Solução: Renomear para diferenciar as informações 
 
Conflitos estruturais: 
Após realizada a eliminação dos conflitos de nomes, tem-se que dois conceitos de 
diferentes esquemas com mesmo nome representam o mesmo conceito. Esses 
conceitos com mesmo nome são agora comparados para verificar se podem ser 
fundidos num único. Os conceitos homônimos de diferentes esquemas podem ser: 
 Idênticos: 
 Mesmos atributos; 
 Mesmos relacionamentos; 
 Se resumem no mesmo. 
 Compatíveis: 
 Esquema 1 Esquema 2
 Esquema parcial
 integrado Esquema 3 
 Esquema n
 Esquema global
correção dos 
conflitos 
 . . .
 12
 Estruturalmente diferentes, masrepresentam conceitos 
semelhantes; 
 A solução para esse conflito é fazer uma representação 
comum que satisfaça ambas as restrições; 
 Incompatíveis: 
 Apresenta restrições diferentes (chaves, cardinalidade, etc...): 
 Fazer uma representação comum que satisfaça a 
restrição mais genérica; 
 
 
A Figura 2.14 apresenta exemplos de conceitos compatíveis. Nesse caso, como os 
conceitos possuem diferentes representações não contraditórias, muda-se uma 
das representações. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 2.14 Exemplos de conceitos compatíveis. Esquemas 1 e 2 são compatíveis 
entre si, assim como Esquemas 3 e 4. 
 
Se os conceitos forem incompatíveis, como, diferentes cardinalidades para o mesmo 
atributo ou relacionamento, diferentes identificadores, etc., deve-se selecionar ou 
desenvolver uma representação comum satisfazendo as restrições dos dois 
esquemas. A Figura 2.15 apresenta dois esquemas incompatíveis devidos a 
cardinalidade do relacionamento Tem com a entidade Cliente. Nesse caso, a 
cardinalidade mais genérica (0,N) deve ser empregada. 
 
 
 
 Livro título nome_editora Livro 
 Editora 
título 
nome_editora 
Esquema 1 Esquema 2 
Pessoa nome sexo
Pessoa nome 
Homem Mulher 
Esquema 3 Esquema 4
 13
 
 
Figura 2.15 Exemplo de conceitos incompatíveis devido a cardinalidade do 
relacionamento Tem com a entidade Cliente. 
 
 
2.10 Estudo de Caso: Gerenciamento de uma Biblioteca 
 
Projeto de Visões – Biblioteca particular de pesquisadores 
 
Considere os esquemas conceituas a seguir que têm por finalidade armazenar 
informações sobre publicações (livros, revistas, etc) de uma biblioteca. 
 
O esquema 1 (apresentado na Figura 2.16) representa informações de interesse de 
pesquisadores em suas bibliotecas particulares. Nesse esquema tem-se: 
 
Publicação: publicações (artigos) mantidas pelos pesquisadores em seus gabinetes 
particulares. Elas são geralmente obtidas pelos pesquisadores através de contatos 
com os autores. 
 
Tópico: refere-se às áreas de pesquisa de interesse dos autores. 
 
Solicitado-por: relaciona artigos que foram enviados por autores, aos pesquisadores 
que os solicitaram. 
 
 
O esquema 2 (apresentado na Figura 2.17) representa as informações a serem 
mantidas na biblioteca do Departamento desses pesquisadores: 
 
Publicação: publicações presentemente mantidas na biblioteca. 
 
Artigo: artigos publicados em revistas ou anais mantidos na biblioteca. 
 
Comprado-pelo: indica que o pesquisador é responsável pelo recurso usado para 
comprar a publicação. 
 14
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 2.16 Biblioteca Particular - Esquema 1 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 2.17 Biblioteca do Departamento - Esquema 2 
 
 
 
nome 
nome 
editor 
 
Solicitado
-por 
Tópico 
Autor 
Pertence
Grupo_ 
Pesquisa 
de_interesse 
Publicação 
Publ-de-
interesse 
Pesquisador 
Escreve 
(0,n) 
(1,n) 
(1,n) 
(1,n) 
nome 
endereço 
 
Série 
Livro interesse 
 Possui 
ultimo-nome 
idade 
estado-nasceu
Editora 
 tem 
Nome 
endereço 
Último-nome 
endereço 
(1,n) 
(1,n) 
(1,n) 
(1,n) 
(1,n) 
(1,n) 
(1,1) 
(1,1) 
(1,n) (1,n) 
número 
título 
ano 
 
Enviado-
por 
(0,n) 
(0,n) 
(0,n) 
(0,n) 
(0,n) 
(0,n) 
título 
palavra-chave 
ano 
Último-nome 
posição 
grau 
cidade-nasceu 
 
Tópico 
Publicação 
Anais 
Referente-a 
Pesquisador 
Editora 
Publicado
-por 
Comprada-pelo 
cód-tópico 
nome
(1,n)
(1,n)
(0,n) 
(0,n)
nome 
endereço 
 
trata 
(1,n) 
Título 
estante 
Empresta
dia-emprestimo 
Revista Livro 
(1,1)
Autor 
Artigo 
pertence
-rev 
pertence
-anais 
Título 
autor 
(1,n) 
(0,1) 
(0,1) 
(0,n) 
(0,n) 
(0,1)
(0,n) 
(1,1)
 15
Na Etapa 1 são analisados os esquemas das Figura 2.16 e Figura 2.17, quanto a: 
 conflito de nomes 
 conflitos estruturais 
Os esquemas são então refeitos com os conflitos resolvidos. Na etapa 2 é feita a 
integração dos esquemas. A Figura 2.18 e Figura 2.19 mostram, respectivamente os 
esquemas das Figura 2.16 e Figura 2.17 após a resolução dos conflitos. 
 16
nome
ultimo-nome 
idade 
estado-nasceu 
nome 
editor 
 
Nome 
endereço 
Área_ 
pesquisa 
Autor 
Pertence
Grupo_ 
Pesquisa 
de_interesse 
 Artigo 
Artigo-de-
interesse 
Pesquisador 
Escreve 
(0,n) 
nome 
(1,n) 
(1,n) 
(1,n)
nome 
endereço 
 
Série 
Livro interesse 
 Possui 
Editora 
 tem 
Último-nome 
endereço 
(1,n) 
(1,n) 
(1,n) 
(1,n) 
(1,n) 
(0,n)
(1,1) 
(1,1) 
(1,n)(1,n)
número 
título 
ano 
 
Solicitado
-por 
Enviado-
por 
(0,n) 
(0,n) 
(0,n) 
(0,n)
(0,n) 
(0,n) 
título 
 
ano Tópico 
A-T 
 
(1,n)
(1,n)
Figura 2.19 - Biblioteca Particular - Esquema 1(após a resolução de 
conflitos) 
nome 
endereço 
 
Último-nome 
posição 
grau 
cidade-nasceu 
 
dia-emprestimo 
cód-tópico 
nome
Título 
estante 
Figura 2.18 Biblioteca do Departamento - Esquema 2 (após a resolução de 
conflitos) 
Tópico 
Publicação 
Anais 
Referente-a 
Pesquisador 
Editora 
Publicado
-por 
Comprada-pelo 
(1,n) 
(1,n) 
(0,n) 
(0,n) 
trata 
(1,n) 
Empresta
Revista Livro 
(1,1)
Artigo 
pertence
-rev 
pertence
-anais 
Título 
 
(1,n) 
(0,1) 
(0,1) 
(0,n) 
(0,n) 
(0,1) 
(0,n) 
(1,1) 
Autor escreve- livro
escrito_ 
 por 
 livro 
(0,n) (0,n)
(1,n)
(1,n) 
nome 
 17
 
Na etapa 2 deve ser feito então a integração dos esquemas. O esquema global após 
fusão dos esquemas: Biblioteca Particular e Biblioteca do Departamento é 
apresentado na Figura 2.20. 
 
 
 
 
Figura 2.20 Esquema global após fusão dos esquemas Biblioteca 
Particular e Biblioteca do Departamento (Figura 2.18 e Figura 2.19). 
trata 
dia-emprestimo 
Publicação 
(1,n) 
título estante 
Tópico 
Referente-a 
cód-tópico 
nome 
(1,n) 
(1,n) 
(1,1)
Pesquisador 
Comprada-pelo
(0,n) 
último-nome 
posição 
grau 
cidade-nasceu 
estado-nasceu 
idade 
 
Empresta
(0,n) 
(0,1) 
Anais Livro Revista 
Artigo 
 título 
 ano 
 
(1,n)
(0,1)
pertence
-rev 
pertence
-anais
(0,1) 
(0,n) (0,n) 
Editora 
Publicado
-por 
(0,n) 
nome endereço 
 
(1,1) 
 Série 
Possui 
 de 
(1,n) 
(0,n) 
(1,1) 
(1,1) 
(1,n) 
 número 
 ano 
 
nome editor 
de-
interesse
Autor 
Escrito_por
Escreve
-livro 
(0,n) 
Área-
Pesquisa 
de_interesse 
(1,n) (1,n) 
nome-area 
Último-nome 
endereço
(1,n) 
(1,n)
(0,n) 
(1,n) 
artigo-de-
interesse 
(1,n) 
(1,n) 
Solicitado-
por 
(0,n)
(0,n) 
(0,n) 
Enviado-
por 
(0,n) 
(0,n) 
(0,n) 
Pertence Grupo_ 
Pesquisa 
(0,n)
(1,n)
nome 
endereço 
 
 18
 
2.11 Melhorando a Qualidade de um Esquema de Banco de Dados 
Após a fusão dos esquemas deve-se aplicar sucessivos refinamentos no esquema 
conceitual gerado, para melhorar a qualidade do mesmo. A meta para melhorar a 
qualidade do esquema conceitual é aplicar transformações para reestruturar o 
esquema, produzindo uma versão melhor em termos das seguintes qualidades: 
 
a. Ser completo 
b. Ser correto 
c. Ser mínimo 
d. Ser expressivo e auto-explicativo 
e. Ser Legível 
f. Estar normalizado 
 
2.12 Qualidades de um esquema de BD 
 
a. Ser completo 
 esquema completo comrelação aos requisitos: se todos os requisitos do 
domínio da aplicação estiverem representados no esquema; 
 requisitos completos com relação ao esquema: se cada conceito no esquema é 
mencionado nos requisitos. 
 
b. Ser correto 
 Um esquema é correto quando usa adequadamente os conceitos do modelo 
ER. Os erros semânticos mais freqüentes são: 
 Usar um atributo no lugar de uma entidade; 
 Esquecer de representar uma generalização; 
 Esquecer a propriedade de herança das generalizações; 
 Usar um relacionamento com um número errado de entidades (por 
exemplo, usar um relacionamento binário no lugar de um 
relacionamento ternário); 
 Usar uma entidade ao invés de um relacionamento; 
 Esquecer algum identificador de entidade, especialmente identificadores 
compostos externos; 
 Omitir alguma especificação de cardinalidade mínima ou máxima. 
 
c. Ser mínimo 
 
Um esquema é mínimo se não for possível eliminar qualquer conceito do esquema 
sem perder informação. Um exemplo de conceito que pode ser eliminado são os 
atributos derivados que podem ser calculados a partir de outras informações da base 
de dados. Pode-se permitir alguma redundância no esquema, desde que a mesma 
seja devidamente documentada. 
 
d. Ser expressivo e auto-explicativo 
 
Um esquema é expressivo quando pode ser entendido através dos construtores do 
esquema E-R, sem a necessidade de explicação adicional. 
 
Por exemplo, considere o esquema da Figura 2.21, suponha que cada aluno tem, no 
máximo, um orientador de mestrado e um orientador de doutorado e um mesmo aluno 
 19
pode ser um aluno de mestrado e de doutorado (em momentos diferentes). Essa 
informação não está totalmente representada no esquema. 
 
 
 
 
Figura 2.21 Exemplo de esquema não auto-explicativo 
 
e. Ser legível 
 
Respeitar critérios de estética que tornam o diagrama agradável. 
- evitar cruzamento de ligações dos relacionamentos; 
- evitar curvas; 
- hierarquias: pai deve ser colocado acima dos filhos. 
A Figura 2.22 mostra um exemplo de diagrama não legível e a maneira de ajustá-lo. 
 
 
 
 
Figura 2.22 Exemplo de diagrama com problemas de legibilidade e a maneira de 
ajustá-lo. 
 
2.13 Transformações de Esquema para conseguir a Minimalidade 
 
O objetivo desta etapa é realizar transformações no esquema objetivando obter um 
esquema mínimo: 
 
 Esquema E1 transformações Esquema E2 
 
Para alcançarmos o esquema mínimo devem ser eliminadas as situações que 
apresentam redundância na modelagem. Essas situações são discutidas a seguir. 
 
A 
D
C 
B 
C A D
B 
mudar para 
 20
 
a) Ciclos de Relacionamentos 
Observe o Diagrama ER da Figura 2.23. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 2.23 Exemplo de ciclos de relacionamento 
 
Na Figura 2.23 o relacionamento : 
 Trab-no é redundante? 
 Trab-com é redundante? 
 Dirige é redundante? 
 
Nessa figura o relacionamento trab-com pode ser removido, sem perda da informação 
semântica, pois sabendo o diretor de um departamento e os funcionários de um 
departamento é possível saber o diretor que trabalha com os funcionários. 
Alternativamente pode-se remover o relacionamento Dirige, sem perda de informação. 
 
b) Atributos Derivados 
 
 Atributos derivados podem ser omitidos de um esquema ER, porém podem ser 
úteis para melhorar a eficiência do banco de dados. 
 
(1,1)
Empregado 
trab-com 
 Diretor 
Dirige 
Departamento 
Trab-no 
(1,1) 
(1,1) 
(1,n)
(1,n) 
(1,n) 
 21
 
c) Subconjuntos Implícitos 
 
Um exemplo de redundância implícita é mostrado na Figura 2.24. Observe que para ser 
gerente a pessoa precisa ser primeiro um funcionário. 
 
 
 
 
 
 
 
 
 
 
2.14 
 
Figura 2.24 Exemplo de subconjunto implícito. 
 
2.15 Transformações para conseguir Expressividade 
A expressividade é melhorada quando se simplifica o esquema. Transformações 
típicas para melhorar a expressividade: 
 
a) Eliminar Sub-entidades "Inexpressivas" em Hierarquias de Generalização: 
 
 As sub-entidades inexpressivas, que são aquelas sem atributos ou com poucos 
atributos, devem ser eliminadas da hierarquia de generalização. Um exemplo dessa 
ocorrência é mostrado na Figura 2.25. 
 
Figura 2.25 Exemplo de sub-entidades inexpressivas. 
 
Membro 
Ensino 
Professor Instrutor Estudante 
Graduado
Membro 
Ensino 
categoria
Pessoa 
Funcionário 
 Gerente 
Pessoa 
Gerente 
integração
Pessoa 
Funcionário 
 Gerente 
 22
 
 
b) Eliminar Entidades "Inexpressivas" 
 
As entidades que não trazem ganho semântico devem ser eliminadas. Na Figura 2.26 
é mostrado um exemplo de entidade inexpressiva (Tipo Sanguíneo). 
 
 
 
Figura 2.26 Exemplo de entidade inexpressiva (Tipo Sanguíneo). 
 
c) Criar uma Generalização 
Quando se tem entidades com propriedades semelhantes. No exemplo da Figura 2.27, 
Professor e Instrutor têm propriedades semelhantes. A expressividade desse exemplo 
é melhorada com a criação de hierarquias de generalização, conforme ilustrado na 
Figura 2.28. 
 
Figura 2.27 Exemplo de entidades com propriedades semelhantes. 
 
 
 Figura 2.28. Melhorando a expressividade do exemplo da Figura 2.27 com a 
criação de generalizações. 
Professor dá Seminário 
Instrutor ensina Curso 
ensina 
 dá 
auxilia 
Assistente 
Ensino
Membro 
Docente ensina Atividade 
Seminário Curso 
Instrutor Professor 
auxilia
Assistente 
Ensino 
 23
 
d) Criar um Subconjunto 
 
Quando for significativo para o projeto, pode-se criar um novo subconjunto quando a 
entidade possui cardinalidade mínima zero em um relacionamento. Isso enfatiza o 
papel da entidade. Um exemplo de aumento da ênfase no papel da entidade com a 
criação de um subconjunto é mostrado na Figura 2.29. 
 
 
Figura 2.29 Exemplo de aumento da ênfase no papel da entidade com a criação de 
um subconjunto. 
 
 
2.16 Transformações para obter Normalização 
Quando devemos pensar na Normalização do banco? 
Os passos de desenvolvimento do projeto conceitual segundo a abordagem Bottom-UP 
(engenharia reversa) são: 
1. coleta de fontes de dados; 
2. representação em tabelas não-normalizadas;  
3. normalização; 
4. integração de esquemas relacionais; 
5. engenharia reversa do esquema relacional; 
Os passos de desenvolvimento do projeto conceitual segundo a abordagem Top-Down 
(abordagem tradicional) são: 
1. coleta de requisitos de diferentes visões 
2. Desenvolvimento de um esquema conceitual para cada visão 
3. Integração de visões 
4. Transformação do esquema conceitual visando atender as qualidades: 
• Completo; 
• Apropriado; 
• Válido; 
• Mínimo; 
• Significativo; 
• Normalizado. 
• Legível; 
 
 
Assim podemos perceber que a normalização é um passo intermediário da abordagem 
Bottom-up (Engenharia Reversa) do Projeto Conceitual. E a verificação da 
 24
normalização deve ser feita no passo final da abordagem Top-Down (abordagem 
tradicional). 
 
O material de normalização de projeto de banco de dados deve ser consultado para 
uma revisão de normalização. Possíveis mudanças no esquema durante o 
desenvolvimento conceitual devem considerar no máximo até a Terceira Forma 
Normal (3FN). A 4FN e a 5FN devem ser consideradas em etapas posteriores do 
desenvolvimento de um projeto de banco de dados. 
 
O ESQUEMA DA ULTIMA PAGINA NAO DEVERIA VIR AQUI? 
 
2.17 Exercícios 
 
1. Construa um esquema conceitual para a seguinte descrição em linguagem natural: 
Projete o banco de dados para um ambiente de suporte de programação. Nesse 
ambiente os programadores produzem programas, que são escritos em determinadas 
linguagens de programação. Cada programa é escrito por um certo programador, pode 
chamaroutros programas e pode ser usado por determinados usuários. Os usuários 
são reconhecidos por seu nome de log-in e por seu código; os programas têm nomes 
compostos que incluem o nome do programa, a extensão e o código do programador. 
Os programas têm um número de versão, uma data e uma breve descrição; alguns 
programas interagem com SGBDs. Cada SGBD mantém dados armazenados na 
forma de relações, com vários atributos e uma chave primária. Cada banco de dados é 
definido por um administrador de banco de dados, que é um programador 
especializado em gerenciamento de dados. 
 
2. Transcreva as definições de arquivo em COBOL a seguir para um esquema ER. A 
aplicação lida com o controle distribuído de um processo industrial. O arquivo DADOS-
EMPREGADO indica que cada empregado pode controlar comandos e alarmes. O 
arquivo SISTEMA-COMANDOS lida com comandos disponíveis para controle de 
processos e os locais onde cada comando pode ser executado. O arquivo SISTEMA-
ALARMES lida com os mesmos dados para alarmes. Finalmente, o arquivo 
COMUNICAÇÕES descreve dados sobre subsistemas de comunicação, sua 
tecnologia, os dispositivos conectados, locais dos dispositivos, etc. A transmissão de 
dados pode ser através de microondas ou cabos. 
 
01 DADOS-EMPREGADO. 
 02 NRO-ID PIC 9(6). 
 02 NOME PIC X(20). 
 02 SUPERVISOR-EMPREGADO PIC 9(6). 
 02 SISTEMA-COMANDO-CONTROLADO PIC X(5) OCCURS 10 TIMES. 
 02 SISTEMA-ALARME-CONTROLADO PIC X(5) OCCURS 10 TIMES. 
 
01 SISTEMA-COMANDOS. 
 02 TIPO PIC X(5). 
 02 DATA PIC 9(6). 
 02 HORARIO. 
 03 HORA PIC 99. 
 03 MINUTO PIC 99. 
 03 SEGUNDO PIC 99. 
 02 POSIÇÃO. 
 03 NOME PIC X(20). 
 03 LOCAL PIC X(20). 
 25
 03 TIPO PIC X(5). 
 
01 SISTEMA.ALARMES. 
 02 TIPO PIC X(5) 
 02 DATA PIC 9(6). 
 02 VALOR PIC 9(8). 
 02 HORARIO. 
 03 HORA PIC 99. 
 03 MINUTO PIC 99. 
 03 SEGUNDO PIC 99. 
 02 POSIÇÃO. 
 03 NOME PIC X(20). 
 03 LOCAL PIC X(20). 
 03 TIPO PIC X(5). 
 
 
01 COMUNICAÇÕES. 
 02 TECNOLOGIA PIC X(8). 
 02 VELOCIDADE PIC 9(6). 
 
 02 DISPOSITIVO-REMOTO OCCURS 10 TIMES. 
 03 NOME PIC X(10). 
 03 TIPO PIC X(5). 
 03 LOCAL PIC X(20). 
 
 02 DADOS-CABO. 
 O3 MODEM. 
 04 TIPO PIC X(10). 
 04 TAXA-TRANSMISSÃO PIC 9(6). 
 
 02 DADOS-MICROONDAS REDEFINES DADOS-CABO. 
 03 RADIO. 
 04 RADIO PIC X(5). 
 04 MODO-TRANSMISSÃO PIC X(5). 
 04 FREQUENCIA PIC X(10). 
04 NTENA PIC X(5). 
 
3. Determine as etapas de um Projeto Conceitual de um banco de dados, usando a 
estratégia Top-Down. 
4. Quais são as etapas de produção de um Projeto Conceitual usando a estratégia 
Bottom-Up? 
 
2.18 Estudos complementares 
Ler Capítulos 3 e 4 do Livro: R. Elmarsi, S. B. Navathe, Fundamentals of 
Database Systems, Editora Pearson, 5a. Edição, 2009. 
 
2.19 Referências 
Heuser, C.A. Projeto De Banco De Dados Editora Bookman, Porto Alegre, 6a. Edição, 
2009. 
 26
Elmasri, R. & Navathe, S.B. Sistemas De Banco De Dados. Pearson Addison Wesley, 
4ª Edição, 2005. 
Livro Virtual de Sistemas de Banco de Dados, Profa. Marilde 
 27

Outros materiais